Stackness
Sign up
Claude Code status line token usage: the status line is free, agent_summary and startup context are not

Claude Code status line token usage: the status line is free, agent_summary and startup context are not

The Claude Code status line uses no model tokens: the docs say it "runs locally and does not consume API tokens". The cost behind this week's "3-word status line" headline is agent_summary, a separate call that labels each working background agent in the agents panel. Flamerix AI measured it at 16.4% of one organisation's weekly Claude Code spend. Anthropic puts it at about 2% of cost across its telemetry users, and users who measured their own subagent-heavy sessions report 8% to 26% of spend or tokens. Before any of that, my own setup carried 43,394 tokens of context into a one-word reply on Claude Code 2.1.316, measured on 1 November 2026.

Claude Code status line token usage is zero; three other things cost tokens

Claude Code's custom status line costs no tokens because it is a local script: Claude Code pipes session JSON to it on stdin and prints whatever it returns. Three things do cost tokens before or beside your instructions: the startup context sent with every request, agent_summary calls for background agents, and side calls such as session titles, recaps and prompt suggestions. The table puts a measured number on each.

Overhead When it runs Measured size Source
Status line script Each new message, 300 ms debounce 0 tokens Statusline docs
Startup context Every request, mostly as cache reads 2,102 to 64,887 tokens per request My runs, 1 November 2026
agent_summary About every 30 s per working background agent 2% to 24% of spend, up to 26% of tokens Anthropic, Flamerix, users
Session title First prompt of an interactive session One small Haiku-class request Sessions docs
Recap, prompt suggestions, idle compaction Idle time, after each reply, after an hour away Suggestions: 2.5% of weighted tokens in one session; recap and idle compaction unmeasured Costs docs

agent_summary sends a background agent's transcript every 30 seconds

agent_summary is the call that writes the 3-5 word label next to each background subagent in Claude Code's agents panel. About every 30 seconds, for each background agent still working, Claude Code forks that agent's conversation and sends it to the agent's own model with one instruction: describe the most recent action in 3-5 words. An Opus subagent is summarised by Opus, a Haiku subagent by Haiku.

The Flamerix gist, first committed on 28 October and on the Hacker News front page the next day with 584 points, says the behaviour has been on by default for interactive background agents since 2.1.232 (13 August 2026); the changelog for that version does not mention it. Headless claude -p runs skip it unless the undocumented CLAUDE_CODE_AGENT_PROGRESS_SUMMARIES is set. Since 2.1.128 a tick is skipped when the transcript has not changed.

Most of each call is a cache read, $0.20 per million tokens on Opus 5.5 against $4 uncached (pricing). A 100,000-token transcript summarised 120 times an hour is 12 million cache-read tokens: $2.40 per agent-hour on Opus 5.5, and $0.60 on Haiku 5.5, whose prompts above 100,000 tokens cost five times more. A call that misses the cache pays the uncached rate, about 20 times as much, and Flamerix found the 2% of calls that missed carried over a third of the cost.

The code in my installed 2.1.316 still runs on a 30,000 ms timer. A server-side flag picks between the default full mode, which forks the whole transcript, and a short mode that sends about 2,000 tokens of notes to a writer model. That matches Anthropic's reply on Hacker News, which says a fix for cache-missing summaries shipped in 2.1.311 and a cheaper notes mode is in the works; neither is in the changelog.

I repeated the gist's controlled test on 2.1.316: one Haiku 5.5 background subagent running eight 20-second sleep commands, with summaries forced on, then left at the headless default. The first run made 5 summary calls, 31 seconds apart, each reading about 35,000 tokens; the second made none. The five calls cost about $0.0037 at list price, 20% of their run's $0.018, and the first one missed the cache.

Measured agent_summary shares run from 2% to 24% of spend

The share of Claude Code spend that goes to agent_summary depends on how many background agents a session runs. Anthropic's 2% averages every telemetry user, including people who never start a background agent; the 16.4% and the user numbers come from teams running many long subagents, who are the ones who went looking. All figures are self-reported, and only Anthropic's covers more than one team.

Who Version Sample Share
Anthropic (edwinarbus) not stated Telemetry users, week before 29 Oct ~2% of cost, under 4% of requests; ~6% of cost in the terminal
Flamerix AI to 2.1.301 One organisation, one week, size not given 16.4% of estimated spend, 19.7% of requests
rflcrz 2.1.233 1 session, 4 h, 27 subagents 18.0% of weighted tokens, 22.7% of requests
sylvain-artois 2.1.276 1 session, 1 h 45 min, 4 subagents 26% of cache-read tokens
chrisvaillancourt 2.1.312 30 days, 129 sessions ~10% of spend, 24% in a 40-agent session
jakozaur not stated Own sessions "~8% at most"

On a subscription none of this is a bill; it comes out of the five-hour and weekly limits.

A one-word reply carried 2,102 to 64,887 tokens on my machine

Claude Code's startup context is the system prompt, tool definitions, CLAUDE.md files, memory, the skills listing and MCP server instructions, sent with every request. I asked Claude Code 2.1.316 to reply "OK" in six configurations with claude -p --output-format json --model sonnet and added the input, cache-write and cache-read counts it reported.

Configuration Context tokens First-call cost (Sonnet 5.5)
--safe-mode --tools "": no tools, no customisations 2,102 $0.006
--safe-mode: built-in tools only 16,222 $0.021
Full setup, MCP servers and skills off 34,420 $0.061
Full setup, no MCP servers (--strict-mcp-config) 39,144 $0.102
Full setup in an empty folder 43,394 $0.129
Full setup in the Stackness repository 64,887 $0.215

Built-in tool definitions are the biggest block at 14,120 tokens. My 20 MCP servers add only about 4,250, because Claude Code defers MCP tool definitions until a tool is used; the skills listing adds about 4,700 and the Stackness CLAUDE.md and project memory 21,493. After the first request it is all cache reads: 43,394 tokens cost about $0.004 a request on Sonnet 5.5 and $0.009 on Opus 5.5.

Measure your own overhead with /context, OpenTelemetry and a debug log

Claude Code offers three ways to see what it sends besides your words, and transcript readers such as ccusage are not one of them: summary forks are never written to the session files under ~/.claude/projects/, as issue #104358 documents. /context shows the startup context by category, and /context all lists each item.

claude -p --output-format json prints usage and modelUsage; in my test, modelUsage included the summary calls. OpenTelemetry is the only documented way to see each agent_summary request on its own: group the claude_code.api_request events by query_source. Without a collector, the debug log works, though its lines are internal and can change:

claude --debug-file /tmp/cc-debug.log
grep -c '\[AgentSummary\] Forking' /tmp/cc-debug.log

A logging proxy such as LiteLLM also sees every side call; the proxy setup post covers it.

The switches that turn each overhead off, and what each one costs

Claude Code has no documented switch for agent_summary, and DISABLE_NON_ESSENTIAL_MODEL_CALLS, which the gist says some packagers set, is in neither the docs nor the changelog. The documented switches below are in the environment variable, settings and CLI references as of 1 November 2026; auto-compaction's is spelled DISABLE_AUTO_COMPACT.

Overhead Switch What you lose
agent_summary CLAUDE_CODE_FORK_SUBAGENT=0 Fork mode. Two users measured summaries stopping and two more reported it; one saw no change. Forks and context: fork skills are still summarised
agent_summary CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1 All background agents
agent_summary Flamerix's Bun preload via BUN_OPTIONS Panel labels; third-party code, and its v3 gate fails on Windows
Session title CLAUDE_CODE_DISABLE_TERMINAL_TITLE=1 Terminal title and status reports
Recap, suggestions, idle compaction awaySummaryEnabled, promptSuggestionEnabled, idleCompaction set to false Each feature; without idle compaction the first message after a break re-reads the context at the miss price
MCP and skills context --strict-mcp-config, --disable-slash-commands MCP servers not passed with --mcp-config; all skills
Most startup context --bare Hooks, skills, plugins, CLAUDE.md, background agents; needs ANTHROPIC_API_KEY, so not on a subscription

The labels may matter beyond the panel: Anthropic's reply says summaries are used by "both you and Claude Code", and one reader of the 2.1.314 code reported they can reach a running agent's context. Nobody has measured a quality change from turning them off.

Token optimizer claims against independent checks

Of the token optimizer tools in this week's threads, I found an independent check only for Caveman, and none of them touches agent_summary. JetBrains ran Caveman on SkillsBench in July: "Advertised saving: 65%. Measured saving: 8.5%", with no significant quality change.

claude-token-optimizer claims 90% from its author's one project; its scanner counts Markdown files under docs/ as auto-loaded, which Claude Code does not do, and it counts with a tokenizer whose README says it "is no longer accurate" for Claude 3 and later. The dev.to MCP post cut tool descriptions by 88%, counted in characters, in one run in Kiro.

My numbers against Systima and Anthropic

My 16,222-token safe-mode figure is half the most-cited startup measurement: Systima measured about 32,800 tokens on Claude Code 2.1.207 in July 2026, against about 6,900 for OpenCode, most of it tool definitions. Neither run had MCP servers, so the gap is in the two fixed blocks: tool definitions, 14,120 tokens in 2.1.316 against Systima's roughly 24,000, and the system prompt, 2,102 against 6,500. Systima's 72 KB CLAUDE.md added a little over 20,000 tokens, close to the 21,493 the Stackness repository adds.

For agent_summary, Anthropic's telemetry is the only large sample; everyone else measured their own heavy sessions. On Stackness, as of 1 November 2026, Claude Code is on 8 real public stacks and Bun on 2 (how I count), among the AI coding tools developers list.

Method and sample

I ran Claude Code 2.1.316 on macOS on 1 November 2026 on a subscription, with --model sonnet and --no-session-persistence, once per configuration. Context tokens are input_tokens plus cache_creation_input_tokens plus cache_read_input_tokens, and costs are Claude Code's own list-price total_cost_usd. My setup has 20 MCP servers, a dozen plugins and a long global CLAUDE.md, the heavy end; a fresh install sits near the safe-mode row.

The summary test ran claude -p --model haiku --debug-file twice and counted [AgentSummary] Forking lines. The first run warmed caches the second reused, so the 20% compares the summary calls with their own run, not the two runs with each other. Interactive sessions add the title call and arm summaries without the variable; I did not measure them.

Key numbers

  • 0 model tokens for the Claude Code status line script (statusline docs, read 1 November 2026).
  • 16.4% of one organisation's weekly Claude Code spend went to agent_summary (Flamerix AI, gist of 28 October 2026).
  • ~2% of cost and under 4% of requests across Anthropic's telemetry users, ~6% in the terminal (Anthropic, 29 October 2026).
  • 8% to 26% of spend or tokens in user measurements of subagent-heavy sessions, August to October 2026.
  • 30 seconds between summary calls per working background agent, unchanged in 2.1.316.
  • 43,394 context tokens in a one-word reply with my full setup, 16,222 in safe mode and 2,102 with no tools (my runs, 1 November 2026).
  • 8.5% measured output saving from Caveman against 65% advertised (JetBrains, July 2026).

New posts by email

About one email a week with what we published. No account needed.

One email to confirm first. Every email has a one-click unsubscribe.

Which of these do you use?

Nobody on Stackness runs ccusage yet. Tick what you use and be the first.

Lonny skating the lakeside path, kickflipping onto a bench, grinding it and flipping offStackness gamesPlay Lonny Eagle Amateur Skater 4A pixel art skateboarding game. Signing up opens it straight away.+2 secret games you unlock as you goSign up to play