← All tutorials

Troubleshooting OpenClaw — fix the install, the Gateway and the channels

A field guide to the most common OpenClaw problems: doctor diagnostics, Gateway crashes, channel disconnects, model errors and update rollbacks.

Every release of OpenClaw is tested by the maintainers, but the real world is messy: corporate proxies, locked-down system keychains, half-installed macOS profiles. This guide collects the failure modes we see most often, with the exact commands that fix them.

Run the doctor first

openclaw doctor

doctor walks through every check the Gateway performs when starting up:

  • Node.js version (24.16+ or 26.1+)
  • Disk space and file permissions
  • Model provider authentication
  • Channel reachability (Telegram, Discord, Slack, WhatsApp, iMessage)
  • Memory database integrity
  • Update channel availability

A healthy install prints a green ✓ next to every check. A red ✗ prints the failing component and the suggested fix.

✓ Node.js 26.1.0
✓ Disk space (12.4 GB free)
✓ Model provider: anthropic (authenticated)
✗ Telegram channel: HTTP 401 from api.telegram.org
   → Token rejected. Run `openclaw channels rotate telegram`.
✓ Memory database (842 facts)
✓ Update channel: stable

Read live logs

openclaw logs --follow

Adds --channel telegram, --skill weather or --level warn to narrow the stream:

openclaw logs --channel telegram --level error --follow

Logs are JSON-structured and are written to ~/.openclaw/logs/gateway.log with a 14-day rotation by default.

Gateway will not start

Most Gateway startup failures fall into one of three buckets.

Port 18789 is already in use

Error: listen EADDRINUSE :::18789

Either another OpenClaw instance is already running (check openclaw status), or another process has grabbed the port. Find the offender:

lsof -i :18789

On Linux you can also just bind a different port:

openclaw serve --port 28889

Permission denied on the home folder

Error: EACCES: permission denied, open '/Users/me/.openclaw/gateway.pid'

Either fix the ownership:

sudo chown -R "$USER" ~/.openclaw

…or run with a different OPENCLAW_HOME:

OPENCLAW_HOME=~/work/.openclaw openclaw serve

Stale lock file

Error: gateway.pid exists but process 41823 is not running
rm ~/.openclaw/gateway.pid
openclaw serve

Model provider returns 401 or 429

A 401 means the API key is wrong or expired. Rotate it:

openclaw config set providers.anthropic.apiKey ""
openclaw gateway reload

A 429 means rate limiting. doctor will surface the retry-after header:

✗ Provider anthropic: 429 Too Many Requests (retry-after: 17s)
   → Lower your `requestsPerMinute` setting or upgrade your tier.

Tune the per-provider budget:

openclaw config set providers.anthropic.requestsPerMinute 30

A channel keeps disconnecting

openclaw doctor --channel whatsapp --verbose

Verbose mode prints the last ten reconnect attempts with timestamps and the underlying error.

For WhatsApp specifically, the linked-device session expires every ~14 days. You can pin a session with:

openclaw channels set whatsapp --keep-alive true

For Discord, a missing privileged intent is the most common cause of silence:

✗ Discord: messages not received. Enable "Message Content Intent" in the
   developer portal under Bot → Privileged Gateway Intents.

For iMessage, the Full Disk Access prompt sometimes resets after a macOS update. Re-add OpenClaw in System Settings → Privacy & Security → Full Disk Access.

An update broke something

OpenClaw keeps the previous release on disk for 30 days, so rolling back is a one-liner:

openclaw update --rollback

If you cannot even boot the Gateway after an update, run the rollback from the CLI-only installer:

curl -fsSL https://openclaw.ai/install-cli.sh | bash -s -- --channel stable

To find out what changed between the version you were on and the current one:

openclaw update --notes

Resetting everything (last resort)

When you have tried everything and the install is wedged, a full reset is the cleanest path. This will delete all memory and uninstall all skills.

openclaw uninstall --purge
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard

You can restore a backup afterwards:

tar xzf openclaw-memory-2026-09-21.tgz -C ~

Asking for help

Before writing in, please run and capture:

openclaw doctor > doctor.txt 2>&1
openclaw --version > version.txt
openclaw logs --since 24h > logs.txt

Attach all three files to a contact form ticket along with the page URL of the guide you were following. The output above tells us most of what we need to reproduce the issue.

Next steps

OpenClaw Guide Editorial
Independently maintained walkthroughs and ecosystem notes for OpenClaw.

Found an issue or have a correction? Get in touch.