OpenClaw는 에이전트 기록 압축을 구현하여 컨텍스트 사용량을 줄입니다.

✍️ OpenClawRadar📅 게시일: March 10, 2026🔗 Source
OpenClaw는 에이전트 기록 압축을 구현하여 컨텍스트 사용량을 줄입니다.
Ad

컨텍스트 관리 문제

Docker 내에서 OpenClaw를 실행할 때, 에이전트의 직접적인 코드 작성으로 인해 컨텍스트가 노이즈로 채워집니다: 파일 읽기(5K 토큰), 편집 작성(500 토큰), 테스트 실행(200 토큰), 스택 트레이스 수신(3K 토큰). 단일 디버그 사이클은 10K-15K 토큰을 소비하며, 대부분 버그 수정 후 쓸모없어지는 콘솔 출력과 스택 트레이스에서 비롯됩니다. 세션당 20-30회의 디버그 사이클로 인해 전체 컨텍스트 창이 노이즈로 소비됩니다.

브레인/워커 아키텍처

해결책은 책임을 분리하는 것입니다: OpenClawd(Docker 내)는 계획 수립, 작업을 하위 작업으로 분해, 위임 및 조정을 위한 브레인 역할을 합니다. macOS 호스트의 로컬 워커는 Apple Silicon에서 MLX를 통해 실행되는 Qwen3.5-27B로 구동되어 파일 읽기, 코드 작성, 테스트 실행 및 디버깅을 위한 손 역할을 합니다. 이로 인해 시끄러운 주고받기는 워커의 컨텍스트에 머물게 되며, 브레인은 "작업 완료, 변경된 파일은 다음과 같습니다"와 같은 최종 결과만 확인합니다.

압축 전략

브레인/워커 분리에도 불구하고, 오케스트레이터의 컨텍스트는 여전히 운영 문서로 채워집니다: AGENTS(~6.6K 토큰), SOUL(~1.5K 토큰), LESSONS(~10K 토큰), 계획/워크스루(디스크 기준 ~13K 토큰)로, 작업 시작 전 총 20K-30K 토큰에 달합니다. 세션은 100K-200K 토큰에 도달할 수 있습니다.

핵심 통찰: 완료된 작업은 원시 세부 정보가 필요하지 않습니다. 하위 작업이 완료되면 원시 기록은 죽은 무게가 됩니다. 에이전트는 다음만 알면 됩니다: 작업이 무엇이었는지, 성공했는지, 어떤 파일이 변경되었는지, 오류가 있었는지.

Ad

구현 세부 사항

1단계: 수명 주기 경계 감지 - 오케스트레이터는 작업을 Spawn(에이전트가 sessions_spawn 또는 delegate_task 호출), Execute(도구 호출, 추론), Complete(System Message "subagent 'task_name' completed") 수명 주기를 가진 하위 작업으로 분해합니다. 4단계 스캐너가 세션 JSONL을 순회합니다:

  • 1단계: Spawn 이벤트 찾기
  • 2단계: Spawn 오류 찾기
  • 3단계: 완료 마커 찾기
  • 4단계: 수명 주기별 토큰 수 및 지속 시간 계산

이를 통해 완료된 하위 작업에 속하는 메시지 범위를 식별합니다.

2단계: "에이전트 언어"로 요약(마스킹) - 요약은 일반적인 에이전트 출력처럼 보이도록 생성되어 오케스트레이터의 예상 메시지 형식(역할, 콘텐츠 블록, 도구 호출 구조, 부모-자식 ID 체인)과의 호환성을 유지합니다. 이러한 마스킹된 요약이 원시 작업 기록을 대체합니다.

압축된 작업 요약 예시:

── 압축된 작업 ──
origin: agent
task: MLX 서버 유휴 시간 초과 구현
outcome: success
result: MlxServerManager에 5분 유휴 타이머 추가됨.
요청 수신 없을 시 서버 자동 언로드.
files+: src/services/mlx_idle_monitor.py
files~: src/services/mlx_server.py, config.json
errors: none
tried_and_failed: threading.Timer — 경쟁 조건
must_remember: MLX 서버는 명시적 워커 요청 시에만 재로드, 도구 호출 시 아님
─────────────────

이 ~100 토큰 요약이 5K 토큰의 원시 도구 호출 및 추론을 대체합니다(99.2% 감소). 요약은 저렴한 LLM(Gemini Flash Lite 또는 로컬 MLX)에 의해 생성되며, 생성 실패 시 대체 메커니즘이 있습니다.

📖 전체 소스 읽기: r/openclaw

Ad

👀 See Also

토큰 낭비 없이 클로드 채팅 간 맥락 유지하는 2-프롬프트 시스템
Tools

토큰 낭비 없이 클로드 채팅 간 맥락 유지하는 2-프롬프트 시스템

한 개발자가 전체 클로드 대화를 구조화된 컨텍스트 블록으로 압축하고 새 채팅에 로드하여 결정, 작업 및 다음 단계를 보존하는 두 개의 프롬프트를 공유합니다.

OpenClawRadar
Chromeflow: Claude를 위한 웹 UI 작업 자동화 Chrome 확장 프로그램
Tools

Chromeflow: Claude를 위한 웹 UI 작업 자동화 Chrome 확장 프로그램

Chromeflow는 Claude Code로 구축된 무료 오픈소스 Chrome 확장 프로그램 및 MCP 서버로, Claude에게 브라우저 제어 기능을 제공하여 Stripe, Supabase, SendGrid 설정과 같은 수동 웹 UI 작업을 자동화합니다. 클릭할 요소를 강조 표시하고, 필드를 채우고, 저장 버튼을 클릭하며, API 키를 직접 .env 파일에 기록합니다.

OpenClawRadar
AI 코딩 에이전트가 20턴 후에 엉터리 결과물을 내는 이유: 맥락 맹목성
Tools

AI 코딩 에이전트가 20턴 후에 엉터리 결과물을 내는 이유: 맥락 맹목성

API 로그 심층 분석 결과, Cursor와 Claude Code가 더 나빠진 것이 아니라 노이즈로 가득 찬 블로트된 컨텍스트 윈도우로 인해 질식하고 있으며, 이는 아키텍처 파괴로 이어집니다.

OpenClawRadar
AI 어시스턴트가 웹 페이지를 가져오는 방법: ChatGPT, Claude, Gemini 등의 Nginx 로그 분석
Tools

AI 어시스턴트가 웹 페이지를 가져오는 방법: ChatGPT, Claude, Gemini 등의 Nginx 로그 분석

한 개발자가 고유한 URL을 프롬프트로 제공하고 Nginx 로그를 모니터링하여 다섯 가지 주요 AI 어시스턴트를 테스트한 결과, 뚜렷한 검색 패턴이 드러났습니다: ChatGPT, Claude, Perplexity는 전용 사용자 에이전트를 사용하는 반면, Gemini는 가져오기 없이 자체 인덱스에서 답변했습니다.

OpenClawRadar