Documentation Index
Fetch the complete documentation index at: https://docs.sifi.life/llms.txt
Use this file to discover all available pages before exploring further.
후크 (Hooks) — 결정론적 자동화
후크는 특정 이벤트가 발생할 때 자동으로 실행되는 셸 명령입니다. Claude의 판단에 의존하지 않고 결정론적으로 동작하므로, “매번 X를 해야 한다” 같은 규칙을 강제하기에 적합합니다.지원되는 이벤트
| 이벤트 | 발생 시점 |
|---|---|
SessionStart | claude 시작 시 |
UserPromptSubmit | 사용자가 프롬프트를 제출할 때 |
PreToolUse | Claude가 도구를 호출하기 직전 |
PostToolUse | 도구 호출이 끝난 직후 |
Stop | Claude가 응답을 마칠 때 |
Notification | 사용자 알림이 발생할 때 |
설정 위치
.claude/settings.json 또는 .claude/settings.local.json:
실용적 후크 예제
1. 파일 수정 후 자동 lintexit 2로 종료하면 Claude가 해당 도구 호출을 진행하지 못합니다.
3. 작업 완료 시 슬랙 알림
슬래시 커맨드 작성하기
자주 쓰는 프롬프트는 사용자 정의 슬래시 커맨드로 등록하면 한 단어로 호출할 수 있습니다.위치
- 프로젝트 단위:
<project>/.claude/commands/<name>.md - 사용자 단위:
~/.claude/commands/<name>.md
예제 — /check-app 커맨드
~/.claude/commands/check-app.md:
더 발전된 예 — /cost-check
서브 에이전트 (Sub-Agents) — 병렬 실행
큰 작업을 작게 쪼개 여러 Claude 인스턴스를 병렬로 실행할 수 있습니다.어떨 때 쓰나
- 독립적 탐색이 여러 개: “frontend, backend, infra 폴더에서 각각 X 패턴 찾기”
- 컨텍스트를 메인에 가져오기 싫은 대용량 검색
- 완전히 다른 영역에서 동시 진행
사용 예
커스텀 에이전트 정의
.claude/agents/<name>.md로 도메인 특화 에이전트를 정의할 수 있습니다. 예: 데이터 분석 전용 에이전트가 SQL 실행 도구만 사용하도록 제한.
스케줄링 — 정기 실행
/loop나 외부 스케줄러로 Claude Code 작업을 정기적으로 실행할 수 있습니다.
/loop — 인터랙티브 반복
/check-deployment 커맨드를 실행. 사용자가 Esc로 중단할 때까지 계속.
crontab으로 헤드리스 실행
-p 플래그는 비대화형(headless) 모드. CI/CD에서도 사용 가능합니다.
환경 변수 — 후크와 커맨드에서 사용
후크와 커맨드는 다음 환경 변수에 접근할 수 있습니다:| 변수 | 의미 |
|---|---|
$CLAUDE_FILE_PATH | 방금 편집/읽은 파일 경로 (Edit/Write/Read 후크) |
$CLAUDE_TOOL_INPUT | 도구에 전달된 입력 JSON |
$CLAUDE_TOOL_OUTPUT | 도구 출력 (PostToolUse) |
$CLAUDE_PROJECT_DIR | 현재 프로젝트 루트 |
$CLAUDE_SESSION_ID | 현재 세션 ID |
안전한 자동화 원칙
자동화 강도가 높아질수록 위험도 커집니다. 다음 원칙을 지키세요:- PreToolUse 후크로 위험 명령 차단: 한 줄로 큰 사고를 막을 수 있음
- 모든 자동 실행은 Git 커밋된 상태에서: 자동화가 잘못 동작해도 롤백 가능
- 시크릿은 환경 변수로: 후크 명령에 평문으로 두지 말 것
- 테스트 환경에서 먼저 검증: 후크 동작은 운영 워크스페이스에 적용 전 dev에서 충분히 테스트
--dangerously-skip-permissions는 컨테이너에서만: 호스트에서는 절대 사용하지 말 것