# 일상적으로 사용하는 Claude Code 팁과 모범 사례 50가지

> Clean Markdown view of GeekNews topic #27677. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=27677](https://news.hada.io/topic?id=27677)
- GeekNews Markdown: [https://news.hada.io/topic/27677.md](https://news.hada.io/topic/27677.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2026-03-20T14:15:01+09:00
- Updated: 2026-03-20T14:15:01+09:00
- Original source: [x.com/codevolutionweb](https://x.com/codevolutionweb/status/2034683638382506063)
- Points: 25
- Comments: 1

## Summary

단축키와 alias 설정부터 **Hooks 시스템**과 **CLAUDE.md 구조화**까지, 개발자가 일상적으로 겪는 병목을 줄이는 구체적 방법을 제시합니다. CLI·MCP·worktree 등 다양한 워크플로우를 아우르며, 모든 팁을 한꺼번에 적용하기보다 가장 불편한 지점부터 **점진적으로 도입**하는 것을 권장합니다.

## Topic Body

- Claude Code를 이미 사용 중인 개발자를 위한 **50가지 실전 팁 모음**으로, Anthropic 공식 문서, 개발자 Boris Cherny, 커뮤니티 경험, 1년간의 일일 사용 경험을 바탕으로 정리  
- `cc` alias, `!` 접두사, **Esc 되감기** 등 세션 운영 단축키부터 서브에이전트, 에이전트 팀, worktree 병렬 작업까지 포괄  
- CLAUDE.md 작성법, **Hooks 시스템**, 컨텍스트 윈도우 관리 등 품질과 일관성을 유지하는 구조적 방법론 포함  
- CLI 도구 활용, MCP 서버 선택, **배치 처리** 등 다양한 워크플로우 패턴 제시  
- 50개 전부 적용할 필요 없이, 가장 불편했던 하나부터 시도하라는 **점진적 도입** 권장  
  
---  
  
### 1. cc alias 설정  
  
- `alias cc='claude --dangerously-skip-permissions'`를 ~/.zshrc(또는 ~/.bashrc)에 추가하면 `cc`만 입력해 **Claude Code 세션 시작** 가능  
- 모든 **권한 프롬프트를 건너뛰는** 설정이며, 플래그 이름이 의도적으로 위협적  
- Claude Code가 코드베이스에 무엇을 할 수 있는지 완전히 이해한 후에만 사용해야 함  
  
### 2. ! 접두사로 bash 명령어 인라인 실행  
  
- `!git status`나 `!npm test`를 입력하면 **명령어가 즉시 실행**되고, 명령어와 출력이 컨텍스트에 남음  
- Claude가 결과를 확인하고 후속 작업 가능 — Claude에게 명령 실행을 요청하는 것보다 빠름  
  
### 3. Esc로 중지, Esc+Esc로 되감기  
  
- **Esc**는 Claude를 중간에 멈추되 컨텍스트를 잃지 않음 — 즉시 방향 전환 가능  
- **Esc+Esc**(또는 /rewind)는 Claude가 만든 모든 체크포인트를 스크롤 메뉴로 열어, 코드·대화·둘 다 복원 가능  
  - 4가지 복원 옵션: 코드와 대화, 대화만, 코드만, 체크포인트 이후 요약  
- 40% 확신인 접근법도 시도해볼 수 있음 — 실패하면 되감기로 **제로 데미지**  
  - 단, 체크포인트는 파일 편집만 추적하며, bash 명령(마이그레이션, DB 작업)의 변경은 캡처하지 않음  
- `claude --continue`로 가장 최근 대화 재개, `claude --resume`으로 세션 선택기 사용  
  
### 4. Claude에게 자체 검증 수단 제공  
  
- 프롬프트에 **테스트 명령, 린터 체크, 예상 출력**을 포함시켜 Claude가 스스로 실수를 잡는 피드백 루프 형성  
  - 예: "auth 미들웨어를 JWT로 리팩토링해. 변경 후 기존 테스트 스위트를 실행하고, 실패를 모두 수정한 후 완료해"  
- Boris Cherny에 따르면 이것만으로 **2~3배 품질 향상** 달성  
- UI 변경의 경우 **Playwright MCP 서버**를 설정해 Claude가 브라우저를 열고, 페이지와 상호작용하며, UI가 예상대로 동작하는지 검증 — 유닛 테스트가 놓치는 이슈 포착  
  
### 5. 언어별 코드 인텔리전스 플러그인 설치  
  
- **LSP 플러그인**은 파일 편집 후 자동 진단(타입 에러, 미사용 import, 누락된 반환 타입 등) 제공 — 설치 가능한 단일 플러그인 중 **가장 높은 영향도**  
- 설치 명령 예시:  
  - `/plugin install typescript-lsp@claude-plugins-official`  
  - `/plugin install pyright-lsp@claude-plugins-official`  
  - `/plugin install rust-analyzer-lsp@claude-plugins-official`  
  - `/plugin install gopls-lsp@claude-plugins-official`  
- C#, Java, Kotlin, Swift, PHP, Lua, C/C++ 플러그인도 `/plugin`의 **Discover 탭**에서 이용 가능  
- 시스템에 해당 언어 서버 바이너리가 설치되어 있어야 함 (없으면 플러그인이 알림)  
  
### 6. gh CLI 사용과 모든 CLI 도구 학습  
  
- **gh CLI**로 PR, 이슈, 코멘트를 별도 MCP 서버 없이 처리 — CLI 도구는 MCP 서버보다 **컨텍스트 효율적**(도구 스키마를 컨텍스트 윈도우에 로드하지 않음)  
- jq, curl 등 표준 CLI 도구에도 동일하게 적용  
- Claude가 모르는 도구는 `--help` 출력을 읽고 문법을 파악해 직접 명령어를 실행 — 예: "sentry-cli --help로 학습한 다음, 프로덕션의 가장 최근 에러를 찾아줘"  
- 니치한 내부 CLI 도구도 작동  
  
### 7. 복잡한 추론에 "ultrathink" 추가  
  
- **"ultrathink"** 키워드로 effort를 높게 설정하고 Opus 4.6에서 **적응형 추론** 활성화  
- 아키텍처 결정, 까다로운 디버깅, 다단계 추론 등 Claude가 행동 전에 충분히 사고해야 하는 상황에 적합  
- `/effort`로 상시 설정도 가능 — 단순 작업에는 낮은 effort로 빠르고 저렴하게 유지  
- 변수 이름 변경에 thinking 토큰을 소모할 필요 없음 — **문제에 맞게 effort를 조절**  
  
### 8. 스킬로 온디맨드 지식 확장  
  
- **스킬**은 Claude의 지식을 확장하는 마크다운 파일로, CLAUDE.md와 달리 **관련 태스크에서만 로드**되어 컨텍스트를 가볍게 유지  
- `.claude/skills/`에 생성하거나 플러그인이 번들링한 프리빌트 스킬 설치 가능 (`/plugin`에서 탐색)  
- API 규칙, 배포 절차, 코딩 패턴 등 Claude가 **가끔 필요하지만 항상은 아닌** 특화 도메인 지식에 적합  
  
### 9. 휴대폰에서 Claude Code 제어  
  
- `claude remote-control`로 세션을 시작하고 **claude.ai/code** 또는 iOS/Android Claude 앱에서 연결  
- 세션은 로컬 머신에서 실행되고, 폰이나 브라우저는 단지 접속 창구 — 메시지 전송, 도구 호출 승인, 진행 상황 모니터링 가능  
- tip #1의 `cc` alias 사용 시 별도 승인 불필요로 원격 제어가 더욱 매끄러움 — 태스크를 시작하고 자리를 비운 뒤 **Claude가 완료되거나 예상 밖 상황에서만 확인**  
  
### 10. 컨텍스트 윈도우를 1M 토큰으로 확장  
  
- Sonnet 4.6과 Opus 4.6 모두 **1M 토큰 컨텍스트 윈도우** 지원  
- Max, Team, Enterprise 플랜에서 Opus는 자동으로 **1M 컨텍스트로 업그레이드**  
- `/model opus[1m]` 또는 `/model sonnet[1m]`으로 세션 중 모델 전환 가능  
- 큰 컨텍스트에서의 품질이 우려되면 500k부터 점진적으로 늘려 테스트  
- `CLAUDE_CODE_AUTO_COMPACT_WINDOW`과 `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`로 **컴팩션 트리거 타이밍** 제어  
  
### 11. 접근 방법이 불확실할 때 Plan Mode 사용  
  
- **Plan Mode**는 다중 파일 변경, 익숙하지 않은 코드, 아키텍처 결정에 적합 — 사전에 몇 분 투자로 Claude가 20분간 잘못된 문제를 풀어가는 상황 방지  
- 작고 명확한 범위의 태스크에는 건너뛰기 — diff를 한 문장으로 설명할 수 있으면 바로 실행  
- **Shift+Tab**으로 Normal, Auto-Accept, Plan 권한 모드 간 전환 가능 (대화를 벗어나지 않고)  
  
### 12. 관련 없는 작업 사이에 /clear 실행  
  
- 깨끗한 세션에 날카로운 프롬프트가 **지저분한 3시간 세션보다 우수** — 다른 태스크면 `/clear`부터  
- 진행 상황을 버리는 것 같지만, 누적된 컨텍스트가 현재 지시를 묻어버려 **30분의 수확 체감** 발생  
- `/clear`와 집중된 시작 프롬프트 작성에 드는 5초가 훨씬 효율적  
  
### 13. 버그를 해석하지 말고 원시 데이터를 붙여넣기  
  
- 버그를 말로 설명하면 Claude가 추측하고 수정하고 반복하는 느린 과정 발생  
- **에러 로그, CI 출력, Slack 스레드**를 그대로 붙여넣고 "fix"라고 하면 Claude가 분산 시스템 로그를 읽고 문제 지점 추적  
- 사람의 해석은 Claude가 근본 원인을 정확히 찾는 데 필요한 디테일을 잃는 **추상화를 추가**  
- CI에도 적용 가능 — "Go fix the failing CI tests"와 CI 출력 붙여넣기, 또는 PR URL/번호와 함께 실패 체크 수정 요청  
- 터미널 출력을 직접 파이핑 가능:  
  - `cat error.log | claude "explain this error and suggest a fix"`  
  - `npm test 2>&1 | claude "fix the failing tests"`  
  
### 14. /btw로 빠른 사이드 질문  
  
- `/btw`는 **대화 히스토리에 들어가지 않는** 오버레이를 열어 빠른 질문 가능  
- 현재 세션에 대한 명확화에 사용: "왜 이 접근법을 선택했어?" 또는 "다른 옵션과의 트레이드오프는?"  
- 답변은 닫을 수 있는 오버레이에 표시, **메인 컨텍스트는 가볍게 유지**  
  
### 15. --worktree로 격리된 병렬 브랜치 실행  
  
- `claude --worktree feature-auth`로 **격리된 작업 복사본**과 새 브랜치 생성 — git worktree 설정과 정리를 Claude가 자동 처리  
- Claude Code 팀이 **가장 큰 생산성 해제** 중 하나로 평가  
- 3~5개 worktree를 스핀업하여 각각 독립 Claude 세션을 병렬 실행 (보통 2~3개 사용)  
- 각 worktree는 독립 세션, 브랜치, **파일 시스템 상태** 보유  
- 로컬 worktree의 한계는 머신 리소스 — 다중 dev 서버, 빌드, Claude 세션이 CPU를 경쟁  
  - Builder.io는 각 에이전트를 **별도 클라우드 컨테이너**에 배치하여 머신 부하 해소  
  
### 16. Ctrl+S로 프롬프트 임시 저장  
  
- 긴 프롬프트를 작성하다가 빠른 답변이 먼저 필요할 때 **Ctrl+S**로 초안을 stash  
- 빠른 질문을 제출한 후, stash된 프롬프트가 **자동으로 복원**  
  
### 17. Ctrl+B로 장시간 태스크 백그라운드 전환  
  
- Claude가 오래 걸리는 bash 명령(테스트 스위트, 빌드, 마이그레이션)을 시작하면 **Ctrl+B**로 백그라운드 전환  
- Claude는 계속 작업하고 사용자도 대화 가능 — 프로세스 완료 시 결과 표시  
  
### 18. 라이브 상태줄 추가  
  
- **상태줄**은 매 Claude 턴 후 실행되는 셸 스크립트로, 터미널 하단에 현재 디렉토리, git 브랜치, **컨텍스트 사용량을 색상 코딩**해 표시  
- `/statusline` 명령으로 빠르게 설정 가능 — 표시할 내용을 물어보고 스크립트 자동 생성  
  
### 19. 서브에이전트로 메인 컨텍스트 깨끗하게 유지  
  
- "서브에이전트를 사용해서 결제 플로우가 실패한 트랜잭션을 어떻게 처리하는지 파악해"라고 하면 **별도 Claude 인스턴스**가 독립 컨텍스트 윈도우에서 파일을 읽고 분석 후 간결한 요약을 보고  
- 깊은 조사가 **컨텍스트 윈도우의 절반을 소모**할 수 있으므로, 서브에이전트로 그 비용을 메인 세션에서 분리  
- 내장 타입: **Explore**(Haiku, 빠른 파일 검색), **Plan**(읽기 전용 분석)  
  
### 20. 멀티 세션 조율을 위한 에이전트 팀  
  
- 실험적이지만 강력한 기능 — `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS`를 설정이나 환경변수에 추가하여 활성화  
- "이 모듈들을 병렬로 리팩토링할 3명의 팀원으로 에이전트 팀을 만들어"라고 지시  
- **팀 리더**가 팀원에게 작업을 분배하고, 각자 독립 컨텍스트 윈도우와 **공유 태스크 리스트** 보유, 팀원 간 직접 메시지 가능  
- 3~5명 팀원, **팀원당 5~6개 태스크**로 시작 권장  
- 같은 파일을 수정하는 태스크 할당은 **덮어쓰기 문제**로 회피 — 리서치와 리뷰 태스크부터 시작 후 병렬 구현으로 확장  
  
### 21. 컴팩션에 보존 지시 추가  
  
- 컨텍스트 컴팩션 시(자동 또는 `/compact`) **보존할 내용을 지정** 가능: `/compact focus on the API changes and the list of modified files`  
- CLAUDE.md에 상시 지시 추가 가능: "컴팩션 시 **수정 파일 전체 목록과 현재 테스트 상태**를 보존하라"  
  
### 22. /loop로 반복 체크 실행  
  
- `/loop 5m check if the deploy succeeded and report back`으로 **반복 프롬프트를 백그라운드에서 스케줄링**  
- 간격은 선택적(기본 10분), s, m, h, d 단위 지원  
- `/loop 20m /review-pr 1234`처럼 다른 명령어도 루프 가능  
- 태스크는 **세션 범위이며 3일 후 만료** — 잊힌 루프가 영원히 실행되지 않음  
- 배포 모니터링, CI 파이프라인 감시, 외부 서비스 폴링에 활용  
  
### 23. 음성 받아쓰기로 풍부한 프롬프트 작성  
  
- `/voice`로 **푸시 투 톡** 활성화, Space 키를 누르고 음성 입력하면 실시간 전사되어 프롬프트에 삽입  
- 음성과 타이핑을 같은 메시지에서 혼합 가능  
- 음성 프롬프트는 타이핑보다 자연스럽게 **더 많은 컨텍스트를 포함** — 배경, 제약 조건, 원하는 바를 키 입력 절약 없이 설명  
- Claude.ai 계정 필요(API 키가 아님)  
- `~/.claude/keybindings.json`에서 푸시 투 톡 키를 `meta+k` 등으로 재바인딩하여 hold-detection 워밍업 건너뛰기 가능  
  
### 24. 같은 문제에 2번 수정 후에도 해결 안 되면 새로 시작  
  
- 수정의 래빗홀에 빠져 이슈가 여전히 해결되지 않으면, 컨텍스트가 **실패한 접근법으로 가득** 차 다음 시도에 악영향  
- `/clear` 후 배운 것을 반영한 **더 나은 시작 프롬프트**로 재시작  
- 깨끗한 세션에 날카로운 프롬프트가 축적된 막다른 길에 시달리는 긴 세션을 **거의 항상 능가**  
  
### 25. Claude에게 정확히 어떤 파일을 볼지 지정  
  
- `@src/auth/middleware.ts has the session handling`처럼 **@ 접두사**로 파일을 직접 참조  
- @ 접두사가 파일 경로로 자동 해석되어 Claude가 정확한 위치를 즉시 파악  
- Claude도 자체적으로 grep/검색이 가능하지만, 후보를 좁히고 맞는 파일을 식별하는 과정에 **토큰과 컨텍스트를 소모** — 처음부터 파일을 지정하면 그 전체 과정을 건너뜀  
  
### 26. 모호한 프롬프트로 익숙하지 않은 코드 탐색  
  
- "이 파일에서 뭘 개선하겠어?"는 훌륭한 **탐색 프롬프트** — 모든 프롬프트가 구체적일 필요 없음  
- 기존 코드에 새로운 시각이 필요할 때, 모호한 질문이 Claude에게 **예상치 못한 것을 발견할 여지** 제공  
- 익숙하지 않은 레포에 온보딩할 때 활용 — Claude가 패턴, 불일치, 개선 기회를 첫 읽기에서 놓칠 부분까지 지적  
  
### 27. Ctrl+G로 계획 편집  
  
- Claude가 계획을 제시하면 **Ctrl+G**로 텍스트 에디터에서 직접 열어 편집 가능  
- Claude가 코드를 한 줄도 쓰기 전에 제약 조건 추가, 단계 제거, 접근법 변경 가능  
- 계획이 대체로 맞지만 **몇 단계만 수정하고 싶을 때** 전체를 다시 설명하지 않아도 됨  
  
### 28. /init 실행 후 결과를 절반으로 줄이기  
  
- **CLAUDE.md**는 프로젝트 루트에 있는 마크다운 파일로, Claude에게 빌드 명령, 코딩 표준, 아키텍처 결정, 레포 관례 등 **영구 지시** 제공  
- Claude가 매 세션 시작 시 읽음  
- `/init`으로 프로젝트 구조 기반 **초안 버전 생성** — 빌드 명령, 테스트 스크립트, 디렉토리 레이아웃 자동 인식  
- 출력이 비대해지는 경향 — 존재 이유를 설명할 수 없는 줄은 삭제하고, 빠진 것을 추가  
  
### 29. CLAUDE.md의 모든 줄에 대한 리트머스 테스트  
  
- CLAUDE.md의 모든 줄에 대해 "**이 줄 없이 Claude가 실수할까?**"를 질문  
- Claude가 이미 올바르게 수행하는 지시는 **노이즈** — 불필요한 줄이 중요한 줄을 희석  
- 준수율이 떨어지기 전까지 약 **150~200개 지시 한도**가 있으며, 시스템 프롬프트가 이미 약 50개를 사용  
  
### 30. Claude 실수 후 "CLAUDE.md를 업데이트해서 이 실수가 반복되지 않게 해"  
  
- Claude가 실수하면 "**update the CLAUDE.md file so this doesn't happen again**"이라고 지시  
- Claude가 자체 규칙을 작성하고, 다음 세션부터 **자동으로 따름**  
- 시간이 지나면 CLAUDE.md가 **실제 실수로 형성된 살아있는 문서**로 발전  
- 무한 성장 방지를 위해 `@imports`(tip #32)로 별도 파일(`@docs/solutions.md` 등) 참조 — CLAUDE.md는 가볍게 유지하고 Claude가 필요할 때 상세 내용 읽음  
  
### 31. .claude/rules/로 조건부 규칙 적용  
  
- `.claude/rules/`에 마크다운 파일을 배치해 **주제별 지시 정리** — 기본적으로 모든 규칙 파일이 세션 시작 시 로드  
- `paths` frontmatter로 **특정 파일 패턴에서만 로드**되도록 조건부 활성화 가능:  
  - 예: `paths: ["**/*.ts"]`로 설정하면 Claude가 .ts 파일을 읽을 때만 TypeScript 규칙 로드  
- 메인 CLAUDE.md를 가볍게 유지 — Claude가 현재 작업하지 않는 언어의 규칙을 읽지 않음  
  
### 32. @imports로 CLAUDE.md를 가볍게 유지  
  
- `@docs/git-instructions.md`처럼 문서를 참조 — `@README.md`, `@package.json`, `@~/.claude/my-project-instructions.md`도 가능  
- Claude가 **필요할 때만 파일을 읽음** — 매 세션 로드되는 CLAUDE.md를 비대하게 만들지 않는 "필요하면 추가 컨텍스트" 역할  
  
### 33. /permissions로 안전한 명령어 허용목록 설정  
  
- `npm run lint`에 대한 승인을 수백 번째 클릭하는 것을 중단 — `/permissions`로 **신뢰할 수 있는 명령어를 허용목록에 등록**  
- 목록에 없는 명령어에는 여전히 프롬프트 표시  
  
### 34. /sandbox로 Claude의 자유 작업 허용  
  
- `/sandbox`로 **OS 수준 격리** 활성화 — 쓰기는 프로젝트 디렉토리로 제한, 네트워크 요청은 승인된 도메인만 허용  
- macOS에서는 **Seatbelt**, Linux에서는 **bubblewrap** 사용, Claude가 생성하는 모든 서브프로세스에 제한 적용  
- auto-allow 모드에서 샌드박스 내 명령은 **권한 프롬프트 없이 실행** — 가드레일 있는 근-완전 자율성  
- 무감독 작업(오버나이트 마이그레이션, 실험적 리팩토링)에는 **Docker 컨테이너** 내 Claude 실행으로 완전 격리와 쉬운 롤백 제공  
  
### 35. 반복 작업용 커스텀 서브에이전트 생성  
  
- tip #19의 즉석 서브에이전트와 달리, 커스텀 서브에이전트는 `.claude/agents/`에 **사전 구성하여 저장**  
  - 예: Opus + 읽기 전용 도구의 **보안 리뷰어** 에이전트, Haiku의 빠른 검색 에이전트  
- `/agents`로 탐색 및 생성  
- `isolation: worktree`로 독립 파일 시스템을 가진 에이전트 설정 가능  
  
### 36. 스택에 맞는 MCP 서버 선택  
  
- 시작하기 좋은 MCP 서버: **Playwright**(브라우저 테스트 및 UI 검증), **PostgreSQL/MySQL**(직접 스키마 쿼리), **Slack**(버그 리포트 및 스레드 컨텍스트), **Figma**(디자인→코드 워크플로우)  
- Claude Code는 **동적 도구 로딩** 지원 — Claude가 필요할 때만 서버 정의를 로드  
  
### 37. 출력 스타일 설정  
  
- `/config`에서 선호 스타일 선택 — 내장 옵션: **Explanatory**(상세, 단계별), **Concise**(간결, 액션 중심), **Technical**(정밀, 전문 용어 친화)  
- `~/.claude/output-styles/`에 **커스텀 출력 스타일** 파일 생성도 가능  
  
### 38. CLAUDE.md는 제안, Hooks는 요구사항  
  
- **CLAUDE.md는 권고적** — Claude가 약 80% 준수  
- **Hooks는 결정적** — 100% 실행  
- 예외 없이 매번 반드시 실행되어야 하는 것(포맷팅, 린팅, 보안 체크)은 **Hook으로 설정**  
- Claude가 고려해야 할 가이드라인이면 CLAUDE.md로 충분  
  
### 39. PostToolUse Hook으로 자동 포맷팅  
  
- Claude가 파일을 편집할 때마다 **포매터가 자동 실행**되도록 PostToolUse Hook을 `.claude/settings.json`에 추가  
  - `Edit|Write` 매처에 `npx prettier --write "$CLAUDE_FILE_PATH" 2>/dev/null || true` 등록  
- `|| true`로 **Hook 실패가 Claude를 차단하지 않도록** 처리  
- `npx eslint --fix`를 두 번째 Hook 엔트리로 체이닝 가능  
- 에디터가 같은 파일을 열고 있으면 format-on-save를 끄는 것이 좋음 — 에디터 저장이 **프롬프트 캐시를 무효화**할 수 있다는 보고 있음, Hook이 포맷팅 처리  
  
### 40. PreToolUse Hook으로 파괴적 명령 차단  
  
- `rm -rf`, `drop table`, `truncate` 패턴을 **PreToolUse Hook**으로 차단 — Claude가 시도조차 하지 않음  
- Hook이 Claude가 도구를 실행하기 **전에 발동**하여 파괴적 명령을 사전 차단  
- `.claude/settings.json`에 추가하거나, `/hooks`로 인터랙티브하게 설정하거나, Claude에게 "rm -rf, drop table, truncate 명령을 차단하는 PreToolUse Hook을 추가해"라고 지시  
  
### 41. Hook으로 컴팩션 시 중요 컨텍스트 보존  
  
- 긴 세션에서 컨텍스트 컴팩션 시 Claude가 **작업 중인 내용의 맥락을 잃을 수 있음**  
- `compact` 매처를 가진 **Notification Hook**이 컴팩션 발동 시마다 핵심 컨텍스트를 **자동 재주입**  
- Claude에게 "컴팩션 후 현재 태스크, 수정 파일, 제약 조건을 상기시키는 Notification Hook을 설정해"라고 지시  
- 재주입 대상으로 좋은 항목: 현재 태스크 설명, 수정 파일 목록, 하드 제약 조건("마이그레이션 파일은 수정하지 마")  
- 기능에 깊이 빠져 있어 Claude가 맥락을 잃으면 안 되는 **멀티 아워 세션에서 가장 유용**  
  
### 42. 인증, 결제, 데이터 뮤테이션은 반드시 수동 검토  
  
- **인증 흐름, 결제 로직, 데이터 뮤테이션, 파괴적 DB 작업** — 나머지 코드가 아무리 좋아 보여도 반드시 사람이 검토  
- 잘못된 인증 스코프, 잘못 구성된 결제 웹훅, 컬럼을 조용히 삭제하는 마이그레이션은 **사용자, 비용, 신뢰를 잃게 만듦**  
- 어떤 양의 자동화 테스트도 이런 문제를 모두 잡지 못함  
  
### 43. /branch로 현재 경로를 잃지 않고 다른 접근 시도  
  
- `/branch`(또는 `/fork`)로 **현재 지점에서 대화 복사본 생성**  
- 위험한 리팩토링을 브랜치에서 시도 — 성공하면 유지, 실패하면 원래 대화는 무사  
- rewind(tip #3)와 다른 점: **양쪽 경로가 모두 살아 있음**  
  
### 44. 기능 스펙이 불완전할 때 Claude에게 인터뷰 요청  
  
- 무엇을 만들고 싶은지는 알지만 Claude가 잘 만들기 위한 **모든 디테일이 부족할 때**, Claude에게 질문을 하게 함  
  - "나는 [간략한 설명]을 만들고 싶어. AskUserQuestion 도구를 사용해서 상세히 인터뷰해줘. 기술 구현, 엣지 케이스, 우려 사항, 트레이드오프에 대해 질문해. 뻔한 질문은 하지 마. 모든 것을 다룰 때까지 인터뷰한 다음 **SPEC.md에 완전한 스펙 작성**"  
- 스펙 완성 후 **새 세션에서 깨끗한 컨텍스트와 완전한 스펙으로 구현** 시작  
  
### 45. 하나의 Claude가 작성, 다른 Claude가 리뷰  
  
- 첫 번째 Claude가 기능을 구현하고, 두 번째 Claude가 **새로운 컨텍스트에서 스태프 엔지니어처럼 리뷰**  
- 리뷰어는 구현 단축키에 대한 사전 지식이 없으므로 **모든 부분에 도전**  
- TDD에도 동일 아이디어 적용: **세션 A가 테스트 작성, 세션 B가 통과 코드 작성**  
  
### 46. PR 리뷰를 대화형으로 진행  
  
- 원샷 PR 리뷰를 요청하는 대신(물론 가능하지만), PR을 세션에서 열고 **대화** 진행  
  - "이 PR에서 가장 위험한 변경을 설명해"  
  - "이것이 동시에 실행되면 무엇이 깨질까?"  
  - "에러 핸들링이 코드베이스의 나머지와 일관적인가?"  
- 대화형 리뷰가 더 많은 이슈를 포착 — 중요한 영역을 **깊이 파고들 수 있기 때문**  
- 원샷 리뷰는 스타일 니트를 플래그하는 경향이 있고 **아키텍처 문제를 놓치기 쉬움**  
  
### 47. 세션에 이름과 색상 지정  
  
- `/rename auth-refactor`로 **프롬프트 바에 레이블** 표시  
- `/color red` 또는 `/color blue`로 **프롬프트 바 색상** 설정  
  - 사용 가능 색상: red, blue, green, yellow, purple, orange, pink, cyan  
- 2~3개 병렬 세션 운영 시 이름과 색상 지정에 5초 투자로 **잘못된 터미널에 입력하는 실수 방지**  
  
### 48. Claude 완료 시 사운드 재생  
  
- **Stop Hook**으로 Claude가 응답을 완료하면 시스템 사운드 재생  
- 태스크를 시작하고 다른 작업으로 전환한 뒤, **완료 시 핑 소리로 알림**  
- 예: `.claude/settings.json`에 Stop Hook으로 `/usr/bin/afplay /System/Library/Sounds/Glass.aiff` 등록  
  
### 49. claude -p로 배치 작업 팬아웃  
  
- **비대화형 모드**로 파일 목록을 루프하며 처리 — `--allowedTools`로 파일당 Claude가 할 수 있는 작업 범위 제한  
- `&`로 **병렬 실행**하여 최대 처리량 확보:  
  - `for file in $(cat files-to-migrate.txt); do claude -p "Migrate $file from class components to hooks" --allowedTools "Edit,Bash(git commit *)" & done; wait`  
- 파일 포맷 변환, 코드베이스 전체 import 업데이트, 각 파일이 독립적인 **반복 마이그레이션**에 적합  
  
### 50. 스피너 동사 커스터마이징 (재미 요소)  
  
- Claude가 생각하는 동안 터미널에 "Flibbertigibbeting...", "Flummoxing..." 같은 **스피너 동사** 표시  
- 원하는 문구로 교체 가능 — Claude에게 지시:  
  - "Replace my spinner verbs in user settings with these: Hallucinating responsibly, Pretending to think, Confidently guessing, Blaming the context window"  
- 목록을 직접 제공하지 않아도 됨 — "Replace my spinner verbs with Harry Potter spells"처럼 **분위기만 전달**하면 Claude가 목록 생성  
- 대기 시간을 더 즐겁게 만드는 작은 커스터마이징

## Comments



### Comment 53459

- Author: roxie
- Created: 2026-03-20T18:13:44+09:00
- Points: 1

1번부터 너무 즐겁네요
