尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

OpenClaw从入门到应用——Slack 频道接入的令牌与 Socket/HTTP 配置

发布时间:2026/9/28 19:21:31

资讯中心
01
ARTICLE

OpenClaw从入门到应用——Slack 频道接入的令牌与 Socket/HTTP 配置

OpenClaw从入门到应用——Slack 频道接入的令牌与 Socket/HTTP 配置
1. 先把 Slack 接入这件事说清楚OpenClaw 接入 Slack 频道本质上是让一个 Slack App 把消息事件推给 OpenClaw再由 OpenClaw 里的 Agent 决定怎么回。听起来像绕口令拆开看就三件事Slack 那边要有一个 App、要有能证明身份的令牌、OpenClaw 这边要有一份config.toml告诉它用哪种方式收事件。第一次搭 Slack 机器人的人最容易卡在“令牌到底填哪”和“Socket 还是 HTTP”这两个点上这篇就把这两件事一次讲透。Slack 的接入模式其实只有两种。Socket 模式是 OpenClaw 主动向 Slack 建立一条长连接事件从这条连接推过来你不需要公网地址本地开发机就能跑HTTP 模式是反过来Slack 把事件 POST 到你暴露出来的 webhook 路径你需要一个能被 Slack 访问到的地址并且要校验签名。选哪个不取决于哪个更高级而取决于你的部署环境本地调试、内网机器、没有固定域名优先 Socket已经有公网入口、要接多个账号、要走统一网关那就 HTTP。令牌这块也有讲究。Socket 模式需要两个令牌机器人令牌xoxb-...和应用级令牌xapp-...后者要带connections:write权限否则长连接建不起来。HTTP 模式需要机器人令牌加签名密钥signingSecret因为 Slack 每次请求都会带签名OpenClaw 要用这个密钥验签防止有人伪造事件打进来。很多人第一次配的时候只填了xoxb结果 Socket 模式一直连不上就是漏了xapp。下面按“先备好令牌 → 写配置 → 验证连通 → 排错”的顺序走一遍每一步都给可复制的片段。你不需要一次全懂跟着填完能跑起来再回头看每个字段的含义会更顺。2. TaoToken 前置把模型侧先接通OpenClaw 本身是接入层真正干活的是背后的模型。在调 Slack 之前建议先把模型侧跑通否则 Slack 消息进来了、Agent 却因为拿不到模型而报错你会分不清是 Slack 配错了还是模型没通。我习惯用 TaoToken 来做这一层它的接口和常见 SDK 兼容改个 base_url 和 key 就能用省去自己维护多套凭证的麻烦。先去控制台拿一个 API Key地址是 https://taotoken.net/api-keys 登录后在密钥管理里新建一个复制出来形如sk-...的字符串。这个 key 只显示一次建议直接存进环境变量别写死在代码里。想先确认模型能不能正常对话可以打开模型对话页面 https://taotoken.net/model-chat 直接发一句“你好”能返回就说明 key 和网络都没问题。如果你后面打算长期跑编码类或 Agent 类任务可以看一下 Coding Plan https://taotoken.net/coding-plan 它更适合高频调用场景。接入文档在 https://taotoken.net/doc 里面有各语言的调用示例遇到参数不确定的时候翻一下比猜快。把模型侧跑通之后再回来配 Slack整条链路就只剩“事件进来 → Agent 处理 → 回复出去”这一段要调。3. 可复制配置config.toml 骨架与令牌字段OpenClaw 的 Slack 配置都挂在channels.slack下面。先给一份 Socket 模式的最小骨架这是本地开发最省事的写法[channels.slack] enabled true mode socket appToken xapp-你的应用级令牌 botToken xoxb-你的机器人令牌mode socket表示走长连接appToken对应 Slack App 配置里 “Socket Mode” 打开后生成的那个xapp-令牌botToken是安装到工作区后拿到的xoxb-令牌。两个都填缺一不可。如果你只想用环境变量兜底OpenClaw 支持SLACK_APP_TOKEN和SLACK_BOT_TOKEN但要注意环境变量只对默认账号生效多账号场景还是得写进配置文件。HTTP 模式的骨架长这样[channels.slack] enabled true mode http botToken xoxb-你的机器人令牌 signingSecret 你的签名密钥 webhookPath /slack/eventssigningSecret在 Slack App 的 “Basic Information” 页面能找到webhookPath是 Slack 把事件推过来的路径默认/slack/events。如果你要接多个 Slack 账号每个账号必须用不同的webhookPath否则注册会冲突。多账号写法是把配置挪到accounts下面[channels.slack] enabled true mode http [channels.slack.accounts.ops] botToken xoxb-账号A的令牌 signingSecret 账号A的签名密钥 webhookPath /slack/events/ops [channels.slack.accounts.support] botToken xoxb-账号B的令牌 signingSecret 账号B的签名密钥 webhookPath /slack/events/support令牌的覆盖关系要记牢配置文件里的令牌会覆盖环境变量环境变量只对默认账号生效。另外userTokenxoxp-...只能写在配置文件里没有环境变量兜底而且默认是只读行为也就是userTokenReadOnly true。只有当你把它设成false且机器人令牌不可用时才允许用用户令牌做写入操作这个开关别乱动。Slack App 那边还需要订阅一批机器人事件否则消息进来了 OpenClaw 也收不到。至少要勾上app_mention、message.channels、message.groups、message.im、message.mpim以及reaction_added、reaction_removed、member_joined_channel、member_left_channel、channel_rename、pin_added、pin_removed。私聊DM还要在 App 首页的“消息”标签页里打开不然用户私聊机器人不会有反应。4. 验证请求连通性检查与成功结果配置写完别急着发消息先跑连通性检查。OpenClaw 提供了几个诊断命令最常用的是这个openclaw channels status --probe--probe会实际去探测 Slack 连接Socket 模式下它会尝试建立长连接并确认令牌有效。如果输出里 Slack 那一行显示已连接、令牌校验通过说明配置没问题。想持续看日志就开一个窗口跑openclaw logs --follow然后在 Slack 里 一下你的机器人日志里应该能看到事件进来的记录。如果什么都没打印多半是事件订阅没勾全或者机器人没被拉进那个频道。还有一个万能命令是openclaw doctor它会把配置、令牌、权限、事件订阅一起体检一遍报错信息比单看日志更直白。HTTP 模式下你还可以用 curl 手动打一下 webhook 路径确认服务在监听curl -i -X POST http://127.0.0.1:3000/slack/events \ -H Content-Type: application/json \ -d {type:url_verification,challenge:test123}如果返回里带challenge字段说明路径通了、验签逻辑也在跑。注意 Slack 官方的 URL 验证请求会带签名头手动 curl 不带签名可能被拒这里只是确认服务活着真正的验证还是以 Slack 后台的 “Verified” 状态为准。成功的结果长这样Slack 里 机器人几秒内收到回复openclaw logs --follow里能看到事件解析、Agent 调用、回复发送三段日志openclaw channels status --probe显示 Slack 已连接。三个都对上最小接入就算完成了。5. 本篇常见错排查Socket 模式连不上日志报令牌无效。九成是漏了appToken或者xapp令牌没带connections:write权限。回 Slack App 的 “Socket Mode” 页面确认已开启并重新生成一次应用级令牌。HTTP 模式 Slack 后台一直显示未验证。检查webhookPath是否和 Slack 里填的请求 URL 完全一致包括结尾有没有斜杠。事件订阅、交互性、斜杠命令三处的 URL 要指向同一个路径少配一处就会验证失败。消息进来了但机器人不回复。先看频道策略。默认groupPolicy是allowlist频道不在白名单里会被忽略。频道白名单写在channels.slack.channels下面建议用稳定的频道 ID 而不是名字。另外频道消息默认需要 提及才触发如果你希望不 也回复得调整requireMention。私聊没反应。检查channels.slack.dm.enabled是否为true以及dmPolicy的设置。默认是pairing需要先配对批准用openclaw pairing list slack看有没有待批准的请求再用openclaw pairing approve slack 用户ID放行。如果设成allowlist还要确认allowFrom里有对应用户。多账号下某个账号收不到消息。命名账号不会继承channels.slack.accounts.default.allowFrom只会在自己没设allowFrom时继承顶层的channels.slack.allowFrom。每个账号的webhookPath也必须唯一重复了会注册冲突。频道名匹配不生效。默认路由以 ID 为准想直接用频道名或用户名匹配需要打开channels.slack.dangerouslyAllowNameMatching true。这个开关有风险非必要别开开了之后名字解析失败会导致路由异常。6. 接下来怎么走最小接入跑通之后下一步通常是调回复行为。比如回复线程的控制在channels.slack.replyToMode默认off设成first或all才会在线程里回复文本分块用textChunkLimit默认 4000超长消息会被切开流式预览用channels.slack.streaming默认partial想要更细的进度显示可以调成progress。如果你打算把 Slack 接到长期运行的编码或 Agent 任务上建议顺手把 Coding Plan 配上地址是 https://taotoken.net/coding-plan 高频调用下比按次计费更划算。接入过程中遇到令牌或路径报错先翻接入文档 https://taotoken.net/doc 大部分字段含义和示例都在里面。密钥管理统一在 https://taotoken.net/api-keys 需要新建或轮换 key 的时候从这儿进。最后提醒一句signingSecret、xapp、xoxb这些都属于敏感凭证别提交到公开仓库也别贴到聊天记录里。用环境变量或密钥管理工具存轮换的时候记得同步更新 OpenClaw 配置并重启服务。把这条链路跑顺之后Slack 就只是 OpenClaw 的一个入口后面接更多频道也是同样的套路。
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。