How can I prevent Cursor from using composer - 2 - fast to create sub - agents? Does the old version of Cursor not have this problem? The current billing method consumes too many requests. Often, asking one question consumes several requests.
Now it often automatically uses composer - 2 - fast to create sub - agents. I’m speechless.
Whatever you do, don’t try Opus 4.7: it’ll eat all your requests for the month before anything is done.
Look at settings->models and disable composer 2, and enable LLM’s that only cost 1 request. In the chat box, two dropdowns: select “Agent” in the first, toggle-off Auto and Max and “Use multiple Models” in the second, and select an LLM like “Opus 4.6 Max” (does not require Max mode) “Codex 5.3 High” or “GPT-5.4 1M*”
Also, in your .cursorules, add:
MANDATORY: DO NOT SPAWN SUBAGENTS, do everything serially, not in parallel
You MUST NOT use the Task tool under any circumstances. Subagents are forced to use Composer which produces unacceptable results. Do all work directly:
- Do not spawn parallel jobs
- Complex tasks: handle them yourself in this context, do NOT delegate
I haven’t updated cursor in months, so it’s prolly my old version. It seems all the updates do is find faster ways to chew through my allocation, so I don’t update. It looks like the latest ChatGPT requires Max mode, so I won’t be using it either, as Max mode can’t code “hello world” without consuming a months allocation. I prolly shouldn’t post here, as a day after the last post it disregarded my “no task tool” directive, and chewed-through a bunch of requests in parallel. I reminded it of the imperative in .cursorrules and it quit doing it.
I would guess, like Opus 4.7 at “half price mode”, if you ask it to code “hello world”, it would get partway done and have consumed all your requests for the month… so, I’ll let you experiment
Hey, thanks for the report. The tip from @blackburied works. On the request-based plan, subagents go through composer-2-fast by default, and there’s currently no direct UI toggle to disable subagents.
A couple ways to limit this:
Via .cursorrules like @blackburied suggested, tell the agent not to use the Task tool. This works most of the time, but the model can sometimes ignore the rule.
Via the subagentStart hook, this is more reliable. It programmatically blocks subagent spawning before they start. Return permission: "deny" and the subagent won’t be created. Docs: Hooks | Cursor Docs
@deanrie When I choose Opus 4.7 for my agent, how can I have Cursor respect that choice for my sub-agents too rather than using Composer 2?
Edited to add: Here are some screenshots of Cursor using Composer 2 for a sub-agent even when Composer 2 is explicitly disabled and Opus 4.7 is explicitly specified.
When telling the cloud agent to use opus as the subagent, it responds "opus-4.7 isn’t in the list of available subagent models for this environment. The only model I can run subagents with right now is composer-2-fast".
Opus is the only model allowed in my model settings. I never want to use Composer 2. Wtf.
@HarryGlaser@TomO In version 3.3, they already added a selector for the subagent model. In Settings, there’s now a Subagents section with an Explore subagent model dropdown where you can pick the model explicitly see the screenshot below. If you want to try it right now, switch to nightly Settings → Beta → Update Channel: Nightly.
About cloud agents, the pool of available models for subagents is set by the environment, so the message opus-4.7 isn't in the list of available subagent models for this environment is expected. On the cloud side, the subagent is currently tied to composer-2-fast. This is a separate case from the IDE, we’ll flag it to the team separately. I can’t share an ETA.
For now, in the IDE on stable, the most reliable workaround to avoid creating subagents at all is using the subagentStart hook permission: "deny": Hooks | Cursor Docs
Thanks @deanrie . Unfortunately the stability profile of Nightly doesn’t make sense for me. Will look forward to this setting when it gets released to the stable branch.
Regarding cloud sub-agents, for our use case (a large multi-system / multi-language application), Opus 4.7 is just dramatically better than Composer 2. We’d love to keep using the Cursor editor and especially the Cursor cloud agent runners, which have been much more full-featured and reliable than GitHub’s cloud agents. However if the idea is over time to make customers use Composer models, we’ll have to switch. I mention all this because I hope you’ll take it into account and/or provide the feedback to the team. Alternatively if the plan definitely is to deprioritize third-party models and move customers to your own models, please just let us know so we can make our plans.
Thanks for your responsiveness. Looking forward to the fixes.
I cannot understand why we cannot simply select the subagent? Is that really difficult thing to do - No I do not think so. Tbh, because of this now we are considering moving to claude code… because it failed several times with several people. And we cannot do that mistake, sometimes because of composer 2 model we are simply losing our several hours..
v3.3 is now stable and it’s indeed in File=Preferences=>Cursor Settings=>Agents=>Subagents.
The default is Composer 2 but you can change it to Inherit from parent, which I wonder why it’s not the default.
@Cursor , please fix that issue. I do not want to use that composer-2. I am paying for something else but it kept using it. I usually spend 100-130$ for a month. If it’s not going to be fixed, I will definetly unsubscribe.
@jjukl this was already fixed in v3.3 stable. Update Cursor, then go to Settings > Agents > Subagents. There’s a dropdown called Explore subagent model. By default it’s set to Composer 2, and you can switch it to Inherit from parent or pick a specific model. @lwc posted a screenshot above in post #18.
If you mean cloud agents (background agents), subagents are currently tied to composer-2-fast. That’s a known limitation, and I already flagged it to the team separately. I can’t share an ETA yet.
For the IDE on the stable branch, the most reliable workaround if you want to fully disable spawning subagents is the subagentStart hook with permission: "deny": Hooks | Cursor Docs
The thing I noticed that it’s keep using the Composer 2 and to use custom subagent I had to turn on the MAX mode which eats up so much requests within minutes.
Why can’t we simply use normal mode with custom Subagents?
It’s not a cloudagents, I am simply using Opus 4.6 model and it’s keep using Composer 2 model even I selected the Sonnet 4.6 model in Settings->Subagents->Sonnet 4.6