Back to Devoured - September 28, 2026
DEVOURED
Openrig (GitHub Repo)

Openrig (GitHub Repo)

DevOps GitHub
OpenRig manages multiple AI coding agents like Claude Code and Codex as a persistent, coordinated team within tmux sessions.
What: OpenRig is a multi-agent harness that defines team structures in YAML and manages their lifecycle, communication, and state through a local daemon and terminal UI. It supports complex setups, including specialist agents like a HashiCorp Vault manager, and requires Node.js 22/24 and tmux to run.
Why it matters: As developers move from single-agent coding to complex, multi-agent workflows, managing these as persistent infrastructure—rather than ephemeral terminal commands—is becoming essential for reproducibility and context persistence.
Takeaway: Run 'rig setup' to initialize your workstation, then define a 'RigSpec' in YAML to orchestrate your first multi-agent development team.
Deep dive
  • Manages agent teams as persistent, stateful tmux-based infrastructure.
  • Uses declarative YAML (RigSpec) to define pods, edges, and continuity.
  • Includes a CLI, terminal UI, and MCP server for agent communication.
  • Supports snapshotting and restoring agent environments.
  • Requires Node.js 22/24 and tmux; native Windows is not supported.
  • Integrates with existing Claude Code and Codex installations.
  • Provides built-in 'starter rigs' for common patterns like product teams and secrets management.
Decoder
  • MCP (Model Context Protocol): An open protocol that allows AI models to securely connect to data sources and tools.
  • Harness: A system that wraps AI agents to manage their environment, lifecycle, and permissions.
  • RigSpec: A YAML file used in OpenRig to define the configuration and topology of an agent team.
  • Tmux: A terminal multiplexer that allows multiple terminal sessions to be accessed simultaneously and persist even after detaching.
Original article

OpenRig

A harness wraps a model. A rig wraps your harnesses. Define your agent team in YAML, boot it with one command. Claude Code and Codex in the same rig, managed as one system.

OpenRig turns AI coding agents from a pile of terminal sessions into a persistent, organized team. Talk to a lead agent about the outcome you want; it can coordinate specialists across teams and bring you results and decisions that need your attention. Start with a repository and one useful change, then keep the team's work and context at the same addresses.

See it running

Start here: the guided first-use path: install, launch a two-agent team in your repository, and get one reviewed change.

Install and first run

Requires Node.js 22 or 24 and tmux, on macOS or Linux. On a Mac with Apple silicon, use Node.js 22. Native Windows is not supported yet, and WSL2 has not been tested. Launching a rig writes provider hooks and workspace trust settings. Before running the commands below, read what OpenRig changes on your machine and back up the relevant files.

npm install -g @openrig/cli
rig setup --dry-run

To install with Bun instead, run bun add -g @openrig/cli. OpenRig still runs on Node.js, so install Node.js 22 as well. Bun may block this package's postinstall script, in which case the Node.js and SQLite check described under what OpenRig changes on your machine does not run at install time.

Review setup's plan before applying rig setup: it checks both native harnesses and cmux. This starter requires tmux and authenticated Codex; the other harness and terminal provider are optional for its repository task.

Before launching, ask your agent to configure your chosen permissions: keep prompts, remember selected commands, or deliberately choose broader access. The agent handles setup and verification; OpenRig's shipped defaults stay unchanged.

Check prerequisites in your launch shell:

tmux -V
codex --version
codex login status

Resolve missing tools or login before continuing. From your repository, inspect the plan before launching the two Codex seats, an owner and a checker:

cd /path/to/your/repository
rig up first-project --cwd . --plan
rig up first-project --cwd .
rig tui --shared

The kernel provides separate operational support and the shared dashboard. To detach without stopping the dashboard, press Ctrl-b then d; rig tui --shared returns to that view. Plain rig tui opens an independent view. Closing a viewing terminal does not mean you should relaunch the team.

Check project-seat readiness with rig ps --nodes --rig first-project and resolve any authentication, trust or permission prompt before assigning work. Then give the owner one bounded outcome from your repository:

rig send dev-owner@first-project 'Implement <one useful change>. Track the task in the queue and return its ID. Keep it local, verify the behavior, ask dev-check@first-project to check the exact candidate, and record the result and how I can try it.'
rig queue list --destination dev-owner@first-project --limit 1000

Sending a message does not itself create a queue item; the owner records the task. Read the final artifact and the review of its exact candidate, then return to the same owner for the next change.

Community

  • Questions: Discussions › Q&A
  • Bugs and feature requests: open an issue
  • Contributing: CONTRIBUTING.md · Code of Conduct · Security policy · Getting help
  • Videos: youtube.com/@openrig
  • Releases: GitHub Releases and npm @openrig/cli

We aim to acknowledge issues and pull requests within one day; see CONTRIBUTING.md for review targets.

What OpenRig changes on your machine

OpenRig writes instance state, provider integration and workspace files as part of setup and operation. These include trust settings and executable hooks. The summary below follows this source revision; check rig --version when using a published package, since repository guidance can be ahead of npm.

When What changes and why
npm installation Installs the CLI, bundled components and dependencies under your npm prefix (with Bun, under Bun's global directory). OpenRig's postinstall checks the Node.js version and that the SQLite module loads; Bun may block this script. It does not run daemon or provider setup.
rig setup Attempts missing tools and writes an OpenRig block in ~/.tmux.conf for mouse support and scrollback. On macOS it can install cmux and enable its automation socket control in ~/.config/cmux/settings.json. --full adds workstation tools. --dry-run shows setup's plan without applying it.
Daemon startup Creates/updates instance state under OPENRIG_HOME (normally ~/.openrig), including its database and managed plugin resources. Seeds the openrig-skills discovery skill in ~/.claude/skills and ~/.agents/skills, subject to existing version ownership. With runtime.codex.hooks_enabled enabled (the default), writes Codex hook configuration and trust records as described below—even before a rig launches.
Rig/seat launch and attachment Creates tmux sessions, supplies seat identity and daemon connection environment, and projects selected guidance, skills, plugins and runtime resources into the workspace. Managed startup pre-trusts the workspace. Claude context collection can also be provisioned for attached sessions and refreshed during monitoring.
Explicit permission configuration The built-in bootstrap does not add rig command allow rules. Ask your agent to apply your chosen project or user scope; existing rules remain relevant. Broader access is a separate choice.

What It Does

OpenRig is a multi-agent harness — it manages the system that coding agents form when you run them together. Not the agents themselves, but the team they create: which sessions are running, how they relate, how to recover after a reboot, and how to stop it from becoming terminal sprawl.

  • Define topologies in YAML (RigSpec) with pods, edges, and continuity policies
  • Boot everything with rig up — tmux sessions, harnesses, startup files, readiness checks
  • See rigs, pods, and seats in the TUI topology table and graph; inspect projects, specs, feeds, and instance health
  • Discover existing Claude Code and Codex sessions in tmux and adopt them into a managed rig
  • Snapshot the topology with rig down --snapshot, restore by name with rig up <name>
  • Communicate across agents with rig send, rig broadcast, and rig chatroom
  • Protect a seat where you type by hand holds automatic messages and wakes instead of typing them into that seat
  • Connect Slack through an app you create in your own workspace
  • Evolve running topologies with rig grow, rig shrink, rig launch, rig remove

Starter Rigs

Use first-project for the focused first-use path. product-team is an optional larger product-development example:

rig specs preview product-team --kind rig
rig up product-team

For a smaller starter, use conveyor:

rig specs preview conveyor --kind rig
rig up conveyor

How It Works

OpenRig is a local daemon + CLI + terminal UI + MCP server, built on tmux.

CLI / TUI / MCP
      |
Hono HTTP daemon
      |
  Domain services
      |
  SQLite + tmux + runtime adapters

Terminal UI and Workspaces

The TUI shows the team's coordination state; herdr and cmux show the actual agent terminals alongside it. With herdr installed and connected, open the starter's terminals together:

rig terminal open first-project --provider herdr

Key Concepts

  • RigSpec: Declarative multi-agent harness definition in YAML.
  • AgentSpec: Reusable agent blueprint with skills, guidance, hooks, profiles, and startup contracts.
  • Seat: A stable role and address in a rig.
  • Pod: A group of related seats with shared guidance and context.
  • Discovery: rig discover fingerprints existing tmux sessions. rig adopt brings them under management.
  • Snapshot/Restore: rig down --snapshot captures full state. rig up <name> restores from latest snapshot.
  • RigBundle: Portable archive with vendored AgentSpecs and SHA-256 integrity.
  • Culture: CULTURE.md sets coordination norms for the group.

Agent-Managed Software

A rig can package actual software alongside the agents that manage it. The shipped example is secrets-manager: a HashiCorp Vault instance operated by a specialist agent.

Requirements

  • Node.js 22 or 24. Node 20 is no longer supported.
  • tmux
  • macOS or Linux.

Comparison with Claude Managed Agents

OpenRig is open source and self-hosted, with Claude Code and Codex in the same team. You operate it on your own infrastructure; the selected providers' model usage costs still apply.

Explore all 67 articles in today's digest

Fresh dev news, AI-digested daily. Never miss a trend at devoured.fyi