#Model dropdown in dashboard not applying changes (e.g., Grok-4.1-fast not sticking)

39 messages · Page 1 of 1 (latest)

full coyote
#

Hey OpenClaw team,

Running 2026.4.12 on Linux VPS. The AI Models tab dropdown shows "grok-4-1-fast-reasoning" as an option, but selecting it doesn't apply to sessions—openclaw status still shows "grok-4". Manual config.json edits and restarts don't stick either. Sessions remain on old model.

Config edit attempted: Set "agents.defaults.model.primary" to "xai/grok-4-1-fast-reasoning"
Error on switch via tool: "Model not allowed"
Models list only shows xai/grok-4
This defeats the point of the UI dropdown. Fix ASAP—Boss is losin' patience (and cash on pricier model).

Attached Status Output (from openclaw status --all):

runic basinBOT
idle graniteBOT
#

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

runic basinBOT
fluid fossilBOT
#

You’re hitting two separate things here, and yeah, the UI is being misleading.

  • openclaw models list shows configured/allowed models by default, not the full xAI catalog.
  • If agents.defaults.models exists, it becomes the allowlist for session switches. If that list only has xai/grok-4, the backend will reject grok-4-1-fast-* with Model not allowed.

Also, grok-4-1-fast-reasoning is a legacy alias. OpenClaw normalizes it to:

xai/grok-4-1-fast

Try this:

openclaw models set xai/grok-4-1-fast
openclaw gateway restart
#
openclaw models status
openclaw models list
openclaw models list --all --provider xai

Why models set matters: it updates both the default model and the agents.defaults.models allowlist.

Two gotchas:

  • Existing sessions may keep a session override, so test with a new session after restart.
  • If manual edits “don’t stick”, you may be editing the wrong config file. Check:
openclaw config file
openclaw gateway status
fluid fossilBOT
#

Nice, glad we caught it. 🎉

So the culprit was the model allowlist, plus xAI’s legacy alias normalizing to xai/grok-4-1-fast.

If this fixed it, please right-click the solution message → Apps → ✅ Mark Solution so Answer Overflow can index it for the next person.

full coyote
#

This soloution worked :

openclaw models set xai/grok-4-1-fast
openclaw gateway restart

fluid fossilBOT
#

Perfect, thanks for posting the exact fix.

For anyone landing here later, the working fix was:

openclaw models set xai/grok-4-1-fast
openclaw gateway restart

The root cause was the model allowlist, plus grok-4-1-fast-reasoning being a legacy alias.

full coyote
#

it reverted back to Grok4 after restart of chat

fluid fossilBOT
#

Ah, that sounds like the session kept its own model override.

openclaw models set ... changes the default, but existing chats/sessions can still remember grok-4.

Quick check in that same chat/thread:

/model status
/model xai/grok-4-1-fast

If that fixes it, then the issue is just the persisted session override.

If you want the thread to go back to following the global default, clear the session override in the Sessions UI by setting the model back to inherit (or start a truly new session/thread).

If it still snaps back after that, paste these 3 outputs and I’ll narrow it down fast:

#
openclaw models status
openclaw config get agents.defaults.model.primary
openclaw gateway status
full coyote
#

/model xai/grok-4-1-fast
bash: /model: No such file or directory
bash: /model: No such file or directory
ubuntu@661cee3d61a8:~$

#

it changed back to 4.1 fast again , how do iget it to stick

fluid fossilBOT
#

The sticky version is:

  1. Set the global default:
openclaw models set xai/grok-4-1-fast
openclaw gateway restart
  1. Then fix the current chat/thread too:
/model xai/grok-4-1-fast

Why both: OpenClaw has two layers here.

  • openclaw models set ... = default for new/fresh sessions
  • /model ... = model override for the current session/thread
#

If you want the thread to stop fighting the global default, clear its saved override in the Sessions UI by setting model back to inherit. After that, it should follow the global xai/grok-4-1-fast.

Also, always use the canonical ref:

xai/grok-4-1-fast

not grok-4-1-fast-reasoning, since that’s just a legacy alias.

full coyote
#

tart with: systemctl --user start openclaw-gateway.service
Start with: systemd user services are unavailable; install/enable systemd or run the gateway under your supervisor.
Start with: If you're in a container, run the gateway in the foreground instead of openclaw gateway.
ubuntu@661cee3d61a8:~$ /model xai/grok-4-1-fast
bash: /model: No such file or directory
ubuntu@661cee3d61a8:~$

fluid fossilBOT
#

Yep, that part got crossed up.

/model ... is a chat command, not a bash command, so don’t run it in the VPS shell.

Use them in different places:

  • In the VPS shell
    openclaw models set xai/grok-4-1-fast
    
  • In this Discord thread / OpenClaw chat
    /model xai/grok-4-1-fast
    

And since you’re in a container with no systemd --user, don’t rely on:

#
systemctl --user ...

Restart the gateway however that container normally runs it, for example your container supervisor / foreground process restart.

So the correct flow is:

  1. Shell:
    openclaw models set xai/grok-4-1-fast
    
  2. Restart the running gateway process/container
  3. In this chat thread, run:
    /model xai/grok-4-1-fast
    
#

If you want, paste how you’re starting OpenClaw inside the container, and I’ll tell you the exact restart command.

full coyote
#

/model xai/grok-4-1-fast

#

/model xai/grok-4-1-fast

#

is it good now will it stay now

fluid fossilBOT
#

Yes, if you did both parts, it should stick now.

  • openclaw models set xai/grok-4-1-fast = makes 4.1 fast the default
  • /model xai/grok-4-1-fast in the chat = makes this thread/session use it too

So:

  • new sessions should stay on 4.1 fast
  • this thread should also stay on 4.1 fast

Quick sanity check:

openclaw models status

and in chat:

#
/model status

If both show xai/grok-4-1-fast, you’re good. It should only flip again if something else rewrites the config or the session model gets changed manually.

full coyote
#

/model status

#

terminal and dashboard show fast, what do you show in this chat

fluid fossilBOT
#

If terminal and dashboard both show 4.1 fast, that’s a good sign, but the authoritative check for this thread is:

/model status

Run that in this chat, not in bash.

That will tell you whether this specific thread/session is also on xai/grok-4-1-fast or if it still has its own override hanging around. If it prints fast here too, you’re solid.

full coyote
#

/model status

#

i just ran the commnd where am i suppose to verify

fluid fossilBOT
#

Two places, depending on which command you ran:

  • If you ran openclaw models status
    → verify in the terminal output

  • If you ran /model status
    → verify in this Discord thread (or the slash-command reply Discord shows you)

What you want to see is:

xai/grok-4-1-fast

So the easiest check is:

  1. Terminal: openclaw models status
#
  1. This thread: /model status

If both show xai/grok-4-1-fast, then it’s sticking both globally and for this chat.

full coyote
#

this thread will show the result where ?

fluid fossilBOT
#

Right here in this same Discord thread.

After you run:

/model status

Discord should show the result either:

  • as a reply in this thread, or
  • as the small slash-command result popup/card Discord shows right after the command

So look in this thread, directly under where you ran the command. If nothing shows up, tell me, and we’ll use the dashboard or terminal check instead.

full coyote
#

nothing

fluid fossilBOT
#

Got it. Then skip the chat check, /model status is probably just not surfacing cleanly in this thread.

Use these instead:

  1. Terminal

    openclaw models status
    

    You want to see xai/grok-4-1-fast

  2. Dashboard
    Open this session/thread and check the chat header model picker. It should also show xai/grok-4-1-fast.

If both of those say fast, I’d treat it as good. The Discord slash reply is the flaky part here, not the model setting itself.

full coyote
#

ok