// what it is

Booster is a collaborative ideation platform where users contribute, refine, and evolve ideas through AI-assisted conversations called "Riffs." I've been building core infrastructure here since January 2026. The stack is FastAPI + SQLModel + PostgreSQL on the backend, React + TypeScript on the frontend.

// what I built

Multi-agent group chat. Agents collaborate in real-time with turn-based orchestration. Each agent has a persona, tools, and memory. When you @mention an agent, their full conversation history gets injected as context. The system handles auto-respawn on container failures and LLM-based history compaction so context doesn't explode.

Containerized code execution. Agents can run code in isolated Docker environments. I built the CDE (Claude Development Environment) from scratch: container lifecycle, file management via MinIO, session persistence, and a Typer CLI for management. Agents get their own persistent workspace with file upload, trash, and audit logging.

Claude CLI wrapper service. A FastAPI service that wraps the Claude Code CLI to provide agent personas for the web UI. I built the session management layer: idle reaper with TOCTOU guards, FIFO session queue for scaling beyond semaphore limits, and WebSocket event relay. 60 commits across session lifecycle, concurrency control, and persona extensibility.

Skills system v2. Agents can load markdown-based skills that modify their behavior. Dual-path resolver (content takes precedence over instructions), skill builder agent, upload/preview API. Think of it as hot-loadable personality modules for agents.

Model tiering and benchmarking. Not all tasks need the same model. I built a tier registry that routes agents to different LLM providers based on task complexity. On top of that, an agent simulator for A/B benchmarking across 7+ models, measuring cost, honesty, and consistency.

Custom MCP server. Built an MCP server that gives agents access to Booster's data: user profiles, projects, ideas, conversations, and structured data files (CSV/XLSX/JSON). Two-layer access model with header secrets and wrapper allowlists.

Webhook triggers and notifications. Agents can be triggered by external events via webhooks with dynamic cron registration. I also built the email notification system: per-user preferences, daily digest with AI-generated summaries, and MailHog integration for testing.