claude-code-discord-status
v1.2.0
Published
Show what Claude Code is doing as a Discord Rich Presence activity card
Maintainers
Readme
Preview
Features
- Live activity updates — Your Discord card reflects what Claude is doing right now (editing, searching, running commands, thinking)
- MCP-powered custom messages — Claude can set its own status via
set_discord_status, with a 30-second priority window over hook updates - Multi-session support — Running multiple Claude Code instances? The card escalates with quirky messages and aggregated stats
- Activity mode detection — Dominant activity type (coding, terminal, searching, thinking) changes the card icon
- Rotating tooltips — Hidden easter eggs on hover, rotating every 5 minutes
- Auto-reconnect — Daemon handles Discord RPC disconnects gracefully
Quick Start
Prerequisites
- Node.js >= 18
- jq (
brew install jq/apt install jq) - Discord desktop app running
- Claude Code CLI installed
Setup
npx claude-code-discord-status setupThis will:
- Create a config at
~/.claude-discord-status/config.json - Register the MCP server with Claude Code
- Add lifecycle hooks to
~/.claude/settings.json - Start the daemon in the background
That's it. Your Discord status updates automatically whenever you use Claude Code.
How It Works
Three components work together:
- Hooks — Bash scripts fired by Claude Code lifecycle events (session start/end, tool use, prompt submit). They POST updates to the daemon's HTTP API.
- MCP Server — An MCP tool (
set_discord_status) that Claude can call to set a custom, contextual status message — these take priority for 30 seconds. - Daemon — Background process that holds the Discord RPC connection, tracks all sessions, resolves what to show, and pushes it to Discord.
See docs/architecture.md for the full deep dive.
CLI
npx claude-code-discord-status setup # Interactive setup wizard
npx claude-code-discord-status status # Check daemon status and active sessions
npx claude-code-discord-status start -d # Start daemon in background
npx claude-code-discord-status stop # Stop the daemon
npx claude-code-discord-status preset [name] # Change message style
npx claude-code-discord-status uninstall # Remove everythingConfiguration
Config file: ~/.claude-discord-status/config.json
| Key | Env Override | Default | Description |
| --- | --- | --- | --- |
| discordClientId | CLAUDE_DISCORD_CLIENT_ID | 1472915568930848829 | Discord Application Client ID |
| daemonPort | CLAUDE_DISCORD_PORT | 19452 | Local HTTP server port |
| preset | CLAUDE_DISCORD_PRESET | minimal | Message style preset |
The default client ID works out of the box — it's a public app identifier, not a secret.
See docs/setup.md for all config options, timeouts, and how to use a custom Discord application.
Message Presets
Choose how your Discord status sounds. Set during setup, or change anytime:
npx claude-code-discord-status preset # Interactive selection
npx claude-code-discord-status preset dev-humor # Set directly| Preset | Style | Example |
| --- | --- | --- |
| minimal | Terse, just the facts (default) | "Coding" |
| professional | Clean, understated | "Actively developing" |
| dev-humor | Classic programmer jokes | "// TODO: sleep" |
| gen-z | Quirky, meme-flavored | "No thoughts just code" |
| chaotic | Pushing to main, living dangerously | "Deploying on a Friday" |
Override via environment variable:
export CLAUDE_DISCORD_PRESET=professionalMulti-Session Fun
When you're running multiple Claude Code sessions, the card gets quirky:
- 2 sessions — "Dual-wielding codebases", "Pair programming with myself"
- 3 sessions — "Triple threat detected", "Three-ring circus"
- 4 sessions — "4 parallel universes deep", "One for each brain cell"
- 5+ sessions — "Send help (5 projects)", "Gone feral (6 projects)"
Plus aggregate stats like 23 edits · 8 cmds · 2h 15m deep and rotating hover tooltips like "Technically I'm one Claude in a trenchcoat".
See docs/multi-session.md for the full message pool and how the resolver works.
Development
git clone https://github.com/BrunoJurkovic/claude-code-discord-status.git
cd claude-code-discord-status
npm install
npm run build
npm testSee CONTRIBUTING.md for guidelines.
License
MIT
