用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/JSGforever/skillguard --skill discord命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Monad blockchain development tutor and builder. Triggers on "build", "create", "dApp", "smart contract", "Solidity", "DeFi", "Monad", "web3", "MON", or any blockchain development task. Covers Foundry-first workflow, Scaffold-Monad, parallel execution EVM, and Monad-specific deployment patterns.
Manage Uniswap V4 LP positions on Base. Add, remove, monitor, auto-compound, and harvest fees — including Clanker protocol fee claims.
Boilerplate templates for Claude Code extensions. Triggers on: create agent, new skill, command template, hook script, extension scaffold.
基于 SOC 职业分类
正在显示 SKILL.md
| name | discord |
| description | Post announcements and messages to Discord channels. Use when sharing updates, releases, or team communications. |
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.
Run the setup script to authenticate via Discord:
node .claude/skills/discord/setup.mjs https://discord-proxy.civitai.com
This will:
.envIf you manage the bot directly and need to bypass the proxy:
.env.example to .env in this skill directoryDISCORD_BOT_TOKENDISCORD_GUILD for auto-detectioncp .claude/skills/discord/.env.example .claude/skills/discord/.env
node .claude/skills/discord/query.mjs <command> [options]
| Command | Description |
|---|---|
guilds | List all guilds (servers) the bot is in |
channels [guild] | List text channels in a guild |
send <channel> "message" | Send a plain text message |
announce <channel> "message" | Send a formatted announcement embed |
me | Show bot information |
users | List all members in the guild |
user <name|id> | Get user info and mention format |
roles | List all roles in the guild |
role <name|id> | Get role info and mention format |
messages <channel> | Get recent messages from a channel |
edit <msg_link> "content" | Edit a message (bot's own only) |
delete <msg_link> | Delete a message |
reply <msg_link> "content" | Reply to a message |
rich-embed <channel> | Send embed with structured fields |
react <msg_link> <emoji> | Add reaction to a message |
unreact <msg_link> <emoji> | Remove reaction from a message |
pin <msg_link> | Pin a message |
unpin <msg_link> | Unpin a message |
pins <channel> | List pinned messages in a channel |
thread <channel> --thread "name" | Create a thread |
dm <user> "message" | Send a direct message to a user |
dm-messages <user> | Read DM history with a user |
| Flag | Description |
|---|---|
--json | Output raw JSON response |
--title "text" | Set embed title |
--color <hex> | Set embed color (default: #1E88E5 blue) |
--footer "text" | Set embed footer text |
--url "link" | Add a URL to the embed title |
--limit, -n <N> | Limit results (users: default 100, messages: default 20) |
--field "Name|Value|inline" | Add field to rich embed (repeatable) |
--thumbnail "url" | Add thumbnail image to embed |
--image "url" | Add large image to embed |
--thread "name" | Thread name (for thread command) |
# Send to channel by name
node .claude/skills/discord/query.mjs send dev-general "Deployment complete!"
# Send to channel by ID
node .claude/skills/discord/query.mjs send 966054537880289330 "Build passed"
# Basic announcement with auto-formatting
node .claude/skills/discord/query.mjs announce dev-alerts "New feature deployed!"
# Announcement with custom title and color
node .claude/skills/discord/query.mjs announce deployments "v5.0.1381 released" --title "Release" --color "#00C853"
# Structured 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"
# Edit using message link
node .claude/skills/discord/query.mjs edit "https://discord.com/channels/955.../966.../123..." "Updated content"
# Edit using channel + message ID
node .claude/skills/discord/query.mjs edit dev-general 1234567890 "Updated content"
# Delete using message link
node .claude/skills/discord/query.mjs delete "https://discord.com/channels/955.../966.../123..."
# Delete using channel + message ID
node .claude/skills/discord/query.mjs delete dev-general 1234567890
# Reply using message link
node .claude/skills/discord/query.mjs reply "https://discord.com/channels/955.../966.../123..." "Thanks for the update!"
# Reply using channel + message ID
node .claude/skills/discord/query.mjs reply dev-general 1234567890 "Got it!"
# Add a reaction (use Unicode emoji)
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"
# Pin a message
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/..."
# List pinned messages
node .claude/skills/discord/query.mjs pins dev-general
# Create thread from a message
node .claude/skills/discord/query.mjs thread "https://discord.com/channels/..." --thread "Discussion"
# Create thread in channel (no parent message)
node .claude/skills/discord/query.mjs thread dev-general --thread "New Topic"
# Send DM to a user by name
node .claude/skills/discord/query.mjs dm justin "Hey, can you review this PR?"
# Send DM to a user by ID
node .claude/skills/discord/query.mjs dm 303445765865603073 "Quick question about the deployment"
# Read DM history with a user
node .claude/skills/discord/query.mjs dm-messages justin
# Read last 50 DMs
node .claude/skills/discord/query.mjs dm-messages justin --limit 50
# List users
node .claude/skills/discord/query.mjs users --limit 50
# Find user to get mention format
node .claude/skills/discord/query.mjs user justin
# Output: Mention: <@303445765865603073>
# List roles
node .claude/skills/discord/query.mjs roles
# Find role to get mention format
node .claude/skills/discord/query.mjs role devs
# Output: Mention: <@&955572624992382996>
# Mention a user in a message
node .claude/skills/discord/query.mjs send dev-general "<@303445765865603073> check this PR"
# Mention a role
node .claude/skills/discord/query.mjs announce dev-general "<@&955572624992382996> new release!" --title "Attention Devs"
# Get last 20 messages (default)
node .claude/skills/discord/query.mjs messages dev-general
# Get last 50 messages
node .claude/skills/discord/query.mjs messages dev-general --limit 50
Most commands accept Discord message links directly:
https://discord.com/channels/GUILD_ID/CHANNEL_ID/MESSAGE_IDCommands that accept message links: edit, delete, reply, react, unreact, pin, unpin, thread
Channel names are matched flexibly:
dev-generaldev-gen matches dev-generalteam matches teamDEV-GENERAL matches dev-generaldeployments or dev-alertsdev-generalteam or project-specific channelsuser command, then @mention themrole command, then @mention themmessages commandannounce for important updates (creates rich embed)send for quick messages or automated notificationsrich-embed for structured data with multiple fields--json for scripting or piping to other toolsThe bot needs these Discord permissions:
View Channels - to list and find channelsSend Messages - to post messagesEmbed Links - for rich announcementsRead Message History - to read channel messagesAdd Reactions - to add reactionsManage Messages - to pin/unpin and delete messagesCreate Public Threads - to create threads