claudeers.

🔓 unclaimed — this page was auto-generated from GitHub. Are you the creator?

Claim this page →
// Integrations & Connectors

claude-code-discord

A Discord bot that brings Claude Code to your channels so you can chat, run shell/git, and manage branches. Access from any local, VM, or Docker instance wit…

Actively maintained
90/100
last commit about 1 month ago
last release 4 months ago
releases 3
open issues 1
// install
git clone https://github.com/zebbern/claude-code-discord

claude-code-discord

Run Claude Code from Discord with full SDK integration, agents, rewind, mid-session controls and more.

Found a bug or have an idea for improvement? Submit it via GitHub Issues >⩊<

FeatureDetailsStatus
Use Claude Code AnywhereHost locally (VM / Docker / cloud) and send commands via the Discord API
Thread-per-sessionEach /claude-thread conversation gets its own Discord thread with custom names
Granular sandbox configFull SDK sandbox with network rules, filesystem ACLs, and excluded commands
Local hosting & securityKeep keys and code on your infra while exposing a controlled interface through Discord
Centralized collaborationRun commands and discuss results where your team already communicates
Branch-aware organizationMaps Git branches to channels/categories so feature work stays separated
Mid-session controlsInterrupt, change model, change permissions, stop tasks, and rewind without restarting
MCP server managementView status, toggle, and reconnect MCP servers mid-session
Hooks systemPassive SDK callbacks for tool use, notification, and task completion observability
Full SDK IntegrationBuilt on @anthropic-ai/claude-agent-sdk with native agent support
Granular sandbox configFull SDK sandbox with network rules, filesystem ACLs, and excluded commands
AskUserQuestionClaude can ask clarifying questions mid-session via Discord buttons
Interactive permission promptsAllow/Deny buttons when Claude wants to use unapproved tools
Role-based access controlRestrict destructive commands (/shell, /git, worktree ops) to specific Discord roles
Channel monitoringWatch a channel for bot/webhook messages and auto-investigate in a thread
Audit trail & accountabilityChannel history provides an easy-to-search record of who ran what and when
preview

Quick Start

git clone https://github.com/zebbern/claude-code-discord.git
cd claude-code-discord
cp .env.example .env
# Edit .env with your DISCORD_TOKEN and APPLICATION_ID
docker compose up -d
# if not using ANTHROPIC_API_TOKEN:
docker exec -it claude-code-discord claude /login

Need a Discord bot token first? See Discord Bot Setup.

Installment options (auto setup script or manual installation), see Installation Guide.

Documentation

DocDescription
Discord Bot SetupCreate a Discord app, get your token and application ID, invite the bot
InstallationDocker, one-command setup, manual setup, .env configuration
CommandsFull reference for all 45+ slash commands
FeaturesThinking modes, agents, MCP, rewind, structured output, mid-session controls
ArchitectureProject structure and SDK integration details
DockerDocker Compose, GHCR images, Watchtower auto-updates
UpdatingHow to update (Docker pull, git pull, version check)

Select Newest Model Available

/settings category:claude action:set-model value:opus
/settings category:claude action:set-model value:sonnet
/quick-model model:haiku

Configuration

Create a .env file (or copy .env.example):

# Required
DISCORD_TOKEN=your_bot_token_here
APPLICATION_ID=your_application_id_here

# Optional
ANTHROPIC_API_KEY=sk-ant-...          # Enables dynamic model discovery & refresh
USER_ID=your_discord_user_id          # @mention when Claude finishes a task
CATEGORY_NAME=claude-code             # Discord category for bot channels
WORK_DIR=/path/to/project             # Working directory (default: current dir)

# Access Control (RBAC) — leave blank to keep all commands open
ADMIN_ROLE_IDS=123456789,987654321    # Comma-separated Discord role IDs
ADMIN_USER_IDS=111111111              # Comma-separated Discord user IDs

# Channel Monitoring (optional)
MONITOR_CHANNEL_ID=123456789012345678    # Channel to monitor for alerts from other bots/webhooks/users
MONITOR_BOT_IDS=987654321,111111111      # Comma-separated bot/webhook/user IDs to trigger auto-investigation

# Proxy (optional — respected automatically if set)
# HTTP_PROXY=http://proxy:8080
# HTTPS_PROXY=http://proxy:8080
# NO_PROXY=localhost,127.0.0.1
VariableRequiredDescription
DISCORD_TOKENYesBot token from the Discord Developer Portal
APPLICATION_IDYesApplication ID from the Developer Portal
ANTHROPIC_API_KEYNoEnables dynamic model discovery; refreshes hourly
USER_IDNoYour Discord user ID — bot @mentions you when tasks finish
CATEGORY_NAMENoDiscord category name for channels (default: claude-code)
WORK_DIRNoWorking directory for Claude operations (default: current dir)
ADMIN_ROLE_IDSNoComma-separated role IDs for RBAC (shell, git, system, admin)
ADMIN_USER_IDSNoComma-separated user IDs for RBAC — grants access regardless of roles
MONITOR_CHANNEL_IDNoDiscord channel ID to watch for bot/webhook messages
MONITOR_BOT_IDSNoComma-separated bot/webhook user IDs that trigger auto-investigation
HTTP_PROXYNoHTTP proxy URL (also reads http_proxy)
HTTPS_PROXYNoHTTPS proxy URL (also reads https_proxy)
NO_PROXYNoComma-separated hosts to bypass proxy

CLI flags override environment variables. Environment variables override .env file values.

Startup Options

# Standard start
deno task start

# Development mode (hot reload)
deno task dev

# Direct with environment variables
deno run --allow-all index.ts

# With optional flags
deno run --allow-all index.ts --category myproject --user-id YOUR_DISCORD_ID
FlagEnv VariableDescription
--category <name>CATEGORY_NAMEDiscord category name for channels (default: claude-code)
--user-id <id>USER_IDYour Discord user ID for mentions when tasks finish

CLI flags override environment variables. Environment variables override .env file values.

Channel Monitoring

Automatically investigate alerts from other bots or webhooks. When a monitored bot posts in the configured channel, the bot batches messages over a 30-second debounce window, creates a thread on the alert message, and streams Claude's investigation there.

Setup

  1. Enable the Message Content intent — In the Developer Portal, go to your app → Bot → enable Message Content Intent. The bot needs this to read messages from other bots.

  2. Get the channel ID — Right-click the channel in Discord (Developer Mode must be on) and copy the ID. Set MONITOR_CHANNEL_ID in .env.

  3. Get the bot/webhook user IDs — The easiest way is to look at a message from the bot in the channel, right-click the author, and copy the ID. For webhooks, check the webhook's user ID in the channel's integration settings. Set MONITOR_BOT_IDS as a comma-separated list.

  4. Bot permissions — Ensure the bot has these permissions in the monitored channel:

    • Read Messages
    • Create Public Threads
    • Send Messages in Threads

// compatibility

Platformscli, api
Operating systems
AI compatibilityclaude
LicenseMIT
Pricingopen-source
LanguageTypeScript

// faq

What is claude-code-discord?

A Discord bot that brings Claude Code to your channels so you can chat, run shell/git, and manage branches. Access from any local, VM, or Docker instance with full capebilty of claude code!. It is open-source on GitHub.

Is claude-code-discord free to use?

claude-code-discord is open-source under the MIT license, so it is free to use.

What category does claude-code-discord belong to?

claude-code-discord is listed under devtools in the Claudeers registry of Claude-compatible tools.

0 views
211 stars
unclaimed
updated 15 days ago

// embed badge

claude-code-discord on Claudeers
[![Claudeers](https://claudeers.com/api/badge/claude-code-discord.svg)](https://claudeers.com/claude-code-discord)

// retro hit counter

claude-code-discord hit counter
[![Hits](https://claudeers.com/api/counter/claude-code-discord.svg)](https://claudeers.com/claude-code-discord)

// reviews

// guestbook

0/500

// related in Integrations & Connectors

🔓

Use claude code and codex for free in the terminal, VSCode extension, and discord like OpenClaw (voice supported)

// integrationsAlishahryar1/Python39,205MIT[ claude ]
🔓

Bridge local AI coding agents (Claude Code, Cursor, Gemini CLI, Codex) to messaging platforms (Feishu/Lark, DingTalk, Slack, Telegram, Discord, LINE, WeChat…

// integrationschenhg5/Go13,605[ claude ]
🔓

All parts of Claude Code's system prompt, 27 builtin tool descriptions, sub agent prompts (Plan/Explore/Task), utility prompts (CLAUDE.md, compact, statusli…

// integrationsPiebald-AI/JavaScript11,624MIT[ claude ]
🔓

Fastest, smallest, and fully autonomous AI assistant infrastructure written in Zig

// integrationsnullclaw/Zig7,737MIT[ claude ]
Ecosystem hubone of the most connected projects in the claude ecosystem · 31 connections
→ see how claude-code-discord connects across the ecosystem