discord
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseDiscord
Discord
Post messages and announcements to Discord channels via the REST API. Navigate channels by name, send formatted messages with embeds, manage reactions, threads, and more.
通过REST API向Discord频道发送消息和公告。支持按名称查找频道、发送带嵌入内容的格式化消息,还能管理表情反应、话题线程等更多功能。
Setup
配置步骤
Run the setup script to authenticate via Discord:
bash
node .claude/skills/discord/setup.mjs https://discord-proxy.civitai.comThis will:
- Open your browser for Discord authentication
- Verify you're in the team server
- Save your personal API token to
.env
运行设置脚本以通过Discord进行身份验证:
bash
node .claude/skills/discord/setup.mjs https://discord-proxy.civitai.com该脚本会:
- 打开浏览器进行Discord身份验证
- 验证你是否在团队服务器中
- 将你的个人API令牌保存到文件
.env
Admin Only: Direct Bot Token
管理员专属:直接使用Bot令牌
If you manage the bot directly and need to bypass the proxy:
- Copy to
.env.examplein this skill directory.env - Uncomment and set
DISCORD_BOT_TOKEN - Optionally set for auto-detection
DISCORD_GUILD
bash
cp .claude/skills/discord/.env.example .claude/skills/discord/.env如果你直接管理Bot并需要绕过代理:
- 将该技能目录下的复制为
.env.example.env - 取消注释并设置
DISCORD_BOT_TOKEN - 可选设置以实现自动检测
DISCORD_GUILD
bash
cp .claude/skills/discord/.env.example .claude/skills/discord/.envRunning Commands
运行命令
bash
node .claude/skills/discord/query.mjs <command> [options]bash
node .claude/skills/discord/query.mjs <command> [options]Commands
命令列表
| Command | Description |
|---|---|
| List all guilds (servers) the bot is in |
| List text channels in a guild |
| Send a plain text message |
| Send a formatted announcement embed |
| Show bot information |
| List all members in the guild |
| Get user info and mention format |
| List all roles in the guild |
| Get role info and mention format |
| Get recent messages from a channel |
| Edit a message (bot's own only) |
| Delete a message |
| Reply to a message |
| Send embed with structured fields |
| Add reaction to a message |
| Remove reaction from a message |
| Pin a message |
| Unpin a message |
| List pinned messages in a channel |
| Create a thread |
| Send a direct message to a user |
| Read DM history with a user |
| 命令 | 描述 |
|---|---|
| 列出机器人加入的所有Guild(服务器) |
| 列出指定Guild中的文本频道 |
| 发送纯文本消息 |
| 发送带格式化嵌入内容的公告 |
| 显示Bot的信息 |
| 列出Guild中的所有成员 |
| 获取用户信息和提及格式 |
| 列出Guild中的所有角色 |
| 获取角色信息和提及格式 |
| 获取频道中的近期消息 |
| 编辑消息(仅能编辑Bot自身发送的消息) |
| 删除消息 |
| 回复消息 |
| 发送带结构化字段的嵌入内容 |
| 为消息添加表情反应 |
| 移除消息的表情反应 |
| 置顶消息 |
| 取消置顶消息 |
| 列出频道中的置顶消息 |
| 创建话题线程 |
| 向用户发送私信 |
| 查看与用户的私信历史 |
Options
选项参数
| Flag | Description |
|---|---|
| Output raw JSON response |
| Set embed title |
| Set embed color (default: #1E88E5 blue) |
| Set embed footer text |
| Add a URL to the embed title |
| Limit results (users: default 100, messages: default 20) |
| Add field to rich embed (repeatable) |
| Add thumbnail image to embed |
| Add large image to embed |
| Thread name (for thread command) |
| 标识 | 描述 |
|---|---|
| 输出原始JSON响应 |
| 设置嵌入内容的标题 |
| 设置嵌入内容的颜色(默认:#1E88E5 蓝色) |
| 设置嵌入内容的页脚文本 |
| 为嵌入内容的标题添加链接 |
| 限制结果数量(用户列表默认100条,消息默认20条) |
| 为富嵌入内容添加字段(可重复使用) |
| 为嵌入内容添加缩略图 |
| 为嵌入内容添加大图 |
| 话题线程名称(仅用于thread命令) |
Examples
使用示例
Send Messages
发送消息
bash
undefinedbash
undefinedSend to channel by name
按频道名称发送消息
node .claude/skills/discord/query.mjs send dev-general "Deployment complete!"
node .claude/skills/discord/query.mjs send dev-general "部署完成!"
Send to channel by ID
按频道ID发送消息
node .claude/skills/discord/query.mjs send 966054537880289330 "Build passed"
undefinednode .claude/skills/discord/query.mjs send 966054537880289330 "构建通过"
undefinedSend Announcements
发送公告
bash
undefinedbash
undefinedBasic announcement with auto-formatting
基础公告,自动格式化
node .claude/skills/discord/query.mjs announce dev-alerts "New feature deployed!"
node .claude/skills/discord/query.mjs announce dev-alerts "新功能已部署!"
Announcement with custom title and color
自定义标题和颜色的公告
node .claude/skills/discord/query.mjs announce deployments "v5.0.1381 released" --title "Release" --color "#00C853"
undefinednode .claude/skills/discord/query.mjs announce deployments "v5.0.1381版本已发布" --title "版本发布" --color "#00C853"
undefinedRich Embeds with Fields
带字段的富嵌入内容
bash
undefinedbash
undefinedStructured release announcement
结构化的版本发布公告
node .claude/skills/discord/query.mjs rich-embed dev-general "New release is live!"
--title "Release v5.0.1382"
--field "Version|5.0.1382|inline"
--field "Author|@justin|inline"
--field "Changes|3 files modified"
--footer "Civitai"
--color "#00C853"
--title "Release v5.0.1382"
--field "Version|5.0.1382|inline"
--field "Author|@justin|inline"
--field "Changes|3 files modified"
--footer "Civitai"
--color "#00C853"
undefinednode .claude/skills/discord/query.mjs rich-embed dev-general "新版本已上线!"
--title "版本发布 v5.0.1382"
--field "版本号|5.0.1382|inline"
--field "作者|@justin|inline"
--field "变更内容|修改了3个文件"
--footer "Civitai"
--color "#00C853"
--title "版本发布 v5.0.1382"
--field "版本号|5.0.1382|inline"
--field "作者|@justin|inline"
--field "变更内容|修改了3个文件"
--footer "Civitai"
--color "#00C853"
undefinedEdit Messages
编辑消息
bash
undefinedbash
undefinedEdit using message link
使用消息链接编辑
node .claude/skills/discord/query.mjs edit "https://discord.com/channels/955.../966.../123..." "Updated content"
node .claude/skills/discord/query.mjs edit "https://discord.com/channels/955.../966.../123..." "更新后的内容"
Edit using channel + message ID
使用频道名称+消息ID编辑
node .claude/skills/discord/query.mjs edit dev-general 1234567890 "Updated content"
undefinednode .claude/skills/discord/query.mjs edit dev-general 1234567890 "更新后的内容"
undefinedDelete Messages
删除消息
bash
undefinedbash
undefinedDelete using message link
使用消息链接删除
node .claude/skills/discord/query.mjs delete "https://discord.com/channels/955.../966.../123..."
node .claude/skills/discord/query.mjs delete "https://discord.com/channels/955.../966.../123..."
Delete using channel + message ID
使用频道名称+消息ID删除
node .claude/skills/discord/query.mjs delete dev-general 1234567890
undefinednode .claude/skills/discord/query.mjs delete dev-general 1234567890
undefinedReply to Messages
回复消息
bash
undefinedbash
undefinedReply using message link
使用消息链接回复
node .claude/skills/discord/query.mjs reply "https://discord.com/channels/955.../966.../123..." "Thanks for the update!"
node .claude/skills/discord/query.mjs reply "https://discord.com/channels/955.../966.../123..." "感谢你的更新!"
Reply using channel + message ID
使用频道名称+消息ID回复
node .claude/skills/discord/query.mjs reply dev-general 1234567890 "Got it!"
undefinednode .claude/skills/discord/query.mjs reply dev-general 1234567890 "收到!"
undefinedReactions
表情反应
bash
undefinedbash
undefinedAdd a reaction (use Unicode emoji)
添加表情反应(使用Unicode表情)
node .claude/skills/discord/query.mjs react "https://discord.com/channels/..." "U+2705"
node .claude/skills/discord/query.mjs react dev-general 1234567890 "U+1F44D"
node .claude/skills/discord/query.mjs react "https://discord.com/channels/..." "U+2705"
node .claude/skills/discord/query.mjs react dev-general 1234567890 "U+1F44D"
Remove a reaction
移除表情反应
node .claude/skills/discord/query.mjs unreact "https://discord.com/channels/..." "U+2705"
undefinednode .claude/skills/discord/query.mjs unreact "https://discord.com/channels/..." "U+2705"
undefinedPin/Unpin Messages
置顶/取消置顶消息
bash
undefinedbash
undefinedPin a message
置顶消息
node .claude/skills/discord/query.mjs pin "https://discord.com/channels/..."
node .claude/skills/discord/query.mjs pin "https://discord.com/channels/..."
Unpin a message
取消置顶消息
node .claude/skills/discord/query.mjs unpin "https://discord.com/channels/..."
node .claude/skills/discord/query.mjs unpin "https://discord.com/channels/..."
List pinned messages
列出频道中的置顶消息
node .claude/skills/discord/query.mjs pins dev-general
undefinednode .claude/skills/discord/query.mjs pins dev-general
undefinedThreads
话题线程
bash
undefinedbash
undefinedCreate thread from a message
基于消息创建话题线程
node .claude/skills/discord/query.mjs thread "https://discord.com/channels/..." --thread "Discussion"
node .claude/skills/discord/query.mjs thread "https://discord.com/channels/..." --thread "讨论"
Create thread in channel (no parent message)
在频道中创建话题线程(无父消息)
node .claude/skills/discord/query.mjs thread dev-general --thread "New Topic"
undefinednode .claude/skills/discord/query.mjs thread dev-general --thread "新话题"
undefinedDirect Messages
私信功能
bash
undefinedbash
undefinedSend DM to a user by name
按用户名发送私信
node .claude/skills/discord/query.mjs dm justin "Hey, can you review this PR?"
node .claude/skills/discord/query.mjs dm justin "嘿,能帮忙审核这个PR吗?"
Send DM to a user by ID
按用户ID发送私信
node .claude/skills/discord/query.mjs dm 303445765865603073 "Quick question about the deployment"
node .claude/skills/discord/query.mjs dm 303445765865603073 "关于部署的快速问题"
Read DM history with a user
查看与用户的私信历史
node .claude/skills/discord/query.mjs dm-messages justin
node .claude/skills/discord/query.mjs dm-messages justin
Read last 50 DMs
查看最近50条私信
node .claude/skills/discord/query.mjs dm-messages justin --limit 50
undefinednode .claude/skills/discord/query.mjs dm-messages justin --limit 50
undefinedUsers and Roles
用户与角色管理
bash
undefinedbash
undefinedList users
列出用户
node .claude/skills/discord/query.mjs users --limit 50
node .claude/skills/discord/query.mjs users --limit 50
Find user to get mention format
查找用户以获取提及格式
node .claude/skills/discord/query.mjs user justin
node .claude/skills/discord/query.mjs user justin
Output: Mention: <@303445765865603073>
输出:提及格式: <@303445765865603073>
List roles
列出角色
node .claude/skills/discord/query.mjs roles
node .claude/skills/discord/query.mjs roles
Find role to get mention format
查找角色以获取提及格式
node .claude/skills/discord/query.mjs role devs
node .claude/skills/discord/query.mjs role devs
Output: Mention: <@&955572624992382996>
输出:提及格式: <@&955572624992382996>
undefinedundefinedMention Users and Roles
提及用户与角色
bash
undefinedbash
undefinedMention a user in a message
在消息中提及用户
node .claude/skills/discord/query.mjs send dev-general "<@303445765865603073> check this PR"
node .claude/skills/discord/query.mjs send dev-general "<@303445765865603073> 请查看这个PR"
Mention a role
在消息中提及角色
node .claude/skills/discord/query.mjs announce dev-general "<@&955572624992382996> new release!" --title "Attention Devs"
undefinednode .claude/skills/discord/query.mjs announce dev-general "<@&955572624992382996> 新版本发布!" --title "开发者注意"
undefinedRead Messages
读取消息
bash
undefinedbash
undefinedGet last 20 messages (default)
获取最近20条消息(默认)
node .claude/skills/discord/query.mjs messages dev-general
node .claude/skills/discord/query.mjs messages dev-general
Get last 50 messages
获取最近50条消息
node .claude/skills/discord/query.mjs messages dev-general --limit 50
undefinednode .claude/skills/discord/query.mjs messages dev-general --limit 50
undefinedMessage Links
消息链接说明
Most commands accept Discord message links directly:
- Format:
https://discord.com/channels/GUILD_ID/CHANNEL_ID/MESSAGE_ID - Right-click any message in Discord > "Copy Message Link"
Commands that accept message links: , , , , , , ,
editdeletereplyreactunreactpinunpinthread大多数命令支持直接使用Discord消息链接:
- 格式:
https://discord.com/channels/GUILD_ID/CHANNEL_ID/MESSAGE_ID - 获取方式:在Discord中右键任意消息 > "复制消息链接"
支持消息链接的命令:, , , , , , ,
editdeletereplyreactunreactpinunpinthreadChannel Name Matching
频道名称匹配规则
Channel names are matched flexibly:
- Exact match:
dev-general - Partial match: matches
dev-gendev-general - With or without emoji prefix: matches
teamteam - Case insensitive: matches
DEV-GENERALdev-general
频道名称匹配灵活:
- 精确匹配:
dev-general - 部分匹配:会匹配
dev-gendev-general - 忽略表情前缀:会匹配
team(无论是否带表情前缀)team - 大小写不敏感:会匹配
DEV-GENERALdev-general
When to Use
适用场景
- Deployments: Announce releases to or
deploymentsdev-alerts - Bug fixes: Share fixes with the team in
dev-general - Feature announcements: Post to relevant channels
- Team updates: Share progress in or project-specific channels
team - Automated notifications: Post from CI/CD or scripts
- Mentioning users: Look up user IDs with command, then @mention them
user - Mentioning roles: Look up role IDs with command, then @mention them
role - Reading context: Check recent messages with command
messages - Reactions: Acknowledge messages with emoji reactions
- Organizing discussions: Create threads for focused conversations
- Direct messages: Send private DMs to team members, read DM history
- 部署通知:向或
deployments频道发布版本发布公告dev-alerts - Bug修复:在频道与团队分享修复内容
dev-general - 功能发布:在相关频道发布新功能公告
- 团队更新:在频道或项目专属频道分享进度
team - 自动化通知:从CI/CD或脚本中发布通知
- 提及用户:使用命令查找用户ID,然后@提及对方
user - 提及角色:使用命令查找角色ID,然后@提及角色
role - 查看上下文:使用命令查看频道近期消息
messages - 表情互动:使用表情反应确认消息已读
- 组织讨论:创建话题线程进行聚焦讨论
- 私信沟通:向团队成员发送私人消息,查看私信历史
Tips
使用技巧
- Use for important updates (creates rich embed)
announce - Use for quick messages or automated notifications
send - Use for structured data with multiple fields
rich-embed - Channel names are cached after first lookup
- Bot must have appropriate permissions in target channel
- Use for scripting or piping to other tools
--json - Message links work across all message-targeting commands
- 重要更新使用命令(会生成富嵌入内容)
announce - 快速消息或自动化通知使用命令
send - 结构化数据使用命令添加多个字段
rich-embed - 频道名称在首次查找后会被缓存
- Bot需要在目标频道拥有相应权限
- 脚本或管道操作使用参数
--json - 所有针对消息的命令都支持消息链接
Permissions Required
所需权限
The bot needs these Discord permissions:
- - to list and find channels
View Channels - - to post messages
Send Messages - - for rich announcements
Embed Links - - to read channel messages
Read Message History - - to add reactions
Add Reactions - - to pin/unpin and delete messages
Manage Messages - - to create threads
Create Public Threads - Server Members Intent - enabled in Discord Developer Portal (for listing members)
Bot需要以下Discord权限:
- - 列出和查找频道
View Channels - - 发送消息
Send Messages - - 发送富嵌入公告
Embed Links - - 读取频道消息
Read Message History - - 添加表情反应
Add Reactions - - 置顶/取消置顶和删除消息
Manage Messages - - 创建话题线程
Create Public Threads - Server Members Intent - 在Discord开发者门户中启用(用于列出成员)