Every 30 seconds, for every background agent running in Claude Code, the tool takes the agent's entire conversation transcript, sends it to Opus — Anthropic's most expensive model — and asks it to describe the most recent action in three to five words. The result updates a status line in the agents panel. It never reaches the model or the user's conversation. There is no setting to turn it off. Flamerix AI detected the anomaly through Claude Code's OpenTelemetry export. Grouping API requests by querysource revealed that agentsummary requests were costing more than the main conversation itself: 16.4% of all Claude Code spend versus 15.7% for actual work. These summary calls accounted for roughly one in five API requests, with 96% of that spend hitting Opus. The input-to-output token ratio was approximately 9,000:1 — the entire transcript re-read for a three-word answer. The fix is an 80-line Bun preload script released under MIT license. It wraps setTimeout and setInterval, inspects each callback's source text via Function.prototype.toString, and when it finds the summarizer anchor string, returns an inert timer handle instead of arming the real one. Every other timer passes through untouched. The technique works because even precompiled Bun bytecode still returns callback source text through toString, and the API client doesn't go through a wrapped globalThis.fetch. The reason this requires a hack rather than a configuration change is telling. The SDK option agentProgressSummaries defaults to false, but inside the bundle it's one term of an OR expression where every code path that writes it sets true — so false changes nothing. The environment variable DISABLENONESSENTIALMODELCALLS doesn't appear in the binary at all. The only variables that actually stop the summaries also kill fork subagents or background agents entirely. The 30-second interval comes from a server-side flag clamped to a 30–240 second range with no disable option. Perhaps most striking: these requests are invisible to standard cost-tracking tools. They don't appear in session logs on disk. Only the OpenTelemetry export reveals them. The documentation section on background token usage doesn't list them. A cheaper variant — using roughly 2,000 tokens of notes instead of the full transcript — already exists in version 2.1.310 but ships switched off, controllable only by server flags. The preload has been tested across six Claude Code versions from 2.1.257 through 2.1.312. It fails open: if an update changes the anchor strings, the hook silently stops matching and summaries return. Flamerix reports zero agentsummary requests since deployment, with no impact on subagent or background agent functionality. The only visible change is that the per-agent panel status stops updating — the cosmetic feature that was consuming one-sixth of the budget. Four independent measurements collected in GitHub issue #86879 put the waste between 18% and 26% of total token spend. For subscription users, what's lost isn't dollars directly but rate-limit headroom — the finite capacity to do actual work. The prompt cache makes individual calls cheaper but doesn't make the pattern cheap: about 2% of calls hit a cold cache and carry over a third of the total cost.