ACP (Qt Creator): “Upgrade your plan to continue” after team usage limit — Auto Cost / Composer unusable via ACP while desktop Auto Cost still works

Where does the bug appear (feature/product)?

Cursor CLI and ACP

Summary
After the team hits its included usage limit, Cursor via ACP in Qt Creator becomes unusable: handshake/session setup succeeds, but any real session/prompt returns “Upgrade your plan to continue”. At the same time, the same account works normally in the Cursor desktop app with Auto → Optimize For → Cost.

Expected behavior
When included usage is exhausted, ACP should either:

  1. keep working with Auto Cost (bundled Auto pricing / continued access), or
  2. fall back to an included model such as Composer 2.5,

as documented / described by Cursor staff for limit scenarios — instead of hard-blocking every prompt with “Upgrade your plan”.

Actual behavior

  1. Qt Creator connects to agent acp successfully (initialize / authenticate / session/new OK).
  2. Any subsequent user prompt fails with Upgrade your plan to continue.
  3. This happens even when trying to pin models at process start, e.g.:
    • --model composer-2.5 acp
    • --model auto-smart[optimize_for=cost] acp
  4. Qt Creator’s model UI typically shows composer-2.5, but prompts still fail.
  5. In Cursor desktop, Auto Cost continues to work for the same user/team — so this is not a total account lockout; it appears specific to ACP / Router continued-access.

Context / related known issues
This matches the post–Cursor Router (Teams) ACP behavior reported on the forum:

  • ACP exposes default Auto routing as auto-smart and does not expose the Optimize For selector (Cost / Balance / Intelligence).
  • After team usage limit, Router Auto via ACP is rejected instead of falling back to continued-access / Cost / Composer.
  • Staff acknowledged Optimize For (including Cost) is not available on ACP clients yet (e.g. JetBrains; same protocol path as Qt Creator).

Impact
We cannot use Cursor agentically inside Qt Creator once the team limit is hit, even though desktop Auto Cost still works. For C++/Qt workflows this effectively means ACP is not usable for day-to-day work after quota.

Steps to reproduce

  1. Use a Teams account that has exhausted (or nearly exhausted) included monthly usage.
  2. Install Cursor CLI (agent), run agent login.
  3. In Qt Creator: Preferences → AI → ACP Servers → Custom agent:
    • Executable: %LOCALAPPDATA%\cursor-agent\agent.cmd
    • Arguments: --model composer-2.5 acp (also tried auto-smart[optimize_for=cost])
  4. Connect ACP chat and send any real coding prompt.
  5. Observe: connection OK, prompt → Upgrade your plan to continue.
  6. In Cursor desktop, select Auto → Optimize For → Cost → same account works.

Request

  1. Fix ACP continued-access after team limit so Auto Cost and/or Composer remain usable without requiring plan upgrade.
  2. Expose Optimize For → Cost (or honor auto-smart[optimize_for=cost]) reliably over ACP for clients like Qt Creator / JetBrains.
  3. Confirm whether ACP is intentionally billed/gated differently from desktop Auto Cost; if yes, document it.

Hi there!

We detected that this may be a bug report, so we’ve moved your post to the Bug Reports category.

To help us investigate and fix this faster, could you edit your original post to include the details from the template below?

Bug Report Template - Click to expand

Where does the bug appear (feature/product)?

  • Editor, Tab & Chat (autocomplete, Composer, in-editor agent)
  • Terminal & commands
  • Models, pricing & API keys (availability, Auto/Max, BYOK/Bedrock)
  • MCP & tools
  • Cloud Agents & Automations (cursor.com/agents, scheduled/event)
  • BugBot & Code Review
  • Cursor CLI
  • Cursor Mobile
  • Remote (SSH / Dev Containers / WSL)
  • Account, billing & login
  • Something else…

Describe the Bug
A clear and concise description of what the bug is.


Steps to Reproduce
How can you reproduce this bug? We have a much better chance at fixing issues if we can reproduce them!


Expected Behavior
What is meant to happen here that isn’t working correctly?


Screenshots / Screen Recordings
If applicable, attach images or videos (.jpg, .png, .gif, .mp4, .mov)


Operating System

  • Windows 10/11
  • MacOS
  • Linux

Version Information

  • For Cursor IDE: Menu → About Cursor → Copy
  • For Cursor CLI: Run agent about in your terminal
IDE:
Version: 2.xx.x
VSCode Version: 1.105.1
Commit: ......

CLI:
CLI Version 2026.01.17-d239e66

For AI issues: which model did you use?
Model name (e.g., Sonnet 4, Tab…)


For AI issues: add Request ID with privacy disabled
Request ID: f9a7046a-279b-47e5-ab48-6e8dc12daba1
For Background Agent issues, also post the ID: bc-…


Additional Information
Add any other context about the problem here.


Does this stop you from using Cursor?

  • Yes - Cursor is unusable
  • Sometimes - I can sometimes use Cursor
  • No - Cursor works, but with this issue

The more details you provide, the easier it is for us to reproduce and fix the issue. Thanks!

Hi @Nikita_Chernyaev Thank you for the post.

Answering your third question first: no, ACP is not billed or gated differently from the desktop app. It runs under the same usage limits policy. The asymmetry is purely about which model IDs each surface is able to send.

Once a team’s included usage is exhausted, continued access accepts a specific set of model selections. Auto in its cost-optimized form is one of them, and so is the standard (non-fast) Composer 2.5. The desktop app can send those, which is why Auto → Optimize For → Cost keeps working for you.

ACP currently exposes only one variant per model: the routed Auto (Balance) and the fast variant of Composer 2.5. Neither is in the accepted set, so every prompt is rejected. I checked the pins you tried, and they all resolve back to those same two selections, so --model composer-2.5, --model auto, --model default, and auto-smart[optimize_for=cost] will not get you past it. This is a gap on our side, not a configuration problem on yours.

One more thing worth flagging: “Upgrade your plan to continue” is a generic message ACP shows for this whole class of limit errors, and it replaces the more specific explanation you would otherwise see. Your account is in good standing and you still have continued-access usage available, so no plan change is needed here.

Until we close the gap, there are 3 main options:

  1. Cursor desktop with Auto → Optimize For → Cost, which you have already confirmed works.
  2. The interactive cursor-agent CLI in a terminal instead of through ACP. Outside of ACP mode, the CLI can send the accepted selections, and your Composer 2.5 and Auto requests went through that way earlier today.
  3. Your team admin can enable or raise on-demand usage from the dashboard, which lifts the restriction entirely.

Both the continued-access issue and the missing Optimize For selector on ACP clients are tracked internally, and I have attached your Qt Creator report to that work. I will follow up here once there is a fix to share.

Hello again!

Thanks for the quick response — I’ll patiently wait for the ACP fix.

Best regards,

Nikita Chernyaev