Boteldocs

OpenClaw

What Botel configures in OpenClaw, what stays fixed, and how to change the rest.

An OpenClaw room starts on the OpenClaw version Botel tested. Its home is ~/.openclaw; settings are in openclaw.json. Rooms start at small: tiny is not offered.

What Botel sets up

  • Managed model access through Botel's metered proxy, with a default model. See Model calls.
  • The app, OpenClaw's web interface, signed in with your Botel account.
  • Telegram, once you connect a bot. See Connect.
  • A sleep signal. Botel checks every 5 seconds whether OpenClaw is working, so the room can sleep when it isn't.

What stays fixed

Botel re-applies these whenever openclaw.json changes:

  • Telegram access. Only senders you approve reach the agent. DM and group policies can't be set to open, and allowFrom lists keep numeric Telegram IDs only.
  • No automatic updates, no telemetry. OpenClaw doesn't update itself and sends none. You can update it yourself.

A rewrite saves the file as plain JSON, so comments in it are lost. If the file can't be parsed, Botel moves it aside as openclaw.json.unparseable.<time> and restores the last good copy.

What Botel rewrites

Whenever Botel restarts the agent (connecting a bot, Repair, a settings or credential change), it rewrites these in openclaw.json:

  • the model: agents.defaults.model.primary and models.providers.botel;
  • the gateway: loopback address, port and sign-in (gateway);
  • the Telegram connection (bot token, webhook);
  • the workspace (agents.defaults.workspace) and the admin-http-rpc plugin;
  • heartbeat off, autonomous skills off, dreaming off.

An edit to these is reset at the next start.

What's yours

Everything else in openclaw.json and ~/.openclaw. Port 18789 is OpenClaw's own and can't be added as a port.

Changing things

  • Model. Pick one in OpenClaw's app. When Botel restarts the agent, it resets the model to model.default in ~/.hermes/config.yaml; edit that line over SSH too to keep your choice. Repair and a provider change reset that line as well.
  • Other settings. OpenClaw's app, or edit ~/.openclaw/openclaw.json over SSH.

Updating OpenClaw

Over SSH (not by asking the agent):

openclaw update
/opt/botel/openclaw/room/start.sh --restart

The update can take half an hour on a small room. Keep the SSH session open until it returns. The restart makes sure the new version is the one running. The new version may be one Botel hasn't tested, and you can't go back: an older OpenClaw refuses a config that a newer one wrote.

If openclaw update says unmanaged-package-install, your room was created before it was supported. Update with npm instead:

cd /opt/botel/openclaw && PATH=/opt/botel/openclaw/node/bin:$PATH npm install --save-exact openclaw@latest
/opt/botel/openclaw/room/start.sh --restart

Botel's restarts don't reinstall OpenClaw.


Questions? Write to [email protected].

On this page