#ACP Cursor
1 messages · Page 1 of 1 (latest)
Let me check the docs and the source for that exact ACP error, then I’ll give you the fastest fix.
That message is the generic Discord wrapper. It means OpenClaw found the ACP binding, but failed to bring up the backing ACP session.
For Cursor, I’d check these first:
- Use
cursor, notcusor - Run
/acp doctor - On the host, run:
Then retry the bind once. The real error should show in the logs.openclaw --version openclaw status --all openclaw logs --follow - Make sure config allows Cursor:
acp.backend: "acpx"acp.allowedAgentsincludes"cursor"plugins.entries.acpx.enabled: true
- OpenClaw expects Cursor ACP as
cursor-agent acp. If your local Cursor still usesagent acp, override thecursoragent command in your acpx config.
Docs:
If you paste:
openclaw --version/acp doctor- the log line that appears right after retrying
…I can usually pinpoint the exact fix pretty fast.
I have both cursor app and cursor-cli installed on my machine
Let me check the Cursor ACP expectation in the source so I don’t guess.
Got it, that helps.
The important bit is, OpenClaw does not care that the Cursor app is installed, it cares whether the Cursor ACP command is available on the same host as the gateway.
Per the docs, the expected harness is:
cursor→ backed bycursor-agent acp
So I’d check this next on the gateway host:
openclaw --version
which cursor-agent
cursor-agent acp --help
If that fails, also try:
which agent
agent acp --help
Why: some Cursor installs still expose ACP as agent acp instead of cursor-agent acp. OpenClaw expects cursor-agent acp by default, so that mismatch can absolutely cause this.
Also run:
/acp doctor
If cursor-agent acp --help works, then the next suspects are:
acp.allowedAgentsmissing"cursor"acp.backendnot set toacpxplugins.entries.acpx.enabledis off
- vendor auth / runtime error, which will show in
openclaw logs --follow
If you paste these 3 things, I can narrow it down fast:
openclaw --version/acp doctor- output of
cursor-agent acp --help(oragent acp --helpif that’s the one that exists)
Now I got it work.
When I use /acp model claude-opus-4.7, the acp agent posted me it can't switch model.
Nice, glad the binding is working now. Let me check the ACP model-switch docs so I can tell you the exact expected format.
Nice, glad you got the binding working. 🎉
For /acp model, two things are probably happening:
-
claude-opus-4.7is likely not the right format
The ACP docs show/acp modelusing a full model id, for example:/acp model anthropic/claude-opus-4-6not a shorthand like
claude-opus-4.7. -
Cursor may not support live model switching the way you expect
With ACP, OpenClaw passes the model override through, but the harness still has to accept it. Some ACP controls depend on backend/harness capabilities, and Cursor can reject a switch even if the command itself is valid.
What I’d try next:
/acp status
Then:
/acp model <exact provider/model id>
If Cursor still says it can’t switch, the practical workaround is usually:
/acp close
/acp spawn cursor --bind here
and start the session with the model you want from the beginning, instead of switching mid-session.
Also, please paste:
openclaw --version/acp status- the exact “can’t switch model” message
That’ll tell us pretty quickly whether this is:
- bad model id format, or
- Cursor ACP just not supporting that runtime switch cleanly.
Based on my test, the cursor ACP does not support model switching with slash command yet. Must do this in the terminal using the following commands to change the model:
agent --model <model_id>
or
cursor-agent --model <model_id>
Yep, that fits.
What’s happening is:
/acp modelonly works if the underlying harness supports live model changes- Cursor ACP apparently doesn’t support that yet
- so OpenClaw can pass the request through, but Cursor rejects it
So for now, the workaround is exactly what you found, change it from the Cursor side in terminal with:
agent --model <model_id>
# or
cursor-agent --model <model_id>
That sounds like a Cursor ACP limitation, not an OpenClaw routing problem.
If you want, it’d be worth filing as a feature request / docs clarification here:
https://github.com/openclaw/openclaw/issues
Glad you tracked it down 👏
If this fixed it, please right-click the solution message → Apps → ✅ Mark Solution so Answer Overflow can index it.