The Making Of Clubhouse
The origin story: 22 days from first prompt to open-source release, built by AI agents inside the tool itself. Then it kept going.
The problem
Azure DevOps · Feb 10–13
Built solo with AI agents in parallel worktrees. 4 named agent branches — royal-finch, noble-quail, warm-ferret, snazzy-fox — working simultaneously.
10:00pm. A prompt to Claude. Two hours later — a working IDE.
The prompt that started it all
"I want to make an Electron app that is a better UI than tons of terminal tabs for my Claude instances, and more GUI-friendly than tmux. Here's what I'm thinking — interface is Slack-like: a leftmost rail where you can go between projects, then the next rail within the project is an explorer that has a file browser, agent settings, and agent team. If you click on file browser the next pane is just a file tree, and the main content view is the file content — think VS Code. It only needs to support text files for now. If you select agent settings it's a place to configure CLAUDE.md, add skills, add agents, set up .mcp.json, etc. But the real magic is when you click agents — this shows a list of agents working in that area, by default there are none and the accessory panel has an add agent button. When you add one they show up, and the main content view for them is just a view into their terminal where you can chat with them and steer, drive, etc."
Click to read full prompt
It started at 10pm with a single prompt. Within two hours, the first Clubhouse prototype was running — project navigation, agent management with sleep/wake controls, a working terminal, file browser with markdown preview, Monaco editor with syntax highlighting, agent status hooks, and a multi-project home dashboard.
An Electron app running with project navigation, an agent list, and a live Claude Code session inside it.
Agent sleep states with Wake Up button. Project rail navigation between workspaces. Git integration in the sidebar.
Per-agent settings with CLAUDE.MD editor, MCP server config, and Skills management. A working terminal. File tree with markdown preview.

The VS Code engine with full syntax highlighting. Live agent status hooks — Thinking, Idle, Fetching — updating in real time.

Multi-project home page with agent status overview. 3 agents across 2 projects. Stability bugfixes. Called it a night.
Next day. Five hours of work. Three releases.
From this point on, the majority of Clubhouse was built in Clubhouse.
The app went from prototype to product in a single afternoon. Canvas — a spatial workspace for watching all agents at once — was created. Notes plugin shipped as an in-app markdown wiki. Scheduler plugin for automated agent launching. The app was packaged as a distributable .app with dependency fixes. Visual and QoL pass: agent status indicators, color badges, visual alerts, tab identity and actions. Significant overhaul to quick agents — auto cleanup with summary, spawning under durable agents. Materialized and cascading properties for agent instructions.
Multiple agents, multiple worktrees, test foundations.
134 unit tests land in a single commit — the first quality gate. Config inheritance system, cron scheduler, multi-worktree Git Explorer, and 8 color themes with a Display & UI settings panel.
Agents get personalities, the app gets extensibility.
Two transformational PRs land. Agents get identity — avatars, emojis, scoped CLAUDE.md with template variable expansion. The plugin system arrives, extracting files, notes, git, scheduler, and terminal into toggleable plugins with lifecycle hooks. The Project Host agent concept ships.
Feb 14–15 · The great refactor, then history rewritten and migrated to GitHub
90 ADO commits compressed and cleaned. PR #1 merges dev/v0.24 to main on GitHub. A new chapter begins.
Tear it down, build it right — 13 releases in one day.
The most intense day. The app is rebuilt from the inside out. Orchestrator provider system ships with Copilot CLI and OpenCode. Deep codebase simplification touches 59 files. Plugin API v0.2 with frozen version contracts. MIT License added.
Git history rewritten. Repo moved to GitHub.
Every major feature reimplemented as a proper plugin through the API: Canvas with spatial workspace, Terminal with PTY sessions, Files with Monaco editor, Automations with cron scheduling. 16 releases ship. Plugin API advances through v0.4. The ADO git history is rewritten and cleaned, and the repo moves to GitHub — PR #1 merges dev/v0.24 to main.
GitHub · Feb 15 – Mar 3
268 commits. 239 PRs. From private prototype to open-source platform.
Opening the door to other AI CLIs.
Full multi-provider orchestrator system — Clubhouse is no longer Claude-only. GitHub Copilot CLI and OpenCode integrated. KanBoss Kanban plugin, Issues plugin, drag-to-reorder agents, and notification badges landed.
Cross-platform expansion and shipping infrastructure.
Clubhouse boots on Windows for the first time. Tag-driven release pipeline with code signing, notarization, and DMG packaging for macOS. CI expanded with Windows typecheck and test matrix.
The most prolific day — polish, community plugins, and three releases.
Auto-update system, community plugin loading (P0a milestone), agent image upload, comprehensive help content, agent settings with permissions, and the Windows x64 release pipeline all shipped.
Workshop Day 1 — Plugin SDK v0.5 ships with 5 sample plugins and developer docs.
Breathing room after the big ship.
Plugin settings polish, ghost agent truncation fix, Windows-specific quick agent fix. A deliberate slow-down to let the v0.27–v0.29 wave settle.
Workshop Day 2 — Open-source prep, CI pipeline, branding. More lines deleted than added.
Preparing for the world.
Repo goes public under Agent-Clubhouse. Cohort onboarding flow, Free Agent Mode, headless mode, redesigned Home dashboard, and Clubhouse Mode — live materialization of agent settings.
Workshop Day 3 — Housekeeping. PLAN.md removed — the plan is now the shipped work.
Pop-out windows, command palette, Annex server, marketplace.
An extraordinary burst: Codex CLI provider, resizable pop-out windows, command palette with keyboard shortcuts, Annex LAN server for iOS companion, plugin marketplace with registry, Plugin API v0.6, and durable agents.

Workshop Day 4 — SDK v0.6, multi-version SDK support, KanBoss + GitHub Issues plugins ship.
Massive test coverage push and stability hardening.
The highest-commit day on GitHub — dominated by testing and stability. Three plugins pruned, Zustand selector audit eliminated infinite re-renders, E2E test suite established. IPC leaks, PTY timer leaks, and race conditions all resolved.
Workshop Day 5: THE MARATHON — 38 commits, 3 new plugins, 6 security fixes, 21 test files, v1.0.0 marketplace release.
Plugin stability, theme API, and ecosystem-agnostic design.
Plugin crash bugs hunted down — badge store crashes, explorer panel reactivity, hotkey misfires. Theme API added for external theme access. Generic skills and ecosystem-agnostic defaults introduced.
Workshop Day 6 — ThemeAPI + SoundsAPI added to SDK. Bug Report plugin ships. install-local dev skill.
Cross-project isolation, API expansion, and help overhaul.
Plugin API extended with Agents/Orchestrators access. Canvas stores isolated per-project to prevent state leaks. Help content overhauled. Reset to Defaults for project settings.
Workshop Day 7 — Final day. Pomodoro redesign, Standup overhaul, orchestrator API. 10 plugins complete.
Agent continuity — pick up where you left off.
Session resume for waking agents — agents can continue previous conversations. Plugin update hot-reload overhauled. Codex durable agent quit-on-launch fixed. Git worktree UI hang resolved.
Enterprise readiness.
Orchestrator profiles (Work/Personal), Windows code signing via Azure Trusted Signing, custom private plugin marketplaces for teams, and Wake & Resume split button.
Relentless optimization and stability hardening.
Relentless performance push: IPC broadcast throttling, App.tsx re-render storm elimination, transcript OOM cap, sync-to-async fs conversion, JSONL parser optimization, PTY write batching, Monaco lazy loading, wake lag elimination. Stability fixes for markdown crash, session map leak, and React hooks violations. Plugin API v0.7 ships.
Workspace API, theme API, and the stable release.
Workspace API and enhanced theme API shipped. App-scoped plugin fixes. Stable v0.34.0 released.
Security hardening and developer experience.
Seamless plugin hot-reload, check-for-updates UI, and DOMPurify-based markdown hardening to prevent XSS in the growing plugin ecosystem.
| App | Workshop | |
|---|---|---|
| Commits | 268 | 83 |
| PRs merged | 239 | 110+ |
| Lines added | +177,615 | +53,869 |
| Build days | 22 | 7 |
| Releases | 11 | 21 |
| Test files | 226 | 28 |
| Source files | 274 | 10 plugins |
| Busiest day | Feb 22 (41) | Feb 22 (38) |
48 days old. ~19 commits/day. One release every ~14 hours. 7 contributors. Current version: v0.38 stable.
Mar 2026 – Present · From coding tool to orchestration platform
Canvas became the workspace. Wires made connections visible. Annex broke the single-machine boundary. Group Projects enabled agent teams. Go put it all in your pocket.
Canvas introduced an infinite spatial workspace where agents, terminals, files, and browsers could be arranged freely on a 2D surface. Drag to position. Zoom to navigate. The panel grid is gone.
Before Wires, agents accessed tools invisibly. MCP Wires changed that — Bezier curves connecting agents to their targets, with animated flow dots showing every tool call in real time. A wire to a browser gives screenshot access. A wire to a terminal gives shell access. You see everything. Nothing hidden.
Annex started as an experiment: what if you could control a Clubhouse instance on another machine? PIN-based pairing, Ed25519 key exchange, mTLS encryption — peer-to-peer, no cloud. It shipped stable. Spawn agents on a build server from your laptop, run plugins across machines, sync canvas state across connections.
A native iOS app that connects to your desktop Clubhouse over Annex. Dashboard of all running agents, permission approvals with countdown timers, live terminal with ANSI color rendering, canvas viewer, project file browser. Check on a long-running task from the couch. Approve a permission request from the bus. No cloud — same encrypted peer-to-peer connection.
Single agents working alone were powerful. Multiple agents coordinating through bulletin boards, topic-based messaging, and shared project context? That's what Group Projects enabled. The site you're reading right now was built by a group project — five agents collaborating through a shared bulletin board, each with their own role and worktree.
The plugin system that started on Day 4 kept growing. 7 functional plugins — issue tracking, kanban, automation, wiki, and more. 7 theme packs with 35 color themes. A private marketplace so teams can distribute proprietary plugins internally. Plugins run over Annex, so they work across machines too.
The site you're reading was built by a group of agents coordinating through a shared bulletin board on Canvas. A coordinator dispatching missions. A UI lead designing comps. Two implementation workers building pages in parallel worktrees. Liaison agents answering questions about Clubhouse, Go, and the plugin ecosystem. Self-hosting all the way down.
"Multiple AI agents working in parallel, each in isolated git worktrees, coordinated through Canvas. Clubhouse was built using Clubhouse — and it still is."