byteforce

CPN 한국어 자습서 · 러닝패스 1 / 4 — Agent Skills

4장

스킬과 다른 조정 방법들

Introduction to agent skills · Skills vs other Claude Code features

스킬은 Claude Code의 여러 조정 방법 중 하나입니다. CLAUDE.md, 서브에이전트(subagents), 훅(hooks), MCP 서버 — 각각 푸는 문제가 다릅니다. 이 장은 이들을 나란히 놓고, 어떤 상황에 무엇을 고르면 좋을지 정리합니다. 모르는 이름이 나와도 괜찮습니다. 바로 아래에서 하나씩 풀어 씁니다.

이 장에서 배우는 것What you'll learn

약 15분
1

스킬을 CLAUDE.md·서브에이전트·훅·MCP 서버와 비교하기

2

상황에 맞는 조정 방법 고르기

3

항상 로드 vs 필요할 때 로드, 이벤트 발동 vs 요청 발동 구분하기

4

여러 기능을 함께 쓰는 설정 설계하기

이 자습서를 보는 법

영어 영상을 먼저 본 뒤, 여기서 한국어로 따라 읽고 손으로 익히는 교재입니다. 점선 친 단어는 올리거나 탭하면 뜻이 나오고, 곳곳에 직접 눌러 보는 인터랙티브 도구가 있습니다. 읽은 만큼 ‘완료’를 누르면 위 진도 바가 찹니다.

실습 환경

먼저, 이 장에 나오는 낯선 단어
CLAUDE.md
프로젝트에 항상 적용할 지침을 적어 두는 파일입니다. 모든 대화에 자동으로 따라붙습니다. (예: “이 프로젝트에선 TypeScript strict 모드를 쓴다.”)
서브에이전트 (Subagent)
본 대화와 분리된 별도 공간에서 작업을 따로 처리하고 결과만 돌려주는 도우미입니다.
훅 (Hook)
정해진 사건이 일어나면 자동으로 실행되는 동작입니다. (예: 파일을 저장할 때마다 검사 도구 실행.)
MCP 서버
Claude를 외부 서비스·도구(데이터베이스, 이슈 트래커 등)에 연결해 주는 통로입니다.
이벤트 (Event)
무언가 ‘일어나는’ 순간입니다. 예: 파일 저장, 도구 호출 직전. 훅은 이 이벤트에 맞춰 발동합니다.

조정 방법이 여럿인 이유

스킬 하나로 모든 걸 해결하려 들면 오히려 일이 꼬입니다.

Claude Code가 조정 방법을 여러 개 둔 건, 문제마다 결이 다르기 때문입니다. 다음 세 가지 축만 잡으면 선택이 쉬워집니다 — 항상 vs 필요할 때, 같은 자리 vs 따로, 요청 vs 이벤트.

한눈에

스킬은 ‘주제가 맞을 때 자동으로 적용할 작업 지식’에 가장 잘 맞습니다. 나머지 도구들은 그 옆을 메웁니다.

영상 내용, 한국어로

Video walkthrough

먼저 영상을 보세요. 영어가 어렵다면 아래 한국어를 같이 읽으면 됩니다. 자동 번역과 달리, 낯선 용어를 풀어서 옮겼습니다.

영상 · Skills vs other Claude Code features약 3분 · 영어코스에서 영상 보기 →

영상 대본 — 영어 영상을 보며 같이 읽으세요 (타임스탬프 기준).

0:02Claude Code에는 조정 방법이 여럿입니다 — 스킬, CLAUDE.md, 서브에이전트, 훅, MCP 서버. 각각 푸는 문제가 다릅니다. 언제 무엇을 쓸지 알면 엉뚱한 걸 만드는 일을 막습니다.
0:18CLAUDE.md는 모든 대화에 항상 따라붙습니다. 이 프로젝트에서 TypeScript를 strict 모드로 쓰게 하려면 여기에 적어 둡니다. 반면 스킬은 필요할 때만 불려 옵니다.
0:34예컨대 PR 리뷰 체크리스트는 새 코드를 짤 땐 떠 있을 필요가 없습니다. 리뷰를 요청할 때 발동합니다.
0:42그러니 CLAUDE.md는 늘 적용할 표준에 — “데이터베이스 스키마는 절대 바꾸지 마라” 같은 제약, 프레임워크 선택, 코딩 스타일에 씁니다.
0:53스킬은 특정 작업의 전문지식, 가끔만 필요한 지식, 매번 두면 거치적거릴 자세한 절차에 씁니다.
1:04스킬은 지금 대화에 지식을 더합니다 — 발동하면 그 지침이 지금 컨텍스트에 합류하죠. 반면 서브에이전트는 별도 공간에서 돕니다. 일을 받아 따로 처리하고 결과만 돌려줍니다.
1:18그래서 서브에이전트는 — 작업을 분리된 공간에 위임할 때, 본 대화와 다른 도구 권한이 필요할 때, 위임한 일과 내 대화를 격리하고 싶을 때 씁니다.
1:34지금 작업에 Claude의 지식을 보강하고, 그 전문지식이 대화 내내 유지돼야 할 때는 스킬을 씁니다.
1:42훅은 ‘사건’이 일어날 때 발동합니다. 파일을 저장할 때마다 검사 도구를 돌리거나, 특정 도구 호출 전 입력을 검증하는 식이죠. 훅은 이벤트 기반, 스킬은 요청 기반입니다.
1:58그러니 훅은 파일 저장마다 할 동작, 특정 도구 호출 전 검증, Claude 동작에 딸린 자동 부수 작업에 씁니다.
2:05스킬은 Claude가 요청을 다루는 방식에 영향을 주는 지식, 판단에 작용하는 지침에 씁니다.
2:15보통의 구성은 — 늘 적용할 표준은 CLAUDE.md, 특정 작업 전문지식은 스킬, 자동 동작은 훅. 각자 잘하는 일이 따로 있습니다. 더 맞는 게 있는데 전부 스킬에 욱여넣지 마세요. 여러 개를 함께 써도 됩니다.
2:34정리하면 — 스킬은 자동으로 적용되는 작업별 전문지식, CLAUDE.md는 늘 적용되는 지침, 서브에이전트는 격리된 공간, 훅은 이벤트 발동, MCP는 외부 도구입니다. 주제가 맞을 때 자동으로 쓸 지식이면 스킬을 쓰고, 다른 기능과 조합하세요.

다섯 가지 조정 방법, 한눈에

The five options

Claude Code를 조정하는 방법은 다섯 가지입니다. 이름만 보면 헷갈리지만, ‘언제·어떻게 작동하는지’가 다릅니다. 아래에서 상황을 하나 골라 [실행]하면, 그 일에 가장 맞는 도구가 켜지고 이유가 나옵니다.

결정 라우터 — 상황을 고르면 맞는 조정 방법이 점등됩니다.

직접 해보기 · 어떤 도구를 쓸까

상황을 하나 고르고 [실행]을 누르세요. 다섯 도구 중 그 일에 맞는 하나가 켜지고, 왜 그런지 설명이 나옵니다.

상황

조정 방법

CLAUDE.md늘 적용되는 지침
Skills작업별 전문지식 · 요청 시
Hooks이벤트에 자동 실행
Subagents격리된 별도 공간
MCP 서버외부 도구 연결

전부 스킬에 욱여넣지 마세요. 더 맞는 도구가 있으면 그쪽을 쓰고, 여러 개를 함께 써도 됩니다.

CLAUDE.md와 스킬 — 항상 vs 필요할 때

CLAUDE.md vs Skills

CLAUDE.md모든 대화에 항상 들어옵니다. 프로젝트 표준을 한 번 적어 두면, 새 대화를 시작할 때마다 자동으로 따라붙습니다. 예를 들면 이런 파일입니다. (원문은 영어입니다.)

CLAUDE.md — project root
project-root › CLAUDE.md
1
2
3
4
5
6
# Project Standards
Always apply these in this project.

- Use TypeScript strict mode.
- Never modify the database schema directly.
- Match the existing folder structure and naming.

반면 스킬은 필요할 때만 들어옵니다. pr-review 스킬은 PR 리뷰를 요청할 때 발동하고, 새 코드를 짤 때는 가만히 폴더에 있습니다. 아래에서 요청을 골라, 무엇이 컨텍스트Claude가 한 대화에서 한 번에 다루는 정보의 양. 가득 찰수록 효율이 떨어집니다.에 떠 있는지 직접 확인해 보세요.

항상 vs 필요할 때 — 요청에 따라 컨텍스트에 올라오는 것이 달라집니다.

직접 해보기 · 항상 vs 필요할 때

요청을 골라 [보내기]를 누르세요. CLAUDE.md는 늘 떠 있고, 스킬은 그 요청에 필요할 때만 합류합니다.

프로젝트에 둔 것CLAUDE.md는 항상, 스킬은 필요할 때만

CLAUDE.md

프로젝트 표준 · TypeScript strict, 코딩 스타일

항상 로드

pr-review (스킬)

PR 리뷰 체크리스트

요청 시 로드

컨텍스트 윈도우지금 작업 기억에 올라온 것

CLAUDE.md · 프로젝트 표준 (항상)
스킬은 아직 올라오지 않음

요청:

새 코드를 짤 때는 리뷰 지식이 필요 없어 스킬이 안 올라옵니다. 리뷰를 요청할 때만 스킬이 합류하죠. CLAUDE.md는 두 경우 모두 항상 떠 있습니다.

직접 해보기 내 CLAUDE.md에 표준 한 줄 적어 보기

프로젝트 루트의 CLAUDE.md에 늘 지킬 규칙을 한 줄 적어 두세요. 모든 대화에 자동으로 적용됩니다.

그다음, 굳이 항상 필요하진 않은 전문지식(예: PR 리뷰 체크리스트)은 스킬로 빼 두면 깔끔합니다.

CLAUDE.md와 스킬은 PC(Claude Code) 전용입니다. 위 도구로 ‘항상 vs 필요할 때’의 차이를 익혀 두고, PC에서 직접 확인해 보세요.

스킬과 서브에이전트 — 같은 자리 vs 따로

Skills vs Subagents

스킬은 지금 대화와 같은 컨텍스트에 지식을 더합니다. 스킬이 발동하면 그 지침이 지금 대화에 합류하고, 대화 내내 함께 유지됩니다.

서브에이전트본 대화와 분리된 별도 공간에서 작업을 따로 처리하고 결과만 돌려주는 도우미.는 다릅니다. 일을 받아 분리된 별도 공간에서 따로 처리한 뒤, 결과만 본 대화로 돌려줍니다. 둘이 어떻게 다른지 그림으로 보면 이렇습니다.

스킬은 같은 컨텍스트에 합류, 서브에이전트는 격리된 별도 공간.

스킬 · 같은 자리

본 대화 컨텍스트내가 묻고 Claude가 답하는 공간
+ 발동한 스킬지침이 지금 대화에 합류 — 끝까지 함께

하나의 컨텍스트에서 계속 이어집니다.

서브에이전트 · 따로

본 대화 컨텍스트“이 작업 좀 맡아줘” 하고 위임
서브에이전트 컨텍스트 (격리)별도 공간에서 따로 처리 · 다른 도구 권한 가능

↑ 결과만 본 대화로 돌아옵니다.

그래서 서브에이전트는 다음일 때 씁니다.

반대로 그 전문지식이 지금 대화에 계속 남아 있어야 한다면, 스킬이 맞습니다.

스킬과 훅 — 요청 vs 이벤트

Skills vs Hooks

정해진 사건(파일 저장 등)이 일어나면 자동으로 실행되는 동작.‘사건(이벤트)’이 일어날 때 발동합니다. 파일을 저장할 때마다 검사 도구를 돌리거나, 특정 도구 호출 직전에 입력을 검증하는 식이죠. 무엇을 요청했는지는 상관없습니다 — 그 사건이 일어나면 자동으로 돕니다.

반면 스킬은 ‘요청’에 발동합니다. 내가 무엇을 어떻게 요청하는지(말투)에 맞춰 켜집니다. 둘이 어떻게 다른지, 아래에서 직접 일으켜 보세요.

트리거 비교 — 이벤트를 일으키거나, 요청을 보내 보세요.

직접 해보기 · 무엇이 발동시키나

아래 버튼을 누르면, 그게 ‘이벤트’인지 ‘요청’인지에 따라 훅과 스킬 중 맞는 쪽이 발동합니다.

이벤트 기반

대기 중

스킬 요청 기반

대기 중

이벤트가 일어남
내가 요청함

함께 쓰기

Putting it all together

지금까지 본 다섯은 경쟁 관계가 아니라 역할 분담입니다. 한 프로젝트 안에서 보통 이렇게 함께 쓰입니다.

한 프로젝트 안의 다섯 역할 — 각자 잘하는 일이 따로 있습니다.

한 프로젝트, 다섯 역할

CLAUDE.md항상프로젝트 전체에 늘 적용할 표준·제약·코딩 스타일
Skills요청 시특정 작업의 전문지식 — 그 일을 요청할 때 발동
Hooks이벤트 시파일 저장·도구 호출 같은 사건에 자동 실행
Subagents위임 시격리된 별도 공간에서 따로 처리하고 결과만 회수
MCP 서버연결 시데이터베이스·이슈 트래커 등 외부 도구로 잇는 통로
핵심

더 맞는 도구가 있는데 전부 스킬에 욱여넣지 마세요. 여러 개를 함께 쓰면 됩니다. 스킬은 그중 ‘주제가 맞을 때 자동으로 적용할 작업 지식’을 맡습니다.

한 줄 정리

스스로 점검

Check yourself

정답을 먼저 떠올려 본 뒤 골라 보세요. 맞히면 설명이 나옵니다.

Q1CLAUDE.md와 스킬의 가장 큰 차이는 무엇인가요?

Q2파일을 저장할 때마다 자동으로 검사 도구를 돌리고 싶습니다. 무엇을 쓰나요?

Q3본 대화와 분리된 별도 공간에서 작업을 따로 처리하고 결과만 받고 싶습니다. 무엇이 맞나요?

생각해보기