Channels
Channels define how users interact with your agents. Different agents support different channels based on their design goals.
Available Channels
| Channel | Agents | Use Case |
|---|---|---|
| CLI | All | Terminal-based interaction |
| Discord | OpenClaw | Discord server bot |
| Slack | OpenClaw | Slack workspace bot |
| Web | OpenClaw (planned) | Browser-based chat |
| Not planned | Mobile messaging |
Channel Comparison
| Feature | CLI | Discord | Slack | Web |
|---|---|---|---|---|
| Setup Complexity | Low | Medium | Medium | High |
| Multi-user | No | Yes | Yes | Yes |
| Access Control | OS-level | Roles | Policies | Auth |
| Rich Media | Limited | Yes | Yes | Yes |
| Mobile Support | SSH app | Discord app | Slack app | Browser |
| Connection | Local | Gateway | Socket Mode | HTTP |
| Required Tokens | None | 1 (bot) | 2 (bot + app) | Varies |
Channel vs Provider
- Provider = The AI model (OpenAI, Anthropic, etc.)
- Channel = How users talk to the agent (CLI, Discord, etc.)
An agent uses:
- 1 provider (the LLM backend)
- 1+ channels (how users interact)
Configuration
Channels are configured during agent onboarding:
clm agent configure <agent-name>
# Select channel during the channels stage
Switching Channels
To change an agent's channel:
clm agent configure <agent-name> --stage channels
Note: Some agents (like ZeroClaw) only support CLI and cannot switch channels.
See individual channel pages for detailed setup instructions.