컨텍스트 관리
Claude Code 컨텍스트 관리: 인수 포함 /compact, Compact Instructions, 토큰 예산 중단 방지, Handoff 프로토콜, MCP 도구 지연 로딩
/compact는 인수를 받을 수 있다
많은 사람이 /compact로 컨텍스트를 압축할 수 있다는 것은 알지만, 인수를 지정해서 무엇을 보존할지 정할 수 있다는 것은 잘 모릅니다:
/compact 保留所有关于数据库 schema 的讨论,以及当前的重构方案이렇게 하면 압축 시 지정한 내용이 우선적으로 보존되어 핵심 컨텍스트가 손실되는 것을 방지할 수 있습니다.
CLAUDE.md에 압축 생존 지침 작성하기
CLAUDE.md에 ## Compact Instructions 섹션을 추가하여 압축 시 반드시 보존해야 할 내용을 Claude에게 알려주세요:
## Compact Instructions
When summarizing, preserve all TypeScript type changes, error patterns encountered, and the current refactoring plan.이렇게 하면 자동 압축이 되더라도 중요한 정보가 손실되지 않습니다.
토큰 예산 때문에 Claude가 조기 중단하는 것 방지하기
CLAUDE.md에 다음을 추가하세요:
Your context window will be automatically compacted as it approaches its limit.
Never stop tasks early due to token budget concerns.
Always complete tasks fully, even if the end of your budget is approaching.가끔 Claude는 컨텍스트가 거의 가득 차면 "컨텍스트가 거의 가득 찼습니다"라고 말하며 스스로 멈추는 경우가 있습니다. 이 내용을 추가하면 조기 중단을 방지할 수 있습니다.
Handoff 프로토콜: 세션 인수인계
컨텍스트가 거의 가득 찼지만 작업이 아직 완료되지 않았을 때, Claude에게 인수인계 문서를 작성하게 하세요:
把剩余的计划写到 HANDOFF.md 里,说明你尝试了什么、什么有效、什么没效。그런 다음 새 세션을 열고 @HANDOFF.md만 입력하면 전체 컨텍스트를 복원할 수 있습니다. 10K+ 토큰의 컨텍스트를 2K 미만으로 압축하며, /compact보다 훨씬 정확합니다.
70-80%에서 선제적으로 압축하기
놓치기 쉬운 포인트: 컨텍스트가 한계에 가까워지면 Claude가 자동으로 압축을 트리거합니다. 하지만 작업 도중에 자동 압축이 발생하면 핵심 정보가 손실되어 이후 응답 품질이 저하될 수 있습니다.
더 좋은 방법은 선제적 관리입니다: 컨텍스트가 70-80%에 도달하면 수동으로 /compact를 실행하세요. 자동 압축을 기다리는 것보다 훨씬 효과적입니다. 작업을 완료한 후에는 즉시 /clear를 실행하여 컨텍스트가 무한히 커지지 않도록 하세요.
환경 변수를 통해 자동 압축을 더 일찍 트리거할 수도 있습니다:
{
"env": {
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "50"
}
}/context: 컨텍스트 진단
컨텍스트 창에 얼마나 공간이 남았는지 확실하지 않다면 /context가 알려줍니다:
- 어떤 도구나 MCP 서비스가 가장 많은 컨텍스트를 소비하는지
- 현재 용량 사용 비율
- 맞춤형 최적화 제안
일부 MCP 서비스는 등록만 해두고 사용하지 않아도 컨텍스트 창의 30% 이상을 차지할 수 있다는 것을 발견했습니다. /context로 확인하고 사용하지 않는 MCP를 정리하면 상당한 공간을 확보할 수 있습니다.
MCP 도구 자동 지연 로딩
MCP 도구 정의가 컨텍스트의 10%를 초과하면, Claude Code는 자동으로 Tool Search를 활성화합니다. 전체 도구 정의 대신 경량 검색 인덱스를 로드합니다. 이를 통해 MCP 컨텍스트 소비를 85% 이상 줄일 수 있습니다(예: 77K 토큰에서 8.7K으로). 이 기능은 기본적으로 활성화되어 있으며 수동 설정이 필요하지 않습니다.
주의: Tool Search는 Sonnet 4+ 및 Opus 4+ 모델만 지원하며, Haiku는 지원하지 않습니다. ANTHROPIC_BASE_URL이 비공식 프록시를 가리키는 경우, Tool Search는 자동으로 비활성화됩니다(대부분의 프록시가 tool_reference 블록을 전달하지 않기 때문).
동작을 사용자 정의하려면 settings.json에서 설정할 수 있습니다:
{
"env": {
"ENABLE_TOOL_SEARCH": "auto:5"
}
}지원되는 설정 값:
- 미설정: 기본적으로 활성화
true: 강제 활성화(비공식 프록시 시나리오 포함)auto: 컨텍스트가 10%를 초과할 때 활성화(기본 동작과 동일)auto:<N>: 사용자 정의 임계값, 예:auto:5는 5% 초과 시 활성화false: 비활성화, 모든 MCP 도구가 사전 로드됨