
Claude Code의 자동 컨텍스트 압축(Auto-Compact) 대책 — 장시간 세션에서 사라지는 도구 결과와 재로드 시 주의해야 할
요약
Claude Code의 Auto-Compact 기능으로 인한 컨텍스트 손실 문제를 분석하고 대응 방안을 제시합니다. 장시간 세션에서 도구 실행 결과가 요약되어 발생하는 정보 누락을 방지하기 위한 실무적인 팁을 다룹니다.
핵심 포인트
- Auto-Compact 실행 시 도구 결과의 상세 정보(행 번호, 변수명 등)가 손실될 수 있음
- 진척 상황을 Markdown 파일에 기록하여 압축 후에도 정보를 복원할 수 있도록 설계
- 서브 에이전트를 활용해 부모 세션의 컨텍스트 소비를 최소화
- 중요한 파일은 압축 후 명시적으로 다시 읽도록 요청하여 정보 정확도 유지
대상 독자: Claude Code를 장시간(1세션 30분~수 시간) 사용하는 사람. 대규모 리팩터링(Refactoring)이나 여러 파일에 걸친 조사 태스크에서 "방금 읽은 파일 내용을 Claude가 잊어버린다", "중간부터 엉뚱한 답변이 돌아온다"는 경험이 있는 사람 대상.
전제 환경: Claude Code CLI (2026년 7월 시점의 안정 버전). 컨텍스트 윈도우(Context Window) 메커니즘에 의존하는 현상이므로 OS에 무관함.
- Claude Code는 컨텍스트 윈도우가 가득 차면, 오래된 메시지를 요약하여 압축하는 "Auto-Compact"가 실행됨
- 압축 후에는 도구 실행 결과(파일 내용이나 grep 결과)가 요약되어 상세 정보가 손실될 수 있음 - "압축되어도 망가지지 않는" 태스크 설계(상태를 파일로 옮기기·서브 에이전트(Sub-agent)로 분리하기)로 사고를 줄일 수 있음
세션이 길어지면 컨텍스트 사용량 표시를 확인한다. 8~9할을 넘어서는 시점부터 Auto-Compact가 발동하기 쉽다.
/context
Auto-Compact에만 맡기면 도구 호출 도중 등 흐름이 끊기는 타이밍에 압축이 끼어들 수 있다. 매듭을 짓는 시점에 직접 입력하면 요약이 안정되기 쉽다.
/compact
진척 상황이나 조사 결과를 Claude의 기억(대화 이력)에만 의존하지 말고, Markdown 파일에 작성한다.
<!-- progress.md -->
## 조사 완료된 파일
- src/api/user.ts: 인증 로직 있음, 리팩터링 필요 구간은 L45-80
...
압축 후에 progress.md를 다시 읽으면(Read), 요약으로 인해 손실된 상세 정보를 복원할 수 있다.
독립적인 조사(파일 탐색·grep 등)는 서브 에이전트에게 던지고, 돌아온 요약 정보만을 부모 세션에서 유지한다. 부모 세션의 컨텍스트 소비를 줄여 압축 빈도 자체를 낮출 수 있다.
증상: 압축 전에 읽은(Read) 긴 파일에 대해, 압축 후에는 행 번호나 코드의 세부 사항을 틀리게 대답함.
원인: Auto-Compact는 도구 결과도 요약하기 때문에, 구체적인 변수명이나 행 번호가 반올림(Rounding)되거나 생략됨.
회피책: 중요한 파일은 압축 후에 다시 읽게 한다. "방금 본 ○○를 다시 한번 읽어줘"라고 명시적으로 요청하는 것이 확실하다.
증상: /compact 직후, 드물게 tool_use id에 대응하는 tool_result를 찾을 수 없다는 취지의 에러와 함께 응답이 중단됨.
원인: 압축 타이밍이 도구 호출과 결과 사이를 가로채면, 요약된 이력에서 쌍(Pair)이 깨짐.
회피책: 도구 호출 결과를 기다리는 도중에 입력하지 않는다. 에러가 발생하면 /clear를 하여 재개하거나, 직전의 지시를 다시 내린다.
증상: 서브 에이전트에게 상세한 조사를 시켰음에도, 돌아온 정보가 생각보다 거칠다(Coarse).
원인: 서브 에이전트의 실행 과정(무엇을 grep 했는지)은 부모의 컨텍스트에 들어가지 않고, 최종적인 답변만 남는 사양이기 때문.
회피책: "해당 구간의 파일 경로와 행 번호를 반드시 포함해서 알려줘"와 같이 반환할 내용을 지시로 명시한다. 정보가 부족하면 부모 세션 측에서 해당 파일을 직접 다시 읽는다.
컨텍스트 윈도우는 유한하며, 대화가 길어질수록 오래된 정보의 유지 비용이 증가한다. Auto-Compact는 "작동하지 않는 것보다는 낫다"는 설계 판단이며, 요약에 의한 정보 손실은 트레이드오프(Trade-off)로서 받아들일 필요가 있다. 압축에 강한 태스크 설계를 해두는 것 자체가 장시간 작업을 안정시키는 실천적인 테크닉이 된다.
- Claude Code의 Auto-Compact는 장시간 세션에서 피할 수 없는 동작임
- 압축 후에는 도구 결과의 세부 사항이 손실될 수 있으므로, 중요한 정보는 그때마다 파일에 작성할 것
/compact는 흐름이 끊기는 시점이 아닌 적절한 타이밍에 직접 입력하며, 도구 호출 중에는 피할 것- 독립적인 조사는 서브 에이전트로 분리하여 부모 세션의 컨텍스트 소비 자체를 줄일 것
- 이것들을 철저히 지키면 수 시간이 걸리는 리팩터링 작업에서도 "중간부터 상태가 이상해지는" 현상을 방지하기 쉽다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기