유휴 에이전트가 하루 5천만 토큰을 소진한 이유와 해결 방법

✍️ OpenClawRadar📅 게시일: June 30, 2026🔗 Source
유휴 에이전트가 하루 5천만 토큰을 소진한 이유와 해결 방법
Ad

한 OpenClaw 사용자가 Reddit에서 LLM API 사용량이 6일 만에 하루 1,100만 토큰에서 5,100만 토큰으로 급증했으며, 총 1억 9,600만 토큰 중 대부분이 유휴 에이전트에 의해 낭비되었다고 보고했습니다. 원인은 'main'이라는 잊혀진 에이전트가 OpenClaw의 하트비트로 30분마다 깨어나 225k 토큰의 세션 기록을 불러와 'HEARTBEAT_OK'만 응답한 것이었습니다.

누수 원인: cacheRead 지배

트랜스크립트 분석에서 두 가지 수치가 눈에 띄었습니다:

  • 토큰의 95%가 cacheRead — 모델이 새 작업 대신 오래된 대화 기록을 다시 읽음.
  • 전체 토큰의 56%가 더 이상 사용하지 않는 'main' 에이전트에서 발생.

하트비트는 하루 48회 실행되었으며, 매번 몇 달 된 세션을 불러왔습니다. 하트비트를 비활성화하기 위한 빈 HEARTBEAT.md조차 해당 빌드에서는 작동하지 않았습니다.

해결 방법: 두 단계

  1. 비대해진 세션 정리. 유휴 에이전트의 세션 파일을 삭제합니다. 다음 하트비트는 빈 상태에서 시작됩니다. 실제 DM/채팅 세션은 유지하고 불필요한 세션만 제거합니다.
  2. 재유입 방지. 일회성 삭제는 하트비트가 계속 세션에 추가되므로 효과가 오래가지 않습니다. 설정 변경 필요:
    • 에이전트가 아무 작업도 하지 않으면 heartbeat every: "0m"으로 하트비트를 완전히 끄거나,
    • isolatedSession: truelightContext: true를 설정하여 각 하트비트가 전체 기록(~100k+) 대신 새롭고 작은 컨텍스트(~2-5k 토큰)에서 실행되도록 합니다.

추가 팁: 다른 에이전트들이 세션 ID가 해당 빌드에서 실제로 새로 시작되지 않아 하나의 계속 커지는 세션을 재사용하고 있었습니다. 작업 간에 세션을 초기화하여 각 실행이 깔끔하게 유지되도록 하세요.

Ad

핵심 요약

  • 유휴 에이전트는 공짜가 아닙니다 — 큰 세션의 하트비트는 실제 작업보다 더 많은 비용을 초래할 수 있습니다.
  • 대부분의 토큰이 cacheRead라면, 새 작업이 아닌 기록 재읽기에 비용을 지불하고 있는 것입니다.
  • '끄기'가 실제로 꺼졌는지 확인하세요 — 빈 HEARTBEAT.md는 해당 빌드에서 하트비트를 막지 못했습니다.
  • 회당 트랜스크립트를 확인하세요. 토큰 사용량은 input/output/cacheRead로 기록됩니다.

사용자는 이러한 설정 변경으로 토큰 사용량을 절반 이상 줄였습니다.

📖 전체 출처: r/openclaw

Ad

👀 See Also