a digital person for bluesky

Add void bot to multi-bot launcher

Includes the main void bot (config.yaml) in run_bots.py, bringing
total to 6 bots. Void displays with red color prefix.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

Changed files
+16 -7
+2 -2
CLAUDE.md
··· 51 52 ### Running Multiple Bots 53 ```bash 54 - # Run all 5 bots simultaneously with aggregated logs (docker-compose style) 55 ac && python run_bots.py --synthesis-interval 0 --no-git 56 57 # Run all bots in test mode ··· 61 ac && python run_bots.py [bsky.py arguments...] 62 63 # Features: 64 - # - Colored output prefixes for each bot (herald, archivist, grunk, ezra, blank) 65 # - Aggregated logs from all bots in real-time 66 # - Graceful shutdown on Ctrl+C 67 # - Arguments passed to all bots
··· 51 52 ### Running Multiple Bots 53 ```bash 54 + # Run all 6 bots simultaneously with aggregated logs (docker-compose style) 55 ac && python run_bots.py --synthesis-interval 0 --no-git 56 57 # Run all bots in test mode ··· 61 ac && python run_bots.py [bsky.py arguments...] 62 63 # Features: 64 + # - Colored output prefixes for each bot (void, herald, archivist, grunk, ezra, blank) 65 # - Aggregated logs from all bots in real-time 66 # - Graceful shutdown on Ctrl+C 67 # - Arguments passed to all bots
+14 -5
run_bots.py
··· 1 #!/usr/bin/env python3 2 """ 3 - Multi-bot launcher for running all Void agents simultaneously with aggregated logs. 4 Usage: python run_bots.py [bsky.py arguments...] 5 Example: python run_bots.py --synthesis-interval 0 --no-git 6 """ 7 8 import subprocess ··· 14 15 # ANSI color codes for each bot 16 COLORS = { 17 'herald': '\033[94m', # Blue 18 'archivist': '\033[92m', # Green 19 'grunk': '\033[93m', # Yellow ··· 23 RESET = '\033[0m' 24 BOLD = '\033[1m' 25 26 - # List of bot configs to run 27 - BOTS = ['herald', 'archivist', 'grunk', 'ezra', 'blank'] 28 29 # Track all running processes 30 processes: List[subprocess.Popen] = [] ··· 97 98 # Start each bot 99 threads = [] 100 - for bot_name in BOTS: 101 - config_file = f"{bot_name}.yaml" 102 cmd = ['python', 'bsky.py', '--config', config_file] + bot_args 103 104 try:
··· 1 #!/usr/bin/env python3 2 """ 3 + Multi-bot launcher for running all 6 Void agents simultaneously with aggregated logs. 4 Usage: python run_bots.py [bsky.py arguments...] 5 Example: python run_bots.py --synthesis-interval 0 --no-git 6 + 7 + Bots: void, herald, archivist, grunk, ezra, blank 8 """ 9 10 import subprocess ··· 16 17 # ANSI color codes for each bot 18 COLORS = { 19 + 'void': '\033[91m', # Red 20 'herald': '\033[94m', # Blue 21 'archivist': '\033[92m', # Green 22 'grunk': '\033[93m', # Yellow ··· 26 RESET = '\033[0m' 27 BOLD = '\033[1m' 28 29 + # Bot names and their config files 30 + BOTS = { 31 + 'void': 'config.yaml', 32 + 'herald': 'herald.yaml', 33 + 'archivist': 'archivist.yaml', 34 + 'grunk': 'grunk.yaml', 35 + 'ezra': 'ezra.yaml', 36 + 'blank': 'blank.yaml', 37 + } 38 39 # Track all running processes 40 processes: List[subprocess.Popen] = [] ··· 107 108 # Start each bot 109 threads = [] 110 + for bot_name, config_file in BOTS.items(): 111 cmd = ['python', 'bsky.py', '--config', config_file] + bot_args 112 113 try: