Skip to content

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 CommandSubAgentMCPClaude 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: 수동으로 직접 작성

  1. 스킬 폴더 생성
bash
mkdir my-awesome-skill
cd my-awesome-skill
  1. Skill.md 작성
markdown
---
name: "나의 멋진 스킬"
description: "이 스킬은 특정 작업을 수행합니다. 사용자가 X를 요청하면 활성화됩니다."
---

## 개요

이 스킬은 Y 작업을 Z 방식으로 수행한다.

## 작업 절차

1. 첫 번째 단계
2. 두 번째 단계
3. 세 번째 단계

## 규칙

- 규칙 A
- 규칙 B

## 참고

상세 내용은 [참고자료](reference.md)를 확인한다.
  1. (선택) 참고자료 작성
markdown
# 상세 참고자료

## 고급 규칙

...
  1. (선택) 스크립트 작성
bash
#!/bin/bash
# scripts/setup.sh
echo "환경 설정 완료"

방법 3: 스킬 업로드

  1. Claude Desktop 또는 해당 Claude 제품의 설정 메뉴로 이동
  2. 기능 > 스킬 섹션 찾기
  3. 스킬 폴더를 업로드
  4. 업로드된 스킬이 목록에 나타나면 완료

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 (필요 시)  → 참고자료 + 스크립트  → "상세 내용 + 자동화" → 필요한 만큼만

기억해야 할 것

  1. 스킬은 업무 매뉴얼이다. Claude가 읽고 따르는 지침서다.
  2. Frontmatter(신분증)가 가장 중요하다. 여기서 Claude가 스킬 사용 여부를 결정한다.
  3. 점진적 로딩이 핵심이다. 기존 도구들과의 가장 큰 차별점이다.
  4. 스크립트는 읽지 않고 실행만 한다. 복잡한 로직도 토큰 부담 없이 처리한다.
  5. 조합이 가능하다. 단일 스킬을 잘 만들면, Claude가 알아서 조합해서 쓴다.
  6. 수백 개 설치해도 괜찮다. 점진적 로딩 덕분에 성능 저하가 없다.

다음 단계

이전 챕터: 09. 개발 워크플로우 - PRD부터 배포까지 체계적 개발 프로세스

다음 챕터: 11. 프롬프트 엔지니어링 - 효과적인 프롬프트 작성과 토큰 최적화

스킬 시스템을 이해했다면, 다음으로 프롬프트 엔지니어링을 학습하여 Claude와의 소통 자체를 최적화하는 방법을 익히자. 좋은 프롬프트 + 적절한 스킬 조합이 Claude 활용의 정점이다.