By JamesPrial
Discord bot brain plugin - processes piped Discord messages with intelligent triage, tool-based actions, evolving personality, and persistent memory
You are the action execution agent for a Discord bot. Your job is to carry out tool-based tasks requested by Discord users, respecting per-channel tool permissions, and **send results directly to Discord**.
You are the memory manager for a Discord bot. Your job is to preserve important conversation context by updating persistent memory files before context compaction occurs.
You are the personality evolution agent for a Discord bot. Your job is to make the bot's personality grow organically by absorbing one communication trait from a randomly selected chat participant during each evolution cycle.
You are the research agent for a Discord bot. Your job is to gather information requested by Discord users, format findings for Discord, and **send results directly to Discord**.
You are the response crafting agent for a Discord bot with an evolving personality. Your job is to write Discord messages that sound natural, match the bot's current personality, fit the conversation context, and **send them directly to Discord**.
Uses power tools
Uses Bash, Write, or Edit tools
Has parse errors
Some configuration could not be fully parsed
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A Claude Code plugin that turns a Claude Code session into a Discord bot brain with intelligent message triage, tool-based actions, persistent memory, and an organically evolving personality.
A runner script (scripts/run-bot.sh) orchestrates the full bot lifecycle:
claudebot-mcp Docker image and initializes a Claude Code session with this plugin loadedclaude -p --resume, maintaining conversation context across cyclesFrom there, agents take over — triaging each message, crafting personality-driven replies, running web searches, executing commands, and sending everything directly back to Discord via MCP tools.
Install the plugin:
claude plugins add /path/to/claudebot
Create a .env file in the plugin directory (see .env.example):
CLAUDEBOT_DISCORD_TOKEN=Bot your-bot-token-here
CLAUDEBOT_DISCORD_GUILD_ID=123456789012345678
Run the setup command in your project:
/claudebot:bot-setup
Start the bot:
./scripts/run-bot.sh
| Variable | Required | Default | Description |
|---|---|---|---|
CLAUDEBOT_DISCORD_TOKEN | Yes | — | Discord bot token (prefix with Bot ) |
CLAUDEBOT_DISCORD_GUILD_ID | Yes | — | Discord server ID |
CLAUDEBOT_POLL_TIMEOUT | No | 30 | Poll interval in seconds |
CLAUDEBOT_MAX_FAILURES | No | 5 | Max consecutive poll failures before exit |
Settings are stored in .claude/claudebot.local.md in your project (not in this plugin repo). See templates/claudebot.local.md for the full template.
YAML frontmatter defines per-channel tool permissions and response thresholds:
channels:
general:
tools: [WebSearch, Scream]
respond_threshold: medium
dev:
tools: [WebSearch, Read, Bash, Glob, Grep]
respond_threshold: high
default_channel:
tools: [WebSearch]
respond_threshold: medium
Thresholds: low (direct mentions only), medium (mentions + relevant topics), high (most messages)
/claudebot:bot-setup # Interactive setup wizard
/claudebot:bot-setup show-status # Check MCP connectivity
/claudebot:bot-setup show-config # Show current channel config
/claudebot:bot-setup show-personality # View personality state
/claudebot:bot-setup reset-personality # Reset to blank personality
Discord → MCP Server (Docker) ←stdio→ Claude Code (-p --resume) ← Runner (poll loop)
↓
Triage Agent (haiku)
↙ ↙ ↘ ↘
ignore react respond act
↓ ↓ ↙ | ↘
emoji responder researcher executor screamer
↓ ↓ ↓ ↓
discord_send_message (via MCP) docker run
| Agent | Model | Role |
|---|---|---|
| triage | haiku | Evaluates every message, routes to downstream agent |
| responder | sonnet | Crafts personality-driven replies |
| researcher | sonnet | Web search, file lookups, information gathering |
| executor | sonnet | Tool-based actions (Bash, file ops) with safety checks |
| screamer | sonnet | Voice channel screams via go-scream Docker container |
| memory-manager | opus | Saves context graph during PreCompact |
| personality-evolver | haiku | Absorbs one user trait per compaction cycle |
Memory files live in .claude/memory/ and persist across context compactions:
npx claudepluginhub jamesprial/prial-plugins --plugin claudebotGit operations and GitHub CLI agents for version control workflows
Go development workflow with TDD-first parallel agents, failure triage, and automated code quality hooks
Captures TodoWrite tool usage and saves to timestamped history file with configurable log location (default: .claude/todos.json)
Security hooks to detect and block potential secrets in git commits
Create custom slash commands for Claude Code with syntax, patterns, and helper scripts
Discord channel for Claude Code — messaging bridge with built-in access control. Manage pairing, allowlists, and policy via /discord:access.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Memory compression system for Claude Code - persist context across sessions
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.