渠道集成
连接 OpenClaw 到 Slack
将 OpenClaw 添加到你的 Slack 工作区。在频道、话题或私信中获得 AI 帮助,支持斜杠命令。
💼 为什么使用 Slack?
- ✓WebSocket 连接 — 通过 Slack Bot API + Socket Mode 实现实时消息
- ✓斜杠命令 — 原生 /clawd 命令界面
- ✓话题支持 — 保持对话有序,带历史上下文
- ✓富文本格式 — 格式化响应支持表情和置顶
- ✓灵活访问 — 私信、公开频道和私密频道
需求
- •Slack Bot Token — 以 xoxb-... 开头
- •Slack App Token — 以 xapp-... 开头(用于 Socket Mode)
- •Slack App — 配置了适当的 OAuth 作用域
设置步骤
1
创建 Slack 应用
前往 Slack API 门户创建新应用:
- • 访问 api.slack.com/apps
- • 点击「Create New App」
- • 选择「From scratch」
- • 命名(如「OpenClaw」)并选择你的工作区
2
添加 Bot Token 作用域
为你的机器人配置 OAuth 权限:
- • 前往侧边栏的「OAuth & Permissions」
- • 在「Bot Token Scopes」下添加:
- - app_mentions:read — 读取提及
- - channels:history — 查看频道消息
- - channels:read — 查看频道信息
- - chat:write — 发送消息
- - im:history — 查看私信历史
- - im:read — 查看私信信息
- - im:write — 发起私信对话
- - reactions:write — 添加表情
- - users:read — 查看用户信息
3
启用 Socket Mode
Socket Mode 允许无需公开 URL 即可实时通信:
- • 前往侧边栏的「Socket Mode」
- • 打开「Enable Socket Mode」
- • 生成具有 connections:write 作用域的 App-Level Token
- • 复制 token(以 xapp-... 开头)
4
安装应用到工作区
安装应用并获取 Bot Token:
- • 前往侧边栏的「Install App」
- • 点击「Install to Workspace」
- • 授权请求的权限
- • 复制 Bot User OAuth Token(以 xoxb-... 开头)
5
配置 OpenClaw
将 Slack 配置添加到你的 openclaw.json:
{
"channels": {
"slack": {
"enabled": true,
"botToken": "xoxb-...",
"appToken": "xapp-..."
}
}
}6
邀请机器人到频道
将机器人添加到你想让它响应的频道:
- • 在 Slack 中打开频道
- • 输入 /invite @OpenClaw
- • 或点击频道名称 -> 集成 -> 添加应用
- • 运行 openclaw restart 重启 OpenClaw 并通过 @机器人 测试。
功能
话题支持
在话题中维护对话上下文,可配置历史范围。
表情回应
机器人可添加表情以确认消息或指示状态。
消息置顶
置顶重要响应以便稍后参考。
斜杠命令
使用 /clawd 随时快速查询 AI。
成员信息
需要时查找工作区成员信息。
私信支持
与机器人进行私密一对一对话。
高级配置
Slack 集成的完整配置选项:
{
"channels": {
"slack": {
"enabled": true,
"botToken": "xoxb-...",
"appToken": "xapp-...",
"dm": {
"enabled": true,
"policy": "pairing",
"allowFrom": ["U123", "U456"]
},
"channels": {
"#general": {
"allow": true,
"requireMention": true,
"users": ["U123"]
}
},
"historyLimit": 50,
"slashCommand": {
"enabled": true,
"name": "clawd"
},
"actions": {
"reactions": true,
"messages": true,
"pins": true
}
}
}
}dm.enabled— 允许向机器人发送私信dm.policy— 私信访问策略(「pairing」或「open」)dm.allowFrom— 允许发送私信的用户 ID 数组channels— 每个频道的配置对象requireMention— 只在被 @提及 时响应historyLimit— 作为上下文包含的消息数量slashCommand— 配置斜杠命令设置actions— 启用/禁用表情、消息和置顶
频道策略
白名单模式
只在明确配置的频道中响应。适合受控环境。
开放模式
在机器人被邀请的所有频道中响应。使用 requireMention 来限制响应。
如何获取 Slack 用户 ID
从个人资料:
点击用户名 -> 查看个人资料 -> 点击三个点(...)-> 复制成员 ID
从 Slack 管理后台:
工作区设置 -> 管理成员 -> 导出成员列表为 CSV
⚠️ 故障排除
机器人在频道中不响应?
确保机器人已被邀请到频道并具有正确的作用域。检查是否启用了 requireMention。
Socket Mode 连接错误?
验证你的 App Token(xapp-...)是否正确且具有 connections:write 作用域。
斜杠命令不显示?
前往 Slack 应用设置的「Slash Commands」手动创建命令,指向 Socket Mode。
权限被拒绝错误?
添加新作用域后需要重新安装应用到工作区。某些作用域更改需要重新安装。