테마
10. Claude Skill 시스템
점진적 로딩 기반의 확장 시스템으로, Claude가 더 잘 일할 수 있도록 업무 매뉴얼을 제공하는 방법을 이해한다.
1. Claude Skill이란?
Claude Skill은 Claude가 특정 작업을 더 잘 수행할 수 있도록 미리 작성해 둔 업무 매뉴얼이다. 사람이 새 업무를 맡을 때 매뉴얼을 읽고 따라하듯, Claude도 스킬 문서를 읽고 그 지침에 따라 작업한다.
핵심 개념
| 개념 | 설명 |
|---|---|
| 정체 | Claude가 읽는 업무 매뉴얼 (마크다운 문서 + 스크립트 묶음) |
| 사용처 | Claude Desktop, Claude Code, Claude API 등 모든 Claude 제품 |
| 활성화 | 사용자가 명시적으로 호출할 필요 없음. Claude가 자동으로 판단해서 필요한 스킬을 사용 |
| 목적 | 반복 작업의 품질과 일관성을 높이고, 토큰 효율을 극대화 |
대표 스킬 예시
PPT-X 스킬 → "프레젠테이션 만들어줘" → Claude가 자동으로 PPT-X 스킬 활성화
Web Artifact Builder → "웹 앱 만들어줘" → Claude가 자동으로 Web Artifact Builder 활성화
차트 생성 스킬 → "매출 데이터 시각화" → Claude가 자동으로 차트 스킬 활성화사용자가 "이 스킬 써" 라고 말할 필요가 없다. Claude가 대화 맥락에서 어떤 스킬이 필요한지 스스로 판단한다. 이것이 Custom Command와의 가장 큰 차이점이다.
Claude Skill의 위치 (전체 확장 시스템 안에서)
2. 스킬의 구조
하나의 스킬은 하나의 폴더다. 폴더 안에 Claude가 읽을 문서와 실행할 스크립트가 들어 있다.
폴더 구조
my-skill/
├── Skill.md # 지침서 (필수) - Claude가 제일 먼저 읽는 매뉴얼
├── reference.md # 참고자료 (선택) - 상세 설명을 분리해 둔 문서
├── examples.md # 예시 모음 (선택) - 구체적인 사용 예시
└── scripts/ # 스크립트 (선택) - 자동화 실행 코드
├── setup.sh
└── validate.py각 파일의 역할
Skill.md 상세 구성
(1) Frontmatter - 스킬의 신분증
yaml
---
name: "프레젠테이션 생성기" # 최대 64자. 스킬의 이름
description: "마크다운 콘텐츠를 받아서 전문적인 PPT-X 프레젠테이션을 생성합니다. 슬라이드 레이아웃, 디자인 테마, 애니메이션 설정을 자동으로 처리합니다."
# 최대 1024자. 언제 이 스킬을 쓰는지 Claude에게 알려주는 핵심 설명
---왜 Frontmatter가 중요한가?
Claude는 시작할 때 모든 스킬의 Frontmatter만 먼저 읽는다. 이 짧은 메타데이터만으로 "이 스킬이 지금 필요한가?"를 판단한다. 따라서 description이 명확하지 않으면 Claude가 적절한 타이밍에 스킬을 활성화하지 못한다.
좋은 description 작성 원칙:
- 무엇을 하는 스킬인지 명확히 기술
- 어떤 상황에서 쓰이는지 트리거 조건 포함
- 입력과 출력 간략히 언급
yaml
# 나쁜 예시 - 너무 모호
description: "문서를 만듭니다"
# 좋은 예시 - 명확한 트리거와 용도
description: "마크다운이나 텍스트 콘텐츠를 전문적인 PPT-X 프레젠테이션으로 변환합니다. 슬라이드 레이아웃 자동 배치, 디자인 테마 적용, 차트 삽입을 지원합니다."(2) 본문 - 단계별 가이드
Frontmatter 아래에 Claude가 실제로 따를 지침을 작성한다. 500줄 이하가 권장이다.
markdown
## 작업 절차
1. 사용자로부터 콘텐츠 주제를 확인한다
2. 콘텐츠를 슬라이드 단위로 분할한다
3. 각 슬라이드에 적절한 레이아웃을 배정한다
4. 디자인 테마를 적용한다
5. PPT-X 파일을 생성한다
## 레이아웃 규칙
- 제목 슬라이드: 메인 타이틀 + 서브 타이틀
- 콘텐츠 슬라이드: 제목 + 최대 5개 불릿 포인트
- 이미지 슬라이드: 제목 + 이미지 + 캡션
## 주의사항
- 한 슬라이드에 텍스트를 과도하게 넣지 않는다
- 색상은 지정된 테마 팔레트 내에서 선택한다(3) 참고자료 참조 - 마크다운 링크로 연결
본문에서 상세한 내용은 별도 파일로 분리하고, 마크다운 링크로 참조한다.
markdown
## 디자인 가이드
기본 레이아웃은 위 규칙을 따르되, 고급 레이아웃이 필요한 경우
[고급 레이아웃 가이드](reference.md)를 참고한다.Claude는 이 링크를 만나면 필요할 때만 reference.md를 열어서 읽는다. 처음부터 모든 참고자료를 로딩하지 않는다.
(4) 스크립트 실행 - 실행 방법만 기재
markdown
## 환경 설정
작업을 시작하기 전에 환경을 설정한다:
\`\`\`bash
bash scripts/setup.sh
\`\`\`
이 스크립트는 필요한 의존성을 설치하고 템플릿 디렉토리를 준비한다.핵심: Claude는 스크립트의 소스 코드를 읽지 않는다. 실행만 하고 결과를 받는다. 스크립트가 1,000줄이든 10,000줄이든 컨텍스트에 영향을 주지 않는다.
3. 점진적 로딩 (Progressive Disclosure) - 핵심 개념
점진적 로딩은 Claude Skill 시스템의 가장 중요한 설계 원칙이다. 기존의 모든 확장 시스템(Custom Command, SubAgent, MCP)이 가진 공통 문제를 해결한다.
기존 확장 시스템의 문제
Custom Command 10개 등록 (각 500줄)
→ 시작 시 10 x 500줄 = 5,000줄 전체 로딩
→ 실제 사용하는 건 1~2개
→ 나머지 8개는 컨텍스트만 차지하며 낭비
MCP 서버 5개 연결 (각 도구 설명 200줄)
→ 시작 시 5 x 200줄 = 1,000줄 전체 로딩
→ 실제 호출하는 건 1~2개
→ 나머지는 토큰 낭비이 문제는 확장 도구가 많아질수록 심각해진다. 20개, 50개, 100개의 확장 도구를 등록하면 시작만 해도 컨텍스트의 상당 부분을 소비한다.
점진적 로딩의 3단계
Claude Skill은 이 문제를 3단계 점진적 로딩으로 해결한다.
Level 1: 메타데이터 로딩 (시작 시 자동)
[시작 시점]
Claude가 읽는 것:
┌─────────────────────────────────┐
│ 스킬 A: name="PPT-X" │ ~100 토큰
│ desc="프레젠테이션 생성" │
├─────────────────────────────────┤
│ 스킬 B: name="웹 빌더" │ ~100 토큰
│ desc="웹 앱 생성" │
├─────────────────────────────────┤
│ 스킬 C: name="차트 생성" │ ~100 토큰
│ desc="데이터 시각화" │
├─────────────────────────────────┤
│ ... (97개 더) │
└─────────────────────────────────┘
합계: 100개 스킬 x ~100 토큰 = ~10,000 토큰
(전체 컨텍스트의 약 0.5%에 불과)핵심 포인트:
- 모든 스킬의 Frontmatter(name + description)만 읽는다
- 스킬당 약 100 토큰밖에 차지하지 않는다
- 100개 스킬을 설치해도 총 약 10,000 토큰으로 관리 가능
- 이 단계에서 Claude는 "어떤 스킬이 있고, 각각 언제 쓰이는지" 를 파악한다
- Skill.md 본문, 참고자료, 스크립트는 전혀 읽지 않는다
Level 2: 스킬 로딩 (스킬이 필요해진 시점)
[사용자: "프레젠테이션 만들어줘"]
Claude의 판단 과정:
1. Frontmatter 목록에서 "PPT-X" 스킬 발견
2. description: "마크다운 콘텐츠를 프레젠테이션으로 변환"
3. → 지금 필요한 스킬이다!
Claude가 추가로 읽는 것:
┌─────────────────────────────────┐
│ PPT-X 스킬의 Skill.md 본문 │
│ │
│ ## 작업 절차 │
│ 1. 콘텐츠 주제 확인 │
│ 2. 슬라이드 단위 분할 │
│ 3. 레이아웃 배정 │
│ ... │
│ │
│ ~5,000 토큰 미만 │
└─────────────────────────────────┘
읽지 않는 것:
- reference.md (아직 필요 없음)
- scripts/ (아직 필요 없음)
- 나머지 99개 스킬의 본문 (관련 없음)핵심 포인트:
- 필요한 스킬 하나의 Skill.md 본문만 로딩한다
- 5,000 토큰 미만으로 제한 권장
- 이 단계에서 Claude는 "구체적으로 어떻게 작업하는지" 를 파악한다
- 나머지 99개 스킬의 본문은 여전히 로딩하지 않는다
Level 3: 참조 & 코드 로딩 (작업 도중 필요한 순간)
[Claude가 Skill.md를 따라 작업하다가...]
"고급 레이아웃이 필요한 경우 [고급 레이아웃 가이드](reference.md)를 참고"
→ Claude: "이 사용자는 복잡한 레이아웃을 원하니까, reference.md를 읽어야겠다"
→ reference.md 로딩 (필요한 부분만)
"작업 전에 bash scripts/setup.sh 실행"
→ Claude: 스크립트 실행
→ 결과: "Setup complete. Template directory ready."
→ 이 한 줄만 컨텍스트에 추가 (스크립트 소스 코드는 읽지 않음!)핵심 포인트:
- 참고자료: 링크를 만나면 그때 해당 파일을 열어서 읽는다
- 스크립트: 코드를 읽지 않고 실행만 한다. 결과만 컨텍스트에 들어온다
- 스크립트가 내부적으로 얼마나 복잡하든 상관없다
- 토큰을 사실상 무제한으로 활용할 수 있다
토큰 효율성 비교
시작 시 토큰 사용 시 토큰 총 효율
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Custom Command 전체 로딩 추가 없음 나쁨 (사용 안 해도 점유)
(10개, 각 500줄) ~50,000 토큰
SubAgent 전체 로딩 추가 없음 나쁨 (사용 안 해도 점유)
(5개, 각 300줄) ~15,000 토큰
MCP 전체 로딩 추가 없음 나쁨 (사용 안 해도 점유)
(5개 서버) ~10,000 토큰
Claude Skill 메타만 로딩 필요한 것만 최고
(100개 스킬) ~10,000 토큰 ~5,000 토큰
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━100개의 Claude Skill이 10개의 Custom Command보다 시작 시 토큰을 적게 쓴다. 이것이 점진적 로딩의 핵심이다.
4. 기존 도구와의 비교
Claude의 확장 시스템은 여러 가지가 있다. 각각의 특징과 차이를 정리한다.
비교 테이블
| 항목 | Custom Command | SubAgent | MCP | Claude Skill |
|---|---|---|---|---|
| 작동 방식 | 명령어 직접 입력 (/command) | 자연어로 자동 판단 | 자연어로 자동 판단 | 자연어로 자동 판단 |
| 이식성 | Claude Code만 | Claude Code만 | MCP 지원 플랫폼 | 모든 Claude 제품 |
| 메모리 전략 | 전체 로딩 | 전체 로딩 | 전체 로딩 | 점진적 로딩 |
| 스크립트 실행 | 불가 | 불가 | 제한적 | 직접 실행 |
| 토큰 효율 | 보통 | 보통 | 보통 | 최고 |
| 조합 사용 | 수동 조합 | 제한적 | 제한적 | 자동 조합 |
| 확장 한계 | 많아지면 컨텍스트 압박 | 많아지면 컨텍스트 압박 | 많아지면 컨텍스트 압박 | 수백 개도 가능 |
비교 다이어그램
각 도구의 적합한 용도
| 도구 | 이런 상황에 적합 |
|---|---|
| Custom Command | 팀 내에서 자주 쓰는 정형화된 작업. /review, /deploy 등 명시적 트리거가 자연스러운 경우 |
| SubAgent | 특정 분야의 전문가 역할을 분리하고 싶을 때. 코드 리뷰어, 보안 감사 등 |
| MCP | 외부 서비스(DB, API, 파일 시스템 등)와 실시간 연동이 필요할 때 |
| Claude Skill | 재사용 가능한 작업 패턴이 많고, 토큰 효율이 중요하며, 여러 Claude 제품에서 동일하게 사용하고 싶을 때 |
5. 스킬의 강력한 특징: 조합 (Composable)
Claude Skill의 또 다른 핵심 장점은 조합 가능성이다. 여러 스킬을 동시에 사용할 수 있고, Claude가 자동으로 필요한 스킬을 조합한다.
조합 작동 원리
조합 예시
예시 1: "워드 문서에 데이터 차트 넣어줘"
→ 문서 생성 스킬 + 차트 생성 스킬 자동 조합
예시 2: "웹 앱 만들고 프레젠테이션으로 기획서도 작성해줘"
→ Web Artifact Builder 스킬 + PPT-X 스킬 자동 조합
예시 3: "API 문서를 한국어로 번역하고 PDF로 만들어줘"
→ 번역 스킬 + PDF 생성 스킬 자동 조합
예시 4: "코드 리뷰 결과를 슬라이드로 정리해줘"
→ 코드 분석 스킬 + PPT-X 스킬 자동 조합레고 블록 비유
스킬은 레고 블록과 같다.
┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐
│ 문서 │ │ 차트 │ │ 번역 │ │ 웹 앱 │
│ 생성 │ │ 생성 │ │ │ │ 빌더 │
└────────┘ └────────┘ └────────┘ └────────┘
↕ ↕ ↕ ↕
자유롭게 조합하여 복합 작업 수행 가능
"문서 + 차트" = 차트가 포함된 보고서
"번역 + 문서" = 다국어 문서
"웹 앱 + 차트" = 대시보드
"문서 + 차트 + 번역" = 다국어 차트 보고서각 스킬은 독립적으로 동작하면서도, Claude가 필요에 따라 조합해서 사용할 수 있다. 사용자는 "이 스킬과 저 스킬을 조합해" 라고 말할 필요 없이, 원하는 결과만 말하면 된다.
조합 시 토큰 효율
조합해서 사용해도 점진적 로딩이 유지된다.
100개 스킬 설치 상태에서 "차트가 포함된 워드 문서 만들어줘" 요청:
Level 1: 100개 스킬 메타데이터 = ~10,000 토큰
Level 2: 문서 스킬 본문 + 차트 스킬 본문 = ~10,000 토큰 (5,000 x 2)
Level 3: 필요한 참고자료 + 스크립트 결과 = 필요한 만큼만
총 소비: ~20,000 토큰 + 알파
나머지 98개 스킬 본문: 로딩 안 함 (0 토큰)6. 스킬 만드는 방법
방법 1: Claude Desktop의 스킬 크리에이터 활용
가장 쉬운 방법이다. Claude Desktop에는 스킬을 만들어 주는 스킬 크리에이터 스킬이 내장되어 있다.
사용자: "PPT 만드는 스킬을 만들어줘"
Claude: (스킬 크리에이터 스킬 자동 활성화)
→ Skill.md 생성
→ 필요한 참고자료 생성
→ 스크립트 생성
→ 완성된 스킬 폴더 제공방법 2: 수동으로 직접 작성
- 스킬 폴더 생성
bash
mkdir my-awesome-skill
cd my-awesome-skill- Skill.md 작성
markdown
---
name: "나의 멋진 스킬"
description: "이 스킬은 특정 작업을 수행합니다. 사용자가 X를 요청하면 활성화됩니다."
---
## 개요
이 스킬은 Y 작업을 Z 방식으로 수행한다.
## 작업 절차
1. 첫 번째 단계
2. 두 번째 단계
3. 세 번째 단계
## 규칙
- 규칙 A
- 규칙 B
## 참고
상세 내용은 [참고자료](reference.md)를 확인한다.- (선택) 참고자료 작성
markdown
# 상세 참고자료
## 고급 규칙
...- (선택) 스크립트 작성
bash
#!/bin/bash
# scripts/setup.sh
echo "환경 설정 완료"방법 3: 스킬 업로드
- Claude Desktop 또는 해당 Claude 제품의 설정 메뉴로 이동
- 기능 > 스킬 섹션 찾기
- 스킬 폴더를 업로드
- 업로드된 스킬이 목록에 나타나면 완료
Anthropic 공식 스킬 저장소
Anthropic은 공식 스킬 저장소를 제공한다. 이미 만들어진 고품질 스킬을 설치해서 바로 사용할 수 있다.
공식 스킬 예시:
- PPT-X: 프레젠테이션 생성
- Web Artifact Builder: 웹 앱 개발
- Data Analyzer: 데이터 분석 및 시각화
- Code Reviewer: 코드 리뷰 자동화좋은 스킬을 만드는 팁
| 원칙 | 설명 |
|---|---|
| Frontmatter를 명확하게 | description에 언제 이 스킬이 쓰이는지 구체적으로 작성 |
| 본문은 간결하게 | 500줄 이하. 핵심 절차와 규칙만 포함 |
| 상세 내용은 분리 | 긴 참고자료는 별도 파일로 분리하고 링크로 연결 |
| 스크립트 적극 활용 | 복잡한 로직은 스크립트로 처리하여 토큰 절약 |
| 한 가지 역할에 집중 | 스킬 하나가 너무 많은 일을 하면 안 됨. 조합으로 해결 |
| 테스트 충분히 | 다양한 요청으로 스킬이 정확히 활성화되는지 확인 |
7. 점진적 로딩 심화: 왜 이것이 혁신인가
점진적 로딩이 왜 중요한지 다시 한번 구체적인 시나리오로 설명한다.
시나리오: 100개 스킬이 설치된 환경
전통적 방식 (Custom Command / MCP / SubAgent):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
시작 시: 100개 x 평균 500줄 = 50,000줄 로딩
토큰: 약 500,000 토큰 (컨텍스트의 50%)
결과: 시작하자마자 컨텍스트 절반이 찬 상태
→ 실제 작업에 쓸 수 있는 공간이 절반으로 감소
→ 대화가 길어지면 금방 컨텍스트 한계에 도달
→ 성능 저하, 정확도 감소
Claude Skill 방식:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
시작 시: 100개 x 메타데이터 ~100 토큰 = ~10,000 토큰 (컨텍스트의 1%)
사용 시: 필요한 스킬 1~2개 본문 = ~10,000 토큰 추가
합계: 약 20,000 토큰 (컨텍스트의 2%)
결과: 98%의 컨텍스트가 실제 작업에 사용 가능
→ 긴 대화도 문제 없음
→ 복잡한 작업도 충분한 공간
→ 성능 유지, 정확도 유지스크립트 실행의 토큰 혁명
스크립트가 컨텍스트를 차지하지 않는다는 점은 혁신적이다.
시나리오: 데이터 분석 스킬이 1,000줄짜리 Python 스크립트를 실행
MCP 방식:
→ 1,000줄 코드를 컨텍스트에 로딩해야 할 수 있음
→ ~10,000 토큰 소비
Claude Skill 방식:
→ "bash scripts/analyze.py" 실행
→ 결과: "분석 완료. 매출 전년 대비 15% 증가. 상세 리포트: output/report.csv"
→ 컨텍스트에 들어간 것: 위의 한 줄 (~20 토큰)
→ 절약: 약 9,980 토큰스크립트가 아무리 복잡해도, 컨텍스트에는 실행 결과만 들어간다. 이것은 사실상 무제한의 로직을 토큰 부담 없이 활용할 수 있다는 뜻이다.
8. 핵심 정리
3가지 핵심 키워드
┌─────────────────────────────────────────────┐
│ Claude Skill = 3가지 핵심 │
│ │
│ 1. 점진적 로딩 → 수백 개 설치해도 성능 유지 │
│ 2. 스크립트 실행 → 토큰 부담 없는 복잡한 로직 │
│ 3. 조합 가능 → 레고처럼 자유롭게 조합 │
│ │
└─────────────────────────────────────────────┘기존 도구 대비 장점 요약
| 기존 도구의 한계 | Claude Skill의 해결책 |
|---|---|
| 전체 로딩으로 토큰 낭비 | 점진적 로딩으로 필요한 것만 로딩 |
| 확장 도구가 많으면 성능 저하 | 수백 개 설치해도 시작 시 ~10,000 토큰 |
| 특정 플랫폼에서만 사용 가능 | 모든 Claude 제품에서 사용 가능 |
| 스크립트 실행 제한적 | 스크립트 직접 실행, 결과만 컨텍스트에 |
| 도구 간 조합 어려움 | Claude가 자동으로 필요한 스킬 조합 |
| 사용자가 명시적으로 호출 필요 (Custom Command) | Claude가 자동으로 판단해서 사용 |
점진적 로딩 3단계 요약
Level 1 (시작) → Frontmatter만 읽기 → "뭐가 있는지" 파악 → ~100 토큰/스킬
Level 2 (사용 시) → Skill.md 본문 로딩 → "어떻게 하는지" 확인 → ~5,000 토큰
Level 3 (필요 시) → 참고자료 + 스크립트 → "상세 내용 + 자동화" → 필요한 만큼만기억해야 할 것
- 스킬은 업무 매뉴얼이다. Claude가 읽고 따르는 지침서다.
- Frontmatter(신분증)가 가장 중요하다. 여기서 Claude가 스킬 사용 여부를 결정한다.
- 점진적 로딩이 핵심이다. 기존 도구들과의 가장 큰 차별점이다.
- 스크립트는 읽지 않고 실행만 한다. 복잡한 로직도 토큰 부담 없이 처리한다.
- 조합이 가능하다. 단일 스킬을 잘 만들면, Claude가 알아서 조합해서 쓴다.
- 수백 개 설치해도 괜찮다. 점진적 로딩 덕분에 성능 저하가 없다.
다음 단계
이전 챕터: 09. 개발 워크플로우 - PRD부터 배포까지 체계적 개발 프로세스
다음 챕터: 11. 프롬프트 엔지니어링 - 효과적인 프롬프트 작성과 토큰 최적화
스킬 시스템을 이해했다면, 다음으로 프롬프트 엔지니어링을 학습하여 Claude와의 소통 자체를 최적화하는 방법을 익히자. 좋은 프롬프트 + 적절한 스킬 조합이 Claude 활용의 정점이다.