Skip to the content
ZyxWorks

Several agents. One office.

The whole setup for running coding agents side by side. You see which one needs you, and you never reach for the mouse.

git clone https://github.com/ZyxWorks/agent-office ~/agent-office && ~/agent-office/bin/office setup

macOS or Linux. MIT licence. It asks before it installs anything or changes a file of yours.

 spaces
 ○ api
   main
 · website
   main
 ───────────────────────────
 agents
 ○ api
   firstmate · 88k · 3m · idle
   89% · main
 × api
   claude · 412k▲ · blocked
   89% · #109 · fix/login

The sidebar. Each agent's state, how full its context is, how long it has been quiet, the quota left, its pull request and its branch.

  • ○ Idle: your turn
  • ◐ Working
  • ✓ Done
  • × Blocked: it waits for you
  • · Nothing known yet

How it works

herdr runs the terminal, Firstmate supervises the agents, treehouse gives each one its own git worktree. Agent Office is the wiring between them, packaged and tested. It rewrites none of them.

  1. Paste the line

    office setup asks four questions, installs the tools you lack, clones Firstmate and checks the result. Run it again any time.

  2. Open the office

    office on opens the office and its Firstmate. office off closes it when you go home.

  3. Say what you want done

    Firstmate starts the workers, each in its own worktree, and reports back. You watch the sidebar.

Which one needs you

Every agent has one line in the sidebar. herdr knows whether it is working, idle, done or blocked. The meter adds how full its context is and how long it has been quiet.

claude · 412k▲ · 47m · idle
You seeIt means
412kTokens in this agent's context right now
▲, white and boldPast 200k, or past half of a smaller window
▲▲, redPast 600k, or past three quarters
47mTime since it last wrote to its transcript
× blocked, white and boldIt waits for you. A push to your phone too, if you turn that on

The numbers come from the agent's own transcript: Claude Code, Codex, and Claude Code on a local Ollama model. An agent the meter cannot identify stays blank; it never guesses. Both limits are yours to set. The theme is greys: white and bold when an agent needs you, red only for a fault (context past the alarm, quota out). Every state also has its mark and its word, so nothing rests on colour alone.

No mouse

Shift+arrow walks the whole office: to the pane on that side, then to the next tab or space. It stops at the ends, so you can hold it. Everything else is Ctrl+Space, then one letter: small for the space, with Shift for the tab.

You want toAfter Ctrl+Space
Make a new space, or a new tabnN
Close onecC
Rename onerR
Split the pane to the right, or belowv-
Go to any agent by nameg
Go to the agent that asked for youo
Leave, with everything still runningd

office keys prints every key on one screen. A probe checks that sheet against herdr itself on every push, so it cannot drift from what the keys do.

The day

You want toYou type
Install, or check the install againoffice setup
Open the office and its Firstmateoffice on
Talk to Firstmatefm
Walk away and leave it all runningoffice break
See what is runningoffice status
See what is installed, and whether it is a tested versionoffice doctor
Move every tool to the version this release namesoffice update
Go homeoffice off

What it does not do

  • No rewrite

    herdr, Firstmate, treehouse and the tools around them stay with their own makers and keep their own updates. Agent Office owns the install, the one config, the tested versions and the daily commands.

  • No blind install

    A release is downloaded at a pinned version and checked against a pinned SHA-256 before it is unpacked. npm packages install with their scripts off. Nothing is piped into a shell, nothing uses sudo.

  • No overwriting your files

    Every change is shown first, what it replaces is backed up, and it asks. Your own herdr config file is never touched.

  • No blanket kill

    office off stops the office it started, after it shows what will stop. It never stops every claude on the machine and never deletes a worktree.

  • No signing in for you

    You install and sign in to Claude Code, Codex or any other agent yourself. Your accounts and keys never pass through this.

  • No telemetry

    Phone pushes are off until you turn them on, and the address they go to is only in your own config file.

Every command on this page has a probe that runs it in a throwaway home, on macOS and Linux, on every push. The source is public, and so is every claim on this page.

Who builds this

ZyxWorks builds Zyx and puts it to work inside companies. Agent Office is a tool we built for our own work and give away.