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.


| 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 typingherdr, 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.
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.
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 | shinstall. 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

