Herdr

A Rust terminal multiplexer built for coding agents. Sessions survive a closed lid, and every pane says whether the agent is working, blocked or idle.

Herdr is tmux rebuilt around the fact that the thing in the terminal is now an agent, not a person. It runs as a background server that owns the terminals, so an agent keeps working when you close the laptop, lose the network, or restart the machine. Every pane carries a status: working, blocked, or idle. And agents can drive Herdr themselves through the same CLI and socket API you use, which means one agent can spawn a pane, prompt another, and wait until that one is genuinely stuck.

Dark title card with the Herdr sheep logo, the label THE AGENT RUNTIME, and the line Run them anywhere. Leave them running., marked Apache 2.0

Made by Herdr, Inc., backed by Y Combinator
Language Rust, one binary, no Electron
Licence Apache-2.0
Platforms macOS, Linux, Windows
Created 27th March 2026
Current version v0.8.2, 19th August 2026, plus daily preview builds
Traction 33,261 stars, 2,413 forks, 256 open issues

The four claims

  • Always running. The server holds the terminals, not your shell. Detach with ctrl+b q, reattach by typing herdr, from the same machine or over SSH.
  • Never hunt for the stuck one. Panes are marked working, blocked or idle, so a run that is waiting on a question announces itself instead of sitting silent behind three other tabs.
  • Agent-native. Agents spawn panes, prompt each other and block on each other through the socket API. There is an agent skill so the agent knows how to use it.
  • Runs what you already run. It owns the terminal of an existing agent CLI rather than wrapping or replacing it.

Keyboard and mouse are both first-class: tmux-style prefix keys, and click, drag and split. The prefix is ctrl+b, so tmux muscle memory carries over.

The DHH connection

This is not a loose association. Omarchy ships Herdr as a bundled tool with its own hotkeys. In DHH's distribution, Super + Ctrl + Return launches Herdr and it is labelled "agent manager", while Super + Ctrl + K shows the Herdr bindings, sitting alongside Super + K for the main bindings and Super + Alt + K for tmux.

Three key combinations reserved for one third-party tool is a strong statement in a distribution whose whole premise is opinionated defaults.

Omarchy

Supported agents

The site claims 21 agent CLIs. The documentation names these:

Anthropic and friends Claude Code, Codex, Cursor Agent CLI, GitHub Copilot CLI, Amp
Model vendors Grok CLI, Qwen Code, Kimi Code CLI, Antigravity CLI
Agent products Devin CLI, Droid, OpenCode, Kilo Code CLI, Qoder CLI, MastraCode, Kiro CLI, Hermes Agent
Others Pi, OMP

Status detection works two ways, and the difference matters. Where an agent exposes lifecycle hooks, Herdr uses them and the status is reliable. Where it does not, Herdr falls back to a screen manifest, meaning it reads the terminal output and pattern-matches. That second path is a heuristic, and it will drift when an agent changes how it prints.

Install and run

curl -fsSL https://herdr.dev/install.sh | sh
# or
brew install herdr
# or
mise use -g herdr

Then start it where the work lives:

herdr

Run your agents, split panes, walk away. ctrl+b q detaches; herdr brings it back. There is a Homebrew formula, a Windows PowerShell installer, and prebuilt binaries on the releases page. A plugin marketplace extends panes and workflows.

Where it fits for me

I run Claude Code sessions constantly, and the two problems Herdr names are both real. Long runs die when the machine sleeps. And when several sessions are open, the one that stopped to ask a question is invisible until I go looking. A pane that flags itself as blocked fixes the second problem outright.

The persistence argument gets stronger with a second machine. If the Mini ends up running Omarchy headless, Herdr on that box plus SSH reattach means work continues there whether or not I am at the desk, and I pick it up from the Studio. That is the same thread as the remote-console question: get to the machine without sitting at it.

The agent-to-agent part I am less sure about. Agents prompting agents and waiting on each other is a real orchestration primitive, but it is also the point where a run stops being something you can follow. I would use the multiplexer first and leave that alone until the rest is habit.

Autonomous Agents

Caveats

  • Pre-1.0 with 256 open issues. v0.8.2, and preview builds ship most days. Fast movement is good, and it also means the surface changes under you.
  • Screen-scraped status is fragile. For any agent without lifecycle hooks, the working/blocked/idle badge depends on parsing output that the agent's authors are free to change.
  • curl | sh install. Read the script or take the Homebrew route.
  • The business model is not public. Apache-2.0 today, a Y Combinator company behind it, and an enterprise contact address. Nothing wrong with that, but the licence is the only guarantee you have about what stays free.
  • It is another layer under your agents. When something hangs, you now have the agent, the terminal, and Herdr between you and the answer.

Further reading

NicAI
Written by NicAI, Nic's AI assistant, for his personal knowledge base. Researched and drafted by the model, not hand-written by Nic. Verify anything you plan to act on.