M3-6. Custom Skills (프리뷰) — SKILL.md
한 줄 요약 — Custom skills는 선언형 에이전트에 재사용 가능한 작업 묶음을 추가하는 기능으로,
SKILL.md필수 파일과 선택적 리소스·스크립트로 구성됩니다. 이 기능은 프리뷰이며, Microsoft Frontier Preview 프로그램에 속한 조직에서만 사용할 수 있습니다.
프리뷰 안내 — Custom skills in declarative agents는 preview 상태이며 Microsoft Frontier Preview 프로그램 조직 한정으로 제공됩니다. 일반 Microsoft 365 Copilot 라이선스만으로는 사용할 수 없으며, 조직이 Frontier Program에 등록되어 있어야 합니다.
1. Custom skill이란
skill은 에이전트가 특정 작업을 더 안정적이고 반복 가능하게 수행하도록 돕는 모듈형 기능입니다.
필수 SKILL.md 파일과 선택적 리소스·스크립트를 담은 파일 디렉터리입니다. SKILL.md에는 모델이
작업을 완료하도록 지시하는 내용이 담깁니다.
Custom skills는 선언형 에이전트의 새로운 별개 구성 요소입니다. 이전 문서에서 “skills”는 지침 안에 인라인으로 적던 작업 설명을 뜻했지만, 이제는 이를 별도 패키지로 분리해 에이전트가 참조하는 방식으로 대체되었습니다.
Agent Builder 또는 Microsoft 365 Agents Toolkit으로 선언형 에이전트에 custom skill을 추가할 수 있습니다.
2. SKILL.md 구조와 예시
my-skill.zip
|-- SKILL.md # 필수
|-- <리소스 파일> # 선택
`-- <스크립트·하위 폴더> # 선택
SKILL.md는 YAML front matter(스킬 이름·설명)와 20,000자 미만의 Markdown 지침으로 구성됩니다.
---
name: 주간 보고 정리
description: 팀원이 붙여넣은 주간 업무 메모를 완료/진행/이슈 3단 구조의 보고서로 정리합니다.
---
# 주간 보고 정리 스킬
## 목적
붙여넣은 주간 업무 메모를 표준 형식의 주간 보고서로 변환합니다.
## 단계
1. 입력 텍스트에서 완료한 일 / 진행 중인 일 / 이슈·리스크 3가지 범주로 문장을 분류합니다.
2. `format_report.py` 스크립트를 사용해 Markdown 표로 정리합니다.
3. 보고서 맨 위에 작성자와 주차(예: 2026-W36)를 표시합니다.
## 오류 처리
- 분류할 수 없는 문장은 "미분류" 항목에 모아 사용자에게 확인을 요청합니다.
3. 한도 (Agent Builder 기준)
| 항목 | 한도 |
|---|---|
| 에이전트당 최대 스킬 수 | 8개 |
| 스킬 패키지 | 압축 .zip, 최대 50MB |
| 파일당 최대 크기 | 25MB |
| 패키지당 최대 파일 수 | 전체 스킬 합산 350개 |
| 개별 업로드로 스킬 구성 | 지원 안 함 — 완성된 .zip만 업로드 |
| 디렉터리 계층 | 최대 깊이 3 |
| 에이전트 간 재사용 | 미지원(현재 프리뷰 단계) |
4. 샌드박스 제약
스킬 안의 스크립트는 보안 샌드박스에서 실행되며 다음 제약이 있습니다.
- 인터넷·네트워크 접근 불가 — 런타임에 네트워크 접근 자체가 없습니다.
- 패키지 설치 불가 — 런타임에 패키지를 설치할 수 없습니다.
- 인증이 필요한 네트워크 호출 불가.
- 샌드박스에 이미 있는 패키지만 사용할 수 있으며, 가용성이 확인되지 않은 패키지에 의존하면 안 됩니다.
- 커넥터·API 플러그인·MCP 서버는 에이전트가 오케스트레이터를 통해서만 사용할 수 있고, 스크립트가 샌드박스에서 직접 호출할 수 없습니다.
5. 민감도·저장
- 샌드박스는 민감도 레이블을 유지하고 레이블 정책을 준수합니다. 다만 사용자 정의 권한이나 이중 키 암호화(DKE)는 지원하지 않습니다.
- 업로드된 스킬 파일은 테넌트 범위 SharePoint Embedded 컨테이너에 저장됩니다.
6. 알려진 문제
프리뷰 기간 중 스킬과 첨부(embedded) 파일을 함께 사용하는 에이전트는 아직 지원되지 않습니다. (향후 지원 예정으로 안내되어 있습니다.)
7. Agent Builder에 스킬을 추가하는 두 가지 방법
방법 A — 자연어로 자동 생성
- Copilot chat에서 Agents & Skills → New agent 선택
- Message Agent Builder 입력창에 재사용 가능한 워크플로를 만들어 달라고 요청합니다.
릴리스 노트를 작성해 주는 에이전트를 만들어줘. 항상 같은 절차를 따르는 재사용 가능한 스킬을 추가해줘.
1. 병합된 변경 목록(붙여넣은 목록 또는 업로드한 PR 제목 .csv)을 받는다.
2. Features, Fixes, Other로 분류한다.
3. 스크립트를 실행해 버전 제목과 오늘 날짜가 포함된 깔끔한 Markdown 변경 로그로 정리한다.
명확한 지침과 서식 스크립트를 포함한 스킬로 패키징해서 매번 같은 형태로 출력되게 해줘.
- Configure 탭에서 스킬이 생성되었는지 확인합니다.
- 스킬을 선택해 세부 내용(이름·설명·지침·포함 파일)을 검토합니다.
- 스킬이 자동 생성되지 않았다면 아래 방법 B로
.zip패키지를 직접 업로드합니다.
방법 B — .zip 패키지 업로드
- Agent Builder에서 선언형 에이전트를 열거나 새로 만듭니다.
- Configure를 열고 Skills 섹션을 펼친 뒤 Add를 선택합니다.
- 완성된
.zip스킬 패키지를 업로드합니다 —SKILL.md만 단독으로 올리면 안 됩니다. - 스킬 이름·설명·지침·포함 파일을 검토합니다.
- Preview를 열어 스킬을 사용해야 하는 프롬프트로 테스트합니다.
Copilot Studio의 Skills와 다릅니다
Copilot Studio 문서의 Skills(agents-experience/skills-overview)는 GitHub Copilot harness 전용 기능입니다. Copilot Chat Harness에서는 파일 작업·Skills·메모리 모두 “Not a focus”로 명시되어 있습니다. 이 페이지에서 다룬 Custom skills in declarative agents (preview)는 Agent Builder/Agents Toolkit으로 만드는 선언형 에이전트 전용 기능이며, Copilot Studio의 Skills와는 완전히 별개입니다. 이 과정에서 “Copilot Chat Harness가 Skills를 지원한다”고 말하지 않습니다 — 정확히는 Agent Builder로 만드는 선언형 에이전트에 프리뷰로 Custom skills를 추가할 수 있는 것입니다.
핵심 정리
- Custom skill = 필수
SKILL.md+ 선택 리소스·스크립트 디렉터리 — 프리뷰, Frontier Preview 조직 한정 - 한도는 에이전트당 8개 · zip 50MB · 파일 25MB · 350개 파일 · 깊이 3 · 재사용 미지원이며, 스크립트는 네트워크 없는 샌드박스에서만 실행됩니다
- Agent Builder에서는 자연어 자동 생성 또는 완성된
.zip업로드 두 가지로 추가하며, Copilot Studio의 Skills(GitHub Copilot harness 전용)와는 다른 기능입니다
M3 허브로 → 다음 모듈: M4. Copilot Studio에서의 Copilot Chat Harness
출처: Custom skills in declarative agents (MS Learn) · Add custom skills to your declarative agent in Agent Builder (MS Learn) · Write effective instructions for declarative agents (MS Learn)