Subagent task rows display the parent session's model/effort instead of the subagent's actual model

Status Closed — duplicate
Reported on v2.1.233
Maintainer reply None cached
Activity 1 comment · opened Aug 18, 2026 · closed Aug 19, 2026

Version: Claude Code 2.1.233 (macOS, darwin 25.6.0)

Setup: Main session runs on Fable 5 (effort high/max). Custom agents defined in project .claude/agents/*.md with model: sonnet in frontmatter. Agents spawned via the Agent tool with subagent_type: "<custom-agent>".

Observed: The task list/agent rows in the UI label the subagents "Fable · Max" (the parent session's model and effort). This persists even when model: "sonnet" is passed explicitly on the Agent tool call.

Actual model is correct: When messaged and asked to quote their system prompt, the subagents report "You are powered by the model named Sonnet 5, exact model ID claude-sonnet-5". So routing/inference honors the frontmatter and the override — only the display label is wrong.

Impact: Not cosmetic in practice: orchestration setups pin subagent models specifically for cost control. A parent-tier label on a correctly-pinned agent looks identical to the real fail-open (an unpinned spawn genuinely inheriting the parent's expensive model), so users can't distinguish a display bug from a cost leak without probing agents individually. In our case it triggered an unnecessary kill-and-respawn of three in-flight agents.

Expected: Task rows show the model the subagent actually runs on (and ideally its effort), resolved after frontmatter/override precedence is applied.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗