훅(Hooks)은 클로드 코드가 일하기 전후의 정해진 시점에 자동으로 실행하는 내 규칙이에요. 클로드가 고르는 게 아니라 조건이 맞으면 항상 실행돼요. 건물 자동문 센서, 출입 게이트를 떠올리세요.
| 시점 | 이름 | 비유 |
|---|---|---|
| 도구 실행 전(막을 수 있음) | PreToolUse | 들어가기 전 검사 |
| 도구 성공 후 | PostToolUse | 나온 뒤 기록 |
| 알림이 갈 때(입력·권한 대기) | Notification | 벨 |
| 클로드가 답을 마칠 때 | Stop | 퇴근 체크 |
| 세션 시작·재개 | SessionStart | 출근 준비 |
Edit|Write 에 Prettier 같은 명령을 걸어요.임시 설정(claude -p --settings, 내 진짜 설정은 안 건드림)에 훅 2개를 만들고, 클로드에게 rm -rf victim.txt 실행 후 new.txt 만들기를 시켰어요(1회).
| 일 | 결과 |
|---|---|
| rm -rf victim.txt | PreToolUse 훅이 차단, victim.txt 그대로 |
| Write new.txt | 통과, PostToolUse 훅이 기록(posthook.log) |
쓴 스크립트: guard.py(막기) · log.py(기록). 파일 삭제는 연습용 임시 폴더에서만 했어요.
{
"hooks": {
"PreToolUse": [
{ "matcher": "Bash",
"hooks": [{ "type": "command", "command": "py C:/경로/guard.py" }] }
]
}
}
settings.json)의 hooks 에 적고, 클로드 코드에서 /hooks 로 목록을 확인해요.| 스킬(EP7) | MCP(EP9) | 훅(EP11) |
|---|---|---|
| 매뉴얼(읽고 따라 함) | 손발 연결 단자 | 자동 규칙(알아서 실행) |