Integration · OpenClaw

Deploy OpenClaw with Crazyrouter as the backend

One installer sets up the agent, the service and a ready-to-run model list. Switch the primary model in one JSON field; every model in the Crazyrouter catalogue is available to the agent.

One-command setup

OpenClaw is a self-hosted agent with a web control UI and chat integrations. The installer below is maintained in the crazyrouter-openclaw repo and tested on Ubuntu and macOS.

macOS / Linux
curl -fsSL https://raw.githubusercontent.com/xujfcn/crazyrouter-openclaw/main/install.sh | bash
What the script does
  • Installs OpenClaw on Linux or macOS and registers it as a system service
  • Writes ~/.openclaw/openclaw.json with Crazyrouter as the provider and a preloaded model set
  • Optionally wires a Telegram bot during install
  • Prints an auto-login URL for the control UI when done

Scripts are fetched from the public GitHub repo linked below. Read them before piping to a shell if that's your policy; the download-then-run form is in the README.

Manual configuration

~/.openclaw/openclaw.json — default model

json
{
  "agents": {
    "defaults": {
      "model": { "primary": "crazyrouter/claude-opus-4-8" }
    }
  }
}

Already installed? Switch the provider without reinstalling: curl -fsSL https://raw.githubusercontent.com/xujfcn/crazyrouter-skills/main/scripts/switch_openclaw_to_crazyrouter.sh | bash -s -- --restart

Base URL rule

https://api.crazyrouter.com/v1 — This tool is OpenAI-compatible and appends /chat/completions (or /responses) itself. Use the /v1 base URL exactly as shown.

Recommended models

Live Crazyrouter prices, refreshed hourly. Any model in the catalogue works; these are the ones we'd start with.

FAQ

Where is the config?

~/.openclaw/openclaw.json. agents.defaults.model.primary is the day-to-day model; the provider block already points at Crazyrouter.

Does it need Docker?

No. The installer registers a systemd (Linux) or launchd (macOS) service; a Dockerfile is in the repo if you prefer containers.

How do I add a model?

Any Crazyrouter model name prefixed with crazyrouter/ works in the model field, e.g. crazyrouter/gpt-5.5.

I already run OpenClaw with another provider

Run the switch script from crazyrouter-skills; it rewrites only the provider section and restarts the service.