문서·스킬 모음
Anthropic이 직접 운영하는 166k 스타·19.8k 포크의 공식 스킬 레포. SKILL.md 한 장으로 Claude에게 "PDF 다루기·Word 만들기·MCP 서버 짓기" 같은 작업을 가르치는 Progressive Disclosure 시스템의 표준 구현체. Claude.ai의 문서 생성 기능을 실제로 돌리는 docx/pdf/pptx/xlsx 스킬을 source-available로 공개.
이 레포가 정확히 무엇을 하는가
Agent Skill은 SKILL.md 한 장 + 부속 파일들이 들어있는 폴더다. 폴더를 Claude가 인식할 수 있는 위치에 두기만 하면, 사용자가 관련된 일을 부탁할 때 Claude가 알아서 그 매뉴얼을 펴서 따라 한다.
비유하자면 신입사원에게 "회사의 PDF 처리 매뉴얼", "보고서 톤앤매너 가이드", "MCP 서버 만드는 법" 같은 사내 문서들을 전부 책꽂이에 꽂아두는 것과 같다. 평소엔 표지(name+description)만 본인 머릿속에 있다가, 관련된 일이 들어오면 그제야 책을 펴서 읽는다.
이 레포 anthropics/skills는 Anthropic이 직접 만든 19개의 예제 스킬과 스킬을 만드는 표준 양식(spec)을 담은 공식 저장소다. algorithmic-art·brand-guidelines·canvas-design·claude-api·doc-coauthoring·docx·frontend-design·internal-comms·mcp-builder·pdf·pptx·skill-creator·slack-gif-creator·theme-factory·web-artifacts-builder·webapp-testing·xlsx 등.
이 중 docx/pdf/pptx/xlsx 네 개는 Claude.ai의 실제 문서 생성 기능을 돌리는 운영 스킬이고(source-available), 그 밖의 스킬은 개별 LICENSE.txt를 확인해야 한다. README는 문서 생성 기능에 사용되는 스킬을 참고 구현으로 제공한다고 설명한다. 실제 제품 동작은 공개 구현과 다를 수 있다는 주의도 함께 둔다.
TrendShift 4위 진입 + 166k 스타의 의미
2026년 들어 LLM에게 "지속 가능한 도메인 지식"을 주는 표준으로 Agent Skill이 사실상의 표준이 됐다. MCP가 "도구를 어떻게 호출할지"의 표준이라면, Skill은 "언제 그 도구를 써야 하고, 어떤 순서로, 어떤 함정을 피해야 하는지" — 다시 말해 업무 지식과 휴리스틱을 모델에게 주입하는 표준이다.
MCP가 "전기 콘센트 규격"이라면, Skill은 "이 콘센트에 꽂는 가전제품을 어떻게 운영해야 하는지 적힌 사용 설명서"다. 콘센트(MCP)가 있어도 세탁기를 돌리려면 세제 종류, 물 온도, 탈수 시간을 알아야 한다. Skill이 그 부분을 담당한다.
이 레포는 이제 단순한 Anthropic 전용이 아니다. README 첫 줄에 "Agent Skills 표준은 agentskills.io를 보라"고 못 박았다. 즉 Cursor·Cline·Codex·Kiro·OpenCode 등 다른 코딩 에이전트도 이 양식을 따라 스킬을 인식한다. 이 레포는 표준의 레퍼런스 구현체 역할이다.
레포를 /plugin marketplace add anthropics/skills 한 줄로 Claude Code에 등록할 수 있고, document-skills·example-skills·claude-api 세 개의 플러그인 번들로 묶여서 배포된다. "오픈소스 스킬을 npm처럼 설치"하는 시대의 본보기.
경쟁 제품(ChatGPT, Gemini)이 문서 생성 기능을 "블랙박스 API"로 감추는 동안, Anthropic은 자기네가 실제로 돌리는 스킬을 그대로 읽을 수 있게 공개했다. 라이선스만 source-available로 잠가두고 코드는 100% 공개. 개발자가 똑같이 따라 하면 동등한 수준의 문서 생성 파이프라인을 만들 수 있다. 이 결정 자체가 큰 신호다.
| 접근 | 대표 사례 | 장단점 |
|---|---|---|
| Skill (Anthropic) | 이 레포 | 폴더 + Markdown → 양식 단순. 다른 에이전트도 호환. Progressive Disclosure로 토큰 절약 |
| Custom GPTs | OpenAI | GPT Store 종속. Markdown 아닌 자체 빌더. 코드 공유 불가 |
| Gems | Google Gemini | Gemini 앱 종속. 외부 도구 약함 |
| Agent 프롬프트 | 대부분의 OSS | "system prompt 전체를 매번 로드" → 토큰 폭발. 동적 로딩 없음 |
언어 분포(파이썬 84%·HTML 12%·Shell 2%·JS 1%) — 왜 이런 비율인지
스킬 자체의 "선언 부분"은 코드가 아니라 마크다운 문서다.
---
name: my-skill-name
description: A clear description of what this skill does and when to use it
---
# My Skill Name
[Add your instructions here that Claude will follow when this skill is active]
## Examples
- Example usage 1
- Example usage 2
## Guidelines
- Guideline 1
- Guideline 2
요구 필드는 두 개뿐이다.
name — 스킬 식별자 (소문자, 공백 대신 하이픈)description — 무엇을 하는지 + 언제 써야 하는지스킬의 본체는 Markdown이지만, "반복적이고 결정론적인 작업"은 Python 스크립트로 번들한다. 예시:
docx 패키지(JS) · pandoc · XML 직접 편집pypdf·pdfplumber·reportlab·pytesseract 조합PptxGenJS(JS npm) · markitdown · XML 직접 편집openpyxl + 수식·차트 자동화aggregate_benchmark.py·run_loop.py·generate_review.py 등 평가 자동화 스크립트두 곳에서 등장한다.
eval-viewer/generate_review.py) — 스킬 결과를 사람이 검토할 수 있게 HTML로 뽑아준다. 두 탭(Outputs / Benchmark) + 자동 저장 피드백 + 직전 iteration과 diff 비교.패키징 스크립트(package_skill.py가 내부에서 zip 호출), 일부 웹 아티팩트의 인라인 JS.
.claude-plugin/marketplace.json이 레포는 동시에 Claude Code 플러그인 마켓플레이스이기도 하다. 루트의 manifest는 다음 기존 3개 묶음에 academy-guide·discernment-nudge를 더한 5개 플러그인을 노출한다.
{
"name": "anthropic-agent-skills",
"plugins": [
{ "name": "document-skills",
"skills": ["./skills/xlsx","./skills/docx","./skills/pptx","./skills/pdf"] },
{ "name": "example-skills",
"skills": ["./skills/algorithmic-art","./skills/brand-guidelines","./skills/canvas-design",
"./skills/doc-coauthoring","./skills/frontend-design","./skills/internal-comms",
"./skills/mcp-builder","./skills/skill-creator","./skills/slack-gif-creator",
"./skills/theme-factory","./skills/web-artifacts-builder","./skills/webapp-testing"] },
{ "name": "claude-api",
"skills": ["./skills/claude-api"] }
]
}
즉 사용자는 /plugin install document-skills@anthropic-agent-skills 한 줄로 4개 스킬을 한꺼번에 받는다.
스킬이 토큰을 어떻게 절약하는가
LLM의 컨텍스트는 비싸다. 20개 스킬을 다 항상 로드하면 토큰이 폭발한다. Progressive Disclosure는 "표지(메타)만 항상 본다 → 펼칠 책 한 권만 펼친다 → 필요한 페이지만 본다"는 도서관 모델로 이걸 해결한다.
실제 효과: 16개 스킬이 다 들어있어도 평소 컨텍스트 점유는 단 1.6k 토큰 수준(=메타 16개). PDF를 다룰 때만 본문 ~500줄이 추가로 로드된다.
스킬이 여러 변형(클라우드 프로바이더, 언어, OS 등)을 지원할 때는 본 SKILL.md는 분기 로직만 두고, 변형별 디테일은 references/ 아래로 분리한다.
cloud-deploy/
├── SKILL.md (워크플로 + 어느 references/ 파일을 읽을지)
└── references/
├── aws.md
├── gcp.md
└── azure.md
이러면 사용자가 GCP 작업을 요청해도 aws.md나 azure.md는 컨텍스트에 안 들어온다. mcp-builder가 정확히 이 패턴이다 — reference/node_mcp_server.md vs reference/python_mcp_server.md 분기.
2~3개 테스트에 맞게 fine-tune하는 함정을 피하라. 실제 사용은 백만 번의 다양한 프롬프트에서 일어난다. 너무 협소한 MUST/NEVER를 박지 말고, 모델이 왜 그렇게 해야 하는지 이해할 수 있게 써라.
오늘날의 LLM은 똑똑하다. 이유를 알면 엣지 케이스에서 알아서 판단한다. ALWAYS·NEVER를 대문자로 박는 건 yellow flag — 가능하면 이유를 풀어 써라.
3번의 테스트 모두에서 모델이 create_docx.py 같은 헬퍼를 즉석에서 짜고 있다면, 그 스크립트를 미리 scripts/에 박아라. 매번 휠을 다시 만들 필요가 없다.
모델이 길을 헤매게 만드는 문구는 빼라. 트랜스크립트(transcripts)를 읽고, 모델이 "잡일에 시간 쓰는" 부분이 보이면 그 부분을 유발하는 텍스트를 잘라내라.
이 레포가 다른 스킬 모음과 결정적으로 다른 부분이다. skill-creator는 스킬을 코드처럼 평가하는 표준 워크플로를 강제한다.
핵심 통찰: "with-skill"과 "baseline"을 동시에 돌리는 비교 실험 구조. 스킬이 정말 도움이 되는지를 정량적으로 본다. 또한 "with-skill보다 baseline이 더 잘 푸는 assertion"이 있다면 그건 스킬이 모델을 오히려 방해하고 있다는 신호 — 그 문장을 제거할 단서가 된다.
스킬은 description이 좋아야 발화한다. skill-creator는 run_loop.py로 description을 자동 튜닝하는 루프까지 제공한다.
"description은 트리거 조건"이라는 관점이 명확해진 순간, description 자체를 정량 평가의 대상으로 만들 수 있다. 이건 단순한 프롬프트 엔지니어링이 아니라 "발화 분류기를 데이터로 튜닝"하는 ML 방법론에 가깝다.
루트와 19개 스킬 폴더의 역할
academy-guide는 사용자가 기능을 배우려는 의도가 분명할 때 학습 카탈로그에서 관련 자료를 찾도록 구성한다. 이미 진행 중인 작업에 무관한 강좌를 붙이지 않고, 확인하지 않은 제목·URL을 만들지 않는 조건이 본문에 있다. discernment-nudge는 행동으로 이어질 답변 뒤에 확인 질문 2~3개를 붙이는 예제이며, 대화당 한 번·단순 조회·코드 작성·이미 검토를 요청한 경우의 제외 조건을 별도로 둔다.
둘 다 모델이나 실행 서버를 추가하는 코드가 아니라 SKILL.md의 트리거·제외 조건을 설계한 사례다. 스킬 디렉터리 19개와 marketplace의 플러그인 5개는 서로 다른 단위다. 폴더 하나를 더한 것과 설치 묶음을 바꾼 것을 구분해 실습한다.
skill-creator/scripts/quick_validate.py는 frontmatter를 YAML로 읽고 허용 키·필수 name/description·문자열 길이 등을 검사한다. 형식 검증이 “적절한 상황에만 호출되는가”라는 행동 평가를 대신하지 않는다.
대조: 고정 커밋 ca45fc496a34의 README, marketplace.json, 두 새 SKILL.md, quick_validate.py. 여기서는 저장소 내용을 분석했으며 스킬 설치나 모델 호출은 수행하지 않았다.
| 카테고리 | 스킬 | 핵심 가치 |
|---|---|---|
| 문서 생성 (Document) | docx · pdf · pptx · xlsx | Claude.ai 운영 코드 그대로. npm docx(JS)·pandoc / pypdf·pdfplumber / PptxGenJS+markitdown / openpyxl 베스트 프랙티스 집약 |
| 창작 (Creative) | algorithmic-art · canvas-design · slack-gif-creator · theme-factory | p5.js·SVG·GIF·디자인 토큰. "디자인 의사결정의 휴리스틱"이 코드보다 중요 |
| 개발 도구 (Dev) | mcp-builder · skill-creator · webapp-testing · web-artifacts-builder · frontend-design · claude-api | 메타 스킬. "스킬을 만드는 스킬", "MCP를 만드는 스킬" — 자기 참조 구조 |
| 커뮤니케이션 (Comms) | internal-comms · doc-coauthoring · brand-guidelines | Anthropic 사내 톤·양식 가이드. 회사 글쓰기의 표준화 사례 |
이 4개는 SKILL.md 첫 줄에 license: Proprietary. LICENSE.txt has complete terms가 박혀 있다. 코드는 읽을 수 있지만 무단 재사용/재배포는 제한된다. 학습 목적과 패턴 차용은 가능하지만, 그대로 자기 제품에 박아넣는 건 안 된다. 스킬마다 개별 LICENSE.txt를 확인해야 하며, 새 폴더를 포함해 저장소 전체가 같은 허가 조건이라고 가정하지 않는다.
각 스킬에서 무엇을 훔쳐올 수 있나
skill-creator — 메타 학습의 정수핵심 아이디어: 프롬프트를 "한 번에 잘 쓰려는 글"이 아니라 "테스트 케이스로 정량 평가하면서 점진 개선하는 코드"로 본다. evals/assertions/grader/aggregator/viewer로 이어지는 파이프라인을 통째로 학습할 수 있다.
훔쳐올 것:
evals.json 스키마 (prompt + expected + files)실습 아이디어: 사내에서 자주 쓰는 "회의록 요약" 스킬을 만들어 evals 3개로 평가 → 베이스라인 대비 토큰·정확도를 측정해 보라.
mcp-builder — MCP 서버 표준 매뉴얼이 스킬은 MCP 서버를 만드는 4단계 흐름을 가르친다. 권장 스택은 TypeScript + Streamable HTTP + 무상태 JSON (확장성 + AI 친화). 도구 명명은 github_create_issue처럼 prefix + action-verb. readOnlyHint·destructiveHint·idempotentHint·openWorldHint annotation 4종으로 안전성 신호.
훔쳐올 것: API 커버리지 vs 워크플로 도구의 트레이드오프, Zod/Pydantic 입력 스키마 패턴, 평가 질문 10개를 어떻게 짜는가(독립적·읽기 전용·복잡·현실적·검증 가능·안정적).
pdf — Python PDF 처리 베스트 프랙티스pypdf(병합·분할·메타데이터), pdfplumber(텍스트·테이블 추출), reportlab(생성), pytesseract+pdf2image(OCR), CLI는 qpdf·pdftotext. 각 작업에 어떤 도구가 최선인지를 표 한 장(Quick Reference)으로 정리한 것이 큰 가치.
훔쳐올 것: "유니코드 첨자(₀₁₂₃) 금지, <sub>/<super> 태그 쓸 것" 같은 함정 공유. 모델이 모를 만한 디테일을 미리 박아두는 패턴.
docx / pptx / xlsx — 운영 사례 그대로Claude.ai에서 실제로 매일 돌아가는 코드. npm docx(JS)·pandoc·XML 직접 편집으로 Word 파일 생성/편집, PptxGenJS로 신규 생성·markitdown/XML로 편집, openpyxl로 수식·차트·피벗을 어디까지 자동화할 수 있는지의 한계선이 한 곳에 정리돼 있다.
brand-guidelines / internal-comms — 회사 톤의 표준화Anthropic이 어떻게 자기 톤/색/타이포를 모델에 주입하는지의 실물 샘플. "왜 그렇게 쓰는지의 이유"가 잔뜩 적혀 있어서 다른 회사가 자기 가이드를 만들 때 그대로 따라할 수 있는 골격.
web-artifacts-builder / frontend-design — 인터랙티브 산출물React + Tailwind + shadcn/ui로 멀티 컴포넌트 아티팩트를 짜는 가이드. 단일 파일 HTML/JSX와의 트레이드오프, 상태 관리·라우팅이 필요할 때만 쓸 것 등 의사결정 기준 명시.
실제로 깔아서 돌리려면
| 환경 | 요구사항 | 설치 방법 |
|---|---|---|
| Claude Code (CLI) | 최신 버전. /plugin 명령 지원 | /plugin marketplace add anthropics/skills → /plugin install document-skills@anthropic-agent-skills |
| Claude.ai (웹) | 유료 플랜 | 이미 기본 탑재. 별도 업로드도 가능 (Settings > Skills) |
| Claude API | API key + Skills API quickstart 따라가기 | SDK에서 skill object로 업로드 후 messages 호출 시 첨부 |
| 타사 에이전트 | agentskills.io 호환되는 클라이언트 (Cursor·Codex·Kiro·OpenCode 등) | 각자 문서 참고 — 검색 경로·설치 방식은 각 클라이언트 문서로 확인 |
pypdf, pdfplumber, reportlab, (OCR 시) pytesseract + pdf2image + Tesseract 시스템 바이너리docx 패키지(JS), pandocPptxGenJS(JS npm), markitdownopenpyxl, 차트를 위해 matplotlib 등 추가될 수 있음claude CLI (description 자동 튜닝 시)algorithmic-art / brand-guidelines / canvas-design / claude-api / doc-coauthoring / frontend-design / internal-comms / mcp-builder / skill-creator / slack-gif-creator / theme-factory / web-artifacts-builder / webapp-testing — 자기 제품에 그대로 가져다 써도 됨.
docx / pdf / pptx / xlsx — 코드 열람은 가능, 재배포·상업적 재사용은 LICENSE.txt 조건을 확인해야 함. 학습용으로는 자유롭게 읽되, "복붙해서 자기 SaaS 출시"는 안 됨.
난이도별 5개
목표: template/SKILL.md를 복사해서 name: company-email-tone으로 바꾸고, "사내 메일에서 자주 쓰는 표현 10개 + 피해야 할 표현 10개"를 담은 스킬을 만들어라.
핵심 학습: YAML frontmatter 작성, description을 "약간 pushy하게" 쓰는 감각, 본문 500줄 이하로 압축하는 훈련.
pdf 스킬을 fork해서 "한글 PDF 표 추출"에 특화목표: pdfplumber의 extract_tables()가 한글 PDF에서 자주 깨지는 케이스(셀 병합, 회전 표) 대응 스크립트를 scripts/에 추가하고 SKILL.md에 트리거 조건을 명시하라.
핵심 학습: 도메인 특화 fork. references/와 scripts/의 역할 분리.
목표: 실습 1에서 만든 이메일 스킬에 evals 3개를 작성하고, aggregate_benchmark.py까지 돌려 "스킬 유무" 결과 차이를 표로 만들어라.
핵심 학습: 비교 실험 사고법. 어떤 assertion이 "non-discriminating(있으나마나)"인지 발견하기.
mcp-builder로 자기 회사 API용 MCP 서버 만들기목표: 사내 어떤 REST API라도 좋다 — Phase 1(리서치) → Phase 2(TS 구현) → Phase 3(테스트) → Phase 4(10개 평가질문 작성) 4단계를 그대로 따라 한 MCP 서버 v1.0을 출시.
핵심 학습: 표준 워크플로의 실전 체화. tool naming convention, annotation 4종 사용.
목표: 실습 1~3에서 만든 스킬들을 모아 .claude-plugin/marketplace.json을 작성하고, /plugin marketplace add <your-org/your-repo>로 동료가 설치 가능하도록 배포.
핵심 학습: 스킬을 "공유 가능한 자산"으로 패키징. anthropics/skills의 manifest 그대로 모방. 사내 표준 스킬 라이브러리의 시작점.
8주 코스
| 주차 | 주제 | 실습 |
|---|---|---|
| 1주차 | Agent Skill 표준 이해 | agentskills.io spec 읽기, template/SKILL.md로 첫 스킬 만들기 |
| 2주차 | Progressive Disclosure 패턴 | 실습 1: 회사 이메일 어조 스킬 |
| 3주차 | 스크립트 번들과 references/ | 실습 2: pdf 스킬 한글 특화 fork |
| 4주차 | evals 작성과 정량 평가 | 실습 3: skill-creator 평가 루프 |
| 5주차 | description 자동 튜닝 | run_loop.py로 description 최적화 실험 |
| 6주차 | MCP 서버 표준 | 실습 4: mcp-builder로 사내 API MCP 서버 |
| 7주차 | Plugin Marketplace 배포 | 실습 5: 자기 레포를 마켓플레이스로 |
| 8주차 | 운영 스킬 분석 | docx/pdf/pptx/xlsx 4개 코드 읽고 자기 회사용 운영 스킬 1개 설계 |
처음 보면 헷갈리는 용어 정리
SKILL.md를 포함한 폴더. LLM에게 도메인 작업을 가르치는 표준 단위. name·description이 필수 YAML 필드.---로 감싼 메타데이터 블록. 정적 사이트 생성기에서 흔히 쓰는 양식. SKILL.md에선 name·description 같은 키를 담는다..claude-plugin/marketplace.json이 있으면 /plugin marketplace add owner/repo로 누구나 등록 가능.더 깊이 파고들 때
/specification)support.claude.com)anthropic.com/engineering)