#I broke my Openclaw when I was trying to fix a dashboard

1 messages · Page 1 of 1 (latest)

bleak pendant
#

I asked it to fix the dashboard after I fixed it and it started, disconnected from everything and now it says
Invalid config:

  • gateway.auth.mode: Invalid input (allowed: "none", "token", "password", "trusted-proxy")
fossil ingotBOT
#

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

bleak pendant
#

If you guys can help that would be great

chrome sapphireBOT
#

Yep — that error means gateway.auth.mode got set to an invalid value (or wrong type).
It must be exactly one of:

  • "none"
  • "token"
  • "password"
  • "trusted-proxy"

Quick recovery (safe default = token auth):

pnpm openclaw --version
pnpm openclaw config set gateway.auth.mode token
pnpm openclaw doctor --generate-gateway-token
pnpm openclaw gateway restart
pnpm openclaw gateway status
#

If you prefer password auth instead:

pnpm openclaw config set gateway.auth.mode password
# then set OPENCLAW_GATEWAY_PASSWORD in your env/service config
pnpm openclaw gateway restart

If you want, paste your gateway.auth block (redact token/password) and I’ll sanity-check it line-by-line.

Docs:

#

Yep, we can fix it 👍

This is usually one bad value like trusted_proxy (underscore) or off in gateway.auth.mode.

Run this exactly:

pnpm openclaw --version
pnpm openclaw config set gateway.auth.mode token
pnpm openclaw doctor --generate-gateway-token
pnpm openclaw gateway restart
pnpm openclaw gateway status

If restart still fails, send these outputs:

bleak pendant
#

I am not using pnpm,

chrome sapphireBOT
#

Perfect — then just use the same commands without pnpm:

openclaw --version
openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token
openclaw gateway restart
openclaw gateway status

If config set fails, edit ~/.openclaw/openclaw.json manually and make sure this is valid:

{
gateway: {
auth: {
#
mode: "token"
}
}
}

Then restart gateway.

If you paste your gateway.auth block (redact secrets), I can spot the exact broken value fast.

bleak pendant
chrome sapphireBOT
#

100% fair — my bad, let’s do this with zero secrets shared.

Please copy/paste these exactly and send me only the output:

openclaw --version
openclaw config get gateway.auth.mode

Then run this fix (no need to paste token values):

openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token
openclaw gateway restart
openclaw gateway status
#

If it still errors after that, send only this output (still safe):

openclaw gateway status

I do not need your token/password at all.

bleak pendant
# chrome sapphire 100% fair — my bad, let’s do this with **zero secrets shared**. Please copy/pas...

openclaw --version

OpenClaw 2026.3.28 (f9b1079)

openclaw config get gateway.auth.mode

Invalid config at /Users/pl/.openclaw/openclaw.json:\n- gateway.auth.mode: Invalid input (allowed: "none", "token", "password", "trusted-proxy")

🦞 OpenClaw 2026.3.28 (f9b1079) — Running on your hardware, reading your logs, judging nothing (mostly).

Config invalid
File: ~/.openclaw/openclaw.json
Problem:

  • gateway.auth.mode: Invalid input (allowed: "none", "token", "password", "trusted-proxy")

Run: openclaw doctor --fix

#

And

#

openclaw gateway status

Invalid config at /Users/pl/.openclaw/openclaw.json:\n- gateway.auth.mode: Invalid input (allowed: "none", "token", "password", "trusted-proxy")

🦞 OpenClaw 2026.3.28 (f9b1079) — Give me a workspace and I'll give you fewer tabs, fewer toggles, and more oxygen.

Config invalid
File: ~/.openclaw/openclaw.json
Problem:

  • gateway.auth.mode: Invalid input (allowed: "none", "token", "password", "trusted-proxy")

Run: openclaw doctor --fix
Gateway status failed: Error: Invalid config at /Users/pl/.openclaw/openclaw.json:

  • gateway.auth.mode: Invalid input (allowed: "none", "token", "password", "trusted-proxy")
chrome sapphireBOT
#

Awesome, that output helps a lot.

You’re on a good version — the issue is just that the config is invalid enough that normal config get/set won’t run yet.

Step 1 (easy): let OpenClaw repair it

openclaw doctor --fix

Step 2 (if doctor doesn’t fix it): manual one-line fix

Open this file:

/Users/pl/.openclaw/openclaw.json

Find the gateway auth mode entry and set it to exactly:

#
mode: "token"

(Valid values are only: "none", "token", "password", "trusted-proxy".)

Then run:

openclaw gateway restart
openclaw gateway status

If you want me to verify without secrets, paste only the line containing mode: from the gateway.auth section.

bleak pendant
chrome sapphireBOT
#

Looks like your message got cut off 😅

Can you paste one of these:

  1. Output of:
openclaw doctor --fix

or

  1. Just the mode: line from gateway.auth in /Users/pl/.openclaw/openclaw.json.

No secrets needed.

bleak pendant
#

Ok I think me changing it worked but the drop down app I tried to fix doesn’t work

#

There is something that says error pairing required for what I want

#

And when I ask Openclaw to fix it it bricks it and all of this happens

#

@chrome sapphire

chrome sapphireBOT
#

Got it — pairing required is a separate step after auth/config.

Copy this exactly:

openclaw devices list
openclaw devices approve --latest

Then refresh/reconnect the dashboard.

If it still says pairing required:

  1. keep dashboard tab open (so it creates a fresh pending request)
  2. run again:
#

Yeah — that’s super frustrating, and you’re not wrong.
When config gets even slightly invalid, “auto-fix” loops can make it worse fast.

Use this safe recovery pattern instead (commands only, no AI self-editing):

# 1) backup current config first
cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.bak.$(date +%Y%m%d-%H%M%S)

# 2) let built-in fixer handle schema issues
openclaw doctor --fix

# 3) restart gateway
openclaw gateway restart

# 4) if dashboard says pairing required
#
openclaw devices list
openclaw devices approve --latest

And for future: when asking OpenClaw for help, say:
“Give me commands only. Do not edit config files directly.”

That avoids these brick loops.