Subagent transcript view status line shows parent session model, not the subagent's model override
Bug
When a subagent is launched via the Agent tool with an explicit model override (e.g. model: "opus"), the status line at the bottom of the subagent's chat/transcript view still displays the parent session's model (e.g. fable-5), not the model the subagent actually runs on.
Why it matters
The user instructed that all subagents run on Opus. The agent was launched with model: "opus" and its transcript JSONL confirms every request executed on "model":"claude-opus-5" — but the subagent view's status line kept showing fable-5 (the parent session's model). The user reasonably concluded the instruction was being ignored and killed the agent repeatedly (4 kills across two tasks), losing significant work and tokens.
Expected
The status line (and any model label) in a subagent's view should show the subagent's effective model.
Actual
It shows the parent session's model. The user reports the label does normally update when switching models in a regular session, which made the stale label extra convincing.
Repro
- Run a session on one model (here: fable-5, in a background job).
- Launch a
general-purposesubagent via the Agent tool withmodel: "opus". - Open the subagent's view from the task list (Enter to view).
- Status line shows the parent model; meanwhile
grep '"model"' <task output jsonl>shows onlyclaude-opus-5.
Environment
- Claude Code 2.1.283, macOS (Darwin 25.5.0), background job session, parent model claude-fable-5, subagent claude-opus-5.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗