Discord 接入

写在前面

Discord 能力很强,但第一次接入时变量通常比 Telegram 更多。

你这一步不要追求“把整个服务器都配好”,而是先完成一个单一入口的最小验证:

  • Bot 已创建;
  • Bot 已进入目标服务器或目标场景;
  • 权限是最小可用的;
  • 你能发一条测试消息并收到回复。

如果第一次就同时验证多个频道、多个提及规则或团队级权限,排错会明显变难。

第一步:先准备 Discord 侧信息

开始前先确认下面几项:

  • 你已经创建 Discord Bot;
  • 你已经拿到 Bot Token;
  • Bot 已被邀请进目标服务器,或你已经确定要测试的入口;
  • 你知道这次是测私聊、单个频道,还是某个服务器场景。

第一次最好只选一种入口,不要同时测私聊和服务器频道。

第二步:在 OpenClaw 里添加 Discord 渠道

如果你想走交互式配置,可以先运行:

openclaw configure

如果你已经知道要接 Discord,也可以直接添加渠道:

openclaw channels add \
  --channel discord \
  --account work \
  --name "Work Bot" \
  --token $DISCORD_BOT_TOKEN

添加完成后,先不要急着进服务器发消息,先看渠道状态。

第三步:先检查状态,不要直接猜权限问题

执行:

openclaw channels status
openclaw channels status --probe

你要先确认:

  • Discord 渠道已经出现在状态列表中;
  • --probe 没有直接报认证失败或配置缺失;
  • Gateway 总日志里没有持续性的 Discord 连接错误。

如果这里已经报错,先修 Token 或渠道配置,不要一上来就改服务器权限。

第四步:只验证一个最小入口

第一次验证建议只选一个场景,例如:

  • 只测一个服务器频道;
  • 或只测一个明确的私聊入口。

不要同时做这些事情:

  • 让 Bot 进多个频道;
  • 同时测试私聊和服务器;
  • 一起改提及规则、频道权限、白名单和自动化逻辑。

你现在的目标不是“完整上线”,而是确定哪一层已经通、哪一层还没通。

第五步:发测试消息并同时看日志

在选定的单一入口里,发一条最简单的测试消息。

如果你的场景要求提及 Bot,就按你的实际策略发,例如:

  • @Bot 你好
  • @Bot 现在能收到消息吗

同时打开日志:

openclaw logs --follow

你要观察的是:

  • Discord 里是否收到了正常回复;
  • 日志里是否能看到消息进入;
  • 是否出现权限、提及门控、pairing 或事件处理错误。

怎么判断 Discord 这一步已经成立

满足下面几条,就说明你已经完成了首轮接入:

  • openclaw channels status --probe 正常;
  • 你选定的那个入口能稳定发测试消息;
  • OpenClaw 能在 Discord 里返回回复;
  • 日志中没有持续性的阻塞错误。

如果 Bot 在线,但频道里始终没反应,不要马上判断是主程序故障。Discord 更常见的问题是:

  • 提及方式不对;
  • 频道权限不足;
  • 服务器规则没有对齐;
  • 你测的是另一个入口,不是当前真正生效的入口。

常见错误或风险

  • 第一次就同时测多个频道,导致问题无法定位;
  • 服务器权限、提及门控和 pairing 一起改;
  • 还没跑通单一入口,就开始做团队级配置;
  • 只看 Bot 在线,不看消息是否真的进入日志;
  • 把 Discord 侧权限问题误判成 OpenClaw 主进程问题。

下一步

如果 Discord 已经能稳定回复,继续看 配置改完如何验证

如果渠道看起来已连接,但频道里还是不回复,先去 接入失败时怎么分类