orch · multi‑agent orchestrator
Period — Present
I built orch to keep one main session for judgment instead of doing everything inside a single agent session. The main session plans, assigns work and judges results. Worker agents execute from contract files, and a model from a different family than the author reviews each result.
Work finishes only after a model other than the author verifies it
- Work assignment across 7 model keys from the Codex, Claude and Gemini families
- Contract files with scope and result format, plus result files and status records
- One‑off lookups and edits without opening a pane, and test runs that return only a failure summary
- Independent review by a model family other than the author's
- Sequential and parallel runs by dependency, resumable after interruption
- Herdr pane layout and cleanup that keeps the user's focus where it is
Roles that instructions alone did not hold
- Problem
- With rules only in instruction files, commands that used their own delegation skipped them. Worker agents read the same instructions and could delegate again.
- Solution
- I split the rules into four layers: shared instructions, a Go executor, hooks that block bypasses and YAML procedures per task type. Workers start marked as workers and cannot delegate further. The executor applies model names and cleanup steps instead of the model restating them every time.
Focus pulled away mid‑task
- Problem
- Operating worker panes moved the user's view to those panes. Server logs recorded 55 focus moves on unzoom requests and 78 when sending input.
- Solution
- orch now unzooms only panes that are actually zoomed, and sends prompts as one line of text followed by a separate Enter key. After the fix, measurement showed 0 focus moves caused by orch requests.
Parallel runs that were slower for small tasks
- Problem
- In an evaluation that split small implementation tasks across 3 panes, parallel runs averaged 84 seconds against 49 seconds for a single worker.
- Solution
- Short one‑off tasks now go through ask and do without a pane, and tests run without a model and return only a failure summary. The delegation rule changed from elapsed time to the main session's token use.