클로드 AI 세션 압축 문제 및 해결 방법

압축 작동 방식
Claude 세션은 ~/.claude/projects/{encoded-cwd}/sessions/{id}.jsonl 경로에 JSONL 파일로 저장됩니다. 각 대화 턴은 JSON 블록입니다. 압축이 트리거되면 원본 블록은 파일에 그대로 남아 있지만, 압축된 요약이 포함된 새 블록이 추가됩니다. 압축 후 모델은 전체 대화 기록 대신 요약을 기반으로 작동합니다.
테스트 결과
코딩 프로젝트를 컨텍스트 채우기 90%(100만 토큰 증가 전) 상태에서 사용자는 단순 회상, 6단계 종속성 체인, 엔티티 명확화, 부정 체이닝, 부재 감지, 충돌 감지를 포함한 10가지 질문으로 테스트했습니다.
- 압축 전: Opus 4.6이 418K 토큰에 흩어진 사실을 찾아내며 약 9.75/10 정확도
- 압축 후 (기본): 3,461 토큰(121배 압축)으로 약 5/10 정확도. 동일 세션, 동일 질문에서 잘못된 답변을 환각하는 결과 발생
- 압축 후 (수동 Opus): 6,080 토큰(69배 압축)으로 약 9.75/10 정확도. 사용자 정의 압축 프롬프트와 Opus를 사용하여 중요한 정보 보존
차이점의 원인
Anthropic의 문서에 따르면, API는 기본적으로 동일 모델을 압축에 사용합니다. 사용자가 중간 컴퓨팅에서 Opus 4.6을 실행 중이었으므로 기본 압축도 Opus를 사용했어야 합니다. 품질 차이는 요약 프롬프트, 사고/컴퓨팅 예산, 또는 둘 모두에 문제가 있음을 시사합니다.
해결 방법
방법 1: Opus 압축 - 자동 압축을 끄고 Claude Code 인스턴스의 토큰 수를 측정하는 백그라운드 프로세스를 구현합니다. 사용자 정의 프롬프트(사용자 승인 가능)와 함께 Opus를 사용하여 압축을 트리거합니다.
방법 2: spaCy NER 사전 시딩 - 하위 에이전트를 제로 컨텍스트로 시작하는 대신, spaCy NER을 사용하여 프로젝트 파일에서 고유 명사, 숫자, 서비스 이름, 포트, 주요 식별자를 추출합니다. 이를 시작 시 경량 엔티티 브리핑(수백 토큰)으로 주입하여 서술적 부풀림 없이 기존 리소스에 대해 에이전트에게 알립니다.
📖 Read the full source: r/ClaudeAI
👀 See Also

WebMCP 브라우저 API는 AI 에이전트의 웹 스크래핑 필요성을 줄일 수 있습니다.
Google의 WebMCP는 웹사이트가 AI 에이전트가 직접 호출할 수 있는 도구를 등록할 수 있게 하는 브라우저 API를 소개합니다. 이는 개발자들이 현재 구축하는 DOM 스크래핑 및 봇 방지 우회 작업의 상당 부분을 제거할 수 있습니다.

AI 에이전트용 CLI 구축: Google의 gws CLI에서 배운 설계 원칙
Google의 gws CLI는 AI 에이전트를 위해 특별히 설계된 명령줄 인터페이스 방법을 보여주며, 인간 친화적인 플래그보다 원시 JSON 페이로드를 우선시하고 환각 현상에 대한 안전 장치를 구현합니다.

코텍스: 에빙하우스 감쇠를 적용한 오픈클로 에이전트를 위한 로컬 메모리 계층
Cortex는 OpenClaw 에이전트의 컨텍스트 압축 문제를 해결하기 위해 구축된 오픈소스 메모리 도구입니다. 사실 소멸을 위해 에빙하우스 망각 곡선을 구현하고, 파일에서 먼저 가져오며, SQLite를 사용하는 단일 19MB Go 바이너리로 실행됩니다.

클로드 코드 핸드오프를 위한 자동화된 세션 상태 관리
GitHub 프로젝트는 Claude 대화 전반에 걸쳐 실시간 세션 상태 파일(.claude/session-state.md)을 유지하는 자동화된 훅을 제공하여 자동 압축 컨텍스트 손실과 대화 중간 컨텍스트 저하 문제를 해결합니다. 이 시스템은 jq와 함께 4개의 bash 스크립트를 사용하여 중요한 이벤트와 파일 편집을 추적합니다.