#how do i change the model in claude acp ?

1 messages · Page 1 of 1 (latest)

winged granite
#

i need tochange the model in acp for claude
how do i execute /model claude-sonnet-4-6 ?

keen basaltBOT
small jewelBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> âś… Mark Solution

keen basaltBOT
stone ivyBOT
#

Let me check the current docs so I don’t make up the command.

winged granite
#

how do i chagne the model in acp claude ?

stone ivyBOT
#

Found it. For ACP sessions, use the ACP command, not plain /model.

#

If this is an ACP Claude session, use:

/acp model anthropic/claude-sonnet-4-6

Not plain /model, that one is for the normal OpenClaw chat session.

A couple of useful checks:

/acp status

to confirm the active ACP session and model.

If your Claude ACP setup is using the Claude CLI backend instead of Anthropic API models, the model id may be:

winged granite
#

it just says done, it doesn't show me shit, still says haiku if i ask

stone ivyBOT
#

Let me verify how ACP reports the active model, because Claude self-reporting is often flaky.

#

Yeah, don’t trust Claude when you ask it what model it is, that self-report is flaky.

The reliable check is:

/acp status

You want to see a line like:

runtimeOptions: model=...

For Claude ACP, try this model id first:

#
/acp model claude-cli/claude-sonnet-4-6

Then run:

/acp status

If runtimeOptions still does not show that model, the override didn’t stick.

So the short version is:

  1. set it:
#
   /acp model claude-cli/claude-sonnet-4-6
  1. verify it:
    /acp status
    

If you paste the /acp status output here, I can tell you immediately whether it actually switched or not.

winged granite
#

it retardedly says when i execute /acp status:
JarvisClaw: âś… Done.

stone ivyBOT
#

That sounds like the Discord app-command wrapper is eating the text output. I’m checking how ACP replies are supposed to render on Discord.

#

Yeah, that’s not supposed to happen. /acp status should print actual status text, not just ✅ Done.

A couple of important bits:

  1. For Claude ACP, use the full model id, not the bare one:
/acp model claude-cli/claude-sonnet-4-6
  1. Don’t verify by asking Claude “what model are you?”
    Claude is annoyingly unreliable at self-reporting that.

Because Discord native slash commands run through a separate command session, this looks like the native command reply is getting swallowed on your setup.

If you want the cleanest retry, I’d do:

#
/acp close
/acp spawn claude --bind here
/acp model claude-cli/claude-sonnet-4-6

Then use it normally.

If it still only says ✅ Done. after that, I’d call that a bug/quirk in the Discord ACP command path on 2026.4.9, not user error. If you want, paste what /acp model claude-cli/claude-sonnet-4-6 returns and I’ll help narrow down whether the model switch is being ignored or just not displayed.

winged granite
#

whats the command to close / delete all session ? i don't want to delete them 1 by 1

stone ivyBOT
#

I’m checking whether ACP has a bulk close command, so I don’t give you fake syntax.

#

I don’t see a built-in bulk ACP close/delete command in the current docs.

What exists is:

/acp close

for the current bound ACP session, or

/acp close <session-key|session-id|session-label>

for a specific one.

And:

winged granite
#

i lauched them all like this /acp action:spawn claude --thread here --cwd /home/jarvis/.openclaw/workspace/my-project/deals

stone ivyBOT
#

Got it. Since you spawned them with --thread here, each Discord thread has its own bound ACP session.

So the annoying answer is: there’s still no single bulk /acp close all I can verify.

Clean way for those is:

/acp cancel
/acp close

inside each thread if it’s still running, or just:

/acp close
#

if you only want to unbind/close it.

A couple of important notes:

  • --thread here means one ACP session per thread
  • /acp close closes that session and removes the thread binding
  • deleting/archiving the Discord thread alone is not the same as cleanly closing the ACP session

If you want to target specific ones from one place, the only supported path I can verify is:

/acp sessions
/acp close <session-key|session-id|session-label>

So yeah, no bulk nuke command right now, just per-session close. If this fixed it, please right-click the solution message → Apps → ✅ Mark Solution so Answer Overflow can index it.

winged granite
#

if i were to execute this in bash on the server, whats the command to run ?

stone ivyBOT
#

Let me check the CLI docs before I give you a shell command.

#

I don’t want to guess here, because the CLI openclaw acp docs are for the bridge, not ACP harness session cleanup. I’m checking whether there’s a supported shell command for bulk session removal.

#

I can’t verify a supported bash one-liner that means “close/delete all ACP harness sessions now”.

The closest documented CLI is:

openclaw sessions --all-agents
openclaw sessions cleanup --all-agents --dry-run
openclaw sessions cleanup --all-agents --enforce

But important, openclaw sessions cleanup is maintenance/pruning, it follows session.maintenance config. It is not a guaranteed “nuke every ACP session immediately” command.

Also, openclaw acp is the bridge CLI, not the ACP harness-session cleanup CLI.

For your specific thread-bound Claude spawns, the documented clean close is still:

#
/acp close

per bound thread/session.

One useful detail from the docs, for thread-bound ACP, unfocus / close / archive / idle-timeout / max-age expiry removes the binding. So if your real goal is to stop the Discord thread bindings, archiving those threads helps with the binding side.

I would not recommend manually deleting sessions.json or transcript files while the gateway is running, the docs explicitly note the gateway is the authority and may rewrite/rehydrate session entries.

Docs:

If you want, I can help you figure out the least-annoying cleanup path for your setup, bindings only, or full stored session history.

winged granite
#

tell me the difference in acp config:

"stream": {
"deliveryMode": "live",
"coalesceIdleMs": 300,
"maxChunkChars": 1200,
"tagVisibility": {
"tool_call": true,
"tool_call_update": true
}

acp.tag_visibility.tool_call vs acp.tag_visibility.tool_call_update