Claude Code 상세 사용법 28: 큰 저장소에서 컨텍스트와 캐시 아끼기 | DAKER 커뮤니티

Claude Code 상세 사용법 28: 큰 저장소에서 컨텍스트와 캐시 아끼기

Claude Code 공식 large codebase 문서는 큰 저장소에서 Claude가 불필요한 지시문과 파일을 읽어 컨텍스트를 채우지 않도록 범위를 줄이는 방법을 설명한다. 여기에 prompt caching 문서의 규칙을 더하면, 긴 AI 코딩 세션의 비용과 지연을 훨씬 안정적으로 관리할 수 있다.

위 SVG는 Mermaid 기반 범위 결정도를 DAKER 편집기용 이미지로 옮긴 것이다.

1. 시작 디렉터리가 첫 번째 필터다

저장소 루트에서 claude를 시작하면 기본 접근 범위가 넓고 루트 CLAUDE.md가 로드된다. packages/api 같은 하위 디렉터리에서 시작하면 그 하위 트리 중심으로 작업하고, 해당 디렉터리와 상위의 CLAUDE.md만 처음부터 들어온다.

cd packages/api
claude

패키지 하나만 고치는 작업이면 하위 디렉터리에서 시작한다. 공유 타입이나 웹 패키지까지 바꿔야 하면 --add-dir로 범위를 넓힌다.

CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 claude --add-dir ../shared

2. 읽지 말아야 할 파일을 명시한다

생성 파일, vendor 코드, 빌드 산출물은 Claude가 열어도 품질이 좋아지지 않는 경우가 많다. 프로젝트 설정의 deny rule로 읽기를 막아 컨텍스트 오염을 줄인다.

{
  "permissions": {
    "deny": [
      "Read(./dist/**)",
      "Read(./coverage/**)",
      "Read(./vendor/**)"
    ]
  }
}

병렬 작업이나 subagent worktree가 많다면 worktree.sparsePaths도 쓴다. 문서 기준 sparsePaths에는 디렉터리를 넣고, 루트의 lock file 같은 파일은 함께 체크아웃된다.

3. 캐시를 깨는 행동을 줄인다

Prompt caching 문서는 모델, effort level, fast mode 헤더, MCP 도구 정의, plugin 상태, compact가 캐시 동작에 영향을 준다고 설명한다. 그래서 긴 세션 중간에 /model, /effort, MCP 연결 변경을 반복하면 다음 턴이 느리고 비싸질 수 있다.

두 번째 Mermaid 기반 다이어그램은 캐시를 깨는 행동과 안전한 절단점을 분리한다.

세션 시작 때 모델과 effort를 정하고, 필수 MCP와 plugin을 먼저 연결한다. /compact는 기능 하나가 끝나고 테스트가 통과한 뒤에 쓴다.

이번 세션은 packages/api의 인증 버그만 다룬다.
먼저 /context로 로드된 memory, rules, MCP tool을 확인하고,
필요 없는 dist/coverage 파일은 읽지 말아줘.

4. 안 먹히면 /context부터 본다

Claude가 지시를 무시한다고 느껴질 때는 프롬프트를 더 길게 쓰기보다 /context, /memory, /permissions, /doctor를 먼저 확인한다. 공식 debug config 문서는 설정이 로드되지 않았거나 다른 위치의 파일이 덮어쓴 경우가 흔하다고 설명한다.

Senior takeaway: 큰 저장소의 Claude Code 운영은 “더 많은 컨텍스트”가 아니라 “정확한 컨텍스트” 경쟁이다. 클로드 코드로 LLM 개발 워크플로우를 만들 때는 시작 위치, 읽기 금지, sparse worktree, 캐시 절단점을 코드 리뷰 기준처럼 관리해야 한다.

Redirecting to Claude Code 상세 사용법 28: 큰 저장소에서 컨텍스트와 캐시 아끼기 | DAKER 커뮤니티...