본문으로 건너뛰기
Injoys
튜토리얼

Claude Code Rules·Skills·Agents 실전 가이드

Claude Code의 Rules, Skills, Agents는 각각 지속 지침, 재사용 절차, 격리된 작업 위임을 담당합니다. 정확한 파일 구조와 호출 방식, 보안 및 컨텍스트 관리 원칙을 실전 예제로 설명합니다.

이 글 듣기 · 텍스트 보기

15:56

음성으로 듣거나 글자만 모아 봅니다.

Claude Code Rules·Skills·Agents 실전 가이드

Supertonic 3 AI 생성 음성

0:00 15:56

광고

음원 다운로드

파일명
claude-code-rules-skills-agents-guide-ko.mp3
형식
MP3 (audio/mpeg)
재생 길이
15:56
파일 크기
10.9 MB
생성 엔진
Supertonic 3

AI 로 생성한 음성입니다.

개인적 이용 범위에서 자유롭게 내려받아 사용할 수 있습니다.

Claude Code Rules·Skills·Agents 실전 가이드

12분 분량

Claude Code Rules·Skills·Agents 실전 가이드
Claude Code의 Rules, Skills, Agents는 각각 지속 지침, 재사용 절차, 격리된 작업 위임을 담당합니다. 정확한 파일 구조와 호출 방식, 보안 및 컨텍스트 관리 원칙을 실전 예제로 설명합니다.
프로젝트 루트에 `.claude` 디렉터리를 만들고 공유 설정과 개인 설정의 범위를 구분합니다.
항상 지킬 기준은 `.claude/rules`의 Markdown 파일로 분리하고 필요하면 적용 경로를 제한합니다.
반복 절차는 `.claude/skills/<이름>/SKILL.md`에 작성하고 자동 또는 명시적 호출 방식을 설정합니다.
독립된 컨텍스트와 역할이 필요한 작업은 `.claude/agents/<이름>.md` 서브에이전트로 위임합니다.
작은 검증 작업으로 로딩, 도구 권한, 결과 품질을 확인한 뒤 팀 저장소에 반영합니다.
Claude Code의 확장 기능은 모두 같은 종류의 프롬프트가 아니다. Rules는 지속적으로 적용할 지침, Skills는 반복해서 재사용할 작업 절차, Agents는 별도 컨텍스트에서 일하는 역할별 실행자다. 세 기능을 정확히 구분하면 프롬프트 반복을 줄이면서도 메인 대화의 컨텍스트를 효율적으로 관리할 수 있다.
이 문서는 프로젝트 단위 설정을 기준으로 설명한다. Claude Code 버전에 따라 지원되는 메타데이터나 화면이 달라질 수 있으므로, 동작하지 않는 필드는 설치된 버전의 공식 문서에서 다시 확인해야 한다.
1단계: .claude 디렉터리와 설정 범위 정하기
프로젝트에서 공유할 Rules, Skills, Agents는 일반적으로 저장소 루트의 .claude 아래에 둔다.
my-project/ ├── .claude/ │ ├── rules/ │ │ ├── code-style.md │ │ └── api.md │ ├── skills/ │ │ └── fix-issue/ │ │ └── SKILL.md │ └── agents/ │ ├── code-reviewer.md │ └── test-runner.md ├── src/ └── package.json
디렉터리는 다음과 같이 만들 수 있다.
mkdir -p .claude/rules mkdir -p .claude/skills/fix-issue mkdir -p .claude/agents
.claude에 관한 두 가지 오해
· .claude가 Claude Code의 모든 지침에 반드시 필요한 것은 아니다. 프로젝트 지침은 루트의 CLAUDE.md 또는 .claude/CLAUDE.md로도 관리할 수 있고, 사용자 개인 설정은 홈 디렉터리의 ~/.claude 아래에 둘 수 있다. · 파일명은 운영체제에 따라 대소문자가 구분된다. Skill 진입 파일은 공식 형식에 맞춰 대문자 SKILL.md로 작성하는 것이 안전하다. skill.md로 저장하면 인식되지 않을 수 있다.
프로젝트 설정과 개인 설정의 선택 기준
범위 | 적합한 내용 | 예시 프로젝트 공유 | 모든 기여자가 동일하게 따라야 하는 규칙과 자동화 | 테스트 명령, 디렉터리 구조, API 규약 사용자 개인 | 개인 취향이나 저장소에 공개하면 안 되는 설정 | 개인 작업 방식, 로컬 도구 선택 로컬 전용 | 특정 컴퓨터에서만 유효한 경로나 실험 설정 | 로컬 데이터 경로, 임시 디버깅 절차
팀에서 함께 사용할 파일만 Git에 커밋한다. 비밀 키, 토큰, 내부 서버 비밀번호는 Rules나 Skills에 기록하지 않는다.
2단계: Rules로 지속 지침 만들기
Rules는 Claude가 작업할 때 참고해야 하는 프로젝트 지침을 여러 Markdown 파일로 나누어 관리하는 기능이다. .claude/rules 아래에 있는 규칙 가운데 paths 조건이 없는 파일은 프로젝트 지침으로 로드되며, 경로 조건을 지정한 파일은 관련 파일을 다룰 때 적용된다.
기본 Rule 예제
.claude/rules/code-style.md를 다음처럼 작성할 수 있다.
# 코드 작성 원칙 - 새 애플리케이션 코드는 TypeScript로 작성한다. - 공개 함수에는 입력값, 반환값, 실패 조건을 설명한다. - 기존 테스트를 삭제해서 실패를 숨기지 않는다. - 변경 후 관련 테스트와 타입 검사를 실행한다. - 설명은 한국어로 작성하되 코드 식별자는 기존 명명 규칙을 따른다.
좋은 Rule은 검증할 수 있다. “코드를 멋지게 작성한다”보다 “변경 후 npm test와 npm run typecheck를 실행한다”가 명확하다.
특정 경로에만 적용하는 Rule
프런트엔드와 백엔드의 규칙이 다르면 YAML front matter의 paths로 범위를 좁힐 수 있다.
--- paths: - "src/api/**/*.ts" - "tests/api/**/*.ts" --- # API 규칙 - 모든 API 입력은 스키마로 검증한다. - 인증 실패와 권한 부족을 서로 다른 오류로 처리한다. - 엔드포인트를 변경하면 대응하는 API 테스트도 갱신한다.
경로별 규칙은 불필요한 지침이 모든 작업의 컨텍스트를 차지하는 문제를 줄여준다.
Rules에 넣지 말아야 할 내용
· 한 번만 수행할 마이그레이션 절차 · 특정 이슈에만 필요한 상세 요구사항 · 서로 충돌하는 절대 지시 · 이미 코드나 린터 설정으로 강제되는 내용을 길게 반복한 문장 · 비밀번호, API 키, 고객 정보 등 민감한 데이터
Rules는 “무조건 따르는 마법의 보장 장치”가 아니다. 모호하거나 상충하는 지침이 있으면 결과가 달라질 수 있으므로 테스트, 린터, 권한 통제 같은 결정적 검증 수단을 함께 사용해야 한다.
3단계: Skills로 반복 절차 자동화하기
Skill은 설명, 작업 절차, 필요 도구, 보조 자료를 하나의 재사용 가능한 단위로 묶는다. 프로젝트 Skill의 기본 구조는 .claude/skills/<skill-name>/SKILL.md이며, 필요하면 같은 디렉터리에 템플릿이나 스크립트를 추가할 수 있다.
Rules와 달리 Skill은 특정 작업에 필요할 때 사용된다. Claude가 Skill의 설명을 보고 자동으로 선택할 수도 있고, 사용자가 /<skill-name> 형식으로 명시적으로 호출할 수도 있다. 반드시 수동으로만 작동하는 것은 아니다.
이슈 수정 Skill 예제
.claude/skills/fix-issue/SKILL.md 예시는 다음과 같다.
--- name: fix-issue description: 버그를 재현하고 원인을 좁힌 뒤 최소 수정과 회귀 테스트를 수행한다. disable-model-invocation: true allowed-tools: Read, Grep, Glob, Edit, Bash(npm test:*) --- # 이슈 수정 절차 대상 이슈: $ARGUMENTS 1. 관련 코드와 기존 테스트를 조사한다. 2. 수정 전에 재현 방법과 예상 동작을 정리한다. 3. 근본 원인을 한 문단으로 설명한다. 4. 영향 범위가 가장 작은 수정을 적용한다. 5. 회귀 테스트를 추가하거나 기존 테스트가 문제를 검증하는지 확인한다. 6. 허용된 테스트를 실행하고 결과를 요약한다. 7. 변경 파일, 남은 위험, 수동 확인 항목을 보고한다.
이 Skill은 다음처럼 호출할 수 있다.
/fix-issue 로그인 후 프로필 사진이 갱신되지 않는 문제
disable-model-invocation: true는 Claude가 임의로 이 Skill을 실행하지 않고 사용자가 직접 호출하도록 제한할 때 유용하다. 지원되는 front matter 필드는 Claude Code 버전에 따라 달라질 수 있다.
설계 우선 Skill 예제
바로 코딩하는 대신 설계 문서를 먼저 만들게 하려면 다음 흐름을 Skill에 넣을 수 있다.
· 요구사항과 모호한 부분을 분리한다. · 기존 구조와 재사용 가능한 모듈을 조사한다. · 데이터 흐름, 인터페이스, 실패 조건을 설계한다. · docs/design/ 아래에 설계 문서를 작성한다. · 사용자의 승인 또는 명시된 승인 조건을 확인한 후 구현한다. · 테스트와 롤백 방법을 제시한다.
좋은 Skill의 조건
· 입력과 최종 산출물이 분명하다. · 절차의 순서와 중단 조건이 명시돼 있다. · 필요한 도구만 허용한다. · 긴 참고 자료는 별도 파일로 분리한다. · 실패했을 때 임의로 계속 진행하지 않고 보고하도록 한다. · 한 Skill이 지나치게 많은 목적을 갖지 않는다.
커밋 작성, 코드 리뷰, 릴리스 점검, API 설계처럼 반복되면서 시작과 끝이 분명한 작업이 Skill에 적합하다.
4단계: Agents로 역할과 컨텍스트 분리하기
Claude Code의 서브에이전트는 별도의 컨텍스트에서 특정 역할을 수행하고 결과를 메인 대화로 돌려준다. 메인 컨텍스트에 대량의 검색 결과나 테스트 로그를 모두 누적하고 싶지 않을 때 유용하다.
프로젝트 에이전트는 일반적으로 .claude/agents/<agent-name>.md에 정의한다. /agents 명령을 통해 에이전트를 확인하거나 관리할 수 있으며, 자연어로 특정 에이전트에게 위임하도록 요청할 수도 있다.
코드 리뷰 에이전트 예제
.claude/agents/code-reviewer.md를 다음과 같이 작성할 수 있다.
--- name: code-reviewer description: 변경된 코드에서 결함, 보안 위험, 테스트 누락을 검토하는 읽기 중심 리뷰어 tools: Read, Grep, Glob, Bash model: sonnet --- 당신은 코드 리뷰 전담 에이전트다. 다음 우선순위로 검토한다. 1. 실제 장애나 데이터 손실을 일으킬 수 있는 결함 2. 인증, 권한, 입력 검증과 관련된 보안 문제 3. 동시성, 트랜잭션, 오류 처리 문제 4. 요구사항을 검증하지 못하는 테스트 누락 5. 유지보수성을 크게 떨어뜨리는 구조 각 발견 사항에는 파일 경로, 근거, 발생 조건, 최소 수정 방향을 포함한다. 근거 없는 스타일 취향은 결함으로 보고하지 않는다. 코드를 직접 수정하지 말고 리뷰 결과만 반환한다.
다음과 같이 요청할 수 있다.
code-reviewer 에이전트에게 현재 브랜치의 변경 사항을 검토하게 해줘.
Skill과 Agent의 차이
기준 | Rules | Skills | Agents 핵심 목적 | 지속 지침 제공 | 반복 절차 재사용 | 역할별 작업 위임 적용 시점 | 항상 또는 경로 조건에 따라 | 자동 선택 또는 명시적 호출 | Claude의 위임 또는 사용자 요청 컨텍스트 | 메인 작업에 지침으로 포함 | 주로 현재 작업 흐름에서 실행 | 별도 컨텍스트에서 수행 후 결과 반환 대표 예 | 코딩 표준 | 이슈 수정 절차 | 코드 리뷰어 저장 위치 | .claude/rules/*.md | .claude/skills/<이름>/SKILL.md | .claude/agents/*.md
Agents와 Agent Teams는 다르다
일반 서브에이전트가 별도 컨텍스트를 쓴다는 사실이 곧 에이전트끼리 자유롭게 대화한다는 뜻은 아니다. 일반적인 서브에이전트는 맡은 일을 수행하고 결과를 메인 에이전트에 반환하는 위임 구조다. 여러 독립 세션이 서로 메시지를 주고받는 Agent Teams 기능은 별도의 기능이며, 지원 상태와 활성화 조건을 공식 문서에서 확인해야 한다.
에이전트가 다른 에이전트를 연쇄적으로 계속 생성한다고 전제해 워크플로를 설계하면 버전이나 권한 제약 때문에 실패할 수 있다. 먼저 메인 에이전트가 역할별 서브에이전트에 일을 나누고 결과를 종합하는 단순한 구조로 시작하는 편이 안전하다.
5단계: 로딩·권한·품질 검증하기
설정 파일을 만들었다고 해서 의도대로 작동한다고 가정하면 안 된다. 작은 작업으로 각 구성요소를 따로 검증한다.
권장 검증 순서
· Rules 확인: 규칙이 적용되는 파일과 적용되지 않는 파일을 각각 요청해 경로 조건을 확인한다. · Skills 확인: 명시적으로 Skill을 호출하고 입력 인수, 산출물, 중단 조건이 작동하는지 본다. · Agents 확인: 읽기 전용 리뷰처럼 위험이 낮은 작업을 맡기고 결과 형식을 점검한다. · 권한 확인: Bash, Edit 등 변경 가능 도구가 꼭 필요한 구성에만 부여됐는지 검토한다. · 자동 검증: 테스트, 타입 검사, 린터, 보안 검사로 AI 결과를 독립적으로 확인한다.
실패할 때 확인할 항목
· .claude가 실제 프로젝트 루트에 있는가? · Skill 파일명이 정확히 SKILL.md인가? · Skill이 .claude/skills/<이름>/SKILL.md 구조에 있는가? · Agent 파일이 .claude/agents 바로 아래의 Markdown 파일인가? · YAML front matter의 시작과 끝을 ---로 닫았는가? · name과 description이 작업을 구별할 만큼 구체적인가? · 경로 패턴이 실제 프로젝트 구조와 일치하는가? · 설치된 Claude Code 버전이 사용한 메타데이터를 지원하는가? · 도구 권한 또는 조직 정책이 실행을 차단하고 있지 않은가?
컨텍스트 예산과 보안을 함께 설계해야 하는 이유
Rules, Skills, Agents의 목적은 기능 추가만이 아니다. 어떤 정보를 언제 컨텍스트에 넣을지 통제하는 컨텍스트 엔지니어링 수단이기도 하다.
규칙을 지나치게 길게 만들면 현재 작업과 무관한 지침이 컨텍스트를 차지하고 충돌 가능성도 커진다. 반대로 탐색과 로그 분석을 서브에이전트에 맡기면 메인 대화에는 결론과 근거만 남길 수 있다.
보안 측면에서는 다음 원칙이 중요하다.
· Rules와 Skills도 저장소의 다른 코드처럼 리뷰한다. · 외부에서 받은 Agent나 Skill 파일을 실행 전에 읽어본다. · 셸 명령, 네트워크 접근, 파일 수정 권한은 최소화한다. · 사용자 입력이나 이슈 본문에 포함된 명령을 무조건 신뢰하지 않는다. · 배포, 삭제, 결제, 데이터 마이그레이션에는 사람의 승인 단계를 둔다. · 비밀 정보는 프롬프트 파일에 저장하지 말고 별도의 비밀 관리 체계를 사용한다.
어떤 기능을 선택해야 하나
다음 질문으로 빠르게 결정할 수 있다.
· 모든 관련 작업이 따라야 하는가? → Rule · 시작과 끝이 있는 반복 절차인가? → Skill · 별도 역할과 독립된 컨텍스트가 필요한가? → Agent · 특정 이벤트 전후에 결정적인 명령을 실행해야 하는가? → Hook 검토
예를 들어 “TypeScript를 사용한다”는 Rule이고, “버그 재현부터 회귀 테스트까지 수행한다”는 Skill이다. “변경 내용을 읽고 보안 결함만 보고한다”는 Agent에 적합하다. 파일 편집 후 포매터를 반드시 실행하는 것처럼 특정 이벤트에 연결된 동작은 Hooks가 더 적합할 수 있다.
가장 안정적인 구성은 세 기능을 경쟁 관계로 보지 않고 조합하는 것이다. Rule로 공통 기준을 제공하고, Skill로 표준 절차를 실행하며, Agent로 조사·리뷰처럼 컨텍스트가 큰 작업을 분리한 뒤 테스트와 Hooks로 결정적 검증을 보완한다.
0:00 0:00
1 / 76

광고

텍스트 다운로드

파일명
claude-code-rules-skills-agents-guide-ko.txt
형식
TXT (text/plain)
문단 수
76

화면에 보이는 것과 같은 내용을 텍스트 파일로 받습니다.

출처 표기와 함께 인용해 주세요.

큰글씨 모드

글자를 크게 키우고 색을 또렷하게 바꿔 드립니다. 글자가 작아 읽기 힘드실 때 켜 보세요.

개발자가 노트북에서 프로젝트 파일과 자동화 작업 상태를 확인하고 있다.AI 생성 이미지

이미지

규칙과 자동화 단계가 보안 계층을 거쳐 테스트와 검증으로 이어지는 구조를 보여준다.AI 생성 이미지
프로젝트 구조부터 규칙 재사용, 에이전트 위임, 결과 검증까지의 실전 흐름을 정리합니다.AI 생성 이미지

핵심 요약

  • 프로젝트 루트에 `.claude` 디렉터리를 만들고 공유 설정과 개인 설정의 범위를 구분합니다.
  • 항상 지킬 기준은 `.claude/rules`의 Markdown 파일로 분리하고 필요하면 적용 경로를 제한합니다.
  • 반복 절차는 `.claude/skills/<이름>/SKILL.md`에 작성하고 자동 또는 명시적 호출 방식을 설정합니다.
  • 독립된 컨텍스트와 역할이 필요한 작업은 `.claude/agents/<이름>.md` 서브에이전트로 위임합니다.
  • 작은 검증 작업으로 로딩, 도구 권한, 결과 품질을 확인한 뒤 팀 저장소에 반영합니다.

Claude Code의 확장 기능은 모두 같은 종류의 프롬프트가 아니다. Rules는 지속적으로 적용할 지침, Skills는 반복해서 재사용할 작업 절차, Agents는 별도 컨텍스트에서 일하는 역할별 실행자다. 세 기능을 정확히 구분하면 프롬프트 반복을 줄이면서도 메인 대화의 컨텍스트를 효율적으로 관리할 수 있다.

이 문서는 프로젝트 단위 설정을 기준으로 설명한다. Claude Code 버전에 따라 지원되는 메타데이터나 화면이 달라질 수 있으므로, 동작하지 않는 필드는 설치된 버전의 공식 문서에서 다시 확인해야 한다.

1단계: .claude 디렉터리와 설정 범위 정하기

프로젝트에서 공유할 Rules, Skills, Agents는 일반적으로 저장소 루트의 .claude 아래에 둔다.

my-project/
├── .claude/
│   ├── rules/
│   │   ├── code-style.md
│   │   └── api.md
│   ├── skills/
│   │   └── fix-issue/
│   │       └── SKILL.md
│   └── agents/
│       ├── code-reviewer.md
│       └── test-runner.md
├── src/
└── package.json

디렉터리는 다음과 같이 만들 수 있다.

mkdir -p .claude/rules
mkdir -p .claude/skills/fix-issue
mkdir -p .claude/agents

.claude에 관한 두 가지 오해

  1. .claude가 Claude Code의 모든 지침에 반드시 필요한 것은 아니다. 프로젝트 지침은 루트의 CLAUDE.md 또는 .claude/CLAUDE.md로도 관리할 수 있고, 사용자 개인 설정은 홈 디렉터리의 ~/.claude 아래에 둘 수 있다.
  2. 파일명은 운영체제에 따라 대소문자가 구분된다. Skill 진입 파일은 공식 형식에 맞춰 대문자 SKILL.md로 작성하는 것이 안전하다. skill.md로 저장하면 인식되지 않을 수 있다.

프로젝트 설정과 개인 설정의 선택 기준

범위 적합한 내용 예시
프로젝트 공유 모든 기여자가 동일하게 따라야 하는 규칙과 자동화 테스트 명령, 디렉터리 구조, API 규약
사용자 개인 개인 취향이나 저장소에 공개하면 안 되는 설정 개인 작업 방식, 로컬 도구 선택
로컬 전용 특정 컴퓨터에서만 유효한 경로나 실험 설정 로컬 데이터 경로, 임시 디버깅 절차

팀에서 함께 사용할 파일만 Git에 커밋한다. 비밀 키, 토큰, 내부 서버 비밀번호는 Rules나 Skills에 기록하지 않는다.

2단계: Rules로 지속 지침 만들기

Rules는 Claude가 작업할 때 참고해야 하는 프로젝트 지침을 여러 Markdown 파일로 나누어 관리하는 기능이다. .claude/rules 아래에 있는 규칙 가운데 paths 조건이 없는 파일은 프로젝트 지침으로 로드되며, 경로 조건을 지정한 파일은 관련 파일을 다룰 때 적용된다.

기본 Rule 예제

.claude/rules/code-style.md를 다음처럼 작성할 수 있다.

# 코드 작성 원칙

- 새 애플리케이션 코드는 TypeScript로 작성한다.
- 공개 함수에는 입력값, 반환값, 실패 조건을 설명한다.
- 기존 테스트를 삭제해서 실패를 숨기지 않는다.
- 변경 후 관련 테스트와 타입 검사를 실행한다.
- 설명은 한국어로 작성하되 코드 식별자는 기존 명명 규칙을 따른다.

좋은 Rule은 검증할 수 있다. “코드를 멋지게 작성한다”보다 “변경 후 npm testnpm run typecheck를 실행한다”가 명확하다.

특정 경로에만 적용하는 Rule

프런트엔드와 백엔드의 규칙이 다르면 YAML front matter의 paths로 범위를 좁힐 수 있다.

---
paths:
  - "src/api/**/*.ts"
  - "tests/api/**/*.ts"
---

# API 규칙

- 모든 API 입력은 스키마로 검증한다.
- 인증 실패와 권한 부족을 서로 다른 오류로 처리한다.
- 엔드포인트를 변경하면 대응하는 API 테스트도 갱신한다.

경로별 규칙은 불필요한 지침이 모든 작업의 컨텍스트를 차지하는 문제를 줄여준다.

Rules에 넣지 말아야 할 내용

  • 한 번만 수행할 마이그레이션 절차
  • 특정 이슈에만 필요한 상세 요구사항
  • 서로 충돌하는 절대 지시
  • 이미 코드나 린터 설정으로 강제되는 내용을 길게 반복한 문장
  • 비밀번호, API 키, 고객 정보 등 민감한 데이터

Rules는 “무조건 따르는 마법의 보장 장치”가 아니다. 모호하거나 상충하는 지침이 있으면 결과가 달라질 수 있으므로 테스트, 린터, 권한 통제 같은 결정적 검증 수단을 함께 사용해야 한다.

3단계: Skills로 반복 절차 자동화하기

Skill은 설명, 작업 절차, 필요 도구, 보조 자료를 하나의 재사용 가능한 단위로 묶는다. 프로젝트 Skill의 기본 구조는 .claude/skills/<skill-name>/SKILL.md이며, 필요하면 같은 디렉터리에 템플릿이나 스크립트를 추가할 수 있다.

Rules와 달리 Skill은 특정 작업에 필요할 때 사용된다. Claude가 Skill의 설명을 보고 자동으로 선택할 수도 있고, 사용자가 /<skill-name> 형식으로 명시적으로 호출할 수도 있다. 반드시 수동으로만 작동하는 것은 아니다.

이슈 수정 Skill 예제

.claude/skills/fix-issue/SKILL.md 예시는 다음과 같다.

---
name: fix-issue
description: 버그를 재현하고 원인을 좁힌 뒤 최소 수정과 회귀 테스트를 수행한다.
disable-model-invocation: true
allowed-tools: Read, Grep, Glob, Edit, Bash(npm test:*)
---

# 이슈 수정 절차

대상 이슈: $ARGUMENTS

1. 관련 코드와 기존 테스트를 조사한다.
2. 수정 전에 재현 방법과 예상 동작을 정리한다.
3. 근본 원인을 한 문단으로 설명한다.
4. 영향 범위가 가장 작은 수정을 적용한다.
5. 회귀 테스트를 추가하거나 기존 테스트가 문제를 검증하는지 확인한다.
6. 허용된 테스트를 실행하고 결과를 요약한다.
7. 변경 파일, 남은 위험, 수동 확인 항목을 보고한다.

이 Skill은 다음처럼 호출할 수 있다.

/fix-issue 로그인 후 프로필 사진이 갱신되지 않는 문제

disable-model-invocation: true는 Claude가 임의로 이 Skill을 실행하지 않고 사용자가 직접 호출하도록 제한할 때 유용하다. 지원되는 front matter 필드는 Claude Code 버전에 따라 달라질 수 있다.

설계 우선 Skill 예제

바로 코딩하는 대신 설계 문서를 먼저 만들게 하려면 다음 흐름을 Skill에 넣을 수 있다.

  1. 요구사항과 모호한 부분을 분리한다.
  2. 기존 구조와 재사용 가능한 모듈을 조사한다.
  3. 데이터 흐름, 인터페이스, 실패 조건을 설계한다.
  4. docs/design/ 아래에 설계 문서를 작성한다.
  5. 사용자의 승인 또는 명시된 승인 조건을 확인한 후 구현한다.
  6. 테스트와 롤백 방법을 제시한다.

좋은 Skill의 조건

  • 입력과 최종 산출물이 분명하다.
  • 절차의 순서와 중단 조건이 명시돼 있다.
  • 필요한 도구만 허용한다.
  • 긴 참고 자료는 별도 파일로 분리한다.
  • 실패했을 때 임의로 계속 진행하지 않고 보고하도록 한다.
  • 한 Skill이 지나치게 많은 목적을 갖지 않는다.

커밋 작성, 코드 리뷰, 릴리스 점검, API 설계처럼 반복되면서 시작과 끝이 분명한 작업이 Skill에 적합하다.

4단계: Agents로 역할과 컨텍스트 분리하기

Claude Code의 서브에이전트는 별도의 컨텍스트에서 특정 역할을 수행하고 결과를 메인 대화로 돌려준다. 메인 컨텍스트에 대량의 검색 결과나 테스트 로그를 모두 누적하고 싶지 않을 때 유용하다.

프로젝트 에이전트는 일반적으로 .claude/agents/<agent-name>.md에 정의한다. /agents 명령을 통해 에이전트를 확인하거나 관리할 수 있으며, 자연어로 특정 에이전트에게 위임하도록 요청할 수도 있다.

코드 리뷰 에이전트 예제

.claude/agents/code-reviewer.md를 다음과 같이 작성할 수 있다.

---
name: code-reviewer
description: 변경된 코드에서 결함, 보안 위험, 테스트 누락을 검토하는 읽기 중심 리뷰어
tools: Read, Grep, Glob, Bash
model: sonnet
---

당신은 코드 리뷰 전담 에이전트다.

다음 우선순위로 검토한다.

1. 실제 장애나 데이터 손실을 일으킬 수 있는 결함
2. 인증, 권한, 입력 검증과 관련된 보안 문제
3. 동시성, 트랜잭션, 오류 처리 문제
4. 요구사항을 검증하지 못하는 테스트 누락
5. 유지보수성을 크게 떨어뜨리는 구조

각 발견 사항에는 파일 경로, 근거, 발생 조건, 최소 수정 방향을 포함한다.
근거 없는 스타일 취향은 결함으로 보고하지 않는다.
코드를 직접 수정하지 말고 리뷰 결과만 반환한다.

다음과 같이 요청할 수 있다.

code-reviewer 에이전트에게 현재 브랜치의 변경 사항을 검토하게 해줘.

Skill과 Agent의 차이

기준 Rules Skills Agents
핵심 목적 지속 지침 제공 반복 절차 재사용 역할별 작업 위임
적용 시점 항상 또는 경로 조건에 따라 자동 선택 또는 명시적 호출 Claude의 위임 또는 사용자 요청
컨텍스트 메인 작업에 지침으로 포함 주로 현재 작업 흐름에서 실행 별도 컨텍스트에서 수행 후 결과 반환
대표 예 코딩 표준 이슈 수정 절차 코드 리뷰어
저장 위치 .claude/rules/*.md .claude/skills/<이름>/SKILL.md .claude/agents/*.md

Agents와 Agent Teams는 다르다

일반 서브에이전트가 별도 컨텍스트를 쓴다는 사실이 곧 에이전트끼리 자유롭게 대화한다는 뜻은 아니다. 일반적인 서브에이전트는 맡은 일을 수행하고 결과를 메인 에이전트에 반환하는 위임 구조다. 여러 독립 세션이 서로 메시지를 주고받는 Agent Teams 기능은 별도의 기능이며, 지원 상태와 활성화 조건을 공식 문서에서 확인해야 한다.

에이전트가 다른 에이전트를 연쇄적으로 계속 생성한다고 전제해 워크플로를 설계하면 버전이나 권한 제약 때문에 실패할 수 있다. 먼저 메인 에이전트가 역할별 서브에이전트에 일을 나누고 결과를 종합하는 단순한 구조로 시작하는 편이 안전하다.

5단계: 로딩·권한·품질 검증하기

설정 파일을 만들었다고 해서 의도대로 작동한다고 가정하면 안 된다. 작은 작업으로 각 구성요소를 따로 검증한다.

권장 검증 순서

  1. Rules 확인: 규칙이 적용되는 파일과 적용되지 않는 파일을 각각 요청해 경로 조건을 확인한다.
  2. Skills 확인: 명시적으로 Skill을 호출하고 입력 인수, 산출물, 중단 조건이 작동하는지 본다.
  3. Agents 확인: 읽기 전용 리뷰처럼 위험이 낮은 작업을 맡기고 결과 형식을 점검한다.
  4. 권한 확인: Bash, Edit 등 변경 가능 도구가 꼭 필요한 구성에만 부여됐는지 검토한다.
  5. 자동 검증: 테스트, 타입 검사, 린터, 보안 검사로 AI 결과를 독립적으로 확인한다.

실패할 때 확인할 항목

  • .claude가 실제 프로젝트 루트에 있는가?
  • Skill 파일명이 정확히 SKILL.md인가?
  • Skill이 .claude/skills/<이름>/SKILL.md 구조에 있는가?
  • Agent 파일이 .claude/agents 바로 아래의 Markdown 파일인가?
  • YAML front matter의 시작과 끝을 ---로 닫았는가?
  • namedescription이 작업을 구별할 만큼 구체적인가?
  • 경로 패턴이 실제 프로젝트 구조와 일치하는가?
  • 설치된 Claude Code 버전이 사용한 메타데이터를 지원하는가?
  • 도구 권한 또는 조직 정책이 실행을 차단하고 있지 않은가?

컨텍스트 예산과 보안을 함께 설계해야 하는 이유

Rules, Skills, Agents의 목적은 기능 추가만이 아니다. 어떤 정보를 언제 컨텍스트에 넣을지 통제하는 컨텍스트 엔지니어링 수단이기도 하다.

규칙을 지나치게 길게 만들면 현재 작업과 무관한 지침이 컨텍스트를 차지하고 충돌 가능성도 커진다. 반대로 탐색과 로그 분석을 서브에이전트에 맡기면 메인 대화에는 결론과 근거만 남길 수 있다.

보안 측면에서는 다음 원칙이 중요하다.

  • Rules와 Skills도 저장소의 다른 코드처럼 리뷰한다.
  • 외부에서 받은 Agent나 Skill 파일을 실행 전에 읽어본다.
  • 셸 명령, 네트워크 접근, 파일 수정 권한은 최소화한다.
  • 사용자 입력이나 이슈 본문에 포함된 명령을 무조건 신뢰하지 않는다.
  • 배포, 삭제, 결제, 데이터 마이그레이션에는 사람의 승인 단계를 둔다.
  • 비밀 정보는 프롬프트 파일에 저장하지 말고 별도의 비밀 관리 체계를 사용한다.

어떤 기능을 선택해야 하나

다음 질문으로 빠르게 결정할 수 있다.

  • 모든 관련 작업이 따라야 하는가? → Rule
  • 시작과 끝이 있는 반복 절차인가? → Skill
  • 별도 역할과 독립된 컨텍스트가 필요한가? → Agent
  • 특정 이벤트 전후에 결정적인 명령을 실행해야 하는가? → Hook 검토

예를 들어 “TypeScript를 사용한다”는 Rule이고, “버그 재현부터 회귀 테스트까지 수행한다”는 Skill이다. “변경 내용을 읽고 보안 결함만 보고한다”는 Agent에 적합하다. 파일 편집 후 포매터를 반드시 실행하는 것처럼 특정 이벤트에 연결된 동작은 Hooks가 더 적합할 수 있다.

가장 안정적인 구성은 세 기능을 경쟁 관계로 보지 않고 조합하는 것이다. Rule로 공통 기준을 제공하고, Skill로 표준 절차를 실행하며, Agent로 조사·리뷰처럼 컨텍스트가 큰 작업을 분리한 뒤 테스트와 Hooks로 결정적 검증을 보완한다.

로그인이 필요합니다

좋아요·댓글·문장 스크랩을 이용하려면 Google 계정으로 로그인하세요.

자주 묻는 질문

Claude Code에서 `.claude` 폴더는 반드시 필요한가요?

프로젝트용 Rules, Skills, Agents를 표준 구조로 관리할 때 사용하지만 모든 지침에 반드시 필요한 것은 아닙니다. 프로젝트 지침은 루트의 `CLAUDE.md` 또는 `.claude/CLAUDE.md`에도 둘 수 있고, 개인 설정은 `~/.claude` 아래에서 관리할 수 있습니다.

Rules와 `CLAUDE.md`는 어떤 차이가 있나요?

`CLAUDE.md`는 프로젝트의 핵심 지침을 한 문서로 제공하기에 적합합니다. `.claude/rules`는 주제별 파일 분리와 경로별 조건 적용에 유리하므로 프로젝트가 커질수록 규칙을 모듈화하는 데 도움이 됩니다.

Skill 파일명은 `skill.md`인가요, `SKILL.md`인가요?

공식 Agent Skills 구조에 맞춘 진입 파일명은 대문자 `SKILL.md`입니다. 프로젝트 Skill은 `.claude/skills/<skill-name>/SKILL.md`에 두는 것이 안전하며, 대소문자를 구분하는 운영체제에서는 `skill.md`가 다른 파일로 처리됩니다.

Claude Code Skill은 사용자가 호출할 때만 실행되나요?

항상 그런 것은 아닙니다. Claude가 Skill의 설명을 보고 적합한 작업에서 자동으로 선택할 수 있으며, 사용자가 `/<skill-name>`으로 호출할 수도 있습니다. 자동 호출을 막아야 한다면 지원되는 버전에서 `disable-model-invocation` 설정을 검토할 수 있습니다.

Skill과 Agent 중 무엇을 사용해야 하나요?

현재 작업 흐름에서 반복 절차를 실행하려면 Skill이 적합합니다. 대량 조사, 테스트 분석, 코드 리뷰처럼 별도 역할과 격리된 컨텍스트가 필요하면 Agent가 적합합니다. 공통 코딩 기준처럼 지속적으로 적용할 내용은 Rule로 분리합니다.

서브에이전트끼리 직접 대화하거나 다른 에이전트를 호출할 수 있나요?

일반적인 Claude Code 서브에이전트는 별도 컨텍스트에서 작업한 뒤 결과를 메인 에이전트에 반환하는 구조입니다. 여러 독립 세션의 직접 협업은 별도의 Agent Teams 기능과 구분해야 하며, 사용 중인 버전의 지원 상태와 제한을 확인해야 합니다.

Rules를 작성하면 Claude가 지침을 항상 완벽하게 지키나요?

아닙니다. Rules는 지속적으로 제공되는 지침이지만 결정적인 강제 장치는 아닙니다. 지침 충돌이나 모호성 때문에 누락될 수 있으므로 린터, 타입 검사, 테스트, Hooks, 코드 리뷰와 함께 사용해야 합니다.

외부에서 받은 Skill이나 Agent를 바로 사용해도 안전한가요?

바로 실행하지 않는 것이 좋습니다. 파일에 포함된 지침, 셸 명령, 허용 도구, 네트워크 및 파일 접근 범위를 먼저 검토하고 최소 권한으로 시험해야 합니다. 비밀 정보 전송이나 위험한 파일 변경을 유도하는 내용이 없는지도 확인해야 합니다.

출처

데이터 포맷

이 콘텐츠를 다양한 기계 친화 포맷으로 제공합니다.

데이터 전용 언어 (기계번역, 파일로만 제공)

인도네시아어 JSON MD 포르투갈어 JSON MD 중국어(번체) JSON MD 독일어 JSON MD

검증 정보

생성 과정에서 원자료와 대조해 본문 수치를 검증했습니다. · 2026-08-19

재사용 및 AI 활용

출처 표기를 동반한 검색 색인과 AI 인용을 환영합니다. 자세한 내용은 라이선스 정책을 확인하세요.

CC BY · 라이선스

불러오는 중…

불러오는 중…

관련 콘텐츠

별이 달린 5개 에이전트 스킬 카드와 돋보기, 평가 기준 아이콘이 놓인 저울
AI 데이터

에이전트 스킬 Top 5 비교: 인기 순위의 함정과 선택 기준

2026년 8월 10일 제공 스냅샷에 포함된 에이전트 스킬 저장소 5곳을 기능과 설계 철학 중심으로 비교한다. 저장소 별표와 설치 수가 실제 스킬 품질을 뜻하지 않는 이유, 라이선스·토큰·보안...

게시일 2026-08-16 조회수 32

중앙 AI 시스템을 순환 화살표와 성공·실패 노드 그래프가 둘러싼 다이어그램
지식 베이스

AI 에이전트의 하네스·루프·그래프 엔지니어링 순서대로 이해하기

하네스는 에이전트가 일하는 환경과 통제 장치를, 루프는 반복과 종료 규칙을, 그래프는 허용할 상태와 이동 경로를 설계한다. 세 용어는 공인된 표준 분류라기보다 AI 에이전트의 자율성과 위험을 ...

게시일 2026-08-16 조회수 54

별점이 매겨진 다섯 개의 스킬 폴더와 얼어붙은 항목을 살피는 돋보기
리포트·조사

글로벌 에이전트 스킬 Top 5: 순위 해석과 검증 기준

2026년 8월 10일자 제공 자료에서 상위권으로 제시된 에이전트 스킬 저장소 5곳의 용도와 차이를 분석한다. 표시된 순위와 수치는 재현 가능한 GitHub 스냅샷이 없어 확정 통계가 아니며,...

게시일 2026-08-14 조회수 56

코드가 표시된 노트북과 파일 트리, 권한 방패, 연결된 작업 흐름을 그린 일러스트
튜토리얼

Claude Code 기초 가이드: 설치·권한·모델·컨텍스트 관리

Claude Code의 설치와 첫 실행부터 권한 모드, 모델 선택, 컨텍스트 정리, CLAUDE.md 작성법까지 단계별로 설명한다. 원자료에서 단순화된 권한 체계와 비용 관련 내용도 공식 문서...

게시일 2026-08-13 조회수 64

인조이 서비스

읽고 싶은 글을 요청하고, 그 글이 번 수익의 70%를 받으세요

주제만 남기시면 제작·검수·번역·배포는 저희가 합니다.

수익 배분 알아보기

댓글