Skip to content

Runtime OpenClaw

weiyong1024 edited this page Apr 27, 2026 · 1 revision

OpenClaw

The flagship runtime in ClawFleet. A channel-native AI agent that lives inside group chats with a persistent persona, an installable skill catalog, and roster-aware coordination with other bots.

Upstream: github.com/openclaw/openclaw · npm: openclaw


What is OpenClaw

OpenClaw is a local-first AI assistant gateway. Instead of giving you another chat app, it makes a single agent addressable from the messaging platforms you already use — Telegram, Discord, Slack, Lark, WhatsApp, Signal, Matrix, WeChat, and 20+ more. The bot lives inside your group chats as a participant: it gets @-mentioned, responds to threads, coordinates with other bots through a shared roster, and holds a stable persona via a hot-reloaded SOUL.md file.

Where pure SaaS agents (e.g. ChatGPT) sit in their own UI and where headless agent libraries leave you wiring everything yourself, OpenClaw provides the missing middle layer: a runnable gateway that fronts all your platforms with one normalized interface, plus a workspace model where skills, sessions, and memories live as plain files you can inspect, edit, and version. Run it on your machine; data stays yours.

ClawFleet wraps OpenClaw in a sandboxed Docker container with an XFCE desktop, network isolation, and a unified Dashboard, so you can run multiple OpenClaw instances side-by-side as a fleet.


Architecture

OpenClaw inside a ClawFleet container:

┌── Container (one per ClawFleet instance) ─────────────────────────┐
│                                                                   │
│   XFCE desktop ──── noVNC server ──── exposed on host port 690N   │
│                                                                   │
│   OpenClaw Gateway ──── REST + WebSocket on container :18790      │
│       │                              │── exposed on host 1878N    │
│       │                                                           │
│       ├── Sessions  (main + sandboxed side sessions)              │
│       ├── Channel plugins  (24+ messaging platforms)              │
│       ├── Skills  (52 bundled + ClawHub-installed)                │
│       ├── Tools  (browser, canvas, cron, sessions, ...)           │
│       ├── Auth profiles  (per-provider, with rotation)            │
│       └── Workspace                                               │
│             ├── SOUL.md  (persona, hot-reloaded)                  │
│             ├── AGENTS.md, TOOLS.md, IDENTITY.md                  │
│             ├── skills/<slug>/SKILL.md                            │
│             ├── sessions/                                         │
│             └── memories/                                         │
│                                                                   │
└───────────────────────────────────────────────────────────────────┘

Key pieces:

  • Gateway — the single long-running process. All channel events, tool calls, and LLM completions route through it. Listens locally on :18790 (mapped to host 1878N).
  • Sessionsmain is the always-on session that holds the agent's loaded persona; side sessions can be spun up sandboxed (Docker / SSH backend) for untrusted work without touching main.
  • Channel plugins — one per platform. They normalize platform events (Discord interactions, Telegram updates, Slack socket events, ...) into a single OpenClaw event stream.
  • Skills — Markdown-defined capabilities at workspace/skills/<slug>/SKILL.md. Bundled skills ship with the image (52); community skills install from ClawHub (~13,000+).
  • SOUL.md — the persona file. The Gateway watches it and hot-reloads without restart, so you can iterate on the bot's voice live.
  • Auth profilesauth-profiles.json holds per-provider credentials with rotation and lastGood tracking, so a transient provider failure can fail over.

When to pick OpenClaw

OpenClaw is the right choice when you want:

  • A bot that lives as a participant inside a group chat. Pairing codes, @-mentions, thread replies, roster-aware addressing of other bots. Not a DM-only assistant you have to call.
  • A fleet of distinct personas that collaborate. Engineer + PM + Marketer in one Discord, all autonomous, all aware of each other through Roster injection into SOUL.md. ClawFleet's Dashboard makes this concrete: spin up N instances, give each a different Character, watch them work together.
  • Installable skills from a curated community catalog. ClawHub has ~13,000 skills today. Search, click install, and the skill is live without restart.
  • A visible, debuggable agent. The XFCE desktop (via noVNC) lets you literally watch the agent's browser session, terminal, and Canvas as it works.
  • Per-instance OAuth login with your ChatGPT subscription. OpenClaw's Codex provider lets you authenticate with ChatGPT Plus/Pro instead of paying API rates. ClawFleet handles the OAuth flow.

ClawFleet integration today

Capability Status Notes
Configure (Model + Character + Channel) One-click in the Dashboard
Skill Manager 52 bundled + 13,000+ ClawHub installs from the Skills button
Save Soul / Soul Archive Snapshot persona + memory + config, clone into new instances
Browser Desktop (noVNC) Per-instance, opened with the Desktop button
Codex sign-in (ChatGPT subscription) OpenClaw-exclusive auth path
24+ messaging channels All upstream channels available via Configure
Restart Bot Reload OpenClaw without restarting the container

Setup walkthrough

1. Create an OpenClaw instance

  1. In the Dashboard, click + Create Instances
  2. Set Runtime to OpenClaw (the default)
  3. Optionally select a saved Soul to clone from
  4. Click Create

The instance appears under the 🦞 OpenClaw group header on the Fleet page. Status starts at running once the container is healthy (about 10–20 seconds).

2. Configure model + character + channel

  1. Click Configure on the new instance card
  2. Model Config — select an LLM. ChatGPT (Codex) is recommended; otherwise pick any API-key model from your asset pool
  3. Character Config (optional) — pick a persona. Without one, the bot uses OpenClaw's default voice
  4. Channel Config (optional) — pick one messaging platform. The same Channel Config can only be assigned to one instance at a time
  5. Click Configure

Behind the scenes, ClawFleet runs OpenClaw's onboard flow with your model, renders the Character into SOUL.md, enables the channel plugin, adds the bot account, sets DM/group policies to "open" with allowFrom: ["*"], and starts the Gateway. No manual policy tuning needed.

3. First interaction

Send a message in your configured channel (e.g. mention the bot in your Discord server). It should respond within a few seconds, in the voice of the Character you assigned.

If you also want to watch the agent work — for skills that browse, draft on the Canvas, or run cron jobs — click the Desktop button on the instance card and you'll see the live XFCE desktop.


Common gotchas

  • Codex login popup blocked. The browser may block clawfleet.io's OAuth popup. Allow popups for clawfleet.io and re-click "Login with ChatGPT".
  • Chromium loads → memory bump. Skills that drive a browser load Chromium inside the container. Memory roughly when active. Plan ahead if running many instances.
  • DM/group policies. ClawFleet sets these to "open" automatically. You should not manually edit openclaw config policies after Configure — the next Configure run will overwrite them.
  • SOUL.md hot-reload window. Reloads happen within a few seconds, not instantly. After clicking Configure, expect a short delay before the first response uses the new persona.
  • Channel exclusivity. A Channel Config (one bot token) can only be assigned to one instance at a time. To run multiple OpenClaw instances on the same platform, register multiple bots and create one Channel Config per bot.

Related guides

Clone this wiki locally