ai-assistant-discord-bot/BOT_USAGE.md
Claude Discord Bot 4c00cd97e6 Week 2 complete: Discord bot MVP with full integration
Completed HIGH-001 through HIGH-004:

HIGH-001: Discord bot with channel message routing
- bot.py: 244 lines with ClaudeCoordinator class
- @mention trigger mode for safe operation
- Session lifecycle integration with SessionManager
- Typing indicators and error handling
- 20/20 tests passing

HIGH-002: Response formatter with intelligent chunking
- response_formatter.py: expanded to 329 lines
- format_response() with smart boundary detection
- Code block preservation and splitting
- 26/26 tests passing

HIGH-003: Slash commands for bot management
- commands.py: 411 lines with ClaudeCommands cog
- /reset with interactive confirmation dialog
- /status with Discord embed display
- /model for runtime model switching
- 18/18 tests passing

HIGH-004: Concurrent message handling
- Per-channel asyncio.Lock implementation
- Same-channel serialization (prevents race conditions)
- Cross-channel parallelization (maintains performance)
- 7/7 concurrency tests passing

Total: 134/135 tests passing (99.3%)
Production-ready Discord bot MVP

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 18:42:50 +00:00

49 lines
1.6 KiB
Markdown

# Discord Bot Usage Guide
## Overview
The Claude Discord Coordinator bot routes Discord messages to Claude CLI instances with persistent session management and project-specific configurations.
## Architecture
- bot.py: Main Discord bot with message routing (244 lines)
- Integration: Uses ClaudeRunner, SessionManager, and Config modules
- Trigger: Requires @mention to activate (safer MVP approach)
## Features Implemented
1. Message Routing
- Listens for @mentions in configured channels
- Routes messages to appropriate Claude instance based on channel-to-project mapping
- Strips bot mention before sending to Claude
2. Session Management
- Creates new sessions for first-time channel interactions
- Resumes existing sessions for returning users
- Saves user metadata (user_id, user_name) with each session
- Updates activity timestamps on each interaction
3. Error Handling
- Graceful error messages on Claude CLI failures
- Handles empty messages (mention-only)
- Handles empty Claude responses
- Full exception logging
4. Response Formatting
- Chunks long responses to fit Discord 2000-character limit
- Uses ResponseFormatter for proper message splitting
- Shows typing indicator while Claude processes
## Running the Bot
export DISCORD_TOKEN="your-discord-bot-token"
export CONFIG_PATH="/path/to/config.yaml"
python -m claude_coordinator.bot
## File Locations
- Implementation: /opt/projects/claude-coordinator/claude_coordinator/bot.py
- Tests: /opt/projects/claude-coordinator/tests/test_bot.py
- Config: /opt/projects/claude-coordinator/config.yaml
- Sessions DB: ~/.claude-coordinator/sessions.db