Orchestra â patterns for coordinating the agent ecosystem
Practical guidance for multi-agent systems across delegation, supervision, review gates, artifact spines, and human-in-the-loop control.
- Separate proposer and reviewer roles.
- Require spec compliance plus code-quality review.
- Block deploy/write actions until review passes.
- Fetch current state before answering or mutating.
- Prefer logs, DB rows, and file reads over prompt memory.
- Save structured observations for downstream agents.
- Each delegated task includes objective, allowed tools, success criteria, and max budget.
- Outputs are structured: result, evidence, unresolved risks.
- No worker gets implicit permission to mutate unrelated surfaces.
- List destructive and regulated actions that require human approval.
- Bundle evidence with each escalation.
- Keep a visible queue of blocked tasks.
- One plan or issue doc per workstream.
- Attach tests/logs/receipts to the work item.
- Record reversals and operator overrides.
Why it works: Strong orchestration is not full autonomy â it is clean escalation at the right boundary.
- Codify escalation triggers instead of relying on agent intuition.
- Expose pending approvals in one queue.
- Capture the full evidence bundle that caused escalation.
- Human approval for every trivial step.
- No human review for destructive actions.
- Escalation with no context, logs, or diff attached.
Why it works: It catches shallow reasoning, over-broad edits, and unsafe side effects before they hit prod.
- Use at least one explicit review gate for schema changes, auth, billing, or deploys.
- Review against both product spec and code quality â not just tests passing.
- Keep reviewer prompts adversarial: ask what could break, leak, or drift.
- Same agent writes and rubber-stamps its own work.
- Review happening only after merge.
- Treating green CI as the only approval signal.
Why it works: Artifacts survive context windows and prevent hidden assumptions between agents.
- Use one canonical task doc per workstream.
- Store acceptance criteria next to the artifact, not only in chat.
- Log decisions and reversals so later agents know why a path changed.
- Coordination purely through chat memory.
- Multiple diverging TODO lists.
- Undocumented manual fixes by human operators.
Why it works: Parallelism helps only when synthesis cost stays lower than the work you save.
- Split by file boundary or concern boundary, not by vague themes.
- Cap parallelism until you can measure collision rate.
- Always reserve one lane for validation and synthesis.
- Spawning ten agents into the same surface area.
- Parallel agents editing the same auth/config files.
- Assuming more agents always means more speed.
Why it works: You keep strategy centralized while shrinking the context and permissions each worker needs.
- Make workers single-purpose: code, research, QA, or deployment â not everything at once.
- Pass explicit task contracts with success criteria, budget, and allowed tools.
- Require the supervisor to synthesize worker outputs before taking side-effecting actions.
- Letting every agent talk to every other agent freely.
- Giving all workers the full repo and full prompt history by default.
- No review gate before write or deploy actions.
Why it works: Most orchestration failures come from agents acting on stale assumptions instead of current system state.
- Require a live read before any irreversible action.
- Prefer deterministic tools over memory for versions, counts, and current configs.
- Persist structured outputs so downstream agents inherit facts instead of prose guesses.
- Agents answering from memory for current facts.
- Long prompt chains with no system-state refresh.
- Passing screenshots or summaries when raw logs are available.
