Browse docs
Docs
OpenClaw
OpenClaw ๐ฆ
โEXFOLIATE! EXFOLIATE!โ โ A space lobster, probably


Any OS + WhatsApp/Telegram/Discord/iMessage gateway for AI agents (Pi).
Plugins add Mattermost and more.
Send a message, get an agent response โ from your pocket.
GitHub ยท Releases ยท Docs ยท OpenClaw assistant setup
Start here
- New install from zero: Getting Started
- Guided setup (recommended): Wizard (
openclaw onboard) - Open the dashboard (local Gateway): http://127.0.0.1:18789/ (or http://localhost:18789/)
Dashboard (browser Control UI)

How it works
text
WhatsApp / Telegram / Discord / iMessage (+ plugins)
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Gateway โ ws://127.0.0.1:18789 (loopback-only)
โ (single source) โ
โ โ http://<gateway-host>:18793
โ โ /__openclaw__/canvas/ (Canvas host)
โโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโ
โ
โโ Pi agent (RPC)
โโ CLI (openclaw โฆ)
โโ Chat UI (SwiftUI)
โโ macOS app (OpenClaw.app)
โโ iOS node via Gateway WS + pairing
โโ Android node via Gateway WS + pairingNetwork model
- One Gateway per host (recommended): it is the only process allowed to own the WhatsApp Web session. If you need a rescue bot or strict isolation, run multiple gateways with isolated profiles and ports; see Multiple gateways.
- Loopback-first: Gateway WS defaults to
ws://127.0.0.1:18789.- The wizard now generates a gateway token by default (even for loopback).
- For Tailnet access, run
openclaw gateway --bind tailnet --token ...(token is required for non-loopback binds).
- The wizard now generates a gateway token by default (even for loopback).
- For Tailnet access, run
openclaw gateway --bind tailnet --token ...(token is required for non-loopback binds). - Nodes: connect to the Gateway WebSocket (LAN/tailnet/SSH as needed); legacy TCP bridge is deprecated/removed.
- Canvas host: HTTP file server on
canvasHost.port(default18793), serving/__openclaw__/canvas/for node WebViews; see Gateway configuration (canvasHost). - Remote use: SSH tunnel or tailnet/VPN; see Remote access and Discovery.
- The wizard now generates a gateway token by default (even for loopback).
- For Tailnet access, run
openclaw gateway --bind tailnet --token ...(token is required for non-loopback binds).
Features (high level)
- ๐ฑ WhatsApp Integration โ Uses Baileys for WhatsApp Web protocol
- โ๏ธ Telegram Bot โ DMs + groups via grammY
- ๐ฎ Discord Bot โ DMs + guild channels via channels.discord.js
- ๐งฉ Mattermost Bot (plugin) โ Bot token + WebSocket events
- ๐ฌ iMessage โ Local imsg CLI integration (macOS)
- ๐ค Agent bridge โ Pi (RPC mode) with tool streaming
- โฑ๏ธ Streaming + chunking โ Block streaming + Telegram draft streaming details (/concepts/streaming)
- ๐ง Multi-agent routing โ Route provider accounts/peers to isolated agents (workspace + per-agent sessions)
- ๐ Subscription auth โ Anthropic (Claude Pro/Max) + OpenAI (ChatGPT/Codex) via OAuth
- ๐ฌ Sessions โ Direct chats collapse into shared
main(default); groups are isolated - ๐ฅ Group Chat Support โ Mention-based by default; owner can toggle
/activation always|mention - ๐ Media Support โ Send and receive images, audio, documents
- ๐ค Voice notes โ Optional transcription hook
- ๐ฅ๏ธ WebChat + macOS app โ Local UI + menu bar companion for ops and voice wake
- ๐ฑ iOS node โ Pairs as a node and exposes a Canvas surface
- ๐ฑ Android node โ Pairs as a node and exposes Canvas + Chat + Camera
Quick start
text
# Recommended: global install (npm/pnpm)
npm install -g openclaw@latest
# or: pnpm add -g openclaw@latest
# Onboard + install the service (launchd/systemd user service)
openclaw onboard --install-daemon
# Pair WhatsApp Web (shows QR)
openclaw channels login
# Gateway runs via the service after onboarding; manual run is still possible:
openclaw gateway --port 18789text
git clone https://github.com/openclaw/openclaw.git
cd openclaw
pnpm install
pnpm ui:build # auto-installs UI deps on first run
pnpm build
openclaw onboard --install-daemontext
OPENCLAW_CONFIG_PATH=~/.openclaw/a.json \
OPENCLAW_STATE_DIR=~/.openclaw-a \
openclaw gateway --port 19001text
openclaw message send --target +15555550123 --message "Hello from OpenClaw"Configuration (optional)
- If you do nothing, OpenClaw uses the bundled Pi binary in RPC mode with per-sender sessions.
- If you want to lock it down, start with
channels.whatsapp.allowFromand (for groups) mention rules.
text
{
channels: {
whatsapp: {
allowFrom: ["+15555550123"],
groups: { "*": { requireMention: true } },
},
},
messages: { groupChat: { mentionPatterns: ["@openclaw"] } },
}Docs
- Start here:
- Docs hubs (all pages linked)
- Help โ common fixes + troubleshooting
- Configuration
- Configuration examples
- Slash commands
- Multi-agent routing
- Updating / rollback
- Pairing (DM + nodes)
- Nix mode
- OpenClaw assistant setup
- Skills
- Skills config
- Workspace templates
- RPC adapters
- Gateway runbook
- Nodes (iOS/Android)
- Web surfaces (Control UI)
- Discovery + transports
- Remote access
- Docs hubs (all pages linked)
- Help โ common fixes + troubleshooting
- Configuration
- Configuration examples
- Slash commands
- Multi-agent routing
- Updating / rollback
- Pairing (DM + nodes)
- Nix mode
- OpenClaw assistant setup
- Skills
- Skills config
- Workspace templates
- RPC adapters
- Gateway runbook
- Nodes (iOS/Android)
- Web surfaces (Control UI)
- Discovery + transports
- Remote access
- Providers and UX:
- WebChat
- Control UI (browser)
- Telegram
- Discord
- Mattermost (plugin)
- iMessage
- Groups
- WhatsApp group messages
- Media: images
- Media: audio
- Companion apps:
- macOS app
- iOS app
- Android app
- Windows (WSL2)
- Linux app
- Ops and safety:
- Sessions
- Cron jobs
- Webhooks
- Gmail hooks (Pub/Sub)
- Security
- Troubleshooting
- Docs hubs (all pages linked)
- Help โ common fixes + troubleshooting
- Configuration
- Configuration examples
- Slash commands
- Multi-agent routing
- Updating / rollback
- Pairing (DM + nodes)
- Nix mode
- OpenClaw assistant setup
- Skills
- Skills config
- Workspace templates
- RPC adapters
- Gateway runbook
- Nodes (iOS/Android)
- Web surfaces (Control UI)
- Discovery + transports
- Remote access
- WebChat
- Control UI (browser)
- Telegram
- Discord
- Mattermost (plugin)
- iMessage
- Groups
- WhatsApp group messages
- Media: images
- Media: audio
The name
Credits
- Peter Steinberger (@steipete) โ Creator, lobster whisperer
- Mario Zechner (@badlogicc) โ Pi creator, security pen-tester
- Clawd โ The space lobster who demanded a better name
Core Contributors
- Maxim Vovshin (@Hyaxia, 36747317+Hyaxia@users.noreply.github.com) โ Blogwatcher skill
- Nacho Iacovino (@nachoiacovino, nacho.iacovino@gmail.com) โ Location parsing (Telegram + WhatsApp)