herdup
herdup · the layer above the CLIs

Four agents is not
four times one agent. Yet.

The AI coding CLIs are already good. What is missing is the layer above them: the one that turns whatever your client sent into work a team of agents actually does, and hands you back something you can forward.

Download See the whole loop Windows · macOS · Linux — free, open source, needs herdr
herdup — one pass 75.5 s · six agents briefed
chaos in
sorted
run in parallel
summary out
the whole team
by hand — once per agent × 4, from memory, every time
open a terminal
recall the flags
answer the trust prompt
paste the briefing
agent 1
agent 2
agent 3
agent 4
75.5 ssix agents, briefed
217tests behind it
25tools it can start
1briefed automatically — the rest wait for you
01 — THE SETUP TAX

The second agent is where most people quit.

Four terminals. Four sets of permission flags. The same do you trust this folder? four times. Then you brief each one by hand and hope you said the same thing twice. Most people never find out whether a team beats a single agent.

TodayYou do the setup, every time, from memory.
herdupPick a folder and a team shape. It builds the layout, starts each tool, waits until each is genuinely at its prompt, and hands it its briefing.

by hand — and again, and again

open terminal
recall the flags
answer trust prompt
paste the briefing
× 4

herdup — once

pick folder + team shape
builds the pane layout
starts each tool with its flags
waits for a real prompt
hands over the briefing
02 — THE CEILING

A briefing sent to a dialog answers the dialog.

Every launcher that types into an agent hits the same wall: if that agent is sitting on do you trust this folder?, your carefully written briefing becomes the answer. Nobody notices until something is already running.

The riskAuto-briefing a tool whose blocked state you cannot read.
herdupOnly tools whose blocked-detection was verified by hand are briefed automatically. Today that is Claude Code alone. Everything else waits, visibly, for you.
verified — briefed automatically
briefing
claude code
trust dialog
briefing
held · you release it
everything else — held for you
03 — THE PREVIEW

You see the shape before it touches your code.

You cannot tell what a launcher will do until it has done it. By then it has already started tools in a folder you may not have meant, with permissions you did not read.

TodayYou find out what it does by letting it do it.
herdupOne lane per teammate, the lead marked. Drop anyone by dismissing their lane. Warnings about uncommitted work or an unversioned folder are acknowledged one at a time. Nothing has run yet.

one lane per teammate

pmlead
coder 1
coder 2
qadismissed

one tick each

uncommitted work✓
no version history✓
Nothing has touched your code yet — the launch button is the first thing that runs
04 — THE TEAM FILE

The team shape belongs in the repo, not in your head.

The line-up that worked last time is in somebody's terminal history. Nobody else on the project can see it, and neither can you, six weeks later.

TodayThe shape that worked is in somebody's terminal history.
herdupA committed .herdr/team.toml travels with the code, and herdup offers that team first when you open the project. After a launch, one button writes the team you just ran into that file.
after a launch one button
the team you ran
.herdr/team.toml
open that project again offered first
from this repo
your team
05 — SELF-UPDATE

It tells you when it is out of date.

Nothing here is code-signed by Apple or Microsoft, so every new version has meant going back to a releases page and downloading an installer your operating system distrusts.

TodayUnsigned installers and manual re-downloads.
herdupIt checks the release feed seconds after opening, and stays silent when the check fails. One click downloads, verifies against herdup's own signing key, replaces the app and restarts. A tampered download is refused and nothing is installed.
v0.1.0 v0.1.1
release feed
is there a newer one?
0.1.1 available
verified · replaced · restarted tampered → refused, nothing installed
06 — ISOLATION

It never touches the session you started.

A tool that shares your terminal session can disturb panes that are already holding real work. The safe version of that is not care; it is not being in the same room.

The riskA launcher sharing your session can disturb work already running in it.
herdupIt works only in its own named herdr session. Finding a server on a different protocol, it reports and stops. It never launches into a folder that does not exist. It stores no credentials; GitHub goes through gh.
herdup
the session you started your panes, your work — never touched
herdup's own named session its own socket and its own state directory
a server on a different protocol — it reports and stops a folder that does not exist — it never launches no credentials stored — github goes through gh

The argument

The plumbing is already here. The layer isn’t.

Claude Code, Codex, Gemini, Cursor, Copilot — the agents are good and getting better every month. That part is solved. What is missing is the layer above them: the thing that links them into a team automatically, so one person can direct four agents instead of babysitting four terminals. Everyone is shipping better plumbing. Nobody is shipping the layer.

And there is a second gap, further out. The way work passes between a client and a small studio has barely changed: a message arrives on WhatsApp, someone translates it into tasks, someone reports back. That translation is manual, it is the bottleneck, and it is exactly the kind of work these agents are now capable of. herdup’s job is to automate it, take the chaos out of it, and get it done.

Your scarce resource is attention, not typing.

One agent is a better autocomplete. That is genuinely useful, and it does not change what you are. A team is a different kind of thing — the work gets divided, the parts proceed at once, and you move from writing to deciding. Almost nobody gets that far.

They don’t get there because the setup cost is brutal, and the cost is paid in the wrong currency. Four terminals, four sets of permission flags, the same trust prompt four times, briefing each one by hand. People quit before the interesting part and conclude a team isn’t worth it — when what they actually measured was the tax.

The deeper point is the one worth arguing about. The bottleneck was never how fast you write code. It is how much context you can hold while four things happen at once. Every tool so far has made the typing faster and left the attention problem exactly where it was — and then handed you three more things to watch.

The direction here is the opposite of that. You say what you want, in plain language. What comes back is a summary a human can actually hold in their head. You stay the client. The team does the standing around.

This is an opinion, not a result. It is unproven, and it may be wrong. What exists today is the first honest piece of it — the setup cost, removed, and nothing else. The rest of the argument is on the roadmap below.

The actual app

herdup asking which project to work on
Which project. Recent folders first. If a folder has no version history, or uncommitted changes, it says so here — before anything starts.
herdup showing the workspace with six teammates
Who’s on it. Start from a size, then add or remove anyone. The picture is the workspace you’re about to get.
herdup after a teammate has been removed
Your own line-up. Dismiss a lane and the team reshapes. The count follows; the preset steps aside.

These are screenshots of the built app, taken by its own test harness — not mockups.

Twenty-five tools. One way to start them.

Any of these can fill any role on a team. herdup knows each one’s command, its permission flags, and whether it can be briefed unattended.

Claude Code

herdup runs claude --permission-mode bypassPermissions

Briefing Briefed automatically — Its blocked state was verified by hand.

Verified presets

herdr agent kind claude

Presets ship only where they were verified against the real tool. A permission flag nobody checked could quietly disable someone’s sandbox, so herdup leaves the field blank instead of guessing.

The list lives in a plain registry.toml you can edit, so adding a tool herdup has never heard of does not require a new build.

Pick how much help you want.

Four shipped shapes, one to six agents. Start from a size, then add or drop anyone until the line-up is the one you want.

Solo

Dev

One teammate, working on its own.

Duo

Dev · Reviewer

One writes the code, one reviews everything it writes.

Squad

PM · Coder 1 · Coder 2 · QA

A lead who splits up the work, two coders, and someone testing.

Full team

PM · Coder 1 · Coder 2 · QA · Builds · Research

Everything in Squad, plus someone on builds and someone researching.

Five roles you can add to any shape, each able to run a different tool:

Every shape is editable TOML. These are defaults, not constraints.

What it does today

Starting a team

  • Four shipped shapes, one to six agents — Solo, Duo, Squad, Full team.
  • Add or drop anyone — add a role beyond the template, dismiss a lane you do not want.
  • Swap the tool per teammate — any of the 25, per pane.
  • The layout is built for you — panes, splits and ratios, from the template.
  • Every agent gets a name — unique within the session, so it can be driven later.
  • Each one is briefed for its role — the lead last, and with the finished roster.
  • Waits for a real prompt — herdup hands over only once herdr says the agent is ready for input.

Refusing to do the wrong thing

  • Never types into an agent that is waiting on you — only tools whose blocked state was verified are auto-briefed. Today that is Claude Code alone.
  • Held briefings are visible — everything else waits behind a button you press.
  • Never touches a session you started — herdup works only in its own named herdr session.
  • Stops rather than restarting your server — a herdr on a different protocol is reported, not replaced.
  • Warns before agents edit — uncommitted work, or a folder with no version control, acknowledged one warning at a time.
  • Never launches into a folder that is not there.
  • Drops flags it cannot vouch for — swap a pane to another tool and unverified flags are removed, and it says so.
  • Stores no credentials — GitHub goes through gh, which already owns a keychain-backed token.

Before anything runs

  • Checks the environment — herdr version, every agent CLI, and gh.
  • Separates blockers from things it can fix — and shows the install command for what is missing.
  • First-run pass — logins and folder-trust prompts cleared in one place, before the team is built.
  • Shows the plan — every pane, every command, before a single agent starts.
  • Surfaces herdr’s Windows preview-beta status.

Projects, and what happens after

  • Start from a folder, a recent, or a new repo — create a private GitHub repo, clone it, and launch into it.
  • The repo can carry its own team — a committed .herdr/team.toml is offered first when you open that project.
  • Save the team you just ran — one button writes it back into the repo.
  • Hand off to a real terminal — the team is yours in a normal terminal window.
  • Re-attach to a running workspace — see what is live, and who is blocked.
  • Updates itself — verified against herdup’s own signing key; a tampered download is refused.
  • Everything is editable TOML — the tool registry, the team templates, your settings.
  • Works without the GUI — launcher-cli plans, preflights and launches the same teams.
  • Windows, macOS and Linux — free and open source. Windows and macOS are exercised by hand; on Linux the app installs and opens.
Roadmap

Where herdup is going. Designed and specified, not yet shipped — everything above this line is working software you can download today.

Hand your client the keyboard.

Right now you are the translation layer. Your client messages you — “the login feels slow, and can that button be blue” — and you turn it into branches, commits and a reply. Both directions run through you, which means nothing moves while you sleep.

1

Your client stays where they already are

WhatsApp, Telegram, Slack, Discord, email, a shared doc. No app to install, no account to make, no portal to log into. You can sit in the same thread with them.

2

The PM turns chat into work

Half-formed asks, voice-note transcripts and “actually, make it blue” become scoped, executable tasks — with the detail an agent needs and the client never supplied.

3

The team executes, hands-off

Coders write, QA verifies, the board moves. You are not in the loop by default, and nothing waits on you to relay a message.

4

You watch, in herdup

Progress and status, the conversation between the PM and the agents, the documents that got shared, and the numbers that tell you whether it is actually going well.

The point is not that you disappear. It is that you stop being the bottleneck in both directions — so taking on a second project, or a third, stops meaning twice or three times the relaying. That is what “thriving” looks like for one person doing the work of a studio.

In

Channel

WhatsApp · Telegram · Slack · email · docs

Translate

PM

chat becomes scoped, executable tasks

Execute

Coders · QA

write, verify, move the card

Out

Board & summary

status, thread, documents, KPIs

One request, end to end. The daemon is the only part that talks to herdr, so the thread you read is the traffic itself — not a log kept alongside it.

In order

  1. Shipping
    The launcher. Pick a project, pick a team, twenty seconds to a running workspace. This is the part you can download today.
  2. Next
    The client channel. One inbox, the PM translating into tasks, a kanban board and an executive summary — all local, nothing leaving your machine.
  3. Then
    The platforms. WhatsApp, Telegram, Slack, Discord, email and shared docs feeding that same inbox, so the client never learns a new tool.
  4. Then
    Oversight. Shared documents, the full interaction history, and KPIs — so “how is it going” has an answer you did not have to assemble by hand.

Decisions already settled

Planned

The Client is deliberately not an AI

It is a deterministic pipe and a renderer: it carries messages in and draws summaries out. The PM is the only thing that thinks. Two things that both interpret you is one too many.

Planned

A small local daemon holds the state

SQLite on your own machine, and the only component that talks to herdr. Agents reach it over a unix socket with plain HTTP — no broker, no account, nothing leaving the box.

Planned

Delegation routes through that daemon

Which makes the Slack-style thread a by-product of the real traffic rather than a log somebody has to maintain. If the conversation is the mechanism, it cannot drift out of date.

Planned

No mockups on this page

Every image here is a capture of software that runs today. When the client channel exists, its screenshots will be real captures too — placeholders never ship on this page.

No dates and no waiting list — this is the direction, published so the argument above is complete. Follow along on GitHub.

Requirements

herdr 0.8.2 or newer

herdup drives herdr, the terminal multiplexer that actually runs the agents. It must be installed and on your PATH. herdup checks the version and refuses to launch against anything older, because it relies on herdr’s agent API.

At least one agent CLI

herdup starts tools you already have; it does not bundle or resell them. You need at least one of the tools below installed and signed in. Their subscriptions and API costs are between you and them.

git, strongly recommended

Not required, but these agents edit files. Without version history there is no undo, and herdup will warn you every time.

A terminal

Windows Terminal on Windows (PowerShell as a fallback), Terminal.app on macOS, or whatever x-terminal-emulator points at on Linux.

Download

Installers are built by CI for each release. Nothing is code-signed by Apple or Microsoft, so Windows SmartScreen and macOS Gatekeeper will both warn you on first run.

Honest status: Windows and macOS have both been driven by a person. On Windows a full six-agent team launched end to end — 75.5 seconds, all six briefed. On macOS 26, Apple silicon: the 217-test suite, the launcher-cli smoke against herdr 0.8.2, the Terminal handoff, the packaged app launching, and in-app update end to end — install, restart into the new version, and a tampered download refused. The Linux installers come from the same CI and the same commit; the app installs and opens, and nothing beyond that has been exercised. If you try it, please say what happened.

Support

Bugs and questions

Open an issue on GitHub. Include your OS, your herdr version (herdr --version), and which tools were on the team.

It isn’t finding my tool

herdup looks for each tool’s binary on your PATH and tells you exactly what it looked for. If yours lives somewhere unusual, edit registry.toml rather than waiting for a release.

What herdup never does

It does not send your code anywhere, add a service between you and your tools, or require an account. The only thing that leaves your machine is an optional “create a GitHub repository” action you have to ask for.