OpenClaw学习总结_II_频道系统_4:Slack集成详解

II. 频道系统 - 4. Slack

📍 课程位置阶段 :II. 频道系统 课序 :第 4 课 前置知识 :II-3. Discord 后续课程 :II-5. Signal---## 🎯 本课核心问题(你不懂我就这样教你)Slack 接入常见问题:1. **怎么创建 Slack App 并接到 OpenClaw?**2. **Socket Mode 是什么?为什么它比 Webhook 更适合本地开发?**3. **为什么 bot 收不到消息?是不是事件订阅没开?**4. 群里怎么避免乱回(@ 才回)? ---## 🧠 心智模型:Slack App = Bot Token +(可选)Socket Token一句话:> Slack 的关键是:你创建的是一个 App ,App 里有 bot,bot 需要 token 才能收发消息。类比:- Slack Workspace 像"公司"- App 像"公司内部系统"- Bot 像"系统里的机器人账号"- Token 像"门禁卡"---## ✅ 验收标准- 创建 Slack App- 拿到 Bot Token(xoxb-...)- 选择 Socket Mode 并配置 App-Level Token(xapp-...)- OpenClaw 能收到 Slack 消息- 能回复消息---## 🔧 第一步:创建 Slack App1. 到 Slack API 网站创建 App2. 选择"From scratch"3. 选择目标 Workspace---## 🔧 第二步:配置权限(Scopes)Slack 权限配置在 OAuth & Permissions 里。最低可用(典型):- chat:write(发消息)- channels:history(读频道消息)- im:history(读私聊)- groups:history(读私有频道,若需要)如果你要让 bot 进入频道,可能还需要:- channels:read配置完 scopes 后:- 需要重新 Install App 到 Workspace---## 🔧 第三步:启用 Socket Mode(推荐)### 为什么推荐 Socket Mode?- 你不需要公网服务器- 本地开发最方便- Slack 会通过 WebSocket 把事件推给你启用步骤:1. 打开 Socket Mode2. 创建 App-Level Token(xapp-...)3. 给这个 token 配置 connections:write scope---## 🔧 第四步:事件订阅(Events)Slack 的消息不是"自动送来"的,你需要订阅事件。常见需要订阅:- message.im(私聊消息)- message.channels(频道消息)以及可能需要:- app_mention(被 @)---## 🔧 第五步:配置 OpenClaw在 ~/.openclaw/openclaw.jsonjson5{ channels: { slack: { enabled: true, // Bot token botToken: "xoxb-...", // Socket Mode token appToken: "xapp-...", // 安全策略 dmPolicy: "pairing", // pairing | allowlist | open | disabled allowFrom: ["slk:U123"], } }}---## 🧩 群聊不乱回:只在 @ 时响应Slack 里推荐用 app_mention + mentionPatterns。思路:- 默认不响应普通频道消息- 只响应 @bot---## ⚠️ 常见坑与排查| 现象 | 常见原因 | 排查 ||------|----------|------|| 收不到消息 | 没订阅 Events | 检查 Event Subscriptions || 能收不能回 | 没 chat:write | 检查 scopes || Socket 断开 | appToken 错/未启用 socket | 检查 Socket Mode + xapp || 安装后没生效 | 没重新 Install | 重新安装 App |---## 📝 学习心得Slack 的"本质难点"是:- 它是一个 App 平台- 你必须明确:权限(scopes)+ 事件(events)+ 连接方式(socket/webhook)推荐顺序:1. 先 Socket Mode 跑通2. 再补 scopes3. 再加 @ gating 和安全策略---## ✅ 本课总结(记住 5 句话)1. Slack 先创建 App,再拿 token。2. Bot token(xoxb)负责发消息,App token(xapp)负责 Socket Mode。3. 收不到消息通常是 Events 没订阅。4. 发不出去通常是 chat:write scope 没开。5. 生产/本地开发优先 Socket Mode,省掉公网暴露。---## 🔗 相关资源- 官方文档:https://docs.openclaw.ai/channels/slack- Slack API:https://api.slack.com/apps- 配置参考:https://docs.openclaw.ai/gateway/configuration-reference- 下一课:II-5. Signal

相关推荐
计算机魔术师20 分钟前
国产多模态模型正面硬刚Opus旗舰:差距从30%缩到3%
前端
风骏时光牛马29 分钟前
程序员进阶:深度思考,解锁职场成长的底层逻辑
前端
IT_陈寒36 分钟前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
爱丶不疚1 小时前
Eval: Agent 说的 Eval 是什么?从单测、TDD 到 Sentry 聊起
前端·ai编程·vibecoding
求道於盲1 小时前
python中的类型标注
前端
计算机魔术师1 小时前
从硅谷测试到全球铺开,ChatGPT广告的10亿美元秘密
前端
武子康2 小时前
同一套 Agent Runtime,为什么 Web、Headless 和 Python SDK 仍然不是同一个产品
人工智能·llm·agent
专业抄代码选手2 小时前
08|Fiber 上的 `useState`:状态终于属于具体组件
前端·javascript·react.js
默_笙3 小时前
😭 Vibe Coding 翻车实录:AI 编程为什么必须先写"剧本"
前端·javascript
LEE3 小时前
原来 Claude Code 最厉害的工具,一行代码都不写
前端·后端