DEVELOPER TOOLS × MULTI-AGENT SYSTEMS
Open source local control plane for multi-agent coding topologies. Manages the system that coding agents form when you run them together: which sessions are running, how they relate, how to recover after a reboot.
ROLE
Creator
YEAR
2025-2026
STACK
TypeScript · Hono · SQLite · React
STATUS
Active / Apache 2.0
When you run multiple coding agents together, they form a topology: a web of sessions with relationships, dependencies, and communication needs. OpenRig manages that topology. Not the agents themselves, but the system they create.
It works with Claude Code and Codex today, with Pi and OpenHands in development. Everything runs locally. The architecture is a daemon (Hono HTTP server) with a CLI, an MCP server, and a React UI all talking to it. SQLite for state, tmux for session management, runtime adapters for each agent type.
You define your topology in YAML (agent specs, rig specs), then bring it up with one command. After a reboot, you snapshot and restore the entire thing by name. The system fingerprints existing tmux sessions so it can discover and adopt agents that were started outside of OpenRig.
SYSTEM STACK
INTERFACE
DAEMON
DOMAIN SERVICES
INFRASTRUCTURE
AgentSpec and RigSpec YAML files describe your topology declaratively. Agent specs define runtime, model, working directory, and initial prompt. Rig specs compose agents into pods with named relationships.
rig up boots everything from spec. One command to go from YAML to running multi-agent topology with all sessions started, connected, and communicating.
Explorer UI with graph visualization, 36 CLI commands, 17 MCP tools. Full lifecycle management: start, stop, pause, resume, inspect, logs.
Fingerprints existing tmux sessions by inspecting running processes. Adopts unmanaged Claude Code or Codex sessions into the managed topology without interrupting them.
Snapshot an entire running topology by name. Restore it after a reboot, a crash, or days later. The topology is the unit of persistence, not individual sessions.
rig send, broadcast, chatroom, and ask. Agents can message each other directly, broadcast to groups, or participate in structured conversations.
TOPOLOGY EXAMPLE — THREE-POD RIG
Each node is a managed agent session (Claude Code, Codex, or terminal). Pods group related nodes. Connections represent communication channels via rig send/broadcast.
~1,558
TESTS
Unit + integration
52
SERVICES
Domain layer
36
CLI COMMANDS
17
MCP TOOLS
CORE STACK
Hono (HTTP daemon) + SQLite (state) + React + React Flow (graph UI)
RUNTIME ADAPTERS
Claude Code, Codex, terminal. Pi and OpenHands in development.
SESSION MANAGEMENT
tmux for process isolation. Each agent runs in its own tmux session with full scrollback capture and lifecycle control.
OpenRig grew out of Agent Focus, a private harness framework I built over the past year and a half. The mature ideas, the ones I'd been running for six months or more, are what shipped in OpenRig at launch. The newer experiments are a large part of OpenRig's roadmap. I'm not building new things in Agent Focus anymore. OpenRig is the project now.