Troubleshooting
Start here when something is not working. Most issues are diagnosed in two commands:Failure signatures
Match the symptom to the likely cause before digging deeper:Gateway not starting
Port already in use
Port already in use
~/.openclaw/openclaw.json:systemctl --user restart openclaw-gateway (Linux) or openclaw gateway start (macOS/manual).Unknown config keys
Unknown config keys
The gateway refuses to start with unrecognised top-level keys:Review the diff before restarting.
Systemd service installed but not running
Systemd service installed but not running
openclaw gateway --port 18789.Channels broke after an upgrade (Node vs Bun)
Channels broke after an upgrade (Node vs Bun)
WhatsApp and Telegram require a stable system Node, not Bun. Version-managed Node paths (nvm, fnm, volta, asdf) can break a background service after upgrades because the service does not load your shell init.
Gateway restart preflight gate
openclaw gateway restart (and gateway start) runs checks before it touches the service. When a check blocks, no restart happens — the running gateway keeps its current config. The command exits non-zero with the reason.
What the preflight checks, in order:
When the config validity gate blocks, the output looks like:
With
--json, the preflight failures and health warnings are emitted as structured JSON (action: "restart", ok: false, warnings: [...]) instead of terminal text — useful for scripts and automation.openclaw command not found
Channel issues
WhatsApp: logged out or not receiving messages
WhatsApp: logged out or not receiving messages
WhatsApp: status codes 409-515 in logs
WhatsApp: status codes 409-515 in logs
A conflicting WhatsApp Web session is open. Close all other WhatsApp Web sessions, then relink. Status 515 auto-retries once after pairing — this is normal.
Telegram / Discord / Slack: bot not responding
Telegram / Discord / Slack: bot not responding
- Confirm the bot token is still valid (not revoked in the provider console)
openclaw channels status --channel telegram- Check the allowlist:
channels.telegram.allowFrommust include the sender openclaw channels logs --channel telegram --follow
Bot ignores me in a group
Bot ignores me in a group
groupPolicymust beopenorallowlistwith the group allowlisted- The bot usually requires an @mention — set
requireMention: falseon the group to disable - Telegram: disable Privacy Mode in BotFather so the bot sees group messages
- The sender must be in
groupAllowFrom(orallowFromas fallback)
No inbound messages from any channel
No inbound messages from any channel
openclaw gateway status— is it running?- Check
dmPolicy—"disabled"means no DM replies - Check
allowFrom openclaw security audit— open DM policies are flagged
AI provider issues
No credentials found / provider not responding
No credentials found / provider not responding
~/.openclaw/.env:Rate limit errors
Rate limit errors
Configure key rotation:The gateway retries with the next key on 429 responses.
'Model is not allowed'
'Model is not allowed'
If
agents.defaults.models is set, it is the allowlist for /model. Either add the model, clear the allowlist, or pick one from openclaw models list.Control panel / web UI
Control panel not loading
Control panel not loading
openclaw gateway status- Open
http://127.0.0.1:18789/directly — if that works but another URL doesn’t, check your remote access config openclaw dashboardopens the correct URL automatically
Tools blocked unexpectedly
If an agent says a tool is blocked, inspect the effective policy:Logs and diagnostics
Still stuck?
- Check GitHub Issues
- Ask in Discord