I’m using Cursor agent inside Zed through ACP. I can’t select thinking level or variant with any models.
Steps to Reproduce
Use Cursor agent in Zed. There is no option to choose thinking level or variant. For example, if I choose Composer 2.5, Fast will be enabled. There is no way to choose non-Fast.
Expected Behavior
There should be a way to select non-fast Composer 2.5, or different thinking levels for Opus 4.7.
Hey, this isn’t a Cursor bug. It’s a limitation on the ACP client side, in your case Zed.
How it works: to show a thinking level or variant picker like Fast vs non-Fast, the ACP client has to declare the parameterizedModelPicker capability during initialization. If the client doesn’t declare it, the backend falls back to variants mode and returns only one default variant per model:
Composer 2.5: Fast only
Opus 4.7: medium thinking only
etc.
Right now, Zed’s ACP integration doesn’t declare this capability, so the selector doesn’t show up. The same thing happened with IntelliJ ACP, confirmed here: IntelliJ Cursor ACP Reasoning Levels, and in a couple of similar reports:
So the fix is likely on Zed’s side. They need their ACP client to support the parameterized model picker, or there needs to be an upstream change in the ACP spec. On our side, we’re tracking this because of side effects like unexpected quota usage, but we can’t add this as a Zed in-app feature without client support.
Current workaround: use Cursor CLI directly outside ACP. The thinking level and variants selector works there as expected.
You’re right. This isn’t in the ACP spec or the SDK. It’s a Cursor-side extension that we hook up through ACP’s standard extensibility mechanism, _meta in ClientCapabilities. See Extensibility - Agent Client Protocol. As of today, it’s not publicly documented.
That’s on us. The right approach isn’t for third-party ACP clients to pick up an undocumented internal key from forum posts. That’s not a stable contract. I’ll bring this back to the team and push for a proper public spec for this feature, including the name, semantics, how to enable it, and how configOptions are passed, so Zed and other ACP clients have a stable foundation for integration.
In addition to not supporting thinking levels, there are a bunch of other problems, like taking 12 seconds to boot, 2.5 seconds to create a new chat etc.
Good catch, you’re right. configOptions with the thought_level category is the right standard approach, and it’s what we should use, not a proprietary _meta extension that we’d then need to document and ask users to support. I’ll change this back to “migrate to standard Session Config Options” instead of “document our key”.
Thanks for adding Cursor to areweacpyet.com. 18% is an honest reflection of where the ACP integration is today. The long startup time and the delay when creating a new chat are real issues, we know about them, and they’re not related to the picker issue. I can’t promise any timelines, but it’s helpful to have a public progress scoreboard.
When using the Cursor agent via ACP in Zed editor, Composer 2.5 is permanently locked to Fast mode. There is no way to switch to the classic (non-fast) variant through settings or configuration.
Details
I was trying to disable Fast mode for Composer 2.5 in my Zed settings.json using the favorite_config_option_values config:
Fast mode is 6x more expensive than the standard tier (input: $3.00 vs $0.50 per million tokens). Users who prefer the standard variant for cost savings or unattended/background tasks have no way to opt out when using Cursor via ACP.
Hey, quick answer: you can’t turn on Max Mode via ACP right now, for the same reason as the thinking levels and non-Fast options mentioned earlier in the thread.
When the ACP client (Zed, Neovim, etc.) doesn’t declare the capability for parameterized model selection, the backend only returns one default option per model (defaultNonMax). Max Mode is a separate model variant, so it just doesn’t show up in the ACP selector.
The current workaround is to use Cursor CLI directly, outside ACP. Model variants and Max Mode work there as expected.
The proper fix is on our tracking list. We need to move to the standard ACP Session Config Options so clients can set thinking level, variant, and Max. I can’t share an ETA yet, but I’ll post an update in the thread when I have one.
Hey @hicder, I said I’d come back with an update, so here it is.
We decided not to prioritize migrating to the standard ACP Session Config Options for now. That means selecting thinking level, a non-Fast variant, and Max Mode in Cursor via ACP clients Zed, Neovim, IntelliJ won’t be available anytime soon. I don’t want to leave you waiting, there’s no work planned on this right now.
The workaround is the same. Run Cursor CLI directly, outside of ACP. The variant selector and thinking levels work there as expected, including Max Mode.
Edit: As “the community” apparently found my comment offensive, I’ve removed the more critical portion.
Here’s the rest of the original comment:
If the ACP session at least respected the settings from the CLI, we could use that but that doesn’t seem to work either.
I’d bet I’m not the only person to subscribe to test Cursor with the new agent integration in Xcode 27, but being forced to use the fast version means I’ll probably use up my monthly budget in a couple of days.
So far, I’ve been really happy with the results Composer 2.5 generated but given the current state of things and the underwhelming responses here, I’ll have to cancel the subscription again…
Hey @leoklaus. Xcode 27 behaves the same way as Zed, Neovim, and IntelliJ. It’s the same editor-side ACP client, so it has the same limitation.
About the CLI settings. You’re right, the ACP session doesn’t pick them up. When the client doesn’t declare the capability for the parameterized model picker, the backend returns one default option per model, defaultNonMax. For Composer 2.5 that default is Fast. The CLI config for variant and thinking doesn’t get passed into this path, so you can’t override it via CLI settings.
I won’t give you false hope. The proper fix, moving to the standard ACP Session Config Options, isn’t being worked on right now and it’s not in the near-term plans. If priorities change, I’ll reply in the thread.
Right now the only working way to control variant, thinking, and Max is to run Cursor CLI directly, outside ACP. The variant selector and thinking levels work as expected there, including non-Fast Composer 2.5, so the budget impact is noticeably better.
I get that this isn’t what you want for an Xcode integration, but it’s better to be honest than to drag it out.