claude-code-mastery
무엇인가
이 저장소는 Claude Code 세션에 규칙·절차·지식을 파일로 주입하는 묶음이다. 전역 CLAUDE.md 템플릿, 훅 스크립트, 슬래시 명령, SKILL.md 스킬을 함께 배포하며, 규율 대상은 시크릿 파일 접근, 위험 셸 명령 실행, 커밋 메시지 형식, 보안 취약점 점검, 프로젝트 스캐폴딩이다. 별도 패키지 MDD(Manual-Driven Development)는 기능 개발을 문서 작성에서 시작하고 수정을 감사에서 시작하도록 21개 모드를 `/mdd` 명령으로 노출한다.
어떻게 동작하나
동작은 파일 위치로 갈린다. `~/.claude/CLAUDE.md`는 전역 규칙, `./CLAUDE.md`는 프로젝트 규칙, `~/.claude/settings.json`은 훅 배선, `~/.claude/hooks/`는 실행 스크립트, `~/.claude/skills/<이름>/SKILL.md`는 재사용 지식, `commands/*.md`는 슬래시 명령이다. 훅은 이벤트별로 발동한다. PreToolUse에서 `block-secrets.py`가 .env 접근을, `block-dangerous-commands.sh`가 rm -rf류를 막고, PostToolUse에서 `after-edit.sh`가 포매터를 돌리고, Stop에서 `end-of-turn.sh`가 품질 게이트를 통과시키며, Notification에서 `notify.sh`가 데스크톱 알림을 띄운다. 차단은 종료 코드 2로 확정된다. 스킬은 commit-messages와 security-audit 두 개가 SKILL.md 형식으로 들어 있다.
무엇과 다른가
CLAUDE.md 단독 운용과의 차이는 강제력의 위치다. CLAUDE.md 문장은 LLM이 다른 컨텍스트와 함께 가중해 판단하는 제안에 머무는 반면, 이 팩은 같은 규칙을 훅으로 옮겨 매 호출마다 실행되는 결정적 검사로 만든다. 프롬프트를 직접 쓰는 방식과 달리 파일 경로, 종료 코드, settings.json 스키마가 고정되어 있어 규칙이 세션마다 재해석되지 않는다. 스킬은 대화에 붙여 넣는 지시문이 아니라 SKILL.md 파일로 로드된다.
어떻게 쓰나
설치 경로는 `~/.claude/hooks`, `~/.claude/skills`, `~/.claude/settings.json`, `~/.claude/CLAUDE.md`다. 저장소를 클론한 뒤 훅을 복사하고 `chmod +x ~/.claude/hooks/*.sh`로 실행 권한을 주고, 스킬 디렉터리를 통째로 복사하고, settings.json 템플릿을 배치한다. settings.json이 이미 있으면 hooks 섹션만 수동 병합한다. `claude` 실행 후 `/hooks`와 `/skills`로 로드 여부를 확인하는 것이 첫 검증 절차다. MDD를 쓰려면 npm 전역 설치 후 `mdd install`을 실행하고 세션에서 `/mdd`를 호출한다.
전제와 한계
전제는 Claude Code 전용이라는 점이다. Python 3.8+와 셸 훅의 JSON 파싱용 jq가 필요하고, 해당 런타임이 없으면 훅은 동작하지 않는다. README는 V2를 obsolete로 표시하고 Starter Kit 사용을 권하며, MCP 서버 설정 예시는 기여 아이디어 항목으로만 남아 있고 저장소에 포함된 설정 파일이 아니다. Codex·Cursor·Copilot용 형식이나 규칙 파일은 제공하지 않는다.