GitHub
Translated by Claude Opus 4.6

Motivation

Recently, tools like Clawdbot, Moltbot, and OpenClaw have gained popularity, and my favorite feature is being able to access agents through Discord channels. I tried them out, but the problem is you end up using the OpenClaw agent, not Claude Code. I didn’t want to give up Claude Code’s strengths — Hooks, Subagents, Agent Teams.

In practice, I don’t always want to run experiments entirely through Discord. What I really want is: when I kick off an experiment on a server and step away, I want to know immediately when results are ready. Now that my research workflow has centered around Claude Code, the ideal is just saying “send the results to Discord when this experiment finishes” inside Claude Code.

So I built a Discord webhook notification skill for Claude Code.

Features

  • Text messages — Markdown support
  • Rich Embeds — Title, description, color, fields, timestamps
  • File attachments — Up to 10 files, 25MB each
  • Raw JSON — Full Discord webhook API access
  • Session Handoff — Hand off Claude Code CLI sessions to Discord bots
  • Custom bot name/avatar, thread support

Usage

Inside Claude Code

Just ask in natural language — the /sc:discord skill is invoked automatically:

"Send results to Discord"
"Share the training curve on Discord"
"Hand off this session to Discord"

CLI direct usage

# Text
discord-notify "Hello world"

# Embed
discord-notify --embed "Experiment Done" "Accuracy: 87.3%" 5793266

# File attachment
discord-notify --file ./loss_curve.png "Training results"

# Multiple files
discord-notify --files loss.png acc.csv -- "All results"

# Pipe input
cat results.txt | discord-notify

ML experiment results example

discord-notify --name "Lab Bot" --rich '{
  "embeds": [{
    "title": "Experiment Complete",
    "color": 5793266,
    "fields": [
      {"name": "Model", "value": "ResNet-50", "inline": true},
      {"name": "Accuracy", "value": "87.3 ± 0.2%", "inline": true},
      {"name": "Baseline", "value": "85.1%", "inline": true}
    ],
    "footer": {"text": "seeds: 42,43,44 | p < 0.01"}
  }]
}'

Installation

git clone https://github.com/JunhyunB/claude-skill-discord.git
cd claude-skill-discord
./install.sh

Create a webhook URL in your Discord server settings and enter it during installation.