OpenClaw Support Matrix
OpenClaw is a full-featured agent supporting multiple LLM providers, communication channels, and third-party integrations.
Status: ✅ Production Ready
Best for: Discord bots, multi-channel assistants, complex workflows
Runtime Substrate — NemoClaw
Since v26.7.3 (Phase 3 of #11, issue #945): every openclaw agent runs
inside an NVIDIA NemoClaw sandbox.
There is no bare-runtime fallback and no --runtime bare flag. The
sandbox is created automatically on clawctl agent create and torn down
automatically on clawctl agent remove. clawctl agent get shows
runtime: nemoclaw@<version> on every openclaw row.
Host prerequisites (installed by clawctl host prepare):
- Ubuntu 24.04+ (Debian 12 is unverified; other distros unsupported)
- ≥ 8 GB RAM, ≥ 20 GB disk
- Docker Engine (via Docker's Ubuntu apt repo)
- NVM + Node 22.16
- Agent user in the
dockergroup
Fleet-visibility probe: clawctl host validate <hostname> runs
nemoclaw status <sandbox> for every openclaw on the host and exits
non-zero when any sandbox is unhealthy.
Upgrade path. Bumping the pinned NemoClaw version rewires
sync_agent_canonical to re-onboard on the next clawctl agent sync;
sync short-circuits before the daemon restart if the onboard fails,
so a broken pin never leaves an agent in a restarted-but-unhealthy
state.
Rollback path. There is no in-place rollback; pin the previous
Clawrium release and re-install per the migration note in
docs/releases/26.7.3/CHANGELOG.md.
macOS. Openclaw on macOS is blocked at install pending an upstream NemoClaw darwin binary (#11 §7.2). Deploy openclaw on an Ubuntu 24.04+ host until that support lands.
Migration from bare openclaw. Legacy bare records predating v26.7.3
fail clawctl agent sync with a message pointing at
docs/releases/26.7.3/CHANGELOG.md.
The migration is remove + create + configure + start; there is
no automated migration.
Legend
| Symbol | Meaning |
|---|---|
| ✅ | Fully supported and tested |
| 🚧 | In development / Planned |
| ❌ | Not supported |
| 📋 | Not planned (PRs welcome) |
Provider Support
OpenClaw supports all major LLM providers:
| Provider | Status | Configuration | Models |
|---|---|---|---|
| OpenAI | ✅ | Setup Guide | GPT-4o, GPT-4, GPT-3.5, o1 |
| Anthropic | ✅ | Setup Guide | Claude Opus, Sonnet, Haiku |
| OpenRouter | ✅ | Setup Guide | Multi-provider gateway |
| AWS Bedrock | ✅ | Setup Guide | Claude, Llama, Titan |
| Google Vertex | ✅ | Setup Guide | Gemini series |
| ZAI / BigModel | ✅ | Setup Guide | GLM series |
| Ollama | ✅ | Setup Guide | Self-hosted models |
| LiteLLM / vLLM / custom OpenAI-compatible proxy | ✅ | clawctl provider registry create <name> --type litellm --litellm-url <proxy> --model <id> --api-key <bearer> | Any model exposed by the proxy (rendered into models.providers.<name> in openclaw.json with api: "openai-completions") |
| Azure OpenAI | 📋 | Not Planned | — |
Quick Setup:
clawctl provider registry create <name> --type <provider-type>
Channel Support
Channels define how users interact with the agent:
| Channel | Status | Configuration | Notes |
|---|---|---|---|
| CLI | ✅ | Setup Guide | Interactive terminal chat |
| Discord | ✅ | Setup Guide | Bot with allowlisting |
| Slack | 🚧 | Milestone SEA | Coming Q2 2026 |
| Web Interface | 🚧 | Milestone SEA | Browser-based chat |
| 📋 | Not Planned | PRs welcome |
During Onboarding:
clawctl agent configure <agent-name>
# Select channel during the channels stage
Integration Support
Integrations allow the agent to interact with external tools and services:
| Integration | Status | Configuration | Use Case |
|---|---|---|---|
| Atlassian (Jira + Confluence) | ✅ | Single API token covers both Jira and Confluence | Issue tracking, docs / knowledge base |
| Slack (MCP tool integration) | ✅ | slack-user (xoxp; recommended) or slack-cookie (xoxc + xoxd; fragile fallback) | Outbound Slack tool calls via korotovsky/slack-mcp-server stdio subprocess |
| GitHub | 🚧 | Milestone SEA | PR reviews, issues |
| GitLab | 📋 | Not Planned | PRs welcome |
| Linear | 📋 | Not Planned | PRs welcome |
| Notion | 📋 | Not Planned | PRs welcome |
Additional Features
| Feature | Status | Notes |
|---|---|---|
| Custom Identity | ✅ | SOUL.md + IDENTITY.md |
| Multi-Provider | ✅ | Switch providers per request |
| Secrets Management | ✅ | Per-instance secret storage |
| Token Tracking | 🚧 | Coming Q2 2026 |
| MCP Tools | ✅ | Slack MCP tools are supported via the Slack integration; additional MCP-backed integrations remain incremental. |
| Auto-Restart | ✅ | Supervisor-managed |
| Log Streaming | ✅ | Real-time log access |
| Onboarding Wizard | ✅ | Guided 4-stage setup |
Getting Started
1. Install OpenClaw
clawctl agent create my-assistant --type openclaw --host <host-alias> --provider <provider-name>
--provideris mandatory since v26.7.3. NemoClaw onboarding requires a provider at install time. List available providers withclawctl provider registry get.
2. Configure the Agent
clawctl agent configure my-assistant
The wizard will guide you through:
- Provider selection
- Identity configuration (SOUL.md, IDENTITY.md)
- Channel setup (CLI, Discord, etc.)
- Validation
3. Start the Agent
clawctl agent start my-assistant
4. Chat with the Agent
clawctl agent chat my-assistant
Slack integration
OpenClaw agents can attach the Slack integration (--type slack-user recommended, --type slack-cookie discouraged fallback) — the outbound Slack tool surface backed by korotovsky/slack-mcp-server. See the Slack integration doc for token acquisition, security posture, and the full walkthrough.
OpenClaw-specific details:
- Config surface: the Slack MCP subprocess is rendered into
mcp.servers.<slug>of~/.openclaw/openclaw.jsonon the agent host. Renderer:_render_openclaw_jsoninsrc/clawrium/core/render.py. - Conditional emission (byte-lock guarantee): the top-level
mcpkey is emitted only when at least one MCP-emitting integration is attached. OpenClaw agents with no Slack integration render byte-identical to the pre-#835 output — upgrading to this release does not touchopenclaw.jsonon existing agents. - Binary install location:
~/<agent-name>/.local/bin/slack-mcp-server— single-binary Go install, SHA256-pinned per (os, arch). Same source of truth (playbook_resolver._MCP_SLACK_VERSION+ SHA256 maps) as the hermes install. - macOS support (GA):
clawctl agent syncinstalls the darwin arm64 / x86_64 tarball via the dedicatedinstall_slack_mcp_macos.yamlrunbook. OpenClaw macOS is GA per #770, so Slack on darwin is a first-class combination. - Attach gate: attaching a
slack-userorslack-cookieintegration to an openclaw agent is accepted by the CLI's attach-time gate (Phase 2 of #499); attempts to attach to unsupported agent types exit 2 with a hint. - Composite blast-radius warning applies if you attach a future Slack channel + this Slack integration to the same agent. See integrations/slack.md → Composite blast-radius warning. (Slack channel on openclaw is on the SEA milestone; today only the Slack integration is attachable on openclaw, so the composite risk is future-only for openclaw.)
Quick attach + sync:
printf 'SLACK_MCP_XOXP_TOKEN=xoxp-...' | \
clawctl integration registry create slack --type slack-user --credential-stdin
clawctl agent integration attach <openclaw-name> --integration slack
clawctl agent sync <openclaw-name>
Troubleshooting
"Discord bot token invalid"
- Verify the bot token in Discord Developer Portal
- Re-create the channel record (
clawctl channel registry delete <channel-name> --yes --forcethenclawctl channel registry create <channel-name> --type discord --token-stdin <<<"$BOT_TOKEN" ...), re-attach if needed (clawctl agent channel attach <channel-name> --agent <name>), andclawctl agent sync <name> - Ensure the bot has proper server permissions
"Provider connectivity failed"
- Check provider status:
clawctl provider status <provider-name> - Verify API key is set:
clawctl provider registry get - Test network connectivity from the host
"Onboarding incomplete"
Run the full onboarding wizard:
clawctl agent configure <agent-name>
Or configure a specific stage:
clawctl agent configure <agent-name> --stage <stage-name>
Next Steps
- Agent Onboarding - Detailed onboarding guide
- CLI Reference - Full command documentation
- Provider Configuration - Setting up inference providers