Resuming completed subagents replays the full transcript per message — burned 75% of a weekly limit in one afternoon

Status Open
Maintainer reply None cached
Activity 0 comments · opened Aug 16, 2026

What happened

During a long orchestration session, the assistant repeatedly used SendMessage to resume previously completed background subagents (spawned via the Agent tool) to hand them follow-up tasks and small mid-flight corrections ("addenda").

Each resume replays the agent's entire prior transcript into the resumed session. The agents in question had transcripts of ~650K–960K tokens (large greenfield build tasks), and they were resumed 6–8 times each. Every small addendum therefore re-billed the whole growing history. Net effect: ~75% of the account's weekly usage limit consumed in a single afternoon, with most of it being transcript replay rather than new work.

Why it's easy to fall into

  • The SendMessage/resume affordance looks cheap — "send the agent one more instruction" — and nothing at the call site indicates that the cost is proportional to the agent's full history, not to the message.
  • Resuming feels like the natural way to keep context ("the agent already knows the repo"), when in practice a fresh agent with a self-contained brief pointing at files on disk is dramatically cheaper and works as well.

Suggestions (any one of these would have prevented it)

  1. Surface the cost at the call site: the resume result (or a pre-flight warning) could state "resuming this agent will replay ~N tokens of prior transcript."
  2. Incremental resume: prompt-cache or otherwise avoid re-billing the unchanged transcript prefix on each consecutive resume of the same agent.
  3. Docs/system-prompt guidance for the orchestration pattern: prefer fresh agents with batched, self-contained briefs; treat resume as expensive and exceptional; never drip-feed addenda.

Environment

  • Session id: d78d1e9b-c15d-4ba8-ac16-919dc5d23cbe
  • Model: claude-fable-5 (Claude Code CLI, macOS/darwin 25.0.0)
  • Subagent type: general-purpose, resumed via SendMessage with the spawn-returned agent id
  • Subagent transcript sizes at time of resumes: ~650K–960K tokens each; 6–8 resumes per agent

Filed at the user's request; happy to provide more detail from the session.

View original on GitHub ↗