Herdr
Run, watch and drive your coding agents in herdr — with live terminals inside Fabric Agents.
herdr is a terminal workspace manager for coding agents: it runs Claude Code, Codex, OpenCode and other agents in terminal panes and knows whether each one is working, waiting for you, or done. Fabric Agents is a full herdr client — your herdr workspaces, tabs and panes appear in the app as live, interactive terminals.
New in 0.14.2
The herdr integration is available from Fabric Agents 0.14.2.
Getting started
- Install herdr from herdr.dev. Fabric Agents finds it automatically and never installs it for you.
- Click Herdr in the sidebar. If herdr isn't running, press Start herdr — it keeps running after you quit Fabric Agents, so your agents never stop with the app.
The Herdr sidebar item appears once herdr is installed or running; until then, Settings → herdr explains what it is and links to the installer. The integration does nothing until herdr is installed. Any recent herdr release works; Fabric Agents reads only what it needs, so updating herdr never requires a Fabric update.
The herdr section
herdr in the sidebar shows how many agents are waiting for you and expands to your workspaces, each with a live status dot.
The herdr home lists every workspace with its tabs and agents, and puts the agents that need you first.
Opening a workspace shows it the way herdr does:
- Tabs across the top — click to switch, double-click to rename, + for a new tab, the hover × (click twice) to close.
- Panes in herdr's own split layout. Each pane is a real terminal: click into it and type, scroll with the mouse wheel, and use the agent's own UI. Resize the window and herdr follows.
- Pane header — the agent, its status, its folder, and buttons to split right or down, zoom, or close (click twice).
If another herdr client (such as the herdr TUI in a terminal) controls a pane, Fabric Agents shows it read-only with Take control.
| Status | Meaning |
|---|---|
| Working | The agent is busy. |
| Needs you | The agent is blocked on a question, a permission prompt or an error. |
| Done | Finished, and you have not looked yet. |
| Idle | Waiting for a prompt. |
Commands
Press ⌘⇧P (Ctrl+Shift+P on Windows and Linux) in the herdr section, or click Commands:
- split, zoom, focus in herdr, or close the current pane
- new tab, go to a tab or workspace, new workspace
- start an agent — every agent kind herdr supports (claude, codex, opencode, gemini, …), in a new tab of the current workspace or a new workspace
- jump to an agent that needs you
- every action your installed herdr plugins add
herdr keys
herdr's own keybindings work inside its terminals: press the prefix (Ctrl+B unless you changed it), then a key. A small ctrl+b … hint shows while the app waits for the second key.
| Keys | Action |
|---|---|
prefix, v / - | Split right / split down |
prefix, h j k l | Focus the pane left / below / above / right |
| prefix, Tab / Shift+Tab | Next / previous pane |
prefix, z | Zoom the pane (again to restore) |
prefix, x | Close the pane |
prefix, c | New tab |
prefix, n / p, 1–9 | Next / previous / numbered tab |
| prefix, Shift+X | Close the tab (press twice) |
| prefix, Shift+T / Shift+W | Rename the tab / workspace |
| prefix, Shift+N / Shift+D | New workspace / close the workspace (press twice) |
prefix, w g ? | Open the command menu |
| prefix twice | Send the prefix to the program in the pane |
| prefix, Esc | Cancel |
Your own bindings from the [keys] section of herdr's config.toml (or HERDR_CONFIG_PATH) are used instead of these defaults, including a different prefix. The command menu shows the binding next to each action. While a herdr terminal has focus, Ctrl shortcuts go to the terminal rather than the app, as in any terminal app.
"View only" panes
herdr lets one client type into a pane at a time. If herdr is open in another terminal on the same pane, Fabric shows the pane as View only and keeps it live; click Take control to type here instead (herdr's own window then stops controlling it).
Performance
Terminals draw with the GPU (WebGL), so busy agent screens stay smooth; if the GPU isn't available, they fall back to regular rendering automatically. Only panes whose content changed are redrawn when herdr reports updates.
Notifications
When an agent starts needing you, or finishes work, Fabric Agents shows a desktop notification; click it to open that workspace. Turn this off in Settings → herdr.
From chat
While the integration is on, the agent in a Fabric session has two tools:
| Tool | Actions |
|---|---|
herdr_status | list every pane with its agent and status, or read a pane's recent output. Read-only, available in every mode. |
herdr_control | prompt an agent, send keys, wait until it is idle/done/blocked, or launch a new agent (in the session's working directory by default). Blocked in Explore mode and subject to your permission mode like any other change. |
So you can ask, for example: "Start a Codex agent in this repo, ask it to fix the failing test, wait until it's done and tell me what it changed."
Settings
Settings → herdr:
| Setting | What it does |
|---|---|
| Enable herdr integration | Shows herdr in the sidebar, sends notifications, and gives chat agents the herdr tools. |
| Status | Connection and version, with Open herdr, Start herdr, or Update to … when a newer herdr is available (runs herdr's own updater). |
| Start herdr with Fabric Agents | Starts the herdr server when the app opens, if it isn't running. Off by default. |
| Notifications | Desktop notifications when an agent needs you or finishes. |
| Session | Which herdr session to show — the default one, or any named session (herdr --session <name>). |
| herdr executable (Advanced) | Use a specific herdr binary instead of the one found automatically. |
How it connects
Fabric Agents talks to herdr's local socket (~/.config/herdr/herdr.sock, or a named session's socket; a named pipe on Windows) and streams terminals through herdr's own CLI — the same interfaces herdr's TUI and plugins use. Nothing leaves your computer. When herdr restarts, Fabric Agents reconnects on its own.