add-discord
Add Discord bot channel integration via Chat SDK.
pinned to #a30547fupdated 2 weeks ago
Ask your AI client: “install skills/add-discord”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/add-discordmetahub onboarded this repo on the author's behalf.
If you own github.com/nanocoai/nanoclaw on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
30,187
Last commit
2 weeks ago
Latest release
published
- #ai-agents
- #ai-assistant
- #claude-code
- #claude-skills
- #openclaw
About this skill
Pulled from SKILL.md at publish time.
Adds Discord bot support via the Chat SDK bridge.
Evaluation report
WarningsAutomated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.a30547f· 2 weeks ago
Documentation
41Description qualitywarn
8 words · 49 chars — skills use the description as their trigger; aim higher
Aim for 15+ words and include trigger phrases like “use this skill when …”.
README is present and substantial
15,207 chars · 13 sections · 7 code blocks
Tags / topics declared
5 total — ai-agents, ai-assistant, claude-code, claude-skills, openclaw
README has usage / example sections
found: Quick Start · Usage
Homepage / docs URL declared
https://nanoclaw.dev
Release history
1- releasecurrenta30547fwarn2 weeks ago
Contents
Adds Discord bot support via the Chat SDK bridge.
Install
NanoClaw doesn't ship channels in trunk. This skill copies the Discord adapter in from the channels branch.
Pre-flight (idempotent)
Skip to Credentials if all of these are already in place:
src/channels/discord.tsexistssrc/channels/discord-registration.test.tsexistssrc/channels/index.tscontainsimport './discord.js';@chat-adapter/discordis listed inpackage.jsondependencies
Otherwise continue. Every step below is safe to re-run.
1. Fetch the channels branch
git fetch origin channels
2. Copy the adapter and its registration test
git show origin/channels:src/channels/discord.ts > src/channels/discord.ts
git show origin/channels:src/channels/discord-registration.test.ts > src/channels/discord-registration.test.ts
3. Append the self-registration import
Append to src/channels/index.ts (skip if the line is already present):
import './discord.js';
4. Install the adapter package (pinned)
pnpm install @chat-adapter/[email protected]
5. Build and validate
pnpm run build
pnpm exec vitest run src/channels/discord-registration.test.ts
Both must be clean before proceeding. discord-registration.test.ts is the one integration test: it imports the real channel barrel and asserts the registry contains discord. It goes red if the import './discord.js'; line is deleted or drifts, if the barrel fails to evaluate, or if @chat-adapter/discord isn't installed (the import throws) — so it also implicitly verifies the dependency from step 4. The adapter also calls core's createChatSdkBridge(...); that typed core-API consumption is guarded by pnpm run build.
Credentials
Create Discord Bot
- Go to the Discord Developer Portal
- Click New Application and give it a name (e.g., "NanoClaw Assistant")
- From the General Information tab, copy the Application ID and Public Key
- Go to the Bot tab and click Add Bot if needed
- Copy the Bot Token (click Reset Token if you need a new one — you can only see it once)
- Under Privileged Gateway Intents, enable Message Content Intent
- Go to OAuth2 > URL Generator:
- Scopes: select
bot - Bot Permissions: select
Send Messages,Read Message History,Add Reactions,Attach Files,Use Slash Commands
- Scopes: select
- Copy the generated URL and open it in your browser to invite the bot to your server
Configure environment
All three values are required — the adapter will fail to start without DISCORD_PUBLIC_KEY and DISCORD_APPLICATION_ID.
Add to .env:
DISCORD_BOT_TOKEN=your-bot-token
DISCORD_APPLICATION_ID=your-application-id
DISCORD_PUBLIC_KEY=your-public-key
Sync to container: mkdir -p data/env && cp .env data/env/env
Next Steps
If you're in the middle of /setup, return to the setup flow now.
Otherwise, run /manage-channels to wire this channel to an agent group.
Channel Info
- type:
discord - terminology: Discord has "servers" (also called "guilds") containing "channels." Text channels start with #. The bot can also receive direct messages.
- how-to-find-id: Enable Developer Mode in Discord (Settings > App Settings > Advanced > Developer Mode). Then right-click a server and select "Copy Server ID" for the guild ID, and right-click the text channel and select "Copy Channel ID." The platform ID format used in registration is
discord:{guildId}:{channelId}— both IDs are required. - supports-threads: yes
- typical-use: Interactive chat — server channels or direct messages
- default-isolation: Same agent group for your personal server. Separate agent group for servers with different communities or where different members have different information boundaries.
Reviews
No reviews yet. Be the first.
Related
Planning With Files
Claude Code skill implementing Manus-style persistent markdown planning — the workflow pattern behind the $2B acquisition.
orchestration-patterns
>
migration-patterns
>
mh install skills/add-discord