OpenClaw 连接 Discord 完全指南

前言

网上关于 OpenClaw 连接 Discord 的教程要么过时,要么配置格式错误。这篇文章记录完整的配置流程。

准备工作

  • Discord Bot Token
  • 服务器 ID 和频道名称
  • OpenClaw 已安装

第一步:创建 Discord Bot

  1. 访问 Discord Developer Portal,点击 New Application
  2. Bot 菜单中开启 MESSAGE CONTENT INTENT(必须!)
  3. 复制 Bot Token
  4. OAuth2 → URL Generator 生成邀请链接,添加到服务器

第二步:获取服务器和频道信息

Discord 链接格式:

1
https://discord.com/channels/服务器ID/频道ID

注意:配置中使用的是频道名称(如 general),不是频道 ID。

第三步:配置 OpenClaw

编辑 ~/.openclaw/openclaw.json

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
"discord": {
"enabled": true,
"token": "YOUR_TOKEN",
"guilds": {
"1469179465367162882": {
"slug": "my-server",
"requireMention": true,
"channels": {
"general": {
"allow": true
},
"bot-commands": {
"allow": true,
"requireMention": false
}
}
}
}
}
}

配置说明

字段 说明
token Bot Token
guilds.服务器ID Discord 服务器 ID
slug 服务器别名
requireMention 是否需要 @Bot
channels.频道名称 频道配置
allow 是否允许响应

第四步:启动和验证

1
openclaw gateway restart

查看日志:

1
tail -f /tmp/openclaw/openclaw-$(date +%Y-%m-%d).log

常见问题

Q: Bot 在线但不回复

  • 检查 MESSAGE CONTENT INTENT 是否开启
  • 检查频道名称是否正确(不是 ID)
  • 检查 allow 是否为 true

Q: WebSocket 连接断开

  • Token 可能失效,重新生成

Q: 私信配置

1
2
3
4
5
{
"discord": {
"dmPolicy": "pairing"
}
}

用户首次私信会收到配对码,管理员执行:

1
openclaw pairing approve discord PAIRING_CODE

核心要点

  1. Discord 使用 guilds.channels 嵌套结构
  2. 频道配置用名称,不是 ID
  3. 必须开启 MESSAGE CONTENT INTENT
  4. Token 失效是 90% 问题的根源

参考