Hey, thanks for the detailed report.
The subagent_type parameter in the Task tool is just a name or identifier. It doesn’t control which model gets run. Adding “opus” or “codex” to the name doesn’t enable automatic model routing.
To assign a specific model to a subagent, set the model field in the subagent’s YAML frontmatter. Create .cursor/agents/planner-opus.md:
---
name: planner-opus
description: Task planning using Opus.
model: claude-4.6-opus-high-thinking
---
Your prompt here...
Valid values for model:
inherituses the parent agent’s modelfastuses a faster, cheaper model- A specific model name, like
claude-4.6-opus-high-thinkingorgpt-5.2-codex
Docs: Subagents | Cursor Docs
I also noticed related feature request here: Feature Request: Recursive Subagents, CLI Support, and Flexible Model Selection for Task Tool. The team is aware of the request to set models dynamically at call time. There’s no ETA yet, but reports like this help with prioritization.
Let me know if setting the model via frontmatter works for your workflow.