Spawned subagent session banner shows account default model, not the model the spawn actually resolved to
Environment
- Claude Code v2.1.220, macOS (darwin 27.0.0 beta)
- Main session model: Fable 5 (saved default), effortLevel: high
- Subagents spawned via the Agent tool with an explicit
model: "opus"override
What happens
When a subagent is spawned with a model override (model: "opus" on the Agent/Task tool), the spawned session's welcome banner renders the account/default model label — in our case "Sonnet 5 with high effort" — instead of the model the session actually resolved to.
The session is genuinely running the requested override: asking the agent mid-run to quote the model line from its own system prompt returns the Opus model id. Only the banner is wrong.
Why it matters
Watching spawned agents in a terminal/session viewer, the banner is the only at-a-glance model indicator. We killed a correctly-running Opus agent mid-task believing the model override had been silently ignored, and burned a second dispatch + a diagnostic round proving the banner wrong. Anyone orchestrating multi-agent work with model overrides will hit the same false alarm.
Expected
The welcome banner (and any surface showing the session's model) should reflect the session's resolved model — including per-spawn overrides — not the saved account default.
Repro
- Set a default model (e.g.
/model fableor sonnet). - From a session, spawn a subagent via the Agent tool with
model: "opus". - Observe the spawned session's banner: shows the default model + effort, not Opus.
- Ask the spawned agent to quote its system-prompt model line: reports the Opus id — confirming the override worked and the banner is cosmetic.