# Herdr
Herdr is a terminal-native agent runtime; *"one terminal for the whole herd"*. It sits between traditional terminal multiplexers (tmux, screen) and desktop agent applications, designed for engineers running multiple [[AI Agents|AI agents]] in parallel.
## What It Does
Keeps your existing shell, SSH config, fonts, and keybinds, then layers in:
- Real PTY panes inside your current terminal — no replacement needed
- Mouse-native UI with clickable panes, tabs, and menus
- tmux-style session persistence with detach/reattach
- Remote SSH attachment and thin-client support
- **Semantic agent state tracking** — `blocked`, `working`, `done`, `idle`
- CLI + socket API for agent orchestration
- Responsive layout that adapts to small screens
## Why It Exists
Running 3–10 AI coding agents at once across multiple worktrees is painful in plain tmux: no visibility into which agent is blocked, no programmatic way to drive them, no consistent UI. Herdr makes the multi-agent shell experience first-class.
## Technical Details
- Single [[Rust]] binary
- Works with any terminal: [[Ghostty]], Kitty, iTerm, Alacritty, foot, etc.
- **No Electron, no web view, no hosted control plane**
- Install via `curl`, Homebrew, or Nix flake
## The native app (November 2026)
In early November 2026, Herdr released a native desktop app ("A native home for Claude Code, Codex and every coding agent"), and it hit the front page of [[Hacker News]] with 360+ points and 260+ comments.
The architecture changed. The TUI was one binary inside your terminal. The app splits the work in two:
- **herdr-core**, a background daemon, runs the terminals and coordinates the agents. Closing the window leaves them running. Each remote SSH machine runs its own core, so its terminals live on that machine
- **The window** only changes what you see. It's built with [[GPUI]] (the UI framework from Zed) and libghostty ([[Ghostty]]'s terminal engine as a library). Still no Electron
What's new in the app:
- **Spaces, tabs and panes.** A space usually holds the work on one machine, often one repo, with native git worktree support
- **An agents sidebar** that lists every agent across spaces with its state (Working, Blocked, Done, Idle), with optional sound alerts. State comes from hooks for some harnesses ([[Claude Code Hooks]]), and from terminal output for [[Claude Code]] and [[Codex CLI]]
- **Peek** opens a worker agent over the current tab without giving it a pane
- **Terminal addresses** like `t7` (this machine) or `vps/t7` (another machine). `herdr machine add` brings shells from several machines into one window, and `herdr --remote` works over [[Tailscale]]
- **Agents drive the window.** `herdr-app --skill`, `ls`, `status` and `commands` let an agent list the other agents, read their panes and send them keys. Commenters had Claude Code and Codex pass messages to each other this way
- **Mods.** The UI is scriptable in JavaScript with hot reload; a broken edit keeps the last good version. The README is clear about the risk: "Mods are trusted code, not sandboxed extensions"
- **Platforms:** macOS (Apple Silicon), Linux (x86-64 and ARM64, needs Vulkan) and Windows 10+. Apache-2.0
- **Telemetry is on by default** in releases (Settings → Privacy to turn it off), and installed releases update themselves in the background
### What the Hacker News discussion added
- **The value is agent awareness, not multiplexing.** "Tmux doesn't know what an Agent is." Others replied that a [[TMux]] agent-sidebar plugin gets you most of the way. Several people called it a "decent replacement for tmux with saner defaults"
- **The app and the TUI don't share a backend.** Users said the app is "not backwards compatible" with the TUI, uses different keyboard shortcuts, and lacks the TUI's plugins. A GitHub issue reportedly shows the main developer unsure whether the TUI server will move to herdr-core. One commenter summed it up as "Lack of vision and fragmentation"
- **Early bugs.** Agents "randomly getting killed" on macOS, sessions gone after closing the app, empty panes after a forced restart, remote sessions not detected, an Agents pane that stays empty for Claude Code, selection bugs, and "jittery" output (the backend flushes events every 100 ms). Several users said the TUI is more stable for now
- **Funding worries.** Herdr is reportedly funded by [[Y Combinator]], and was AGPL 3.0 before the funding round, per one commenter. The most heated thread was about "enshittification": some users avoid it for fear of paid cloud features later. Others asked who would pay for it otherwise
- **Supply-chain nerves.** Auto-updates and `curl | sh` installers worry people after this year's supply-chain attacks. The README itself advises reading the install scripts first
- **A crowded category.** Commenters listed Orca (Electron, "too heavy and, ultimately, too slow"), [[Paseo]], [[Conductor]], cmux, [[Superset]], Wave, Rex, Hydra, T3 Code and more. Some prefer Claude Code's built-in `/remote`, or plain tmux over SSH. Mobile clients (Moshi, Collie, Heeler) fill the gap left by the lack of an official mobile app
### My take on the app
The idea is right: one daemon that owns the terminals, several thin clients that look at them. That's what tmux always did, plus an understanding of what an agent is and when it needs you. But shipping a second front end that doesn't share the TUI's backend splits a small user base in two, and the bug list shows a v1. I'd stay on the TUI until herdr-core runs both. And I'd turn telemetry off on day one.
## References
- Official website: https://herdr.dev/
- Herdr app repository: https://github.com/herdrdev/herdr-app
- Hacker News discussion of the native app: https://news.ycombinator.com/item?id=50298436
## Related
- [[Claude Code]]
- [[AI Agents]]
- [[Terminal Multiplexers]] — the category, and its agent-era turn
- [[mprocs]] — same processes-as-units idea, pre-agents
- [[TMux]]
- [[Zellij]]
- [[Ghostty]]
- [[GPUI]]
- [[Paseo]]
- [[Conductor]]
- [[Superset]]
- [[Chartr]]
- [[Omarchy]]
- [[Claude Code Hooks]]
- [[Codex CLI]]
- [[Hacker News]]