Agent skill

Add Discord

by sbusso in sbusso/claudeclaw

Add Discord bot channel integration to ClaudeClaw. An agent skill from sbusso/claudeclaw.

MITAuto-check: notesProductivity & Automation

Install Add Discord

skills CLI
$ npx skills add sbusso/claudeclaw --skill add-discord -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install sbusso/claudeclaw add-discord --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/add-discord .claude/skills/add-discord && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
add-discord
GitHub stars
194
Token cost
~1.6k tokens
SKILL.md length
725 words
Files
1
Skills in repo
23
Repo updated
First seen
Licence
MIT

At a glance

Add Discord bot channel integration to ClaudeClaw. An agent skill from sbusso/claudeclaw.

  • Works in 5 steps: Pre-flight → Apply Code Changes → Setup → …
  • Tasks that involve Messaging and chat bots
  • SKILL.md covers Phase 1: Pre-flight, Phase 2: Apply Code Changes, Phase 3: Setup and Phase 4: Registration, plus 3 more sections
  • Calls git, npx and npm; reaches github.com; needs DISCORD_BOT_TOKEN

What it does

Add Discord is an agent skill from sbusso/claudeclaw. Add Discord bot channel integration to ClaudeClaw.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Productivity & Automation, covering Messaging and chat bots. It works with Discord. The repository describes itself as: Use Claude to orchestrate agents like OpenClaw. The licence is MIT.

When your agent uses it

  • Tasks that involve Messaging and chat bots

Example prompts

  • “/add-discord”

Requirements

  • Node.js
  • A credential in DISCORD_BOT_TOKEN

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Pre-flight
  2. Apply Code Changes
  3. Setup
  4. Registration
  5. Verify

What it can do on your machine

Read from SKILL.md and the folder at commit 1395af4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • npx
    • npm
    • sqlite3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    Also links to:

    • discord.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • DISCORD_BOT_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Add Discord loads about 1.6k tokens when it runs. Until then it costs about 16 tokens; SKILL.md has 725 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~16
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:92
    Add to `.env`:
  • NoteMentions a .env fileSKILL.md:103
    mkdir -p data/env && cp .env data/env/env
  • NoteMentions a .env fileSKILL.md:106
    ds environment from `data/env/env`, not `.env` directly.
  • NoteMentions a .env fileSKILL.md:171
    1. Check `DISCORD_BOT_TOKEN` is set in `.env` AND synced to `data/env/env`

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from sbusso/claudeclaw at commit 1395af4, republished under its MIT licence (© sbusso). 725 words, ~1,583 tokens.

Download SKILL.mdSave it as .claude/skills/add-discord/SKILL.md (or your agent's skills folder).
name
add-discord
description
Add Discord bot channel integration to ClaudeClaw.

Add Discord Channel

This skill adds Discord support to ClaudeClaw, then walks through interactive setup.

Phase 1: Pre-flight

Check if already applied

Check if src/channels/discord.ts exists. If it does, skip to Phase 3 (Setup). The code changes are already in place.

Ask the user

Use AskUserQuestion to collect configuration:

AskUserQuestion: Do you have a Discord bot token, or do you need to create one?

If they have one, collect it now. If not, we'll create one in Phase 3.

Phase 2: Apply Code Changes

Ensure channel remote
bash
git remote -v

If discord is missing, add it:

bash
git remote add discord https://github.com/qwibitai/claudeclaw-discord.git
Merge the skill branch
bash
git fetch discord main
git merge discord/main || {
  git checkout --theirs package-lock.json
  git add package-lock.json
  git merge --continue
}

This merges in:

  • src/channels/discord.ts (DiscordChannel class with self-registration via registerChannel)
  • src/channels/discord.test.ts (unit tests with discord.js mock)
  • import './discord.js' appended to the channel barrel file src/channels/index.ts
  • discord.js npm dependency in package.json
  • DISCORD_BOT_TOKEN in .env.example

If the merge reports conflicts, resolve them by reading the conflicted files and understanding the intent of both sides.

Validate code changes
bash
npm install
npm run build
npx vitest run src/channels/discord.test.ts

All tests must pass (including the new Discord tests) and build must be clean before proceeding.

Phase 3: Setup

Create Discord Bot (if needed)

If the user doesn't have a bot token, tell them:

I need you to create a Discord bot:

  1. Go to the Discord Developer Portal
  2. Click New Application and give it a name (e.g., "Andy Assistant")
  3. Go to the Bot tab on the left sidebar
  4. Click Reset Token to generate a new bot token — copy it immediately (you can only see it once)
  5. Under Privileged Gateway Intents, enable:
    • Message Content Intent (required to read message text)
    • Server Members Intent (optional, for member display names)
  6. Go to OAuth2 > URL Generator:
    • Scopes: select bot
    • Bot Permissions: select Send Messages, Read Message History, View Channels
    • Copy the generated URL and open it in your browser to invite the bot to your server

Wait for the user to provide the token.

Configure environment

Add to .env:

bash
DISCORD_BOT_TOKEN=<their-token>

Channels auto-enable when their credentials are present — no extra configuration needed.

Sync to container environment:

bash
mkdir -p data/env && cp .env data/env/env

The container reads environment from data/env/env, not .env directly.

Service name: Derived from the directory name: com.claudeclaw.<dirname> (macOS) / claudeclaw-<dirname> (Linux). For example, if cwd is my-assistant, the service is com.claudeclaw.my-assistant. Determine the correct service name before running service commands below.

Build and restart
bash
npm run build
launchctl kickstart -k gui/$(id -u)/com.claudeclaw

Phase 4: Registration

Get Channel ID

Tell the user:

To get the channel ID for registration:

  1. In Discord, go to User Settings > Advanced > Enable Developer Mode
  2. Right-click the text channel you want the bot to respond in
  3. Click Copy Channel ID

The channel ID will be a long number like 1234567890123456.

Wait for the user to provide the channel ID (format: dc:1234567890123456).

Show full SKILL.md (289 more words)Show less
Register the channel

The channel ID, name, and folder name are needed. Use npx tsx setup/index.ts --step register with the appropriate flags.

For a main channel (responds to all messages):

bash
npx tsx setup/index.ts --step register -- --jid "dc:<channel-id>" --name "<server-name> #<channel-name>" --folder "discord_main" --trigger "@${ASSISTANT_NAME}" --channel discord --no-trigger-required --is-main

For additional channels (trigger-only):

bash
npx tsx setup/index.ts --step register -- --jid "dc:<channel-id>" --name "<server-name> #<channel-name>" --folder "discord_<channel-name>" --trigger "@${ASSISTANT_NAME}" --channel discord

Phase 5: Verify

Test the connection

Tell the user:

Send a message in your registered Discord channel:

  • For main channel: Any message works
  • For non-main: @mention the bot in Discord

The bot should respond within a few seconds.

Check logs if needed
bash
tail -f logs/claudeclaw.log

Troubleshooting

Bot not responding
  1. Check DISCORD_BOT_TOKEN is set in .env AND synced to data/env/env
  2. Check channel is registered: sqlite3 store/messages.db "SELECT * FROM registered_groups WHERE jid LIKE 'dc:%'"
  3. For non-main channels: message must include trigger pattern (@mention the bot)
  4. Service is running: launchctl list | grep claudeclaw
  5. Verify the bot has been invited to the server (check OAuth2 URL was used)
Bot only responds to @mentions

This is the default behavior for non-main channels (requiresTrigger: true). To change:

  • Update the registered group's requiresTrigger to false
  • Or register the channel as the main channel
Message Content Intent not enabled

If the bot connects but can't read messages, ensure:

  1. Go to Discord Developer Portal
  2. Select your application > Bot tab
  3. Under Privileged Gateway Intents, enable Message Content Intent
  4. Restart ClaudeClaw
Getting Channel ID

If you can't copy the channel ID:

  • Ensure Developer Mode is enabled: User Settings > Advanced > Developer Mode
  • Right-click the channel name in the server sidebar > Copy Channel ID

After Setup

The Discord bot supports:

  • Text messages in registered channels
  • Attachment descriptions (images, videos, files shown as placeholders)
  • Reply context (shows who the user is replying to)
  • @mention translation (Discord <@botId> → ClaudeClaw trigger format)
  • Message splitting for responses over 2000 characters
  • Typing indicators while the agent processes

© sbusso, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/add-discord of sbusso/claudeclaw.

Open the folder on GitHubat commit 1395af4

Compare with similar skills

Add Discord next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Add Discord compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Add Discord this skillsbusso/claudeclaw194—~1.6kAutomated safety check: NotesMIT
Discord App Setupvellum-ai/vellum-assistant1.4k—~4.2kAutomated safety check: PassMIT
Easy Openclawdaheiai/easy-openclaw112—~1.7kAutomated safety check: NotesNone
Discrawlopenclaw/openclaw392k—~698Automated safety check: PassMIT
Message Push0xranx/golembot322—~984Automated safety check: PassMIT
Task Manager0xranx/golembot322—~694Automated safety check: PassMIT

Similar skills

  • Discord App Setup

    vellum-ai/vellum-assistant

    Connect a Discord bot to the assistant via the Discord Gateway with guided application creation and intent configuration

    1.4k GitHub stars~4.2k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Easy Openclaw

    daheiai/easy-openclaw

    OpenClaw 配置优化向导。采用“第 0 层测试观测(可选)+ 前 3 轮优化 + 第 4 轮接入扩展”流程:基础推荐层(含联网搜索与权限模式)、渠道增强层(Discord/Feishu/Telegram 分支优化)、Skills 推荐层(可执行可跳过)、新增渠道接入引导(可跳过)。用于帮助用户快速完成 OpenClaw 初始化或优化配置。用户说到“优化…

    112 GitHub stars~1.7k tokensUpdated 6 mo ago
    Productivity & AutomationAuto-check: notes
  • Discrawl

    openclaw/openclaw

    Discord archive: search, sync freshness, DMs, summaries, TUI, repo/release work.

    392k GitHub stars~698 tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Message Push

    0xranx/golembot

    Send proactive messages to IM groups or individual users via the gateway Send API.

    322 GitHub stars~984 tokensUpdated 12 days ago
    Productivity & AutomationAuto-check passed
  • Task Manager

    0xranx/golembot

    Creates and manages scheduled tasks, cron jobs, recurring reminders, and timers via the Task HTTP API.

    322 GitHub stars~694 tokensUpdated 12 days ago
    Productivity & AutomationAuto-check passed
  • Adds a Discord bot channel to NanoClaw through the Chat SDK bridge, with the adapter copied in from the channels branch and a registration test.

    31k GitHub stars~2.2k tokensUpdated yesterday
    Productivity & AutomationAuto-check: notes

More from sbusso/claudeclaw

All 23 skills in this repo
  • Debug

    sbusso/claudeclaw

    Debug container agent issues. An agent skill from sbusso/claudeclaw.

    194 GitHub starsUsed in 1 repo~3.3k tokens
    Auto-check: notes
  • X Integration

    sbusso/claudeclaw

    X (Twitter) integration for ClaudeClaw. An agent skill from sbusso/claudeclaw.

    194 GitHub stars~3k tokensUpdated 1 mo ago
    Auto-check: notes
  • Add Gmail

    sbusso/claudeclaw

    Add Gmail integration to ClaudeClaw. An agent skill from sbusso/claudeclaw.

    194 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Add Qmd

    sbusso/claudeclaw

    Add QMD (Query Markup Documents) as an advanced memory search backend.

    194 GitHub stars~629 tokensUpdated 1 mo ago
    Auto-check passed
  • Add Telegram

    sbusso/claudeclaw

    Add Telegram as a channel. An agent skill from sbusso/claudeclaw.

    194 GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check: notes
  • Add Telegram Swarm

    sbusso/claudeclaw

    Add Agent Swarm (Teams) support to Telegram. An agent skill from sbusso/claudeclaw.

    194 GitHub stars~3.7k tokensUpdated 1 mo ago
    Auto-check: notes

Works with

Questions about Add Discord

What does Add Discord do?

Add Discord bot channel integration to ClaudeClaw. An agent skill from sbusso/claudeclaw. Add Discord is an agent skill from sbusso/claudeclaw. Add Discord bot channel integration to ClaudeClaw.

When should I use Add Discord?

Add Discord fits situations like: tasks that involve Messaging and chat bots.

How do I install Add Discord in Claude Code?

Run `npx skills add sbusso/claudeclaw --skill add-discord -a claude-code`. Or copy the skill folder (skills/add-discord in sbusso/claudeclaw) into .claude/skills/add-discord in your project. Claude Code loads it when a task matches its description.

How do I install Add Discord in Codex?

Run `npx skills add sbusso/claudeclaw --skill add-discord -a codex`. Or copy the skill folder (skills/add-discord in sbusso/claudeclaw) into .agents/skills/add-discord in your project. Codex loads it when a task matches its description.

Can I use Add Discord in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sbusso/claudeclaw --skill add-discord -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-discord, .gemini/skills/add-discord, .github/skills/add-discord and .opencode/skills/add-discord in your project.

What does Add Discord need to run?

Going by SKILL.md and its folder, Add Discord needs the command-line tools its instructions call (git, npx, npm and sqlite3) and credentials named DISCORD_BOT_TOKEN. Our summary lists: Node.js; A credential in DISCORD_BOT_TOKEN.

Does Add Discord access the network?

SKILL.md names 2 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: discord.com. This is read from the text; nothing was executed.

Is Add Discord safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Add Discord use?

Add Discord is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Add Discord use?

About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Add Discord?

Skills that share tags, products or a category with Add Discord: Discord App Setup (vellum-ai/vellum-assistant, 1.4k stars), Easy Openclaw (daheiai/easy-openclaw, 112 stars), Discrawl (openclaw/openclaw, 392k stars) and Message Push (0xranx/golembot, 322 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Add Discord?

sbusso (a GitHub user) maintains it in sbusso/claudeclaw, which has 194 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on August 12, 2026.

Source: sbusso/claudeclaw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.