[BUG] The dispatching model has no reliable mechanism to enforce subagent model selection via prompt text
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Today I used claude Opus 4.6 to give me a subagent dispatching prompt, so I can use sonnet to dispatch repetitive work to Haiku(much lower cost), and claude code just completely ignored the model selection, as a result, rather than using Haiku subagent, I actually used Sonnet subagent, making the bill skyhigh, this is completely a design failure, and I ask for a full refund of my burnt credit.
- Agent tool model: "haiku" parameter specified in prompt was ignored by Sonnet
dispatcher
- All subagents ran as Sonnet instead of Haiku — 10x cost ($20 vs ~$2
estimated)
- The dispatching model has no reliable mechanism to enforce subagent model
selection via prompt text
- This is a design gap: the model parameter only works when the calling code
sets it directly, not when instructed via natural language
What Should Happen?
Expected: Sonnet reads prompt saying model: "haiku", sets Agent tool's model
param to "haiku"
Error Messages/Logs
Steps to Reproduce
Reproduction: Any prompt telling a model to "dispatch Agent with model:
'haiku'" — the model may or may not respect it
Claude Model
Sonnet (default)
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.74
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
VS Code integrated terminal
Additional Information
Suggestion: Either enforce model parameter via a system-level constraint, or
surface a warning when a dispatched agent's model differs from what was
specified in the parent prompt
I ask for a full refund of my burnt bills.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗