이 장에서 배우는 것
•
커스텀 슬래시 명령어 만들기 (/명령이름으로 실행)
•
스킬: 참고자료를 포함할 수 있는 확장판
•
Hooks: 특정 이벤트에 자동으로 실행되는 규칙
•
세 기능 비교와 언제 무엇을 선택할지
•
Claude에게 시켜서 만드는 방법
•
커스터마이징에 시간을 쏟기 전에 알아야 할 것
커스텀 슬래시 명령어
9장에서 다룬 CLAUDE.md가 "항상 적용되는 규칙"이라면, 커스텀 슬래시 명령어는 "필요할 때 꺼내 쓰는 도구"입니다. 자주 하는 작업을 마크다운 파일 하나로 저장해두고, /명령이름으로 실행합니다.
만들기
~/.claude/commands/ 폴더에 마크다운 파일을 만듭니다. 파일 이름이 곧 명령어 이름입니다.
예를 들어, 문서를 리뷰하는 명령어를 만들려면:
파일: `~/.claude/commands/review.md`
---
description: 문서 리뷰
---
$ARGUMENTS 파일을 읽고 다음 기준으로 리뷰해줘:
- 맞춤법과 문법 오류
- 문장이 너무 길거나 복잡한 곳
- 논리적 흐름이 끊기는 곳
문제가 있으면 원문과 수정안을 함께 보여줘.
Plain Text
복사
$ARGUMENTS는 명령어 실행 시 전달한 값이 들어가는 자리입니다.
사용할 때:
/review 기획안.md
Plain Text
복사
$ARGUMENTS 자리에 "기획안.md"가 들어갑니다.
직접 만들지 않아도 됩니다
매주 하는 주간 보고서 작성 작업을 슬래시 명령어로 만들어줘.
보고서 폴더에서 이번 주 파일을 찾아서 요약하고,
주간-보고서.md로 저장하는 내용이야.
~/.claude/commands/ 폴더에 만들어줘.
Plain Text
복사
Claude가 적절한 마크다운 파일을 생성합니다.
저장 위치
위치 | 적용 범위 |
~/.claude/commands/ | 어디서든 사용 (전역) |
.claude/commands/ (프로젝트 폴더 안) | 해당 프로젝트에서만 사용 |
슬래시 명령어가 작동하지 않을 때
명령어를 만들었는데 아무 반응이 없는 경우 흔한 원인 3가지:
1.
파일 위치가 잘못된 경우: ~/.claude/commands/가 아닌 다른 곳에 넣은 경우
2.
파일 확장자가 `.md`가 아닌 경우: .txt나 .markdown으로 저장하면 인식되지 않습니다
3.
명령어 이름에 공백이나 특수문자가 있는 경우: weekly-report.md처럼 영문 소문자와 하이픈만 쓰는 것이 안전합니다
내 슬래시 명령어 파일이 어디 있는지 확인해줘
Plain Text
복사
스킬
스킬은 커스텀 슬래시 명령어의 확장판입니다. 지시 내용뿐 아니라 참고 파일, 템플릿 같은 보조 자료를 함께 묶어서 관리할 수 있습니다.
슬래시 명령어와의 차이
커스텀 슬래시 명령어 | 스킬 | |
구조 | 마크다운 파일 1개 | 폴더 (SKILL.md + 보조 파일) |
보조 자료 | 포함 불가 | 템플릿, 참고 문서 등 포함 가능 |
자동 호출 | 안 됨 (직접 /명령 입력) | Claude가 상황에 맞게 자동으로 불러올 수 있음 |
간단한 작업은 슬래시 명령어로 충분합니다. 템플릿이나 참고 자료가 필요한 반복 작업이면 스킬이 적합합니다.
만들기
~/.claude/skills/스킬이름/ 폴더를 만들고, 그 안에 SKILL.md 파일을 작성합니다.
예를 들어, 월간 보고서 스킬:
~/.claude/skills/monthly-report/
├── SKILL.md
└── references/
└── 보고서-템플릿.md
Plain Text
복사
SKILL.md:
---
name: monthly-report
description: 월간 보고서를 작성할 때 사용
---
## 실행 내용
1. 보고서 폴더에서 이번 달 데이터 파일을 확인
2. 부서별 데이터를 통합
3. references/보고서-템플릿.md 형식에 맞춰 보고서 작성
4. 월간-보고서-[월].md로 저장
Plain Text
복사
스킬도 Claude에게 만들어달라고 하세요:
월간 보고서 작성 스킬을 만들어줘.
보고서-템플릿.md를 참고 파일로 포함하고,
~/.claude/skills/ 폴더에 만들어줘.
Plain Text
복사
스킬 파일 작성 시 흔한 실수
지시가 너무 모호한 경우: "좋은 보고서를 만들어줘"라고만 적으면 매번 결과가 달라집니다. 분량, 형식, 포함할 항목을 명시하세요.
보조 파일 경로가 틀린 경우: SKILL.md에서 references/보고서-템플릿.md를 참조했는데, 실제 파일은 참고자료/보고서-템플릿.md에 있으면 Claude가 템플릿을 찾지 못합니다.
경로가 틀려도 Claude는 오류를 말하지 않을 수 있습니다 Claude는 "파일을 찾을 수 없습니다"라고 말하지 않고, 템플릿 없이 자기 판단으로 보고서를 만들어버리는 경우가 많습니다. 결과물이 템플릿과 다르다면 경로부터 확인하세요.
CLAUDE.md와 스킬의 지시가 충돌하는 경우: 스킬 안에 CLAUDE.md와 다른 규칙을 쓴다면 명시적으로 적어주세요:
※ 이 스킬에서는 CLAUDE.md의 분량 제한을 따르지 않습니다.
Plain Text
복사
Hooks
Hooks는 Claude Code에서 특정 이벤트가 발생할 때 자동으로 실행되는 명령어입니다.
슬래시 명령어와 스킬이 "내가 실행하는 것"이라면, Hooks는 "자동으로 실행되는 것"입니다.
주요 이벤트
이벤트 | 언제 실행되나 | 활용 예시 |
Stop | Claude가 응답을 마쳤을 때 | 완료 알림 보내기 |
PreToolUse | 도구를 실행하기 전 | 위험한 명령 차단 |
PostToolUse | 도구 실행이 끝난 후 | 자동 정리 작업 |
UserPromptSubmit | 사용자가 메시지를 보낼 때 | 추가 맥락 주입 |
설정하기
~/.claude/settings.json 파일에 JSON 형식으로 추가합니다.
작업 완료 알림 (Mac):
{
"hooks": {
"Stop": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "osascript -e 'display notification \"작업 완료\" with title \"Claude Code\" sound name \"Glass\"'"
}
]
}
]
}
}
Plain Text
복사
이 설정을 추가하면 Claude가 작업을 마칠 때마다 Mac 알림이 뜹니다. 오래 걸리는 작업을 실행해놓고 다른 일을 할 때 유용합니다.
원본 파일 보호:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "if echo \"$CLAUDE_TOOL_INPUT\" | grep -q '/data/원본'; then echo 'BLOCK: 원본 폴더는 수정할 수 없습니다'; fi"
}
]
}
]
}
}
Plain Text
복사
이 설정을 추가하면 /data/원본 경로의 파일을 수정하려 할 때 자동으로 차단됩니다. CLAUDE.md에 "원본 수정 금지"라고 적어두는 것보다 확실합니다.
Hooks가 문제를 일으키는 경우
Hooks 설정 주의사항 - 알림이 너무 자주 오는 경우: Stop 이벤트에 알림을 걸어두면, Claude가 짧은 답변을 할 때마다 알림이 뜹니다. 하루 사용해보고 방해가 된다면 제거하세요. - PreToolUse 차단 범위가 너무 넓은 경우: "원본"이라는 문자열만으로 차단하면, "원본_비교.md"처럼 이름에 "원본"이 들어간 모든 파일이 수정 불가능해집니다. - JSON 문법 오류: 쉼표 하나가 빠지면 설정 파일 전체가 무시됩니다.
Hooks 설정도 Claude에게 맡기기
Claude가 작업을 끝내면 Mac 알림이 오도록 Hooks를 설정해줘.
~/.claude/settings.json에 추가해줘.
Plain Text
복사
Hooks는 셋 중에서 설정이 가장 어렵지만, 이렇게 Claude에게 맡기면 JSON을 직접 다룰 필요가 없습니다.
세 기능 비교
커스텀 슬래시 명령어 | 스킬 | Hooks | |
한마디로 | 저장된 프롬프트 | 프롬프트 + 참고자료 묶음 | 자동 실행 규칙 |
실행 방식 | /명령이름으로 직접 실행 | /스킬이름 또는 자동 | 이벤트 발생 시 자동 |
설정 난이도 | 쉬움 | 보통 | 어려움 |
추천 용도 | 자주 쓰는 단순 작업 | 템플릿이 필요한 반복 작업 | 매번 자동으로 해야 하는 작업 |
슬래시 명령어부터 시작하세요 필요에 따라 스킬과 Hooks를 추가하면 됩니다. 셋 다 Claude에게 만들어달라고 할 수 있습니다. 파일 구조나 JSON 형식을 외울 필요 없이, 원하는 동작을 설명하면 Claude가 적절한 파일을 생성합니다.
커스터마이징에 시간을 쏟기 전에
슬래시 명령어, 스킬, Hooks를 완벽하게 세팅하는 데 시간을 쓰는 것보다, 그 시간에 실제 업무를 처리하는 것이 나을 수 있습니다.
"같은 작업을 앞으로 10번 이상 반복할 것"이 확실할 때 투자하세요 한두 번 할 작업이라면 그냥 프롬프트를 직접 쓰는 것이 빠릅니다. 실제로 많은 사용자가 스킬과 Hooks를 정교하게 만들어두고도 결국 잘 안 쓰게 됩니다. 커스터마이징은 "불편함이 쌓여서 못 참겠을 때" 하는 것이 적절합니다.
직접 해보기
커스텀 슬래시 명령어 하나 만들어보기 (예: "일일 보고서를 만드는 /보고서 명령어를 만들어줘")
만든 명령어를 /보고서로 실행해보기
작업 완료 알림 Hook 설정해보기 (Mac)
정리
•
커스텀 슬래시 명령어로 자주 하는 작업을 저장하고 /명령이름으로 실행합니다.
•
스킬은 참고 자료를 포함할 수 있는 확장판이고, Claude가 자동으로 불러올 수도 있습니다.
•
Hooks는 특정 이벤트에서 자동으로 실행됩니다. 작업 완료 알림이 대표적입니다.
•
세 기능 모두 동작하지 않을 때는 파일 위치, 이름, 경로부터 점검합니다. Claude에게 "왜 안 되는지 확인해줘"라고 하면 대부분 원인을 찾아줍니다.
파트 4를 마치며: 여기까지 오면 MCP로 외부 도구를 연결하고, 복잡한 작업을 단계별로 처리하고, 스킬과 Hooks로 자신만의 자동화를 만들 수 있습니다. 도구의 기능은 모두 배웠습니다.
•
노션, 슬랙, 웹 검색 등 외부 서비스를 Claude Code에 연결할 수 있다
•
복잡한 작업을 단계별로 분해해서 안전하게 처리할 수 있다
•
커스텀 명령어와 스킬로 나만의 자동화를 만들 수 있다
