OpenClaw 的 Discord 技能
与 Discord 服务器和频道交互。
最后更新: 2026-03-09
快速安装
$ npx clawhub@latest install discord核心功能
OpenClaw Discord 技能概述
Discord 技能通过 Discord API 将 OpenClaw 连接到你的 Discord 服务器,将你的 AI 代理变成强大的 Discord 助手。安装后,你可以通过自然语言命令发送消息、管理帖子、发起投票、上传表情包,甚至进行社区管理操作。
Discord 是开发者社区、开源项目和团队沟通中最受欢迎的平台之一。OpenClaw Discord 技能消除了在终端和 Discord 之间频繁切换的需要。无论是监控社区频道、回复问题,还是管理服务器设置,只需与 OpenClaw 进行简单对话即可完成。
典型工作流程:
- 让 OpenClaw 发送消息或查看 Discord 频道的最新动态。
- 代理使用相应的操作调用 Discord API(例如
sendMessage、readMessages)。 - 结果以易读的摘要形式返回——无需切换上下文。
Discord 技能安装前的准备
在安装 Discord 技能之前,请确保你已具备:
- 已安装并运行 OpenClaw(v1.0+)
- 拥有一个 Discord 账号,且可以访问你要管理的服务器
- 在 开发者门户 中创建了 Discord 机器人并获取了机器人令牌
- 机器人已 邀请到你的服务器,并拥有必要的权限
- 已安装 clawhub CLI 用于技能管理
验证你的环境:
# 检查 OpenClaw 版本 openclaw --version # 检查 clawhub CLI clawhub --version
创建 Discord 机器人
如果你还没有机器人,请按以下步骤操作:
- 前往 Discord 开发者门户,点击 New Application。
- 切换到 Bot 选项卡,点击 Add Bot。
- 复制 机器人令牌——配置时需要用到。
- 在 Privileged Gateway Intents 下,如果需要技能读取消息内容,请启用 Message Content Intent。
- 使用 OAuth2 URL Generator 创建邀请链接,选择
bot范围以及所需的权限。
如何安装 Discord 技能
使用一条命令即可安装 Discord 技能:
npx clawhub@latest install discord
验证安装:
clawhub list
你应该能在已安装技能列表中看到 discord。你也可以在安装前使用 clawhub inspect discord 预览该技能。
Discord 技能配置指南
Discord 技能需要机器人令牌进行身份验证。如果你还没有创建机器人,请前往 Discord 开发者门户 创建。
环境变量设置
# 设置你的 Discord 机器人令牌 export DISCORD_BOT_TOKEN=your_bot_token_here
重要提示: 切勿在配置文件中硬编码令牌。请使用环境变量或密钥管理工具,例如 1Password。
Gateway Intents
该技能使用 Discord Gateway Intents 来接收事件。有三个 特权意图 必须在开发者门户中启用:
| Intent | 用途 | 是否必需? |
|--------|------|-----------|
| MESSAGE_CONTENT | 读取消息文本、嵌入内容和附件 | 是,readMessages 需要 |
| GUILD_MEMBERS | 访问成员加入/离开事件和成员列表 | 仅在使用 memberInfo 时需要 |
| GUILD_PRESENCES | 跟踪用户在线/离线状态 | 很少需要 |
仅启用你的用例所需的意图。对于大多数场景,仅启用 MESSAGE_CONTENT 即可。
操作权限控制
Discord 技能支持细粒度的操作控制。大多数操作默认启用,但敏感操作默认禁用:
| 操作 | 默认值 | 描述 |
|------|--------|------|
| discord.actions.moderation | false | 禁言、踢出和封禁用户 |
| discord.actions.roles | false | 为成员添加或移除角色 |
要启用管理操作,请更新你的 OpenClaw 配置:
# 启用管理操作(请谨慎使用) openclaw config set discord.actions.moderation true
Discord 技能使用示例
1. 向频道发送消息
你:"向 #announcements 频道发送一条消息,内容是'2.0 版本现已上线!查看发布说明了解详情。'"
代理使用 sendMessage 操作,指定目标频道 ID。消息发送后会确认投递结果并返回消息链接。
2. 监控社区提问
你:"读取 #help-forum 中最近 10 条消息,总结一下还没有回复的问题。"
代理调用指定频道的 readMessages,筛选出没有回复的消息,并返回未回答问题的摘要及每个帖子的链接。
3. 发起社区投票
你:"在 #general 频道创建一个投票,问题是'我们下一步应该开发什么功能?',选项有:暗色模式、移动应用、API 改进、更好的文档。投票持续 24 小时。"
代理使用 poll 操作创建投票,最多支持 10 个选项。设置持续时间后返回确认信息和投票链接。
4. 上传自定义表情
你:"把这张图片上传为我们服务器的自定义表情,名字叫 'ship_it'。"
代理使用 emojiUpload 将图片(PNG/JPG/GIF,最大 256KB)添加为服务器表情。上传完成后会确认并显示表情代码 :ship_it:,可在消息中使用。
安全与最佳实践
Discord 技能可以对你的服务器执行写操作,包括发送消息以及(如果启用的话)管理操作。请遵循以下指南确保安全:
- 使用最小权限原则。 仅授予机器人实际需要的权限。除非绝对必要,否则不要授予
Administrator权限。 - 默认禁用管理操作。 该技能默认禁用
moderation和roles操作。只有在你有明确需求且理解其影响时才启用。 - 仅启用所需的意图。 特权意图如
MESSAGE_CONTENT和GUILD_MEMBERS仅在你的工作流确实需要时才应启用。 - 定期轮换机器人令牌。 如果怀疑令牌已泄露,请立即在 开发者门户 中重新生成。
- 确认前仔细审查。 OpenClaw 在执行破坏性操作时会提示确认。务必在批准前仔细阅读操作摘要,尤其是管理和批量操作。
- 审计机器人活动。 使用 Discord 的审计日志跟踪机器人执行的操作,并验证其是否符合预期。
常见错误与故障排除
"401: Unauthorized"
机器人令牌缺失、无效或已重新生成。
- 检查环境中是否已设置
DISCORD_BOT_TOKEN。 - 验证令牌是否与 开发者门户 机器人设置中的一致。
- 如果令牌最近被重新生成,请更新你的环境变量。
# 验证令牌是否已设置 echo $DISCORD_BOT_TOKEN
"50001: Missing Access"
机器人没有访问目标频道或服务器的权限。
- 确认机器人已被邀请到服务器并拥有正确的权限。
- 检查频道级别的权限覆盖是否阻止了机器人。
- 使用
permissions操作检查机器人在某个频道的有效权限。
"MESSAGE_CONTENT intent is required"
你正在尝试读取消息内容,但 MESSAGE_CONTENT 特权意图未启用。
- 前往 开发者门户 → 你的应用 → Bot 选项卡。
- 在 Privileged Gateway Intents 下启用 Message Content Intent。
- 对于已验证的机器人(75+ 服务器),你需要通过门户申请此意图。
常见问题
是的,只要配置了适当的安全保障。该技能遵循 OpenClaw 的确认模型——写操作需要你的明确批准。管理操作(禁言、踢出、封禁)**默认禁用**,必须显式启用。建议从只读操作开始,随着对工作流的信心增强,再逐步启用写权限。
可以。机器人令牌授予对所有已邀请机器人的服务器的访问权限。你在每条命令中指定目标频道或服务器,代理会相应地路由操作。出于安全考虑,建议为不同的服务器创建具有不同权限级别的独立机器人——一个用于社区管理,另一个用于内部团队频道。
两种技能都支持 AI 驱动的消息通信,但它们面向不同的平台和使用场景。[Slack 技能](/skills/slack) 针对职场沟通进行了优化,包含 Slack Connect 和工作流等 Slack 特有功能。Discord 技能则围绕 Discord 的社区导向功能构建——帖子、投票、表情、贴纸和语音频道。如果你的团队同时使用两个平台,可以同时安装两个技能,让 OpenClaw 根据你的请求自动选择合适的技能。