Skip to main content

OpenClaw

OpenClaw is a personal AI agent. It reads an OpenAI-compatible provider from its config, so — like Hermes — it's a first-class connect target: the proxy writes the config for you.

Before you start​

The proxy must be running (zs-proxy proxy start) and funded — see How-to guides.

The quick way: zs-proxy connect openclaw​

zs-proxy connect openclaw # configure OpenClaw to use the proxy
zs-proxy connect openclaw --model qwen3-coder # ...and set it as the primary model
zs-proxy connect openclaw --print # preview the merged config, write nothing

This merges a zerosignal provider into your existing ~/.openclaw/openclaw.json (backing the original up to openclaw.json.bak) and seeds it with the live model catalog so the network's models show up in OpenClaw's picker. Your other OpenClaw settings are preserved, and models.mode: "merge" keeps OpenClaw's built-in providers alongside it.

What it writes (JSON5 — comments and trailing commas allowed):

{
models: {
mode: "merge",
providers: {
zerosignal: {
baseUrl: "http://127.0.0.1:9376/v1", // your live proxy endpoint
apiKey: "zerosignal-local", // placeholder — the proxy ignores it
api: "openai-completions",
models: [ /* the live catalog; each priced model carries a cost block */ ],
},
},
},
agents: { defaults: { model: { primary: "zerosignal/qwen3-coder" } } }, // only with --model
}

Each priced model's cost is an estimate — see Seeded model prices and Pricing.

If OpenClaw's config lives somewhere non-standard, point connect at it with OPENCLAW_CONFIG_PATH=/path/to/openclaw.json (or --config-path).

Select the model and run​

Pick a zerosignal/… model in OpenClaw, or set it from the CLI:

openclaw models set zerosignal/qwen3-coder

Then start OpenClaw and send a message; a reply confirms the setup works.

Troubleshooting​

SymptomFix
connect says OpenClaw wasn't detectedName it explicitly — zs-proxy connect openclaw configures the named tool even without detection, writing ~/.openclaw/openclaw.json.
OpenClaw isn't using the proxySelect a zerosignal/<model> model (or openclaw models set zerosignal/<model>), and confirm the zerosignal provider exists under models.providers in the config.
Connection refusedThe proxy isn't running or the base URL is wrong. Check curl http://localhost:9376/healthz and start it with zs-proxy proxy start.
Running OpenClaw in a container? Nothing connectsSee the Docker note — use host.docker.internal and bind the proxy off loopback.
wallet_unfunded / payment errorsAdd funds in the chat app, or with zs-proxy fund for a proxy-only wallet — see Wallet & funding.

What's next​