Clawdbot Slack Integration: Multi-Channel AI That Works Where You Work

OpenClaw integrates with Slack so your personal AI assistant is available where your team works. This guide covers Slack-specific setup and best practices.
How It Works
┌─────────────────────────────────────────────────────────────────┐
│ Your Inbox │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 📱 WhatsApp ──────► │
│ 💬 Telegram ──────► 🦞 OpenClaw ◄────── 💬 Slack │
│ 🎮 Discord ──────► Gateway │
│ 💌 iMessage ──────► │
│ │
│ One AI. All your channels. │
│ │
└─────────────────────────────────────────────────────────────────┘
Your assistant responds on Slack just like any other channel—same context, same skills, same personality.
Prerequisites
- OpenClaw installed:
npm install -g openclaw@latest - Gateway running:
openclaw gateway --port 18789
Step 1: Create a Slack App
- Go to api.slack.com/apps
- Click Create New App → From scratch
- Name your app (e.g., "OpenClaw" or your assistant's name)
- Select your workspace
Add Bot Token Scopes
Go to OAuth & Permissions → Scopes → Bot Token Scopes and add:
app_mentions:read— Receive mentionschat:write— Send messageschannels:history— Read channel messagesgroups:history— Read private channel messagesim:history— Read DMsim:write— Send DMs
Enable Socket Mode
Go to Socket Mode → Enable Socket Mode.
This generates an App-Level Token (starts with xapp-). Copy it.
Install to Workspace
Go to Install App → Install to Workspace.
Copy the Bot User OAuth Token (starts with xoxb-).
Step 2: Configure OpenClaw
Set environment variables:
export SLACK_BOT_TOKEN=xoxb-your-token
export SLACK_APP_TOKEN=xapp-your-token
Or add to ~/.openclaw/openclaw.json:
{
channels: {
slack: {
botToken: "xoxb-your-bot-token",
appToken: "xapp-your-app-token",
dm: {
policy: "pairing", // or "open"
allowFrom: [], // Empty = pairing required
},
},
},
}
Step 3: Restart Gateway
openclaw gateway restart
Your Slack bot should now be online and responding.
Using Slack
Mentions in Channels
Mention your bot to get a response:
@openclaw what's the status of the deployment?
Direct Messages
DM the bot directly. If you're not on the allowlist, you'll receive a pairing code.
Thread Replies
The assistant responds in threads to keep conversations organized.
DM Security
By default, Slack DMs use pairing mode:
- Unknown user DMs your bot
- Bot sends a pairing code
- Approve:
openclaw pairing approve slack <code> - User is allowlisted
To allow open DMs (not recommended for public workspaces):
{
channels: {
slack: {
dm: {
policy: "open",
allowFrom: ["*"],
},
},
},
}
Chat Commands
These commands work in Slack just like other channels:
| Command | Description |
|---------|-------------|
| /status | Show model, tokens, cost |
| /new | Reset conversation |
| /compact | Summarize context |
| /think high | Enable extended thinking |
| /verbose on | Show detailed responses |
Slack-Specific Actions
OpenClaw can use Slack-specific tools:
- Send messages to channels or users
- React to messages with emoji
- Read channel history for context
- Create threads for organized discussions
Multi-Workspace Support
You can connect multiple Slack workspaces by running separate Gateway instances or using the multi-tenant configuration.
Troubleshooting
Bot not responding?
- Check tokens: Both
SLACK_BOT_TOKENandSLACK_APP_TOKENare required - Verify Socket Mode is enabled
- Check Gateway logs:
openclaw gateway --verbose
Not receiving mentions?
Ensure you've added the required scopes and reinstalled the app after adding them.
DM issues?
Run openclaw doctor to check DM policies.
Next Steps
- Security Guide — Best practices
- Multi-Channel Setup — Add more channels
- Skills — Extend capabilities
- Slack Docs — Full reference