🚀 快速安装
复制以下命令并运行,立即安装此 Skill:
npx skills add https://skills.sh/claude-office-skills/skills/discord-bot
💡 提示:需要 Node.js 和 NPM
Discord 机器人
构建用于社区管理、审核、通知和 AI 集成的 Discord 机器人。基于 n8n 的 Discord 工作流模板。
概述
此技能涵盖:
- 机器人设置和配置
- 斜杠命令和交互
- 审核自动化
- 通知工作流
- AI 驱动功能
机器人设置
创建 Discord 机器人
设置步骤:
1. 创建应用程序:
网址: https://discord.com/developers/applications
操作: "新建应用程序"
2. 创建机器人:
区域: "机器人"
操作: "添加机器人"
复制: 令牌
3. 配置意图:
启用:
- 在线状态意图
- 服务器成员意图
- 消息内容意图
4. 邀请机器人:
区域: "OAuth2 > URL 生成器"
范围: [机器人, 应用程序命令]
权限: [基于需求选择]
生成: 邀请链接
斜杠命令
斜杠命令:
- 名称: help
描述: "显示机器人帮助"
- 名称: ping
描述: "检查机器人延迟"
- 名称: poll
描述: "创建投票"
选项:
- 名称: question
类型: STRING
必填: true
- 名称: options
类型: STRING
必填: true
- 名称: remind
描述: "设置提醒"
选项:
- 名称: time
类型: STRING
必填: true
- 名称: message
类型: STRING
必填: true
审核机器人
自动审核
自动审核:
垃圾消息检测:
触发条件:
- 重复消息: 10秒内5条
- 大量提及: 超过5个
- 链接刷屏: 多个链接无文字
操作:
- 删除消息
- 禁言: 5分钟
- 记录到审核频道
敏感词过滤:
屏蔽词列表: [敏感词列表]
操作:
- 删除消息
- 警告用户
链接过滤:
允许的域名: [youtube.com, github.com]
操作: 不允许则删除
突击防御:
触发条件:
- 加入频率: 每分钟10人
操作:
- 启用验证
- 通知管理员
- 慢速模式: 启用
审核命令
审核命令:
/warn:
权限: 管理成员
操作: |
1. 记录警告
2. 私信用户并说明原因
3. 记录到审核频道
/timeout:
权限: 管理成员
选项: [用户, 时长, 原因]
操作: |
1. 应用禁言
2. 私信用户
3. 记录操作
/ban:
权限: 封禁成员
选项: [用户, 原因, 删除消息天数]
操作: |
1. 封禁用户
2. 记录到审核频道
3. 可选:发布到 #bans 频道
/warnings:
权限: 管理成员
操作: 显示用户的警告历史
社区功能
欢迎系统
欢迎系统:
成员加入时:
操作:
- 分配角色: "新成员"
- 发送私信:
模板: |
👋 欢迎来到 {服务器名称}!
以下是入门指南:
1. 阅读 #rules
2. 在 #roles 获取身份组
3. 在 #introductions 自我介绍
需要帮助?请在 #support 提问
- 发送欢迎消息:
频道: "#welcome"
模板: |
🎉 欢迎 {用户提及} 加入服务器!
你是第 #{成员数} 位成员
成员离开时:
频道: "#logs"
模板: "{用户} 离开了服务器。停留时长:{加入时长}"
身份组管理
表情反应身份组:
频道: "#roles"
消息: |
通过表情反应获取身份组:
🎮 - 玩家
💻 - 开发者
🎨 - 艺术家
📚 - 学生
映射:
"🎮": 玩家身份组ID
"💻": 开发者身份组ID
"🎨": 艺术家身份组ID
"📚": 学生身份组ID
等级身份组:
系统: 基于经验值
身份组:
- 等级: 5
角色: "活跃成员"
- 等级: 10
角色: "常驻成员"
- 等级: 25
角色: "资深成员"
- 等级: 50
角色: "传奇成员"
工单系统
工单系统:
创建工单:
触发: 按钮点击 或 /ticket
操作:
- 创建频道: "ticket-{用户}-{编号}"
- 设置权限: [用户, 支持团队]
- 发送初始消息:
模板: |
🎫 **支持工单**
用户: {用户提及}
创建时间: {时间戳}
请描述您的问题,团队成员将尽快为您提供帮助。
使用 ✅ 表情反应关闭此工单。
关闭工单:
触发: 表情反应 或 /close
操作:
- 保存记录: 到日志频道
- 删除频道: 5秒后
- 私信用户: 记录链接
通知工作流
n8n 集成
工作流: "Discord 通知"
触发器:
github_release:
操作:
频道: "#releases"
嵌入消息:
标题: "🚀 新版本发布:{version}"
描述: "{发布说明}"
颜色: 0x00ff00
字段:
- 名称: "下载"
值: "[链接]({下载链接})"
twitch_live:
操作:
频道: "#streams"
消息: "@everyone {主播} 正在直播!"
嵌入消息:
标题: "{直播标题}"
图片: "{缩略图}"
youtube_video:
操作:
频道: "#videos"
嵌入消息:
标题: "{视频标题}"
描述: "{描述}"
缩略图: "{缩略图}"
定时发布
定时发布:
每日问题:
时间: "每天上午10点"
频道: "#daily-discussion"
模板: |
🤔 **今日问题**
{随机问题}
在下方分享你的想法! 👇
每周总结:
时间: "周日下午6点"
频道: "#announcements"
模板: |
📊 **本周服务器总结**
新成员: {新成员数}
消息总数: {消息数}
最活跃频道: {热门频道}
贡献最多者: {最活跃用户}
感谢你成为社区的一部分! ❤️
AI 集成
AI 聊天机器人
AI 机器人:
触发: 提及 或 私信
配置:
模型: gpt-4
系统提示词: |
你是一个乐于助人的 Discord 机器人助手。
- 友好并使用 Discord 风格的语言
- 自然地使用表情符号
- 保持回复简洁
- 帮助解答与服务器相关的问题
功能:
- 对话记忆: 按频道记忆
- 频率限制: 每分钟10次
- 内容过滤: 启用
命令:
/ask:
描述: "向 AI 提问"
操作: AI 回复
/summarize:
描述: "总结近期消息"
操作: 总结频道历史
图像生成
图像生成:
命令: /imagine
选项:
- 提示词: 字符串(必填)
- 风格: 选择 [写实, 动漫, 卡通, 抽象]
- 尺寸: 选择 [方形, 竖屏, 横屏]
工作流:
1. 接收命令
2. 发送"正在生成"消息
3. 调用 DALL-E API
4. 发送结果并带按钮:
- 重新生成
- 放大
- 变体
嵌入消息和组件
富文本嵌入
嵌入消息:
标题: "服务器信息"
描述: "欢迎来到我们的社区!"
颜色: 0x5865F2 # Discord 紫色
缩略图:
链接: "{服务器图标}"
字段:
- 名称: "📊 成员"
值: "{成员数}"
内联: true
- 名称: "💬 频道"
值: "{频道数}"
内联: true
- 名称: "🎭 身份组"
值: "{身份组数}"
内联: true
- 名称: "📅 创建于"
值: "{创建日期}"
内联: false
页脚:
文本: "最后更新"
图标链接: "{机器人头像}"
时间戳: "{当前时间}"
按钮组件
按钮:
第一行:
- 类型: 按钮
样式: 主要
标签: "接受规则"
自定义ID: "accept_rules"
- 类型: 按钮
样式: 次要
标签: "查看规则"
自定义ID: "view_rules"
第二行:
- 类型: 按钮
样式: 链接
标签: "网站"
链接: "https://example.com"
- 类型: 按钮
样式: 危险
标签: "离开"
自定义ID: "leave_confirm"
输出示例
请求:”创建一个 Discord 欢迎机器人”
输出:
# Discord 欢迎机器人
## 配置
```yaml
事件:
- 成员加入
- 成员离开
欢迎消息
// 成员加入时
const welcomeEmbed = {
title: '👋 欢迎来到服务器!',
description: `嘿 ${member.user},欢迎来到 **${guild.name}**!`,
color: 0x00ff00,
fields: [
{ name: '📜 规则', value: '查看 <#规则频道>', inline: true },
{ name: '🎭 身份组', value: '在 <#身份组频道> 获取身份组', inline: true },
{ name: '💬 聊天', value: '在 <#综合频道> 打个招呼', inline: true }
],
thumbnail: { url: member.user.displayAvatarURL() },
footer: { text: `第 #${guild.memberCount} 位成员` }
};
welcomeChannel.send({ embeds: [welcomeEmbed] });
自动分配身份组
// 分配"新成员"身份组
await member.roles.add(newMemberRole);
私信欢迎
// 发送包含服务器信息的私信
await member.send({
content: `欢迎来到 ${guild.name}!这里是您需要了解的一切...`,
embeds: [infoEmbed]
});
n8n 工作流
触发器: Discord - 成员加入时
操作:
- Discord - 发送频道消息(欢迎)
- Discord - 添加身份组
- Discord - 发送私信
- Google Sheets - 记录新成员
---
*Discord 机器人技能 - Claude 办公技能套件的一部分*
📄 原始文档
完整文档(英文):
https://skills.sh/claude-office-skills/skills/discord-bot
💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)