Claude Code 베스트 프랙티스
Anthropic 내부 팀과 사용자들에게서 검증된 패턴 모음. code.claude.com/docs/en/best-practices
🌱 쉽게 풀어볼게요 — ‘컨텍스트’가 뭔가요?
‘컨텍스트(context)’는 AI가 지금 이 대화에서 ‘기억하고 있는 모든 것’을 말합니다. 여러분이 한 말, AI가 읽어 들인 파일, 실행한 명령의 결과가 전부 이 기억 공간에 차곡차곡 쌓입니다. 사람의 단기 기억과 비슷해서, 너무 많은 내용이 들어차면 앞에서 한 약속을 깜빡하거나 헷갈리기 시작합니다.
/compact), 아예 새 보드로 갈아끼워야(/clear) 합니다. 바로 위의 시뮬레이터 슬라이더를 직접 움직여 보면 이 느낌이 한눈에 들어와요.1검증 수단을 줘라 (가장 본질적인 습관)
Claude는 "다 된 것처럼 보이면" 멈춘다. 실행 가능한 검증 수단이 없으면 당신이 곧 검증 루프가 된다. 통과/실패 신호를 주면 루프가 스스로 닫힌다 — Claude가 작업하고, 검증을 돌리고, 결과를 읽고, 통과할 때까지 반복.
검증 수단 = 대화에서 읽을 수 있는 신호: 테스트 스위트, 빌드 종료코드, 린터, 출력 비교 스크립트, 브라우저 스크린샷.
| 전략 | ❌ 모호한 지시 | ✅ 검증 포함 지시 |
|---|---|---|
| 검증 기준 제시 | "이메일 검증 함수 만들어줘" | "validateEmail 작성. 테스트 케이스: a@b.com→true, invalid→false, a@.com→false. 구현 후 테스트 실행" |
| UI를 시각적으로 검증 | "대시보드 더 예쁘게" | "[스크린샷] 이 디자인 구현하고, 결과 스크린샷 찍어 원본과 비교해 차이를 고쳐" |
| 증상이 아닌 근본 원인 | "빌드 실패 고쳐줘" | "[에러] 근본 원인을 고치고 빌드 성공을 확인해. 에러를 숨기지 마" |
검증을 "얼마나 강하게" 강제할지 (게이트 4단계)
프롬프트 안에서
같은 메시지에 "검증하고 반복"
/goal 조건
매 턴 평가자가 재확인
Stop 훅
통과 전까지 턴 종료 차단
검증 서브에이전트
새 모델이 결과를 반박 시도
2탐색 → 계획 → 구현 → 커밋
코딩으로 바로 뛰어들면 "엉뚱한 문제"를 풀 수 있다. Plan 모드로 탐색과 실행을 분리하라.
탐색
Plan 모드. 파일 읽고 질문 답변만, 변경 X
계획
상세 구현 계획 작성. Ctrl+G로 에디터에서 직접 수정
구현
Plan 모드 해제, 계획대로 코딩+테스트
커밋
설명적 메시지로 커밋 & PR 생성
3프롬프트에 구체적인 컨텍스트를 담아라
Claude는 의도를 추론할 수 있지만 마음을 읽지는 못한다. 구체적일수록 교정 횟수가 줄어든다.
① 작업 범위 좁히기
어떤 파일·어떤 시나리오·테스트 선호를 명시.
"foo.py 테스트 추가" → "로그아웃 엣지케이스를 커버하는 foo.py 테스트. mock 금지"
② 출처를 가리키기
답을 줄 수 있는 소스로 안내.
"왜 API가 이상해?" → "ExecutionFactory의 git history를 보고 API가 어떻게 생겨났는지 요약해"
③ 기존 패턴 참조
코드베이스의 본보기를 지목.
"캘린더 위젯 추가" → "HotDogWidget.php 패턴을 보고 동일하게 캘린더 위젯 구현"
④ 증상 묘사
증상 + 추정 위치 + "고쳐짐"의 정의.
"로그인 버그 고쳐" → "세션 만료 후 로그인 실패. src/auth/ 토큰 갱신 확인, 실패 테스트부터 작성 후 수정"
풍부한 컨텍스트를 주는 5가지 방법
@로 파일 참조 — 위치를 설명하지 말고 직접 가리키면 Claude가 먼저 읽는다- 이미지 붙여넣기 — 복붙 또는 드래그&드롭
- URL 제공 — 문서·API 레퍼런스.
/permissions로 자주 쓰는 도메인 허용 - 데이터 파이프 —
cat error.log | claude - Claude가 직접 가져오게 — Bash·MCP·파일 읽기로 필요한 맥락을 스스로 끌어오게 지시
"이 파일에서 뭘 개선하면 좋을까?"는 생각지 못한 것을 끌어낸다.4환경 구성 — CLAUDE.md / 권한 / 확장
🌱 쉽게 풀어볼게요 — CLAUDE.md가 뭔가요?
CLAUDE.md는 프로젝트 폴더에 두는 ‘먼저 읽어주세요’ 메모 파일입니다. Claude는 대화를 시작할 때마다 이 파일을 자동으로 읽어요. 그래서 ‘테스트는 이 명령으로 돌려’, ‘들여쓰기는 스페이스 두 칸’ 같은 우리 팀만의 약속을 적어 두면, 매번 다시 설명하지 않아도 Claude가 알아서 따릅니다.
| ✅ CLAUDE.md에 넣을 것 | ❌ 넣지 말 것 |
|---|---|
| Claude가 추측 못 할 Bash 명령 | 코드를 읽으면 알 수 있는 것 |
| 기본값과 다른 코드 스타일 규칙 | Claude가 이미 아는 표준 관례 |
| 테스트 방법·선호 러너 | 상세 API 문서(링크로 대체) |
| 저장소 에티켓(브랜치명·PR 규칙) | 자주 바뀌는 정보 |
| 프로젝트 고유 아키텍처 결정 | 긴 설명·튜토리얼 |
| 개발환경 특이사항(필수 env var) | "깨끗한 코드 작성" 같은 자명한 것 |
📍 CLAUDE.md 위치
~/.claude/CLAUDE.md— 모든 세션 전역./CLAUDE.md— 프로젝트(git 체크인, 팀 공유)./CLAUDE.local.md— 개인 메모(.gitignore)- 상위/하위 디렉터리 — 모노레포에서 자동/온디맨드 로드
🛠 시작은 /init
코드베이스를 분석해 빌드 시스템·테스트 프레임워크·패턴을 감지하고 시작용 CLAUDE.md를 생성. 이후 다듬어 나간다.
@path/to/import 문법으로 다른 파일을 끌어올 수 있다.
권한 줄이기 3가지 + 확장 5종
🔓 권한 완화
- Auto 모드: 분류기가 위험만 차단
- 허용목록:
/permissions로 안전 명령 사전 승인 - 샌드박스:
/sandboxOS 격리
🧰 CLI 도구
gh, aws, gcloud 등. CLI는 외부 서비스와 가장 토큰 효율적으로 상호작용. foo --help로 모르는 CLI도 학습시킨다.
🔌 MCP 서버
claude mcp add로 Notion·Figma·DB 연결. 이슈 트래커 기능 구현, DB 쿼리, 모니터링 분석.
🪝 훅(Hooks)
CLAUDE.md는 "권고", 훅은 "결정론적 보장". .claude/settings.json 또는 /hooks. "edit 후 eslint 실행하는 훅 짜줘".
🎯 스킬(Skills)
.claude/skills/*/SKILL.md. 도메인 지식·반복 워크플로우. 자동 적용되거나 /스킬명으로 호출. 가끔 쓰는 건 CLAUDE.md 대신 스킬로.
🤖 서브에이전트 / 플러그인
.claude/agents/*.md 격리 컨텍스트·전용 도구. /plugin 마켓플레이스. 타입 언어면 코드 인텔리전스 플러그인 설치.
5효과적으로 소통하기
🧑🏫 코드베이스 질문
시니어 엔지니어에게 묻듯 물어라. "로깅은 어떻게 동작해?", "새 API 엔드포인트 어떻게 만들어?", "134번 줄 async move는 무슨 의미?". 별도 프롬프팅 불필요 — 온보딩에 최고.
🎤 Claude가 당신을 인터뷰하게
큰 기능은 AskUserQuestion 도구로 인터뷰시켜라. 구현·UI/UX·엣지케이스·트레이드오프를 캐묻게 한 뒤 SPEC.md 작성 → 새 세션에서 깨끗한 컨텍스트로 실행.
6세션 관리 — 빠른 교정 & 컨텍스트
↩️ 빨리 교정하라
- Esc — 진행 중 멈춤(컨텍스트 보존)
- Esc Esc /
/rewind— 이전 상태로 되돌리기 - "되돌려" — 변경 취소
/clear— 무관한 작업 사이 컨텍스트 리셋
같은 이슈를 2번 넘게 교정했다면 컨텍스트가 실패 시도로 오염된 것 — /clear 후 배운 걸 반영한 더 나은 프롬프트로 새 출발.
🧹 컨텍스트를 공격적으로 관리
/clear— 작업 사이 전체 리셋/compact <지시>— 일부만/특정 초점으로 요약- EscEsc → "여기부터/까지 요약"
/btw— 컨텍스트에 안 남는 곁가지 질문
⏪ 체크포인트 & 세션 재개
모든 프롬프트가 체크포인트를 만든다. /rewind로 대화/코드/둘 다 복원. "위험한 걸 시도해보고 안 되면 되돌리기"가 가능해진다. (단, Claude 변경분만 추적 — git 대체 아님)
세션 재개: claude --continue(최근), claude --resume(목록), /rename으로 oauth-migration처럼 명명.
7자동화 & 스케일 — 여러 Claude
⌨️ 비대화 모드
claude -p "프롬프트" — CI·pre-commit·스크립트에 통합. 출력 포맷: text / --output-format json / stream-json --verbose.
🔀 병렬 세션
Worktrees(격리 체크아웃), 데스크톱 앱, 웹(클라우드 VM), Agent teams. Writer/Reviewer 패턴: 한 세션이 짜고, 신선한 컨텍스트의 다른 세션이 리뷰.
📂 파일 단위 팬아웃
대규모 마이그레이션: 파일 목록 생성 → for 루프로 claude -p 호출 → --allowedTools로 권한 제한. 2~3개로 테스트 후 전체 실행.
🛡️ 적대적 리뷰 단계
완료로 치기 전, 새 컨텍스트 서브에이전트가 diff만 보고 빈틈 보고. 번들 /code-review 스킬. 단, 리뷰어는 늘 뭔가 찾아내니 "정확성/요구사항에 영향 주는 것만" 지시.
8흔한 실패 패턴 5가지
| 패턴 | 증상 | 해결 |
|---|---|---|
| 🍳 잡탕 세션 | 한 작업 → 무관한 질문 → 다시 첫 작업. 컨텍스트가 잡동사니로 가득 | /clear |
| 🔁 반복 교정 | 틀림→교정→여전히 틀림→또 교정. 실패 시도로 오염 | 2회 실패 후 /clear + 더 나은 초기 프롬프트 |
| 📜 과잉 CLAUDE.md | 너무 길어 규칙 절반이 묻힘 | 무자비하게 가지치기. 이미 잘하면 삭제 또는 훅으로 |
| 🤞 믿고 안 본 갭 | 그럴듯하지만 엣지케이스 누락 | 항상 검증(테스트·스크립트·스크린샷). 검증 못 하면 배포 X |
| ♾️ 무한 탐색 | 범위 없는 "조사" → 수백 파일로 컨텍스트 가득 | 좁게 범위 지정 또는 서브에이전트 |
🧠 탭 ① 확인 퀴즈
공식 베스트 프랙티스를 제대로 이해했는지 확인하세요. (6문항)
Boris가 Claude Code를 쓰는 법
Claude Code 제작자 Boris Cherny가 2026년 1~6월 공유한 105개 팁 (팬 정리본 @carolinacherry). howborisusesclaudecode.com
🌱 쉽게 풀어볼게요 — ‘병렬화’와 ‘워크트리’
‘병렬화’는 한 사람이 일을 하나씩 끝내는 대신, 여러 Claude에게 서로 다른 일을 동시에 맡기는 것입니다. 문제는 같은 프로젝트 폴더에서 여러 Claude가 동시에 파일을 고치면 서로 충돌한다는 점이에요. 그래서 쓰는 것이 ‘워크트리(worktree)’입니다. 같은 프로젝트를 여러 폴더에 동시에 펼쳐 두는 git 기능이라, 각 폴더에서 따로 작업하면 충돌이 나지 않습니다.
14대 핵심 축
🧬 ① 많이, 병렬로
- 5개 Claude를 별도 git 체크아웃/탭(1~5)으로
- 이후 worktree가 "단일 최대 생산성 향상"
- 웹/모바일에서 5~10개 추가 세션
- "항상 수십 개 Claude가 돌고 있다"
🤖 ② 자율 실행
- Auto 모드로 권한 프롬프트 제거 → 감시 불필요
/loop·/schedule·/goal로 알아서 돌게- "코딩 안 할 땐 dispatch한다"
✅ ③ 검증 = 품질 2~3배
- "Claude에게 검증 수단을 줘라" — 최중요 팁
- 프론트=Chrome 확장, 백=서버 기동, 모바일=시뮬레이터
- claude.ai/code에 올리는 모든 변경을 Claude가 테스트
📝 ④ 실수는 "적어라"
- 교정 대신 "CLAUDE.md를 업데이트해 다시 안 그러게"
- "Claude는 자기 규칙을 소름 돋게 잘 쓴다"
- 대화 교정=일회용 패치 / 규칙=영구 수정
2컨텍스트 관리의 정수
⏪ 교정보다 /rewind
좋은 컨텍스트 관리의 신호. 잘못된 길로 가면 "안 됐어, X로 해" 하지 말고 — 되돌린 뒤 배운 걸 담아 다시 프롬프트.
교정: 맥락 = 파일읽기+실패시도+교정+수정 / 되돌리기: 맥락 = 파일읽기+더 나은 프롬프트+수정
🗜️ /compact vs /clear
/compact(손실 요약): 빠르고 흐름 유지, 디테일은 흐릿. /compact 인증 리팩터에 집중처럼 힌트.
/clear(직접 정리): 새 작업은 새 세션. 관련 작업은 힌트와 함께 /compact.
🪟 컨텍스트 미니멀리즘
"context engineering → context minimalism". 최소 시스템 프롬프트 + 최소 도구를 주고 모델이 알아서 컨텍스트를 끌어오게 하라. 단, 미니멀 ≠ 모호 — 목표는 주되 마이크로 단계는 주지 말 것.
📉 auto-compact 임계값 낮추기
1M 모델도 300~400K 토큰에서 "컨텍스트 로트". CLAUDE_CODE_AUTO_COMPACT_WINDOW=400000 claude로 더 일찍 압축(권장 타협점 400K).
3프롬프팅 레벨업 — 위임 마인드
전체 맥락을 처음에
첫 턴에 목표·제약·수용기준 3가지. 그러면 문제 공간 전체를 계획한다.
밀어붙이기
"이 변경을 나에게 따져 물어봐", "이게 작동함을 증명해", "지금 아는 걸 다 동원해 우아하게 다시 구현해".
효율적 기본값
Opus 4.8은 high 기본. 효율은 같되 더 똑똑. 어려운 건 /effort xhigh, 가장 어려운 건 max(현 세션만 적용).
4워크플로우 진화사 — plan 모드에서 dynamic workflow까지
🌱 쉽게 풀어볼게요 — ‘워크플로우’와 ‘오토 모드’
여기서 ‘워크플로우(dynamic workflow)’는 한 번에 처리하기엔 너무 큰 일을, 수백 개의 작은 일꾼(서브에이전트)으로 잘게 나눠 동시에 돌리고, 결과까지 서로 검증하게 하는 실행 방식입니다. 큰 이사를 혼자 하지 않고 여러 사람을 불러 방마다 나눠 맡기는 것과 비슷해요. 시작하려면 그냥 “use a workflow”라고 말하면 됩니다.
‘오토 모드(auto mode)’는 위험한 동작만 골라 막아 주는 검사관을 옆에 둔 채, 안전한 일은 일일이 허락을 묻지 않고 진행하는 모드입니다. 그래서 “이거 해도 돼요?”라는 확인 창을 매번 클릭하지 않아도 됩니다.
Boris의 한 해를 관통한 큰 흐름: 모델이 똑똑해질수록 "사람이 통제하던 것"을 모델에 넘겼다.
Plan 모드
명시적 계획으로 궤도 유지
Auto 모드
계획 불필요, 분류기가 권한 처리
/goal · agent view
조건 충족까지 실행, 여러 에이전트 한눈에
Dynamic Workflows
한 패스에 안 맞는 거대 작업
🌀 Dynamic Workflows — "use a workflow"
한 패스에 너무 큰 작업을, 수백 개 병렬 서브에이전트로 처리하고 보고 전에 검증까지. 트리거는 정확히 "use a workflow" (그냥 "workflow"는 오작동이 많아 변경됨). auto 모드 필수 — 단 하나의 권한 프롬프트가 전체를 멈춘다.
고치는 3가지 실패 모드:
- 에이전트 게으름: 50개 중 20개 처리하고 "완료" 선언 → 결정론적 루프로 해결
- 자기 편향: 자기 결과를 선호 → 다른 에이전트가 채점
- 목표 표류: 요약 반복으로 원목표 희석 → 각 에이전트가 작은 목표 하나만
Claude가 조합하는 6가지 패턴: 분류-후-실행 · 팬아웃-후-종합 · 적대적 검증 · 생성-후-필터 · 토너먼트 · 완료까지-반복. ("ultracode"로 워크플로우 생성을 보장)
5매일 쓰는 강력 기능 사전
| 명령/기능 | 무엇을 / 언제 |
|---|---|
/loop [간격] /작업 | 로컬에서 작업을 반복 실행(최대 며칠). 예: /loop 5m /babysit(PR 자동 관리) |
/schedule | 클라우드 잡 — 노트북 닫혀도 실행. 일일 문서 업데이트·CI 자동 해결 |
/goal <조건> | 조건이 참이 될 때까지 멈추지 않음. "Ralph 루프 내장". 학습 튜터로도 활용 |
/btw | Claude가 일하는 중 곁가지 질문(단일 턴, 컨텍스트 유지, 기록 안 남음) |
/simplify · /batch | 변경 코드 품질 개선 / 수십~수백 worktree 에이전트로 병렬 마이그레이션 |
/focus · Recaps | 중간 과정 숨기고 결과만 / 자리 비운 사이 무슨 일이 있었는지 요약 |
| worktree | claude --worktree(또는 -w), Desktop 체크박스, 에이전트 isolation: worktree |
| 모바일·이동 | claude agents(여러 세션 한 목록), --teleport/remote-control, iMessage·음성 |
--add-dir · --agent · --bare | 다른 폴더 접근 / 커스텀 시스템 프롬프트·도구 / SDK 시작 최대 10배 가속 |
6커스터마이징 (팀과 공유 가능)
터미널/외관
/config(테마·출력 스타일), /statusline(컨텍스트·비용 표시), /terminal-setup, /vim, /keybindings, /color
훅 라이프사이클
SessionStart · PreToolUse · PermissionRequest · Stop · PostToolUse · PostCompact. "끝나면 계속 진행하라고 찔러주기" 등
settings.json
37개 설정 · 84개 env var. git 체크인하면 팀·하위폴더·기업 전체에 적용. 마켓플레이스 자동 추가
@.claude를 태그하면 학습이 CLAUDE.md에 규칙으로 추가된다. 하루 1번 이상 하는 일은 스킬/커맨드로. 에러율이 시간이 갈수록 떨어진다.🧠 탭 ② 확인 퀴즈
Boris의 실전 철학을 점검하세요. (7문항)
Claude Code best practices — 작동 원리
발표: Cal Rueb (Anthropic Applied AI). "Code w/ Claude" 컨퍼런스(2025.5.22). youtube.com/watch?v=gv0WHhKelSE
🌱 쉽게 풀어볼게요 — ‘에이전트’와 ‘터미널’
‘터미널’은 마우스나 창 없이 글자 명령을 입력하는 검은 입력창입니다. Claude Code는 바로 이 터미널 안에서 동작해요. ‘에이전트(agent)’는 질문에 답만 하고 멈추는 챗봇과 달리, 스스로 도구를 골라 쓰고 결과를 본 뒤 다음 행동을 정하며 일이 끝날 때까지 반복하는 AI를 말합니다.
1내부 작동 원리 — "단순하지만 작동하는 것"
Anthropic의 철학은 "the simple thing that works". Claude Code는 매우 순수한 에이전트다. Anthropic에서 "에이전트"란:
지시(Instructions)
가벼운 시스템 프롬프트
강력한 도구
파일 생성·편집, 터미널, MCP
루프
"끝났다"고 판단할 때까지 스스로 반복
🔍 인덱싱 없는 "agentic search"
코드베이스를 embedding·RAG로 색인하지 않는다. 새 팀원이 코드를 탐험하듯, glob·grep·find 같은 도구로 검색→결과 확인→"몇 가지 더 봐야겠다"→다시 검색. 사람과 같은 방식.
🛡️ 그 위의 얇은 층
① Claude가 일하는 걸 보는 가벼운 UI, ② 위험할 때 사람을 끼어들게 하는 권한 시스템, ③ 보안. 모델이 Anthropic API뿐 아니라 AWS Bedrock·GCP Vertex로도 제공돼 원하는 방식으로 소비 가능.
2좋은 사용 사례 — "거의 모든 것에 강하다"
🧭 발견·온보딩
새 코드베이스에 투입됐을 때 "이 기능 어디 구현됐어?", "git history 보고 이 코드의 변천사를 이야기해줘". 적응을 가속.
🤝 생각 파트너
바로 코딩 말고: "구현 방법을 찾아 2~3가지 옵션만 보고해. 아직 파일 쓰지 마." 검증 후 진행.
🏗️ 빌딩
0→1(빈 디렉터리에서 앱/게임)과 기존 코드베이스 둘 다. 높은 단위 테스트 커버리지, 좋은 커밋/PR 메시지.
🚀 배포·SDK
헤드리스/프로그래밍 사용. CI/CD·GitHub Actions에 코딩 에이전트를 "뿌리기".
🐛 지원·스케일
디버깅 가속. 큰 마이그레이션(구버전 Java→신버전, PHP→React)을 "소화 가능"하게.
⌨️ CLI의 달인
git·docker·BigQuery에 강함. "엉킨 rebase에서 날 꺼내줘" — 터미널 작업은 다 잘한다.
3영상이 짚은 베스트 프랙티스
📄 CLAUDE.md = 공유 기억
에이전트엔 메모리가 없다. 시작 시 작업 디렉터리의 CLAUDE.md가 프롬프트에 삽입돼 "개발자가 남긴 중요한 지시"로 전달된다. 테스트 실행법·프로젝트 개요·스타일 가이드 등. 프로젝트(체크인)/홈 디렉터리에 배치.
🔐 권한 관리
읽기/검색은 그냥 진행, 쓰기/bash는 승인 UI. Shift+Tab auto-accept 모드, 설정에서 npm run test 같은 명령 상시 승인. "권한을 만지작거리는 게 속도를 올린다".
🔌 통합: CLI > MCP
GitHub의 gh처럼 CLI로 일을 넘겨라. 잘 알려지고 문서화된 도구라면 MCP보다 CLI 설치를 권장. 내부 도구도 CLAUDE.md로 알려준다.
🧮 컨텍스트 관리(200K)
우하단 경고가 뜨면 2가지: /clear(CLAUDE.md만 남기고 초기화) 또는 /compact("다른 개발자에게 넘긴다"며 요약 → 다음 세션의 씨앗). compact는 많이 튜닝됨.
⚙️ 워크플로우 팁
- 계획 & to-do: "버그 고쳐" 대신 "원인 찾아 계획만 말해줘" → 검증 가능. to-do 리스트가 이상하면 Esc로 수정
- 스마트 바이브 코딩: TDD, 작은 변경+테스트, TypeScript/lint 체크, 자주 커밋(잘못되면 되돌리기)
- 스크린샷: 멀티모달이므로
mock.png를 붙여넣고 "이대로 만들어" - 고급: 여러 Claude 동시 운영(tmux/탭), Esc로 개입, Esc 두 번으로 대화 거슬러 올라가기(숨은 기능), 한계 느끼면 MCP, 헤드리스 자동화
4"항상 새로운 것을 따라가라" — 영상 당시의 신기능
🧠 도구 호출 사이의 사고
과거 모델은 도구 호출 사이엔 사고하지 않았다(정작 그때가 제일 중요). Claude 4부터 도구 호출 사이에 사고 가능 → 프롬프트에 "think hard"를 넣으면 회색 텍스트로 사고가 보인다.
🔧 모델·통합
/model·/config로 모델 전환(당시 기본 Sonnet → Opus). VS Code·JetBrains 통합(열린 파일 인지). 공개 GitHub 저장소의 changelog를 주 1회 확인.
@로 다른 파일을 항상 끌어올 수 있다. 멀티 에이전트 협업은 공유 마크다운 파일(ticket.md)에 상태를 쓰고 다른 Claude가 읽게 하는 방식이 "오늘 할 수 있는 최선".🧠 탭 ③ 확인 퀴즈
Claude Code의 작동 원리를 이해했는지 확인하세요. (7문항)
7시간 공식 코스를 27분으로
발표: David Ondrej. Anthropic 공식 "Claude Code in Action" 코스 압축 + 500시간 사용 경험. youtube.com/watch?v=XuSFUvUdvQA
/init·MCP·훅·SDK까지 손에 익히는 핸즈온.Anthropic의 공식 코스는 네 부분으로 나뉩니다 — ① 코딩 어시스턴트란 무엇인가, ② 왜 Claude Code인가, ③ 파트너처럼 함께 일하는 법, ④ 최대한 끌어내는 법. 가장 중요한 원리는 이것입니다: AI 모델(LM)에 도구를 쥐여 주면 ‘필요한 정보 모으기 → 계획 세우기 → 실제로 실행하기’를 끝까지 반복합니다. 이 탭은 설치부터 직접 따라 하는 실습 위주예요.
🌱 쉽게 풀어볼게요 — 왜 ‘도구’가 꼭 필요할까요?
AI 모델은 머릿속으로 ‘생각’은 잘하지만, 생각만으로는 바깥 세상을 건드리지 못합니다. 내 컴퓨터의 파일을 읽거나 고치려면 반드시 ‘도구’가 필요해요. 그래서 강한 AI 비서는 ‘똑똑한 모델’ 하나만으로는 부족하고, ‘똑똑한 모델 + 풍부한 도구’가 함께 있어야 합니다.
1코딩 어시스턴트란? + 왜 강력한가
코딩 어시스턴트 = 언어 모델(LM) + 도구 집합. LM은 추론만으론 외부 세계(환경)와 상호작용 못 한다. 그래서 컨텍스트 수집엔 read_file, 행동엔 edit_file 같은 도구가 필요. 강한 어시스턴트 = 강한 모델 + 많은 강력한 도구. Claude Code엔 agent(서브에이전트 실행)·bash·edit 등 내장 도구가 풍부하다.
| 데모 | 무엇을 보여줬나 |
|---|---|
| ⚡ 최적화 | chalk 라이브러리(주 4억 다운로드) 벤치마크 → 한 유스케이스에서 3.9배 속도 개선 발견·수정 |
| 📊 데이터 분석 | 스트리밍 CSV를 Jupyter 노트북에서 분석 → 그래프·차트로 이탈(churn) 시각화 |
| 🎨 UI 스타일링 | Playwright MCP로 브라우저 제어 → 스크린샷 찍고 디자인 개선을 반복(코드뿐 아니라 "느낌"까지) |
| 🔁 CI/CD | GitHub의 모든 PR을 자동 리뷰 |
2설치 & 첫 셋업
설치
claude.com의 curl 명령을 터미널에
폴더로 이동
cd로 프로젝트 폴더에(다른 디렉터리 사고 방지)
실행
claude 입력 → "이 폴더 신뢰?" Yes
/init
코드베이스 분석 → claude.md 자동 생성
/init이 만드는 claude.md는 Claude Code의 "시스템 프롬프트" 역할 — 아키텍처·핵심 파일·컨벤션·기술 스택 요약. 핵심: 모든 요청에 자동 포함되어 복붙이 필요 없다. (영상에선 100여 줄 생성)IDE도 cursor도 필요 없이 터미널만으로 동작하며, 영어(또는 한국어) 평문으로 쓴다.
3컨텍스트 다루기 — @ / 메모리 / Escape / compact
@로 파일 멘션
@schema.prisma, @package.json처럼 특정 파일을 컨텍스트에 추가. 특정 작업을 할 땐 관련 파일을 반드시 태그. 핵심 파일은 claude.md에 "이 파일에 DB 전부 있으니 먼저 읽어"라고 적어두기.
메모리: # → /memory
예전엔 #로 claude.md 끝에 메모 추가(예: "항상 TypeScript 써"). 현재는 #가 동작 안 함 — /memory로 프로젝트/유저 메모리를 편집. "뭔가 기억시키려면 claude.md에 추가"가 안전.
Esc로 중단
응답 도중 멈춰 방향을 바로잡거나 맥락을 더 주고 다시 시킨다.
/compact
긴 세션에서 학습된 지식은 최대한 보존하며 대화를 요약 → 컨텍스트 윈도우를 비워 rate limit 절약·응답 가속. /를 누르면 모든 커맨드가 보인다.
4커스텀 커맨드 · MCP · GitHub
⌨️ 커스텀 슬래시 커맨드
.claude/commands/에 이름.md 파일을 만들면 /이름으로 호출된다. (영상: 10초 만에 /testing 생성) 같은 프롬프트를 반복한다면 커맨드로 만들어라. $ARGUMENTS로 런타임 인자를 받는다 — 프롬프트 중간에 들어가, "특정 PR 리뷰"·"특정 기능 스펙 생성"에 유용. (새 커맨드는 재시작해야 로드)
🔌 MCP 서버
Claude Code에 새 능력(도구)을 추가. 로컬/원격 실행. Playwright MCP=브라우저 제어(클릭·스크린샷·UI 테스트), N8N MCP=최신 노드 문서로 평문 프롬프트만으로 전체 자동화(329줄 JSON) 생성.
🐙 GitHub 통합
/install-github-app → 현재 저장소 선택·권한 부여. PR/이슈에서 @claude 멘션으로 작업 배정·리뷰. 이후 CLI를 떠나지 않고 커밋 푸시·PR 오픈·리뷰 코멘트 응답까지.
5훅(Hooks) & SDK — 고급
🌱 쉽게 풀어볼게요 — ‘훅’과 ‘SDK’ (조금 어려운 단계예요)
‘훅(hook)’은 Claude가 어떤 동작을 하기 ‘직전’이나 ‘직후’에 자동으로 끼어들어 실행되는 내 작은 스크립트입니다. CLAUDE.md가 ‘부탁(권고)’이라면, 훅은 무조건 실행되는 ‘규칙’이에요. 예를 들어 ‘파일을 고칠 때마다 자동으로 검사를 돌려라’를 확실하게 보장할 수 있습니다.
‘SDK(Agent SDK)’는 개발자가 Claude Code와 같은 능력을 자기 프로그램 안에 넣어, 직접 맞춤형 AI 비서를 만들 수 있게 해 주는 도구 모음입니다.
/init·@ 파일 첨부)부터 충분히 익히세요.🪝 훅: 도구 호출 전/후 스크립트
- pre-tool 훅: 도구 호출 전.
.env같은 민감 파일 읽기나 특정 파일 수정을 차단 - post-tool 훅: 도구 호출 후. 소리 알림, 타입 에러 체크 등
- 유용한 훅 ①: TypeScript 체커
tsc --noemit를 매 편집 후 실행 - 유용한 훅 ②: 중복 코드 방지 — 2번째 Claude로 이미 존재하는 코드인지 검사
🧩 SDK = Agent SDK
Claude Code의 프로그래밍 인터페이스 — CLI + TypeScript/Python 라이브러리. 같은 능력을 자기만의 특화 셋업으로(예: 법률 계약 분석 에이전트). Claude Code는 오픈소스가 아니다. 초보일수록 문서를 더 읽어라 — 문서는 친숙하지 않은 사람을 위한 것.
settings.json을 그대로 공유 못 한다. 해결: 템플릿에 $PWD 플레이스홀더를 쓰고 실제 경로로 치환하는 스크립트를 돌린다. (pwd로 절대 경로 확인)think / think hard / ultra think로 추론 강도를 올렸지만, 지금은 사실상 항상 최대로 사고(ultra think 트릭은 더 이상 동작 안 함). # 메모리 컨벤션도 폐지 → /memory 사용. 항상 최신 버전을 써라.🎛️ plan 모드 vs thinking 모드 (개념 구분)
plan 모드 = 폭(breadth): Shift+Tab으로 모드 토글(auto-accept=보라색 / plan / default). 더 많은 파일을 연구하고 계획하되 아무것도 바꾸지 않는다. thinking 모드 = 깊이(depth): 추론량(think→ultra think). 둘은 상호보완적. (단 thinking 강제는 현재 기본 최대화로 무의미)
🧠 탭 ④ 확인 퀴즈
핸즈온 핵심을 점검하세요. (7문항)
📌 전체 명령어 & 단축키 치트시트 (펼치기)
세션 · 컨텍스트
/initCLAUDE.md 자동 생성/clear컨텍스트 전체 리셋/compact <힌트>대화 요약/rewind· EscEsc이전 상태로 되돌리기- Esc진행 중 중단
/btw기록 안 남는 곁가지 질문/memory프로젝트/유저 메모리 편집--continue/--resume세션 재개
모드 · 추론
- Shift+Tabplan→auto→normal 순환
/model·/config모델·설정 변경/effortlow·medium·high·xhigh·max/fastOpus 4.8 빠른 모드/focus중간 과정 숨기고 결과만
자율 · 병렬 · 워크플로우
/goal <조건>조건 충족까지 실행/loop [간격] /작업로컬 반복 실행/schedule클라우드 스케줄 잡- "use a workflow"dynamic workflow 트리거
/batch·/simplify병렬 마이그레이션·품질 개선claude --worktree/-w격리 worktreeclaude agents여러 세션 한 목록- "use subagents"서브에이전트로 위임
확장 · 통합
/permissions·/sandbox권한·격리claude mcp addMCP 서버 연결/install-github-appGitHub 통합/hooks훅 설정 보기@파일//add-dir파일·폴더 컨텍스트claude -p "..."비대화(헤드리스) 모드/statusline·/vim상태줄·Vim 모드