#Error 400
37 messages · Page 1 of 1 (latest)
That usually means the session is sending thinking off to a model that requires thinking on.
Most likely causes:
- you previously set
/think offin this thread, or - the agent/config has
thinkingDefault: "off"/ a model param disabling thinking.
Quick fix:
- In this thread, send:
/think low - Retry the prompt
If it keeps happening, check config for a disabled thinking default and change it to low (or remove the override so the model default applies).
Also, please paste:
openclaw --version- the exact model id you’re using
Docs:
If you want, I can help you find the exact config key next.
So what do I do? The system is unresponsive other than providing that error
Do this first:
-
Send exactly this in the thread:
/think low -
Then send your prompt again.
That error means OpenClaw is currently telling the model to use thinking off (budget 0), but that model refuses to run without thinking.
If /think low doesn’t fix it, try this next:
- start a new thread/session
- send
/think lowas the first message - then retry
If you want the permanent fix, set a non-off default in config and restart:
{
agents: {
defaults: {
thinkingDefault: "low",
},
},
}
Also check for any model params that explicitly disable thinking and remove those.
If it’s still stuck after that, paste:
openclaw --version- your model id
- whether you’re using chat, Control UI, or CLI
What does thinking low change? I don’t want the system to operate poorly I’m wondering if this is an error that hit when I changed LLM’s from Claude to Gemini
Yep, that very likely started when you switched from Claude to Gemini.
thinking low does not mean “bad quality mode”.
It means:
- off = no reasoning budget
- low = small reasoning budget
- medium/high = more reasoning, usually slower + more expensive
So the jump is really from broken to working, not from “good” to “bad”.
What probably happened:
- your session/config was effectively on thinking off
- Gemini got
budget 0 - that Gemini model only accepts thinking on
- so it hard-failed with that error
My recommendation:
- use
/think lowto get it unstuck - if you’re doing heavier tasks later, bump to
/think mediumor/think high
So yes, this smells like a Claude → Gemini behavior mismatch, not your whole system degrading.
If you want, I can help you pick a sane default:
- low for general use
- medium for more agentic work
- high only when you really want deeper reasoning
Now says: ⚠️ The AI service is temporarily overloaded. Please try again in a moment.
That’s actually a different, better error.
It means the thinking-budget problem is gone, and now you’re just hitting a temporary provider overload / rate-limit.
What to do:
- wait 30 to 60 seconds
- retry
- if it keeps happening, switch back to the Claude setup you had before, or try a less-busy Gemini option
So at this point:
- Budget 0 invalid = config/session mismatch
- AI service temporarily overloaded = provider-side traffic problem
If this keeps repeating, paste:
openclaw --version- the exact Gemini model you switched to
Then I can help narrow down whether it’s just provider load or a bad model/config combo.
OpenClaw 2026.4.12 (1c0672b)
Perfect, thanks, that version is recent enough that I wouldn’t treat this as “you’re on an ancient broken build.”
So my read now is:
- Version is probably fine
- this is more likely a Gemini + thinking-setting mismatch
- and the later “overloaded” message was just a provider-side transient
What I’d do next:
-
check the current session setting with:
/think -
if it says
off, set:
/think low -
if you want this to stop happening after model switches, set a default like:
{
agents: {
defaults: {
thinkingDefault: "low",
},
},
}
then restart the gateway.
Also, if you can, send the exact Gemini model id you switched to, because some Gemini models are much pickier about thinking being enabled.
So, short version:
- No, 2026.4.12 doesn’t look like the main problem
- Yes, switching from Claude to Gemini is still the most likely trigger
Right now, I have it set to think high
Ah, that’s useful.
If the session is really on think high, then this should not be happening. So I don’t think the chat-level thinking setting is the culprit anymore.
At that point I’d suspect one of these:
- stale session state from before the Claude → Gemini switch
- a per-model config override for the Gemini model, like:
params: { thinking: "off" } - a Gemini-side/OpenClaw bug on that model path
Best next test:
- start a fresh thread/session
- switch to the Gemini model again
- send
/think high - then try a simple prompt
If the fresh session still throws Budget 0 is invalid, then I’d want:
- the exact Gemini model id
- the relevant
agents.defaults.models[...]config block for that model (redact secrets)
Because if /think is already showing high, then something lower-level is still sending budget 0, and that starts looking bug-ish rather than user error.
Aistudio shows no rate limit issues
Plenty of money in the account
Maybe I need help switching to Claude so I can work again
Then try to switch to Gemini 3.1 pro
Yeah, I’d unblock yourself first.
Get back onto Claude now
In this thread, do:
/model list- pick the Claude entry that was working before, or if you have the alias:
/model opus
or
/model sonnet - keep thinking enabled, for example:
/think high
If the alias doesn’t exist in your config, /model list is the safest route.
Then try Gemini again, cleanly
I’d do that in a fresh thread/session, not this one.
- switch to Gemini 3.1 Pro
- likely
/model geminiif that alias exists - otherwise use
/model list
- likely
- immediately set:
/think high - then try a simple prompt
If fresh thread + Gemini + think high still throws Budget 0 is invalid, then I’d treat that as a likely bug/config issue, not user error.
Docs:
If you want, next paste the output of /model list and I’ll tell you the exact line to pick.
“Failed to set model”
Got it, that’s a separate problem from the Gemini thinking error.
Failed to set model usually means one of these:
- the alias you used doesn’t exist
- that model isn’t in your allowlist/config
- auth for that provider/model isn’t available
Try this instead:
/model list- choose the Claude model by number, not alias
- example:
/model 2
- example:
- if that still fails, run:
/model status
If the Claude model you want does not appear in /model list, then it isn’t currently configured/allowed.
If it does appear but still won’t switch, paste:
- what exact
/model ...command you ran - the output of
/model status
That should tell us whether this is an alias/config/auth issue.
it just says failed to set model: Gateway request error: model not allowed: Google/status
Ah, that helps.
Two things are happening:
-
Google/statusis being parsed like a model name, not thestatussubcommand.
So use exactly:
/model status -
More importantly,
/modelcan only switch to models that are in your allowed/configured model list.
So if Claude is not in /model list, you won’t be able to switch to it from chat until it’s added to config.
A sane config looks like this:
{
agents: {
defaults: {
model: { primary: "anthropic/claude-opus-4-6" },
models: {
"anthropic/claude-opus-4-6": { alias: "opus" },
"google/gemini-3.1-pro-preview": { alias: "gemini" },
},
},
},
}
Then restart the gateway:
openclaw gateway restart
After that, in chat:
/model opus/model gemini
So the immediate takeaway is:
- this is now mostly an allowlist/config problem
- not just a Gemini outage
If you paste your models block, I can tell you exactly what to add.
I entered model status and model list and I got the same bill for that model error
Yeah, at that point I’d stop fighting the in-chat /model commands for now.
If /model status and /model list are also tripping the same path, the fastest recovery is to set Claude in config directly and restart.
Use this route:
-
Open your config file:
~/.openclaw/openclaw.jsonIf you’re not sure that’s the active file, run:
openclaw health --verbose
(it prints the config path) -
Make sure your model block includes both Claude and Gemini, with Claude as primary for now:
{
agents: {
defaults: {
model: { primary: "anthropic/claude-opus-4-6" },
models: {
"anthropic/claude-opus-4-6": { alias: "opus" },
"google/gemini-3.1-pro-preview": { alias: "gemini" },
},
thinkingDefault: "high",
},
},
}
- Restart the gateway:
openclaw gateway restart
That should get you back onto Claude so you can work again.
Then later, once both models are in the allowlist, switching should be much cleaner.
If you want, paste your current agents.defaults block and I’ll rewrite it exactly.
I don’t see this: ~/.openclaw/openclaw.json