OpenClaw — Complete Feature Inventory
Every shipped feature, channel, provider, tool, and flag — for reverse-engineering a Pantheon-native equivalent.
Table of Contents — 15 sections
- 01CLI surface
- 02Chat-app channels
- 03LLM provider integrations
- 04Built-in tools / capabilities
- 05Skills system / ClawHub
- 06Memory / persistence
- 07Gateway features
- 08Security features
- 09Mobile / cross-device
- 10Routines / scheduling
- 11Developer / extensibility
- 12Voice / audio
- 13Vision / image / video
- 14Recent additions (last 90 days)
- 15Missing / not supported
01CLI surface [top]
The
openclaw binary exposes ~40+ top-level commands grouped by purpose. Global flags apply to every subcommand. Each row sourced from docs.openclaw.ai/cli.Global flags
| Flag | Purpose |
|---|---|
| --dev | Isolates state under ~/.openclaw-dev, shifts default ports |
| --profile <name> | Isolates state under ~/.openclaw-<name> |
| --container <name> | Targets a named sandbox container for execution |
| --no-color | Disables ANSI colors (respects NO_COLOR=1) |
| --json | Machine-readable output (most subcommands) |
| --update | Shorthand for openclaw update (source installs only) |
| -V, --version, -v | Print version information |
Setup & onboarding
| Command | What it does |
|---|---|
onboard | Interactive first-run wizard (channels + providers + auth) |
configure | Interactive setup wizard (post-onboard reconfigure) |
config get/set/unset | Non-interactive config helpers; values in openclaw.json |
config file/schema/validate | Print config path / schema / validate against schema |
doctor | Health checks + auto-fix for common issues (most-used command, ~35% of CLI usage) |
dashboard | Open the web Control UI in browser |
completion | Install shell completions (bash/zsh/fish/PowerShell) |
crestodian / setup | First-time platform bootstrap |
Gateway & system
| Command | What it does |
|---|---|
gateway start/stop/restart/status | Manage the WebSocket Gateway daemon |
daemon | Lower-level launchd/systemd wrapper |
logs [--follow] | Stream Gateway logs in real time |
system event/heartbeat/presence | Inject lifecycle events, manage heartbeat schedule, presence pings |
status | Channel + session + gateway health snapshot |
health | Probe endpoint suitable for monitors |
sessions cleanup | Prune old session JSONL files |
Models & inference
| Command | What it does |
|---|---|
models list/status | Show configured + reachable models |
models set / set-image | Set the active text or image model |
models aliases / fallbacks / image-fallbacks | Configure fallback chains; primary fails → fallback model triggered |
models scan | Probe configured providers for newly-available models |
infer / capability | One-shot inference; capability probe (vision/tools/streaming) |
memory status/index/search | Memory backend introspection + rebuild + manual search |
Messaging & agents
| Command | What it does |
|---|---|
message send/broadcast/poll/react | Operator-side message ops across channels |
message read/edit/delete/pin/unpin | Channel mutations where supported |
agent | Single-agent runner / current-agent ops |
agents list/add/delete | Multi-agent management |
agents bindings/bind/unbind/set-identity | Bind agents to channels / identities |
acp | Agent Communication Protocol — inter-agent message bus (since 4.2) |
mcp serve/list/show/set/unset | MCP server lifecycle (host + client) |
Channels, nodes, network
| Command | What it does |
|---|---|
channels list/status/add/remove | Manage chat-app adapters; --probe tests live connectivity |
directory | Bonjour/mDNS service directory |
nodes / node | List / target paired mobile or desktop companion nodes |
devices | Device pairing + identity management |
pairing | Issue / approve / revoke pairing tokens |
qr | Generate QR for pairing or WhatsApp/Zalo login |
dns | DNS helpers (Cloudflare Tunnel, gateway records) |
Automation
| Command | What it does |
|---|---|
cron list/add/get/show/edit/remove | Manage scheduled jobs; persisted at ~/.openclaw/cron/jobs.json |
cron run [--wait] | Trigger a job immediately; --wait blocks until done |
cron status / runs [--id] | Per-job status + historical run log |
cron enable/disable | Toggle individual jobs without removing |
tasks | One-shot async tasks (cron's lighter sibling) |
hooks | Internal-agent lifecycle hook management |
webhooks gmail setup | Wizard for Gmail PubSub inbox triggers |
Security & ops
| Command | What it does |
|---|---|
security audit [--deep] [--fix] | Inbound + tool + exec + fs + plugin + network exposure check |
secrets | SecretRef provider mgmt (env / file / exec) |
skills | List, inspect, install, pin, uninstall skills |
plugins | Plugin lifecycle; install runs ClawScan + VirusTotal scan |
proxy | Proxyline routing + outbound proxy management |
approvals | Review and approve pending exec / install requests |
sandbox | Docker / OpenShell / Nix sandbox backend control |
backup create / verify | Snapshot + verify state directory |
reset / uninstall | Roll state back; remove install |
update [wizard/status] | Updater (source installs); status shows pending versions |
Miscellaneous
| Command | What it does |
|---|---|
wiki | Provenance-rich Memory Wiki ops (added 2026.4.29) |
commitments | Track open agent promises ("I'll do X tomorrow") |
path | Print install + state paths |
tui | Terminal UI mode for live chat in shell |
browser | Launch / attach managed Chromium profile |
docs | Open offline help or hosted docs |
tag | Tag sessions / runs for retrieval |
02Chat-app channels supported [top]
26+ adapters; all can run simultaneously, OpenClaw routes per-chat. Per-channel feature parity varies — voice notes and reactions especially. Sources: docs.openclaw.ai/channels, README.
| Channel | Status | Library / SDK | Auth | Notable features |
|---|---|---|---|---|
| Telegram | stable | grammY Bot API | Bot token | Text, groups, forum topics, voice notes (Opus), inline kb, markdown→media |
| stable | Baileys (unofficial) | QR pairing | Text, media, groups, voice notes, audio input + ElevenLabs voice replies; ingress now isolated-worker spool (v5.12) | |
| Discord | stable | Discord Bot API + Gateway | Bot token | Servers, channels, DMs, threads, attachments, reactions |
| Slack | stable | Bolt SDK (externalized plugin) | Bot token / OAuth | Reactions, MPIMs, workspace apps, assistant thread lifecycle (v5.16-beta.4) |
| Microsoft Teams | stable | Bot Framework (bundled plugin) | Bot token | Enterprise channels, DMs, mentions |
| Signal | stable | signal-cli | signal-cli register | Text, privacy-focused, attachments |
| iMessage | stable | Native macOS imsg bridge | Mac local auth | Replies, effects, attachments, group mgmt — macOS-only |
| Google Chat | stable | HTTP webhook | Service account | Text, downloadable plugin |
| Feishu (Lark) | stable | WebSocket (bundled) | Bot token | Text, groups, voice notes (native Opus delivery) |
| Mattermost | stable | Bot API + WebSocket (plugin) | Bot token | Channels, groups, DMs |
| Nextcloud Talk | stable | Bundled plugin | Server auth | Self-hosted text |
| QQ Bot | stable | QQ API (bundled) | Bot token | Rich media, group + private chat (added Apr 2026) |
| Zalo | stable | Bot API (bundled) | Bot token | Vietnam messenger, text + media |
| Zalo Personal | beta | Bundled QR-login | QR pairing | Personal account auth |
| IRC | stable | Standard IRC protocol | Server auth | Channels, DMs, allowlists |
| LINE | stable | LINE Messaging API (plugin) | Bot token | Text + media |
| Matrix | beta | Matrix protocol (plugin) | Server auth | Decentralized text, voice notes |
| Twitch | stable | IRC connection (bundled) | OAuth | Chat-only stream interactions |
| Synology Chat | stable | Webhooks (bundled) | Webhook | NAS integration |
| Tlon (Urbit) | beta | Urbit (bundled) | Urbit auth | Text on decentralized identity |
| Nostr | experimental | NIP-04 (bundled) | nsec key | Decentralized DMs |
| community | Tencent iLink (external) | QR login | Text, private chats only | |
| Yuanbao | community | Tencent (external) | Bot token | Text; catalog added Apr 2026 |
| WebChat | stable | WebSocket Gateway UI | Server auth | Browser-based; persistent auto-scroll mode (v5.12) |
| Google Meet | stable | Bundled participant plugin | OAuth | Agent joins as meeting participant (v4.24) |
| Voice Call (PSTN) | experimental | Plivo / Twilio | API credentials | Phone-call surface; Twilio dial-in via realtime Gemini bridge (v5.4); streaming STT (Deepgram, ElevenLabs, Mistral) |
03LLM provider integrations [top]
Provider-Model layered architecture: separates vendor from model; dual-layer primary + fallback chain auto-routes on outage / rate-limit. Source: docs.openclaw.ai/concepts/model-providers.
Major hosted providers
| Provider | Default model(s) | Auth env | Native integration / quirks |
|---|---|---|---|
| Anthropic | anthropic/claude-opus-4-6, Sonnet 4 | ANTHROPIC_API_KEY | Claude CLI runtime, /fast service-tier toggle, extended thinking, prompt caching, vision |
| OpenAI | openai/gpt-5.5, gpt-5.4-mini | OPENAI_API_KEY | Native Codex app-server harness, SSE+WS streaming, priority via serviceTier, image gen via Codex OAuth (v4.23) |
| OpenAI Codex (OAuth) | gpt-5.5 via native harness | ChatGPT OAuth | 400K context, custom transport, Codex Computer Use (v4.27) |
| Google Gemini | gemini-3.1-pro-preview, 3-flash | GEMINI_API_KEY / GOOGLE_API_KEY | Dynamic thinking /think adaptive, prompt caching, realtime voice bridge (Twilio) |
| Google Vertex AI | Gemini family | Service account | Anthropic Vertex too (externalized v5.12) |
| Gemini CLI (OAuth) | Gemini | Google OAuth | Browser-flow auth, no API key needed |
| DeepSeek | deepseek-v4-flash, V4 Pro | DEEPSEEK_API_KEY | V4 Pro + Flash added v4.24 |
| Mistral | mistral-large-latest | MISTRAL_API_KEY | Streaming STT for Voice Call (v4.22) |
| xAI Grok | xai/grok-4.3 | XAI_API_KEY | OAuth login (v5.x), Responses path, tool streaming default-on, media gen (v4.22) |
| Moonshot (Kimi) | K2.6 / K2.5 / K2-thinking | MOONSHOT_API_KEY | Long-context thinking variants |
| Qwen Cloud | qwen3.5-plus | QWEN_API_KEY / DASHSCOPE_API_KEY | Alibaba |
| Groq | Llama, Mixtral | GROQ_API_KEY | Ultra-fast inference |
| DeepInfra | deepseek-ai/DeepSeek-V3.2 | DEEPINFRA_API_KEY | Model discovery + media support (v4.27) |
| Hugging Face | deepseek-ai/DeepSeek-R1 | HUGGINGFACE_HUB_TOKEN / HF_TOKEN | Inference endpoints |
| OpenRouter | openrouter/auto | OPENROUTER_API_KEY | Auto-route, stealth models, image gen (v4.23), media gen (v5.16-beta.4) |
| Vercel AI Gateway | Multi-provider | AI_GATEWAY_API_KEY | Single key, many providers |
| Z.AI (GLM) | zai/glm-5.1 | ZAI_API_KEY | Zhipu |
| Amazon Bedrock | Claude / Llama / Mistral | AWS creds | Externalized provider plugin (v5.12) |
| Cerebras | Llama, Qwen | CEREBRAS_API_KEY | Bundled provider added v4.26 |
| Cloudflare AI Gateway | Multi-provider proxy | CLOUDFLARE_AI_GATEWAY_API_KEY | Caching + analytics layer |
| GitHub Copilot | Copilot models | GitHub OAuth | Listed in supported set |
| NVIDIA | Nemotron / others | NVIDIA_API_KEY | Onboarding flow (v4.29) |
| MiniMax | abab + audio | MINIMAX_API_KEY | Also a TTS provider |
| Together / BytePlus / Kilo Gateway / Kimi Coding / Qianfan / StepFun / Venice / Volcano (Doubao) / Xiaomi | various | per-provider keys | All listed in supported providers set |
Self-hosted / local
| Provider | Default endpoint | Notes |
|---|---|---|
| Ollama | http://127.0.0.1:11434 | Auto-detected on opt-in; no API key required |
| LM Studio | http://localhost:1234/v1 | OpenAI-compatible |
| vLLM | http://127.0.0.1:8000/v1 | Self-hosted high-throughput |
| SGLang | http://127.0.0.1:30000/v1 | Self-hosted fast OpenAI-compatible |
| TGI / LocalAI | configurable | Any OpenAI-compatible endpoint works via generic provider |
Provider features summary
- Fallback chains —
models fallbacksdefines primary→fallback ordering; auto-routed on rate-limit or outage. - Per-job model override — cron / hooks payload can override default model.
- Streaming — SSE + WebSocket native; OpenAI-compatible streaming flush improved v5.5.
- Vision — wherever upstream supports it;
imageModelis a separate config from text model. - Tool use — universal where the model supports it; tool streaming default-on for Grok.
- Extended thinking — Claude, Gemini adaptive, Moonshot K2-thinking.
- App-attribution headers — applied only on verified routes (OpenRouter) and native traffic (OpenAI).
04Built-in tools / capabilities [top]
What the agent can do out-of-the-box with zero skills installed. Tool policy enforced before each model call. Source: docs.openclaw.ai/tools/index.
| Tool | Category | What it does |
|---|---|---|
| exec | Runtime | Run shell commands; deny/ask/full approval modes |
| process | Runtime | Process spawn/kill/list management |
| code_execution | Runtime | Provider-backed Python sandbox (Anthropic / OpenAI) |
| read | Files | Read workspace files (root-bounded via fs-safe) |
| write | Files | Write workspace files |
| edit | Files | Edit files in-place |
| apply_patch | Files | Apply unified diff patches |
| file_fetch / dir_list / dir_fetch / file_write | Files | File-transfer plugin (added v5.3) |
| web_search | Web | Search the internet (native + Direct Responses v4.22) |
| x_search | Web | Search X (Twitter) posts |
| web_fetch | Web | Retrieve readable page content (HTML→markdown) |
| browser | Browser | Operate managed Chromium profile; Chrome DevTools MCP attach (v2026.3.13); tabs / click / type / drag / screenshot / PDF |
| image | Media | Analyze images (vision) |
| image_generate | Media | Generate images (Codex OAuth, OpenRouter, xAI, fal) |
| music_generate | Media | Generate music tracks |
| video_generate | Media | Generate video clips |
| tts | Audio | Text-to-speech across 14 providers |
| message | Comms | Send replies + channel actions (react, edit, delete, pin) |
| sessions_* | State | Inspect session data and history |
| subagents | Coord | Delegate work to spawned sub-agents (label-targeted v4.2) |
| agents_list | Coord | List available agents |
| session_status | Coord | Report run status + model usage tracking (v4.2) |
| cron | Automation | Schedule background work from inside a conversation |
| heartbeat_respond | Automation | Respond to background events |
| gateway | Infra | Inspect Gateway state from inside agent |
| nodes | Infra | Access paired target devices (mobile, mac) |
| tool_search_code / tool_search / tool_describe | Discovery | Search large tool catalogs (for skill-heavy installs) |
MCP client — first-class. OpenClaw both serves MCP (its own tools exposed to other clients) and consumes any MCP server. Filesystem MCP, Chrome DevTools MCP, Browser Tool MCP all officially supported.
05Skills system / ClawHub [top]
Skills are LLM-invokable capabilities (the model decides when to call). Plugins are lifecycle hooks (run automatically). ClawHub = public registry. Source: github.com/openclaw/clawhub, VoltAgent/awesome-openclaw-skills.
ClawHub categories (11 official)
| Category | Share of installs | Representative skills |
|---|---|---|
| Productivity & Automation | ~35.5% | Text processing, summarization, note-taking, task automation (822+ skills) |
| Development & Coding | ~28.2% | Code Review, Python debugging skill (v5.16-beta.5), refactor helpers |
| Utility | — | OCR Reader, image-ocr, file converters |
| AI/ML | — | Embeddings, rerankers, dataset prep |
| Web | — | Scraping, Firecrawl integration, sitemap crawl |
| Science | — | Math, units, citations |
| Media | — | video-editor-ai (MP4 by chat, BGM/subtitles/effects, TikTok/Reels/Shorts) |
| Social | — | Cross-poster, scheduler |
| Finance | — | Stock, crypto, expense parser |
| Location | — | Maps, routing, weather-by-location |
| Business | — | CRM nudge, invoice render |
SKILL.md contract
- Frontmatter —
name,description,metadata.openclaw.requires(env vars, binaries, Nix plugins). - Body — natural-language instructions the agent reads when the skill triggers.
- Supporting files — scripts, templates, examples referenced from the body.
- Versioning — semantic via ClawHub; pin / unpin / update via
clawhubCLI. - Dynamic loading — Skill Watcher refreshes available tools mid-session.
Registry catalog stats
- 5,400+ skills filtered + categorized from the official registry (VoltAgent count).
- One-click install via
openclaw skills install <slug>orclawhub install <slug>. - Search across 6 registries with quality filtering (added v4.1).
- Security — every install runs ClawScan + VirusTotal Code Insight (critical findings block by default).
06Memory / persistence [top]
File-first with SQLite-backed hybrid search. Three-tier workspace storage + optional vector indexing. Source: docs.openclaw.ai/concepts/memory.
Storage tiers
| Tier | Path | Lifecycle |
|---|---|---|
| Long-term | ~/.openclaw/workspace/MEMORY.md | Durable facts, preferences, decisions. Loaded at session start; truncated if oversized. |
| Working notes | ~/.openclaw/workspace/memory/YYYY-MM-DD.md | Per-day transcripts. Today + yesterday auto-load; older searched on demand. |
| Consolidation | ~/.openclaw/workspace/DREAMS.md | Optional dream-diary summaries + historical backfill. |
| Vector index | ~/.openclaw/memory/<agentId>.sqlite | SQLite with FTS5 + embeddings; ACID, single-file, no daemon. |
| Sessions | ~/.openclaw/agents/<agentId>/sessions/*.jsonl | Full message transcripts. Pruned after 24h for cron-isolated runs. |
Search backend
- Hybrid search — FTS5 BM25 keyword + vector similarity, combined.
- Chunking — ~400-token segments with 80-token overlap.
- Embedding providers — OpenAI, Gemini, Voyage, Mistral (auto-detected from API keys).
- Indexing tracker —
filestable tracks mtime, size, content hash → skip re-indexing unchanged files.
Memory tools and behaviors
memory_search— semantic search across notes.memory_get— read specific file or line range.- Memory flush — silent background turn before compaction; saves important context to MEMORY.md.
- Dreaming — optional scheduled consolidation: short-term notes promoted to MEMORY.md by score / recall frequency / diversity thresholds.
- Active Memory plugin (v2026.4.10) — optional sub-agent pulls relevant context before each main reply.
- People Wiki (v2026.4.29) — provenance views, per-conversation Active Memory filters, structured claims.
Alternative backends
- QMD — local-first sidecar with reranking + query expansion.
- Honcho — cross-session AI-native memory with user modeling.
- LanceDB — plugin with local Ollama embedding support.
- Hindsight — third-party RAG memory plugin (Vectorize).
07Gateway features [top]
Single master Gateway daemon owns state, channels, sessions. Nodes are peripherals. Source: docs.openclaw.ai/gateway/configuration, /prometheus.
Daemon
- Runs under launchd (macOS), systemd (Linux), or Windows service.
- Default port
18789; configurable. - Bind modes:
loopback(default),lan,tailnet, custom address. - Hot reload — Gateway watches
~/.openclaw/openclaw.jsonand applies changes without restart.
Multi-user / multi-machine
- Operator roles with fine-grained scopes:
admin,approvals,pairing,read,talk.secrets,write. - Mobile + desktop nodes connect via WebSocket; mDNS/NSD for LAN discovery.
- Profile isolation:
--profile <name>for multi-instance on one host.
Remote access
- SSH tunnel (universal fallback) — local-forward to remote Gateway WS.
- Tailscale direct connect + Tailscale Serve for Control UI exposure.
- Cloudflare Tunnel + Cloudflare Access — Zero Trust remote access pattern.
- TLS cert pinning via
gateway.remote.tlsFingerprint. - Trusted-proxy auth mode for identity-aware reverse proxies.
Control UI / Dashboard
- Web dashboard at the Gateway port; modular overview redesign in v2026.3.12 (Dashboard v2).
- Raw-config diff panel with redaction options (v4.26).
- Persistent auto-scroll mode for Control UI / WebChat (v5.12).
- PWA install + Web Push notifications (v4.25).
- iOS Home canvas (v2026.3.11).
- Device-identity issued in secure contexts (HTTPS / localhost).
Telemetry / observability
- Prometheus — scrape
/api/diagnostics/prometheus, gateway auth applies. No external collector needed. - OpenTelemetry — built-in OTLP/HTTP push for metrics, traces, logs (v2026.2+).
- Exported metrics — token usage, cost, context size, run duration, message-flow counters, queue depth, session state.
- Structured logs — exported over OTLP when enabled.
- Health URL — documented endpoint for liveness probes.
08Security features [top]
Threat model: personal assistant, one trusted operator per Gateway. Defense in depth: identity-first access control, then scope, then model intelligence. Source: docs.openclaw.ai/gateway/security.
Access control
- Device pairing — loopback auto-approves; remote requires explicit token, expires in 1h.
- DM policies —
pairing(default),allowlist,open(requires"*"),disabled. - Mention gating — in groups, bot ignores messages unless mentioned.
- Session isolation —
session.dmScope=per-channel-peerormain. - Single-use pairing tokens — default limit 3 pending per channel.
Tool & execution hardening
- Sandboxing — Docker default; OpenShell or Nix alternatives. Per-session / per-agent scope.
- Exec approval —
tools.execmodes:deny,ask,full. Approvals bind exact request context. - fs-safe — root-bounded filesystem primitives;
tools.fs.workspaceOnly: trueprevents escape. - Tool allow/deny lists — per-agent; profiles like "messaging" disable runtime tools by default.
- Elevated mode —
tools.elevated, gated by allowlists.
Gateway network auth
- Shared bearer token (
gateway.auth.mode: "token") or password auth. - Trusted-proxy mode validates identity via headers; loopback proxies require
allowLoopback: true. - Tailscale identity headers (
allowTailscale: true). - TLS termination + HSTS via
strictTransportSecurity(v2026.2.23).
Content & model safety
- External content wrapping — untrusted content wrapped with
<<<EXTERNAL_UNTRUSTED_CONTENT ...>>>markers. - Special-token sanitization — strips Qwen/ChatML, Llama, Gemma, Mistral, Phi chat tokens.
- Context visibility filtering — quoted replies, thread history only from allowlisted senders.
Supply chain
- ClawScan — 10 categories of prompt-injection detection, credential stealers, reverse shells, invisible-unicode attacks.
openclaw plugins installruns it. - VirusTotal Code Insight — LLM-powered security analysis of every published skill on ClawHub.
- Skill watcher — refreshes available tools mid-session; restrict who can edit skill folders.
- --dangerously-force-unsafe-install — break-glass only; does not bypass before_install hook blocks.
Network egress
- Proxyline — Node-process global routing layer; installs process-wide network routing through configured proxy.
- SSRF policy — browser blocks private/internal destinations by default;
dangerouslyAllowPrivateNetworkoverride exists. - Operator-managed outbound proxy routing (v4.27).
Logging / audit
- Log redaction on by default;
logging.redactSensitive: 'tools', customredactPatterns. - Session transcript permissions — recommend 700 dirs / 600 files.
- Security audit —
openclaw security audit [--deep] [--fix]checks 6 surfaces. - Legacy import scrubbing — static API keys in
auth.jsonauto-removed. - Workspace .env blocking —
OPENCLAW_*keys in workspace .env ignored.
Credential storage
~/.openclaw/credentials/— channel creds, OAuth imports, pairing allowlists.~/.openclaw/agents/— agent-specific auth profiles.SecretRefproviders:env,file,exec.- Auth profile encryption keys at
~/.config/openclaw.
09Mobile / cross-device [top]
Mobile apps are companion nodes, not standalone agents. They connect to your Gateway and extend it with phone-side capabilities. Source: docs.openclaw.ai/platforms/android.
Android — ClawNode
| Feature | Detail |
|---|---|
| Remote commands | 34+ verified on real devices |
| Voice Talk Mode | Continuous listening with real-time TTS + STT |
| Mic mode | Manual push-to-talk; each pause is a chat turn |
| Foreground service | Always-on background connectivity |
| Google Assistant integration | Launch via App Actions |
| Device commands | Notifications forward, photos, contacts, calendar, call log, SMS search, steps/activity |
| Camera | Snapshots (jpg) + video clips (mp4) |
| Screen capture | Via canvas commands |
| Canvas rendering | HTML/CSS/JS UI surface |
| Notification policy | Allowlist/blocklist, quiet hours, per-package rate limit |
| Discovery | mDNS/NSD on LAN; WebSocket over internet |
iOS
- OpenClaw Messenger — App Store. Real-time chat, push notifications, image attachments.
- Voice Companion — Voice interaction app on App Store.
- Tabs — Connect / Chat / Voice / Canvas / Camera / Screen capture / Android-style device commands.
- iOS Home canvas shipped v2026.3.11.
macOS
- Menu-bar app — operator surface.
- Native iMessage bridge (channel #6).
- Remote-mode app with automatic transport selection.
Push / notifications
- iOS APNs through OpenClaw Messenger.
- Web Push (PWA) for browser dashboard (v4.25).
- Host alerts via Telegram for ops events.
10Routines / scheduling [top]
Gateway-internal scheduler. Persisted jobs at
~/.openclaw/cron/jobs.json. Source: docs.openclaw.ai/automation/cron-jobs.Schedule formats
| Form | Example | Notes |
|---|---|---|
at | ISO 8601, "20m" | One-shot. Default UTC; --tz for local wall-clock. |
every | "5m", "1h" | Fixed interval. |
cron | 5 or 6-field crontab | Standard cron; optional timezone. |
Execution styles
| Style | Session | Use case |
|---|---|---|
| Main | main | Enqueue system event at next heartbeat (reminders) |
| Isolated | isolated | Fresh agent session per run (reports, background) |
| Current | current | Bound to creation-time session |
| Custom | session:<id> | Persistent named session across runs |
Delivery modes
announce— fallback delivery to chat channel if agent didn't send directly.webhook— POST finished-event payload to URL.none— no runner fallback (agent can still send via tool).- Channel targeting: Slack/Discord/Mattermost use
channel:<id>/user:<id>; Telegram supports forum-topic IDs.
HTTP webhook ingress
- POST /hooks/wake — fire-and-forget trigger for the main session.
- POST /hooks/agent — trigger isolated agent turn; fields:
message,name,agentId,wakeMode,deliver,channel,to,model,fallbacks,thinking,timeoutSeconds. - Custom mappings —
hooks.mappingstransforms arbitrary payloads (templates or code transforms). - Auth —
Authorization: Bearerorx-openclaw-tokenheader; query-string tokens rejected. - /steer endpoint — active-run steering (v5.3).
External event sources
- Gmail PubSub — wizard via
openclaw webhooks gmail setup; auto-renews on Gateway boot. - GitHub webhooks — via
/hooks/wakeor custom mapping (CI failure, PR event, etc.). - Stripe / n8n / Hookdeck — same pattern; webhooks-are-events.
Job operations
- Failure notifications — global
cron.failureDestinationor per-job override. - Staggering — top-of-hour jobs randomized into 5-min windows;
--exactforces precise timing. - Concurrency —
maxConcurrentRunscap. - Retry — exponential backoff for rate-limits / network / 5xx.
- Session retention — isolated sessions pruned after 24h.
- Phase watchdogs — setup / runner-init / first-model-call have separate timeouts.
- Disable cron —
cron.enabled: falseorOPENCLAW_SKIP_CRON=1.
11Developer / extensibility [top]
Two distinct extension surfaces: Skills (model-invoked capabilities) and Plugins (lifecycle hooks). Plus MCP for cross-tool interop.
Plugin SDK
- 28 lifecycle hooks exposed by the plugin SDK.
- Hook categories: model resolution, agent lifecycle, message flow, tool execution, sub-agent coordination, gateway lifecycle.
- Key hooks:
before_agent_reply(can short-circuit + inject synthetic reply for caching / rate-limiting),onMessageReceived,onResponseGenerated,before_install. - Plugin SDK v2 — typed contract system on 2026 roadmap.
- npm-first plugin system migration (v5.2) — plugins distributed as npm packages.
- Externalized providers — Bedrock, Slack, OpenShell, Anthropic Vertex split out of core (v5.12).
Skill SDK
- SKILL.md frontmatter declares runtime requirements (env vars, binaries, Nix plugins).
- Body is natural-language; model decides when to invoke.
- Supporting files reference scripts, templates, examples.
- Versioned via ClawHub; one-click install via
clawhub install.
MCP (Model Context Protocol)
- Client — consume any MCP server (filesystem, Chrome DevTools, browser tools, GitHub, etc.).
- Server —
openclaw mcp serveexposes OpenClaw's tools to other MCP clients. - Operations —
mcp list/show/set/unset.
ACP (Agent Communication Protocol)
- Introduced v4.2 — inter-agent messaging bus.
- Thread-bound persistent sessions for long-running multi-agent tasks.
- Label-based sub-agent spawning.
- ACP fallback runtime support (v5.12).
Configuration surface
~/.openclaw/openclaw.json(JSON5) — primary config. Hot-reload.OPENCLAW_CONFIG_PATH— override config location.${VAR_NAME}substitution inside config strings.- Env resolution order: process env → workspace
.env→ configenv.vars. - Config sections:
channels,models,tools,plugins,cron,hooks,sessions,media,networking,ui,gateway,logging.
Deployment patterns
| Pattern | Detail |
|---|---|
| npm / pnpm / bun | Default install path; runtime is node:24-bookworm-slim |
| Docker | Pre-built at GHCR; tags main, latest, 2026.x.x |
| Raspberry Pi | Supported until v4.24 (Pi compat path removed) |
| Hetzner / VPS bare metal | Stack via Claude Code template, openclaw-stack repo |
| Cloudflare Tunnel | Zero Trust remote access; Cloudflare Access protects Control UI |
| Tailscale | Tailnet bind + Serve for Control UI |
| Nix | Sandbox backend option |
| OpenShell sandbox | Alternative to Docker (externalized v5.12) |
Docker env vars (selected)
OPENCLAW_IMAGE— remote image override.OPENCLAW_EXTENSIONS— bundle plugin helpers at build time.OPENCLAW_HOME_VOLUME— persist/home/node.OPENCLAW_SANDBOX— enable sandbox bootstrap.OPENCLAW_DOCKER_APT_PACKAGES— extra system deps at image build.OTEL_EXPORTER_OTLP_ENDPOINT— OTel collector endpoint.
Release channels
stable/beta/dev— three update tracks.- Updater —
openclaw updatewizard (source installs only).
12Voice / audio [top]
Bidirectional voice via the unified SAG (Speech-Audio Gateway). 14 TTS providers + Whisper STT + Talk Mode + phone-call surface. Source: docs.openclaw.ai/tools/tts.
TTS providers (14)
| Provider | Notes |
|---|---|
| OpenAI | Default reliability pick; OPENAI_API_KEY |
| ElevenLabs | 30+ preset voices + custom voice cloning; v3 added v4.25 |
| Google Gemini | Realtime voice bridge for Twilio dial-in (v5.4) |
| Azure Speech | Enterprise voices; added v4.25 |
| Microsoft (free) | No-auth option |
| Inworld | Specialized voices |
| MiniMax | Multi-language |
| Volcengine (Doubao) | Chinese-language strength |
| xAI | Media gen incl. TTS (v4.22) |
| Local CLI | No-auth bridge to system TTS |
| Other 4 | Provider list rotates with releases |
STT providers
- OpenAI Whisper — 90+ languages.
- Deepgram — streaming STT for Voice Call (v4.22).
- ElevenLabs — streaming STT for Voice Call (v4.22).
- Mistral — streaming STT for Voice Call (v4.22).
- Codex — audio transcription metadata support (v5.4).
Voice features
- Persona system — stable spoken identity across providers.
- Per-agent voice overrides — different voice per assistant.
- Model-driven TTS directives —
[[tts:...]]inline tags in replies. - Auto-TTS —
messages.tts.auto: "always"; summarizes long replies, skips short text. - Slash commands —
/tts audio,/tts status,/tts limit,/tts summary. - Chat-scoped auto-TTS controls — per-chat enable (v4.25).
- Native voice notes — Feishu, Matrix, Telegram, WhatsApp (Opus); MP3 fallback elsewhere; auto-transcode.
- Phone-call surface — Twilio + Plivo; PCM/Ulaw streams for telephony.
- Voice Call transcription (v4.22) + paced audio with backpressure-aware buffering (v5.4).
- Talk Mode — continuous duplex listening + speaking.
- Push-to-talk — Mic mode on Android/iOS nodes.
- Voice wake — wake-word on macOS/iOS/Android.
- Google Meet participant — agent joins Meet call as participant (v4.24).
13Vision / image / video [top]
Multimodal handled via separate
imageModel config from text model. Per-cap size limits and attachment count limits. Source: docs.openclaw.ai/nodes/images.Image input
- Formats: local file path or HTTP(S) URL.
- Auto-resize + recompress to JPEG, max side 2048px.
- 50 MB ingest cap; 10 MB understanding cap (
tools.media.image.maxBytes). - Magic-byte detection (not extension-only).
- Multi-attachment via
tools.media.<cap>.attachments.
Image generation
- OpenAI image gen + reference-image editing via Codex OAuth (v4.23).
- OpenRouter image generation (v4.23).
- xAI media generation (v4.22).
- fal provider support (v5.16-beta.4).
- Per-call
timeoutMsfor generation tools (v4.23).
OCR
- OCR via skills (image-ocr, ocr-reader, OCR Local V2) — not core; ClawHub Utility category.
- Top-rated Screenshot & OCR skill captures window/URL/region then extracts text.
- Ocr-reader integrates with
openclaw browserCLI for full-page / element screenshots.
Video
- Pass-through up to 16 MB.
- MP4 +
gifPlayback: truefor looping on mobile. - Understanding cap 50 MB (
tools.media.video.maxBytes). - Video generation tool (
video_generate). - video-editor-ai skill — chat-driven MP4 edit, BGM/subtitles/effects, TikTok/Reels/Shorts export.
Vision capabilities
- Native vision via upstream model (Claude 4.6 Vision called out as champion for structured-JSON extraction from screenshots).
- Auto image description + caption preservation.
- Audio attachments transcribed; transcript enables slash-command parsing.
- Screenshot capture in browser tool + canvas commands on mobile nodes.
- Documents up to 100 MB with filename preserved.
14Recent additions (last 90 days) [top]
Feb–May 2026 release highlights not already surfaced above. One line per release. Source: github.com/openclaw/openclaw/releases, openclawai.io/changelog.
May 2026
| Version | Date | Highlight |
|---|---|---|
| v2026.5.16-beta.7 | May 18 | Redesigned Mac settings + expanded QA runtime-parity scenarios |
| v2026.5.16-beta.6 | May 18 | Settings UI consistent card layouts; improved plugin hook timeout handling |
| v2026.5.16-beta.5 | May 17 | Settings redesign; new Python debugging skill |
| v2026.5.16-beta.4 | May 17 | Slack assistant thread lifecycle; fal + OpenRouter media generation |
| v2026.5.12 | May 14 | Telegram ingress isolated-worker + durable spool; Bedrock/Slack/OpenShell/Anthropic-Vertex externalized; sandbox credential protection; ACP fallback runtime; Control-UI auto-scroll persistent |
| v2026.5.7 | May 7 | Cron job status visibility; outbound-send no-adapter-result reporting; multi-channel routing |
| v2026.5.6 | May 6 | Codex OAuth routing fix; plugin runtime fetch headers; web-fetch timeout handling |
| v2026.5.5 | May 6 | Session runtime visibility; xAI Grok model control; OpenAI-compatible streaming flush |
| v2026.5.4 | May 5 | Twilio Meet dial-in via Gemini realtime voice bridge; Codex audio metadata |
| v2026.5.3 | May 4 | New file-transfer plugin (file_fetch / dir_list / dir_fetch / file_write); /steer endpoint; unified streaming progress modes |
| v2026.5.2 | May 2 | npm-first plugin migration; startup + session + planning perf; Grok 4.3 default xAI |
April 2026
| Version | Date | Highlight |
|---|---|---|
| v2026.4.29 | Apr 30 | Active-run steering default-on; Memory expands to People Wiki (provenance views, per-conv Active Memory filters); NVIDIA provider |
| v2026.4.27 | Apr 29 | Codex Computer Use; DeepInfra provider + media; Tencent Yuanbao catalog + QQBot groups; operator outbound proxy |
| v2026.4.26 | Apr 28 | Cerebras bundled; Claude Code / Claude Desktop importer; Control UI raw-config diff with redaction |
| v2026.4.25 | Apr 27 | Chat-scoped auto-TTS; Azure Speech + ElevenLabs v3; cold plugin registry; PWA install + Web Push |
| v2026.4.24 | Apr 25 | Google Meet bundled participant plugin; DeepSeek V4 Flash + Pro; browser automation; BREAKING Pi compat removed |
| v2026.4.23 | Apr 24 | OpenAI image gen + ref-image editing via Codex OAuth; OpenRouter image gen; per-call timeoutMs |
| v2026.4.22 | Apr 23 | xAI media gen + Voice Call transcription; Voice Call streaming STT (Deepgram/ElevenLabs/Mistral); onboarding auto-install; Direct Responses web search |
| v2026.4.10 | Apr 10 | Active Memory plugin debut |
February–March 2026
| Version / event | Date | Highlight |
|---|---|---|
| v4.0 | Feb 20 | Architecture rewrite for multi-agent; Gateway daemon always-on; Canvas; native 15+ channels |
| v2026.2.23 | Feb 23 | HSTS headers; config redaction behavior |
| Foundation | Feb 14 | Steinberger joins OpenAI; OpenClaw Foundation takes stewardship; MIT license; OpenAI sponsors |
| 250k stars | Mar 4 | Crossed React |
| v4.1 | Mar 15 | ClawHub one-click; Claude Code ACP harness; 6-registry skill search w/ quality filter; semantic memory |
| v4.2 | Mar 28 | ACP intro; thread-bound persistent sessions; label sub-agent spawning; session_status tool |
| v2026.3.11 | Mar | OpenRouter stealth models; iOS Home canvas |
| v2026.3.12 | Mar | Dashboard v2; GPT-5.4 fast mode |
| v2026.3.13 | Mar | Chrome DevTools MCP attach mode |
15Missing / explicitly NOT supported [top]
Known feature gaps from issue tracker, foundation roadmap, and explicit non-goals. Source: Issue #65824 (11-platform-gap meta), foundation public RFC roadmap.
Roadmap (in-flight)
- Native multi-agent orchestration — running multiple agents that coordinate (partially shipped via ACP).
- Plugin SDK v2 — typed, testable contract system for skills + integrations.
- Built-in vector memory — native ChromaDB support for long-term recall without external RAG plumbing.
- Improved web dashboard — for non-technical operators.
- Deeper enterprise integrations — Microsoft Teams, Salesforce.
- Event-driven cron —
webhook:received, job chaining, reactive triggers (RFC #28584). - Agent-scoped cron in multi-agent setups (issue #16053).
Explicit non-goals / known by-design limits
- Hostile multi-tenancy not in threat model. Personal-assistant deployment, one trusted operator per Gateway. Adversarial shared infra requires separate Gateways / OS users / hosts.
- Memory of all chat history is not "infinite." File-first; older daily logs searchable but not auto-loaded.
- Raspberry Pi compatibility removed in v2026.4.24 (breaking).
- Skills as untrusted code — skill folders treated as trusted; if you can edit them you can RCE; restrict edit access.
- System prompts are soft guidance — hard enforcement is access control + scope + tool policy, not prompts.
- No promise of "risk-free" agent — explicitly stated in Five-Point Security Plan.
Open feature requests with traction
- Improved Cron / Scheduling — simpler API + sub-agent execution + job history (issue #5825).
- Native Prometheus / OTel exposition (now partially shipped per docs; original ask #13608).
- Release roadmap / changelog preview (issue #52481).
- 11 platform-gap meta bundle from intensive daily use (issue #65824).
Governance
- OpenClaw Foundation since Feb 14, 2026; quarterly community calls where operators vote on priorities.
- Public RFC process for roadmap items.
- MIT license; OpenAI sponsorship under foundation stewardship.