개요
스킬은 에이전트에게 도메인별 지침, 가이드라인 및 참조 자료를 제공하는 자체 포함 디렉터리입니다. 각 스킬은 YAML 프론트매터와 마크다운 본문이 포함된SKILL.md 파일로 정의됩니다.
활성화되면 스킬의 지침이 에이전트의 작업 프롬프트에 직접 주입됩니다 — 코드 변경 없이 에이전트에게 전문성을 부여합니다.
스킬은 도구가 아닙니다. 이것이 가장 흔한 혼동 포인트입니다.
- 스킬은 에이전트의 프롬프트에 지침과 컨텍스트를 주입합니다. 에이전트에게 문제에 대해 어떻게 생각할지를 알려줍니다.
- 도구는 에이전트에게 행동을 취할 수 있는 호출 가능한 함수를 제공합니다 (검색, 파일 읽기, API 호출).
빠른 시작
1. 스킬 디렉터리 생성
2. SKILL.md 작성
3. 에이전트에 연결
스킬 + 도구: 함께 작동하기
스킬과 도구가 어떻게 보완하는지 보여주는 일반적인 패턴입니다:패턴 1: 스킬만 (도메인 전문성, 액션 불필요)
에이전트가 특정 지침이 필요하지만 외부 서비스를 호출할 필요가 없을 때 사용:패턴 2: 도구만 (액션, 특별한 전문성 불필요)
에이전트가 행동을 취해야 하지만 도메인별 지침이 필요 없을 때 사용:패턴 3: 스킬 + 도구 (전문성 AND 액션)
가장 일반적인 실제 패턴. 스킬은 작업에 어떻게 접근할지를 제공하고, 도구는 에이전트가 무엇을 할 수 있는지를 제공합니다:패턴 4: 스킬 + MCP
스킬은 도구와 마찬가지로 MCP 서버와 함께 작동합니다:패턴 5: 스킬 + 앱
스킬은 에이전트가 플랫폼 통합을 사용하는 방법을 안내할 수 있습니다:크루 레벨 스킬
스킬을 크루에 설정하여 모든 에이전트에 적용할 수 있습니다:SKILL.md 형식
프론트매터 필드
| 필드 | 필수 | 설명 |
|---|---|---|
name | 예 | 1–64자. 소문자 영숫자와 하이픈. 디렉터리 이름과 일치 필수. |
description | 예 | 1–1024자. 스킬이 무엇을 하고 언제 사용하는지 설명. |
license | 아니오 | 라이선스 이름 또는 번들된 라이선스 파일 참조. |
compatibility | 아니오 | 최대 500자. 환경 요구 사항 (제품, 패키지, 네트워크). |
metadata | 아니오 | 임의의 문자열 키-값 매핑. |
allowed-tools | 아니오 | 공백으로 구분된 사전 승인 도구 목록. 실험적. |
디렉터리 구조
SKILL.md의 name 필드와 일치해야 합니다. scripts/, references/, assets/ 디렉터리는 파일을 직접 참조해야 하는 에이전트를 위해 스킬의 path에서 사용할 수 있습니다.
사전 로드된 스킬
더 세밀한 제어를 위해 프로그래밍 방식으로 스킬을 검색하고 활성화할 수 있습니다:스킬 로드 방식
스킬은 점진적 공개를 사용합니다 — 각 단계에서 필요한 것만 로드합니다:| 단계 | 로드되는 내용 | 시점 |
|---|---|---|
| 검색 | 이름, 설명, 프론트매터 필드 | discover_skills() |
| 활성화 | 전체 SKILL.md 본문 텍스트 | activate_skill() |
skills=["./skills"]로 디렉터리 경로 전달 시) 스킬은 자동으로 검색되고 활성화됩니다. 점진적 로딩은 프로그래밍 API를 사용할 때만 관련됩니다.
스킬 vs 지식
스킬과 지식 모두 에이전트의 프롬프트를 수정하지만, 서로 다른 목적을 가지고 있습니다:| 측면 | 스킬 | 지식 |
|---|---|---|
| 제공하는 것 | 지침, 절차, 가이드라인 | 사실, 데이터, 정보 |
| 저장 방식 | 마크다운 파일 (SKILL.md) | 벡터 스토어에 임베딩 (ChromaDB) |
| 검색 방식 | 전체 본문이 프롬프트에 주입 | 시맨틱 검색으로 관련 청크 찾기 |
| 적합한 용도 | 방법론, 체크리스트, 스타일 가이드 | 회사 문서, 제품 정보, 참조 데이터 |
| 설정 방법 | skills=["./skills"] | knowledge_sources=[source] |
자주 묻는 질문
스킬과 도구를 모두 설정해야 하나요?
스킬과 도구를 모두 설정해야 하나요?
사용 사례에 따라 다릅니다. 스킬과 도구는 독립적입니다 — 둘 중 하나, 둘 다, 또는 아무것도 사용하지 않을 수 있습니다.
- 스킬만: 에이전트가 전문성은 필요하지만 외부 액션이 필요 없을 때 (예: 스타일 가이드라인으로 작성)
- 도구만: 에이전트가 액션은 필요하지만 특별한 방법론이 필요 없을 때 (예: 간단한 웹 검색)
- 둘 다: 에이전트가 전문성 AND 액션이 필요할 때 (예: 특정 체크리스트로 보안 감사 AND 코드 스캔 기능)
스킬이 자동으로 도구를 제공하나요?
스킬이 자동으로 도구를 제공하나요?
아니요. SKILL.md의
allowed-tools 필드는 실험적 메타데이터일 뿐 — 도구를 프로비저닝하거나 주입하지 않습니다. 항상 tools=[], mcps=[] 또는 apps=[]를 통해 별도로 도구를 설정해야 합니다.에이전트와 크루 모두에 같은 스킬을 설정하면 어떻게 되나요?
에이전트와 크루 모두에 같은 스킬을 설정하면 어떻게 되나요?
에이전트 레벨 스킬이 우선합니다. 스킬은 이름으로 중복 제거됩니다 — 에이전트의 스킬이 먼저 처리되므로, 같은 스킬 이름이 양쪽 레벨에 나타나면 에이전트의 버전이 사용됩니다.
SKILL.md 본문의 최대 크기는 얼마인가요?
SKILL.md 본문의 최대 크기는 얼마인가요?
50,000자에서 소프트 경고가 있지만 하드 리밋은 없습니다. 최상의 결과를 위해 스킬을 집중적이고 간결하게 유지하세요 — 너무 큰 프롬프트 주입은 에이전트의 주의를 분산시킬 수 있습니다.
