I know that invoking parallel subagents is the operating mode du jour, but I’m curious if it’s possible to regulate this behavior through .cursorrules or other means like settings?
Specifically:
There are times that I’d like to go back to the ‘old way’ (pre Cursor 2.6ish / 3.x) of doing things and opt for linear thinking and execution by a single agent, especially in Plan mode. Can this be controlled?
When subagents are used, is there a way to specify which model(s) the subagents use? It appears to default to Composer 2. I’d prefer to use the same model that my main agent is using in some instances.
Are subagents MCP-aware? Create State’s Cursor plugin has marvelous long-context search functions that the main agent uses reliably, however subagents appear to default to their own behavior (traversing directory trees, grepping source files and so on)
(@kevinn , please move this to Help if it’s better suited for that forum).
there are a couple of different parameters this can receive
Parameters
Name
Required
Type
Description
subagent_type
yes
enum
Which specialized agent to launch (see below)
description
yes
string
Short (3–5 word) title shown in the UI
prompt
yes
string
Full self-contained task instructions
model
no
enum
Override model for this subagent (see enum list)
run_in_background
no
boolean
If true, returns immediately and notifies on completion; if false, blocks until done
readonly
no
boolean
Run in “Ask mode” — restricts writes and MCP access
resume
no
string
Agent ID to resume, or "self" to fork current parent context
interrupt
no
boolean
Only with resume on a running async agent — cancel and send new prompt
file_attachments
no
string[]
Paths to images/videos to attach (mainly for multimodal-looker)
Regarding your questions
Yes (partially) you can add a rule for avoiding the execution of Task() (internal tool for invoking subagents) with different subagent_type than explore & shell mostly what we perceive as subagents is subagent_type=‘generalPurpose’
Task() invocation supports passing model param which is an enum that changes between versions it seems they haven’t found the sweet spot but currently on 3.2.16 the models enum can receive either:
claude-4.6-sonnet-medium-thinking
claude-opus-4-7-thinking-xhigh
composer-2-fast
gemini-3.1-pro
gpt-5.3-codex-high-fast
gpt-5.3-codex-spark-preview
gpt-5.4-medium
gpt-5.5-extra-high
Yeah they know about your mcp, tools but they will always try to use cursors internal tools
given this you can play with your prompt and rules to control the behavior of your subagents