discordUse when you need to control Discord from Clawdbot via the discord tool: send messages, react, post or upload stickers, upload emojis, run polls, manage threads/pins/search, fetch permissions or member/role/channel info, or handle moderation actions in Discord DMs or channels.
Install via ClawdBot CLI:
clawdbot install steipete/discordUse discord to manage messages, reactions, threads, polls, and moderation. You can disable groups via discord.actions.* (defaults to enabled, except roles/moderation). The tool uses the bot token configured for Clawdbot.
channelId, messageId, and an emoji.to target (channel: or user:). Optional content text.question plus 2β10 answers.mediaUrl with file:///path for local files or https://... for remote.guildId, name, mediaUrl, optional roleIds (limit 256KB, PNG/JPG/GIF).guildId, name, description, tags, mediaUrl (limit 512KB, PNG/APNG/Lottie JSON).Message context lines include discord message id and channel fields you can reuse directly.
Note: sendMessage uses to: "channel: format, not channelId. Other actions like react, readMessages, editMessage use channelId directly.
{
"action": "react",
"channelId": "123",
"messageId": "456",
"emoji": "β
"
}
{
"action": "reactions",
"channelId": "123",
"messageId": "456",
"limit": 100
}
{
"action": "sticker",
"to": "channel:123",
"stickerIds": ["9876543210"],
"content": "Nice work!"
}
to can be user: for DMs.{
"action": "emojiUpload",
"guildId": "999",
"name": "party_blob",
"mediaUrl": "file:///tmp/party.png",
"roleIds": ["222"]
}
roleIds is optional; omit to make the emoji available to everyone.{
"action": "stickerUpload",
"guildId": "999",
"name": "clawdbot_wave",
"description": "Clawdbot waving hello",
"tags": "π",
"mediaUrl": "file:///tmp/wave.png"
}
name, description, and tags.{
"action": "poll",
"to": "channel:123",
"question": "Lunch?",
"answers": ["Pizza", "Sushi", "Salad"],
"allowMultiselect": false,
"durationHours": 24,
"content": "Vote now"
}
durationHours defaults to 24; max 32 days (768 hours).{
"action": "permissions",
"channelId": "123"
}
Use discord.actions.* to disable action groups:
reactions (react + reactions list + emojiList)stickers, polls, permissions, messages, threads, pins, searchemojiUploads, stickerUploadsmemberInfo, roleInfo, channelInfo, voiceStatus, eventsroles (role add/remove, default false)moderation (timeout/kick/ban, default false){
"action": "readMessages",
"channelId": "123",
"limit": 20
}
{
"action": "sendMessage",
"to": "channel:123",
"content": "Hello from Clawdbot"
}
With media attachment:
{
"action": "sendMessage",
"to": "channel:123",
"content": "Check out this audio!",
"mediaUrl": "file:///tmp/audio.mp3"
}
to uses format channel: or user: for DMs (not channelId!)mediaUrl supports local files (file:///path/to/file) and remote URLs (https://...)replyTo with a message ID to reply to a specific message{
"action": "editMessage",
"channelId": "123",
"messageId": "456",
"content": "Fixed typo"
}
{
"action": "deleteMessage",
"channelId": "123",
"messageId": "456"
}
{
"action": "threadCreate",
"channelId": "123",
"name": "Bug triage",
"messageId": "456"
}
{
"action": "threadList",
"guildId": "999"
}
{
"action": "threadReply",
"channelId": "777",
"content": "Replying in thread"
}
{
"action": "pinMessage",
"channelId": "123",
"messageId": "456"
}
{
"action": "listPins",
"channelId": "123"
}
{
"action": "searchMessages",
"guildId": "999",
"content": "release notes",
"channelIds": ["123", "456"],
"limit": 10
}
{
"action": "memberInfo",
"guildId": "999",
"userId": "111"
}
{
"action": "roleInfo",
"guildId": "999"
}
{
"action": "emojiList",
"guildId": "999"
}
{
"action": "roleAdd",
"guildId": "999",
"userId": "111",
"roleId": "222"
}
{
"action": "channelInfo",
"channelId": "123"
}
{
"action": "channelList",
"guildId": "999"
}
{
"action": "voiceStatus",
"guildId": "999",
"userId": "111"
}
{
"action": "eventList",
"guildId": "999"
}
{
"action": "timeout",
"guildId": "999",
"userId": "111",
"durationMinutes": 10
}
Keep it conversational! Discord is a chat platform, not documentation.
| text |)## Headers for casual chat (use bold or CAPS for emphasis)code for technical terms<> to suppress embedsβ Bad:
I'd be happy to help with that! Here's a comprehensive overview of the versioning strategies available:
## Semantic Versioning
Semver uses MAJOR.MINOR.PATCH format where...
## Calendar Versioning
CalVer uses date-based versions like...
β Good:
versioning options: semver (1.2.3), calver (2026.01.04), or yolo (`latest` forever). what fits your release cadence?
Generated Feb 27, 2026
Automate reactions and polls to gauge member sentiment in Discord communities, such as reacting with emojis to user feedback or running quick polls for event scheduling. This helps maintain active participation and gather insights without manual intervention.
Use moderation actions like timeouts or message deletions to enforce community guidelines, combined with sending DMs for warnings or support responses. This streamlines moderation workflows and ensures timely handling of rule violations.
Post stickers or custom emojis to celebrate project milestones, create polls for decision-making in team channels, and manage threads for focused discussions. Enhances internal communication and boosts team morale in remote work settings.
Send targeted messages with media attachments to promote events, run polls to collect audience preferences, and upload branded stickers or emojis for campaigns. Drives user interaction and brand visibility in Discord marketing channels.
Automate responses to common queries by sending messages in DMs or channels, use polls to gather feedback, and manage pins or search for tracking issues. Reduces response times and improves service efficiency for customer support teams.
Offer a subscription-based service that uses this skill to automate Discord community tasks like moderation, engagement polls, and content updates. Revenue comes from monthly fees scaled by server size or feature tiers, targeting businesses with active Discord communities.
Develop and deploy a Discord bot leveraging this skill, offering basic features for free and premium features like advanced moderation or custom emoji uploads for a fee. Revenue is generated through one-time purchases or tiered subscriptions for enhanced capabilities.
Provide consulting and implementation services to businesses needing Discord automation, such as setting up polls, managing threads, or integrating with other tools. Revenue is earned through project-based fees or retainer contracts for ongoing management and support.
π¬ Integration Tip
Ensure the bot token is properly configured in Clawdbot and test actions in a private channel first to avoid unintended disruptions in live Discord servers.
iMessage/SMS CLI for listing chats, history, watch, and sending.
Use when you need to control Slack from Clawdbot via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
Send WhatsApp messages to other people or search/sync WhatsApp history via the wacli CLI (not for normal user chats).
Build or update the BlueBubbles external channel plugin for Clawdbot (extension package, REST send/probe, webhook inbound).
OpenClaw skill for designing Telegram Bot API workflows and command-driven conversations using direct HTTPS requests (no SDKs).
Build and manage Telegram bots via the Telegram Bot API. Create bots, send messages, handle webhooks, manage groups and channels.