설명 · 2026년 10월 29일 목요일

Claude Code는 백그라운드 에이전트의 진행 상황을 요약하기 위해 약 30초마다 모델을 호출한다. 이 글은 호출 비용과 프롬프트 캐시가 비용을 크게 낮추지 못하는 이유, 직접 측정하는 방법을 설명한다.

2026년 10월 29일, Flamerix AI의 게시물이 Hacker News 첫 페이지에 올랐다. Claude Code가 백그라운드 에이전트의 대화 기록을 약 30초마다 모델에 보내 3~5단어로 상태를 요약한다는 내용이었다. 우리는 Mac에서 Claude Code 2.1.309 바이너리의 프롬프트와 호출을 건너뛰는 규칙을 확인하고, 공개된 Opus 5.5 요금으로 호출 비용을 계산했다. 끌 수 있는 항목과 끌 수 없는 항목도 정리했다.

이 글은 Flamerix AI의 보도 자료인 “Claude Code burns ~15-20% of your tokens on a 3-word status line. Here's how to turn it off” (GitHub gist, 2026년 10월 29일 업데이트)를 설명한다. 원문은 https://gist.github.com/flamerix-ai/c3905705cc4205e5de3011fa2e74efce에서 확인할 수 있다.

백그라운드 에이전트마다 Claude Code는 약 30초마다 에이전트의 전체 대화 기록을 담은 요청을 보내고, 가장 최근 작업을 3~5단어로 설명하게 한다. 답변은 에이전트 패널만 업데이트한다. Flamerix AI는 일주일 동안 이 호출이 Claude Code 지출의 16.4%를 차지했다고 측정했다. 주 대화의 15.7%보다 높고 전체 요청의 19.7%에 해당한다. GitHub 이슈에는 18~26%라는 다른 측정 사례 네 건도 올라와 있다.

우리 Mac의 Claude Code 2.1.309 바이너리에서도 같은 프롬프트와 다섯 가지 건너뛰기 규칙을 확인했다. 여기에는 ‘대화 기록에 변화가 없음’이 포함된다. 따라서 기다리거나 유휴 상태인 에이전트는 비용을 발생시키지 않을 것으로 보이며, 계속 작업하는 에이전트는 호출 대상이 된다.

Opus 5.5 요금으로 계산하면 대화 기록이 20만 토큰일 때 캐시 적중 호출은 약 4센트, 캐시 미스는 80센트에서 1.60달러다. 호출 100건 중 두 건이 캐시 미스라면 전체 비용의 29~45%를 차지한다. 이는 원문에서 말한 ‘3분의 1 초과’와 맞닿아 있다.

지원되는 끄기 옵션은 없다. 환경 변수 두 개로 호출을 멈출 수 있지만, 각각 분기된 하위 에이전트나 백그라운드 에이전트 기능도 함께 끈다. 원문은 제3자가 만든 사전 로드(preload) 방법도 소개하지만, 제작자가 Linux에서만 시험했다고 밝혔다. 먼저 측정하는 편이 낫다. Claude Code의 OpenTelemetry 내보내기는 요청마다 query_source를 표시하며, 이런 요청은 디스크에 저장되는 세션 로그에는 나타나지 않는다.

기능과 바이너리에서 확인한 내용

Claude Code는 사용자가 작업을 계속하는 동안 에이전트를 백그라운드에서 실행할 수 있다. 에이전트 패널에는 ‘Reading runAgent.ts’처럼 각 에이전트가 현재 무엇을 하는지 한 줄로 표시된다. 이 문장은 모델이 만든다.

Flamerix AI의 설명에 따르면 Claude Code는 약 30초마다 에이전트 대화를 분기해 전체 기록을 해당 에이전트가 사용하는 모델(대개 Opus)에 보낸다. 모델은 최근 작업을 3~5단어로 설명한다. 답변은 패널에 표시될 뿐, 에이전트나 사용자의 대화에는 전달되지 않는다.

Flamerix AI는 대화형 백그라운드 에이전트에 이 기능이 기본 적용된 시점을 2026년 8월 13일 공개된 2.1.232로 봤다. 10월 14일 버전 2.1.300부터는 서버 플래그가 호출 간격을 정하며, 간격은 30~240초 범위로 제한되고 기본값은 최솟값이다. 대화 기록 대신 약 2,000토큰의 메모를 보내는 더 저렴한 ‘short’ 모드는 2.1.310에 포함됐지만 비활성화 상태다. 이는 모두 Flamerix AI가 코드를 읽고 내린 해석이며, 앤스로픽은 해당 게시물에 의견을 내지 않았다.

우리는 10월 29일 오전 Mac에 설치된 macOS 빌드를 정적으로 확인했다. API를 호출해 시험한 것은 아니다. Flamerix AI가 언급한 문자열을 바이너리에서 검색했다.

Test Mac: macOS 26.5.2, arm64, October 29, 2026, about 08:30 MDT
$ claude --version
2.1.309 (Claude Code)
$ file ~/.local/share/claude/versions/2.1.309
Mach-O 64-bit executable arm64

# How many times each string appears in the binary (grep -a -c -F)
AgentSummary 5
agent_summary 10
agentProgressSummaries 8
CLAUDE_CODE_AGENT_PROGRESS_SUMMARIES 8
CLAUDE_CODE_FORK_SUBAGENT 7
CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 4
DISABLE_NON_ESSENTIAL_MODEL_CALLS 0

요약 코드와 진행 상황 요약 옵션 및 환경 변수는 바이너리에 들어 있었다. 반면 DISABLE_NON_ESSENTIAL_MODEL_CALLS 문자열은 전혀 나타나지 않았다. 일부 패키지 제작자가 설정하는 이 변수가 여기서는 아무 효과가 없다는 Flamerix AI의 설명과 일치한다.

요약 프롬프트와 타이머 주변의 로그 문자열도 평문으로 읽을 수 있었다.

# Strings found next to the summary code in the 2.1.309 binary
Describe ${n?"the agent's":"your"} most recent action in 3-5 words using
present tense (-ing). Name the file or function, not the branch.
Good: "Reading runAgent.ts"

[AgentSummary] Timer fired for agent
[AgentSummary] Skipping summary for ... : not due yet, waited
 ... : not enough messages (
 ... transcript unchanged (
 ... notes unchanged
 ... nothing to describe
[AgentSummary] Stopping summarization for
tengu_agent_summary_skipped tengu_agent_summary_stopped

건너뛰기 규칙은 비용에 영향을 준다. 마지막 요약 이후 대화 기록이 바뀌지 않았거나, 호출 시점이 아직 아니거나, 메시지가 너무 적으면 타이머가 작동해도 요약 요청을 건너뛴다. Flamerix AI는 버전 2.1.280에서도 같은 동작을 확인했다. 권한 요청을 기다리던 에이전트에서 타이머가 11번 작동했지만 요약 요청은 한 번만 전송됐다. 따라서 비용은 대화 기록이 가장 커지는 작업 중인 에이전트에서 발생한다.

캐시가 비용을 크게 낮추지 못하는 이유

요약 요청 대부분은 대화 기록이다. 에이전트가 직전 작업에서 이미 보낸 기록이므로 대부분 캐시 적중으로 처리된다. Hacker News의 일부 독자는 이 때문에 호출 비용이 거의 없다고 봤다. 하지만 캐시 적중 토큰당 요금이 낮더라도 기록 자체가 크고 30초마다 호출이 반복되므로 비용은 누적된다.

Claude Opus 5.5 list prices, per million tokens (Anthropic pricing page, October 29):
 base input $4.00 5-minute cache write $5.00 1-hour cache write $8.00
 cache hit $0.20 output $20.00 (same rate across the 1M context window)

One summary call on a 200,000-token transcript
 cache hit: 200,000 x $0.20 / 1M = $0.04
 cache miss: 200,000 x $4.00 / 1M = $0.80 (plain input)
 200,000 x $5.00 / 1M = $1.00 (5-minute write)
 200,000 x $8.00 / 1M = $1.60 (1-hour write)
 output: about 22 tokens at the gist's 9,000:1 ratio = under $0.001

100 calls at the gist's 98% hit rate
 98 hits x $0.04 = $3.92
 2 misses x $0.80 to $1.60 = $1.60 to $3.20
 share of cost from misses = 29% to 45% (the gist says "over a third")

One busy background agent, transcript changing every 30 seconds
 120 calls an hour x $0.04 = $4.80 an hour at 200,000 tokens, all hits
 120 calls an hour x $0.16 = $19.20 an hour at 800,000 tokens, all hits

비용을 좌우하는 요인은 두 가지다. 첫째, 캐시 적중도 다시 읽은 토큰마다 요금이 붙는다. 대화 기록이 큰 에이전트가 바쁘게 작업하면 한 시간에 120번 캐시 적중 요금을 낸다. 둘째, 캐시 미스가 나면 전체 기록을 기본 입력 요금이나 캐시 생성 요금으로 다시 보낸다. Opus 5.5에서 이 요금은 캐시 적중 요금의 20~40배다. Flamerix AI는 호출의 약 2%가 캐시 미스이며, 이 미스가 전체 비용의 3분의 1을 넘는다고 보고했다. Opus 5.5 요금으로 계산하면 캐시 미스 비용은 기본 입력으로 청구되는지 캐시 생성으로 청구되는지에 따라 전체의 29~45%다. 실제 호출에 어떤 요금이 적용되는지는 알 수 없다.

출력은 주요 비용 요인이 아니다. Flamerix AI가 제시한 입력 토큰과 출력 토큰의 비율은 약 9,000대 1이다. 이에 따르면 상태 문장 생성 비용은 1센트보다 훨씬 적다.

이는 공개된 정가 기준이다. Pro 또는 Max 요금제에서는 달러가 아니라 사용량 제한 여유분에 비용이 반영된다. Flamerix AI의 수치는 청구서가 아니라 Claude Code가 요청별로 계산한 cost_usd다.

영향을 받는 사용자

  • 백그라운드 에이전트나 분기된 하위 에이전트를 몇 분 이상 계속 실행하면 비용이 발생한다. 에이전트 수와 대화 기록이 길수록 비용이 커진다.
  • 백그라운드 에이전트가 없는 단일 포그라운드 세션은 에이전트별 타이머를 사용한다는 설명에 따르면 호출을 발생시키지 않을 것으로 보인다. Hacker News 독자 한 명은 disableAgentView 설정이 호출을 멈추는지 물었지만, 확인된 자료는 찾지 못했다.
  • 유휴 에이전트는 대화 기록이 변하지 않으면 바이너리가 호출을 건너뛰므로 비용을 내지 않을 것으로 보인다.
  • 헤드리스 실행도 해당된다. Flamerix AI에 따르면 claude -p, cron 작업, CI, 편집기 연동 모두 같은 프로세스를 실행한다.
  • 기존 비용 도구가 사용량을 놓칠 수 있다. 요청이 디스크의 세션 로그에 기록되지 않기 때문에(GitHub 이슈 #104358), 대화 기록을 합산하는 도구는 실제보다 적게 계산한다. Claude Code의 비용 안내 페이지에는 대화 요약과 명령어에 따른 백그라운드 사용량이 보통 세션당 0.04달러 미만으로 표시되지만, 에이전트 요약은 별도로 나오지 않는다.

끄는 방법과 그에 따른 제한

Flamerix AI는 지원되는 끄기 옵션을 찾지 못했다. 문서에 나온 SDK 옵션 agentProgressSummaries는 요약을 켜는 역할만 한다. 번들 코드에서 이 옵션은 OR 조건의 한 항목이므로 false로 설정해도 동작은 바뀌지 않는다. 서버가 제어하는 호출 간격도 0으로 설정할 수 없다.

환경 변수 두 개로 호출을 멈출 수는 있지만 기능도 함께 사라진다. CLAUDE_CODE_FORK_SUBAGENT=0은 분기된 하위 에이전트를 끄고, CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1은 백그라운드 에이전트를 끈다. 두 문자열은 모두 우리 Mac의 2.1.309 바이너리에 있었다.

Flamerix AI가 제안한 우회 방법은 MIT 라이선스의 Bun 사전 로드 파일 no-agent-summary.js다. 약 80줄이며 BUN_OPTIONS를 통해 불러온다. 이 파일은 setTimeout과 setInterval을 감싸고, 콜백의 소스에 요약 로그 문구가 있으면 실행되지 않는 타이머를 반환한다. 바이너리는 수정하지 않는다. 제작자는 Linux에서만 시험했으며 macOS와 Windows에서는 시험하지 않았다고 밝혔다. 업데이트로 로그 문구가 바뀌면 별다른 알림 없이 요약 호출이 다시 시작되는 ‘실패 시 열림(fail open)’ 방식이라는 경고도 덧붙였다. 클라이언트의 실행 방식을 바꾸는 일이 사용 중인 서비스의 약관에 어긋날 수 있다고도 했다. 우리는 이 파일을 설치하지 않았다.

근본적인 해결 방법은 앤스로픽이 공식 옵션을 제공하는 것이다. 8월 15일 등록된 GitHub 이슈 #86879는 에이전트 요약 기능을 공식적으로 끄는 방법을 요청한다.

사용량 직접 측정하기

이 페이지의 수치를 포함해 다른 팀의 비율을 그대로 자신의 환경에 적용해서는 안 된다. 길게 실행되는 백그라운드 에이전트를 많이 쓰는 팀은 비중이 클 수 있고, 단일 세션으로 작업하는 팀은 거의 없을 수 있다. Claude Code의 OpenTelemetry 내보내기로 직접 확인할 수 있다.

export CLAUDE_CODE_ENABLE_TELEMETRY=1
export OTEL_LOGS_EXPORTER=otlp
export OTEL_EXPORTER_OTLP_PROTOCOL=grpc
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
claude
# In your backend: take claude_code.api_request events,
# group by the query_source attribute, sum cost_usd.
# Look for query_source = agent_summary next to repl_main_thread.

claude_code.api_request 이벤트에는 query_source, 모델, cost_usd, 그리고 cache_read_tokens와 cache_creation_tokens를 포함한 네 가지 토큰 수치가 들어 있다. Flamerix AI도 query_source별로 묶어 기능을 발견했다. agent_summary 비중이 크고 에이전트가 오래 실행된다면 사전 로드를 적용하기 전에 앤스로픽 지원팀이나 이슈 #86879에 측정 결과를 알릴 수 있다.

대상영향
백그라운드 에이전트나 분기된 하위 에이전트를 실행하는 Claude Code 사용자작업 중인 에이전트마다 약 30초 간격으로 요약 호출 비용이 발생한다. 대개 에이전트가 사용하는 모델의 요금이 적용된다.
API 및 클라우드 제공업체 청구달러로 비용을 낸다. Opus 5.5 정가 기준으로 대화 기록 20만 토큰의 작업 중인 에이전트 한 개당 시간당 약 4.80달러이며, 캐시 미스 비용은 포함하지 않았다.
Pro 및 Max 구독자달러가 아니라 사용량 제한 여유분으로 비용을 낸다.
백그라운드 에이전트가 없는 단일 포그라운드 세션에이전트별 타이머라는 Flamerix AI의 설명에 따르면 호출이 발생하지 않을 것으로 보인다.
디스크의 세션 로그를 읽는 비용 도구요청이 로그에 기록되지 않으므로 실제보다 적게 계산한다(이슈 #104358).
  • 설정을 바꾸기 전에 OpenTelemetry 내보내기를 켜고 cost_usd에서 agent_summary가 차지하는 비중을 확인한다.
  • 비중이 크다면 오래 실행되는 백그라운드 에이전트 수를 줄이거나, 설정에서 백그라운드 하위 에이전트에 더 저렴한 모델을 지정한다.
  • 여러 팀의 측정 결과가 앤스로픽에 전달되도록 GitHub 이슈 #86879에 측정치를 추가한다.
  • 제3자 사전 로드를 시험한다면 먼저 전체 80줄을 읽고, Claude Code를 업데이트할 때마다 Verify 절차를 실행하며, 서비스 약관도 확인한다.

아직 확인되지 않은 점

  • 2026년 10월 29일 오전 기준 앤스로픽은 gist나 이슈 #86879에 의견을 내지 않았다.
  • 16.4%는 한 팀이 일주일간 사용하며 Claude Code 자체 비용 추정치를 기준으로 측정한 값이다. 이슈 #86879의 다른 측정 네 건은 18~26%다. 실제 비중은 에이전트 사용 방식에 따라 달라진다.
  • Flamerix AI의 시험은 Linux에서 진행됐다. Mac 바이너리 확인은 정적 분석으로, 같은 프롬프트와 건너뛰기 규칙을 찾았지만 Mac에서 호출이나 타이밍을 측정하지 않았다.
  • 이 호출의 캐시 미스가 기본 입력, 5분 캐시 생성, 1시간 캐시 생성 중 어떤 요금으로 청구되는지는 알 수 없다. 따라서 미스 비용은 범위로 제시했다.
  • 2.1.310의 ‘short’ 모드를 활성화할지, 언제 활성화할지는 앤스로픽의 서버 플래그에 달려 있다.

출처