Works with

herdr, the terminal multiplexer, and the Herdr app

Herdr agent monitor for Mac, in your notch

CrewTower is a Herdr agent monitor for Mac that lives in your notch. It shows every agent you run in herdr, the terminal multiplexer, or in the Herdr desktop app, jumps you to the exact pane, and in the Herdr app it agrees with Herdr about what you have already seen and when to ring.

macOS 15 or later · $9.99 once, one Mac · no subscription

herdr and the Herdr app, both covered

Herdr comes in two shapes. herdr runs inside a terminal you already use, such as Ghostty, as a client and a server the way tmux does. The Herdr app is a desktop app whose windows each show a Herdr core, the process the app's terminals live in. CrewTower works with both, and does more in the app, because the app tells it more.

 herdr in a terminalThe Herdr app
Cards for your agentsYesYes
Answered from the notchThe six native agentsThe six native agents
JumpThe exact pane, then the terminal tab holding herdrThe exact pane, in the window showing it
Space and tab on the cardNoYes
Seen state and sounds from HerdrNoYes
Cards for agents over SSHNoYes

Jump to the exact pane

In herdr, CrewTower picks the herdr client you last typed into, brings its terminal forward and asks herdr, over herdr's own socket, to focus the agent's pane with its workspace and tab. It finds the pane by the agent session id herdr reports, then by the pane recorded when the session started, and checks herdr's own report that the pane is now in front. Then it lands on the terminal tab that holds the herdr client, the way it would for any session in that terminal.

In the Herdr app, Jump picks the window that is showing the session's core, brings it forward and asks that window to focus the pane, and counts the jump as landed only when the window reports that pane focused in the right tab. A sub-agent with no pane of its own opens in Herdr's peek. No Accessibility permission is involved.

When a jump cannot land, the card says which way it failed, such as “No Herdr window is showing this session” or “Herdr is in front, but it did not show this session's pane”, rather than leaving you on the wrong one. How Jump finds the exact tab covers every other terminal.

What you have seen in Herdr is seen on the notch

In the Herdr app, a finished session you have looked at is read on the notch too: when the window showing it is in front, or when Herdr itself moves the agent from done back to idle. A session you are already watching in a Herdr window in front does not chime when it finishes, asks or fails, because you are already looking at it.

In herdr inside a terminal, visiting the session's pane marks its finish read the way it does in tmux: CrewTower reads what the pane shows and finds those rows on your screen. That part uses macOS Accessibility permission.

One sound per event, not two

Herdr plays its own sound when an agent there needs you or finishes. So by default, for those, CrewTower lets Herdr ring and the notch stays quiet; it still rings for everything Herdr does not, and whenever Herdr's sounds are off. Settings > Sounds has a Herdr section with the choice, When Herdr rings: Let Herdr ring or Ring here too. The section appears once the Herdr app is installed.

The space and tab on every card

A card for a session in the Herdr app carries a Herdr pill and the session's place the way Herdr's own agent list writes it: the space, then the tab, as in api · tests. A tab still carrying only the number Herdr gave it is left out, as Herdr's list leaves it out, so the pill names what you named.

Sub-agents under the agent that started them

When Herdr knows one agent was started by another, the sub-agent appears as a row under its parent's card, reading Working, Idle or Needs you in Herdr, with Herdr's message when there is one. A sub-agent CrewTower has its own hooks into keeps a card of its own, with everything a hooked session gets.

Agents no hook reaches, over SSH too

Herdr sees agents CrewTower has no hooks into: one running on another machine Herdr reaches over SSH, or any program that reports its status to Herdr. CrewTower follows every Herdr core on your Mac and gives such an agent a status card with its name, the machine it runs on, and whether it is working, waiting or done, with what it waits on, such as “Waiting for your approval in Herdr”. The card counts from when the agent started, including across a CrewTower restart.

Open in Herdr takes you to it, and the answer itself is given in Herdr. A session CrewTower has hooks into always keeps its own, fuller card, so the same agent never shows twice.

Answering from the notch

Inside herdr and the Herdr app, Claude Code, Codex, Cursor, Gemini CLI, Qwen Code and opencode are answered from the notch exactly as in any other terminal: the agent's hook blocks on a local Unix socket, and CrewTower answers over that same socket. The prompt resolves in place, and nothing is typed into the pane.

Nothing to set up

There is no Herdr setting to turn on. CrewTower finds herdr and the Herdr app by itself, notices a new Herdr core within about fifteen seconds, and only talks to sockets that belong to your own user. Your agents' hooks are configured the first time CrewTower runs, as they are everywhere else.

Questions

Does CrewTower work with Herdr?

Yes, with both herdr, the terminal multiplexer, and the Herdr desktop app. Jump lands on the exact pane in each, and in the Herdr app the notch follows Herdr's seen state and sounds, shows each session's space and tab, and lists sub-agents under the agent that started them.

What is the difference between the Herdr app and herdr in a terminal?

herdr runs inside a terminal you already use, as a client and a server the way tmux does; the Herdr app is a desktop app whose windows each show a Herdr core. CrewTower jumps to the exact pane in both. The space and tab on the card, the shared seen state and sounds, sub-agent rows and status cards come from the Herdr app's core.

Can I follow Claude Code and Codex running in Herdr from the notch?

Yes. A Claude Code or Codex session in a herdr pane or a Herdr app terminal gets the same card as anywhere else, you answer its permission requests from the notch, and Jump selects its pane.

Does it show agents running over SSH in Herdr?

Yes, through the Herdr app. An agent on another machine Herdr reaches over SSH gets a status card naming the machine and saying whether it is working, waiting or done. You answer it in Herdr, and Open in Herdr takes you there.

Will Herdr and the notch both ring?

Not by default. Herdr rings for the agents it tracks, so the notch stays quiet for those and rings for everything else. Choose Ring here too under Settings > Sounds > Herdr to hear both.

Every Herdr agent, one glance away

One price, one Mac, no subscription. Explore the interactive demo on our homepage, then get a license for your Mac.

Get CrewTower for Mac

$9.99 once · macOS 15 or later