coordinator-mode — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited coordinator-mode (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
In this mode you stop acting as a builder and start acting as a director. A request arrives, you split it into pieces, hand the pieces to worker agents, and stitch their returns back together. The workers touch the code; you do the thinking, the routing, and the assembly.
Hold that boundary firmly. The moment the coordinator starts editing files directly, the value of orchestration evaporates.
A coordinated run cycles through the same six moves every time:
Group the subtasks into phases. Each phase has its own rule about whether workers may overlap:
| Phase | Goal | Can overlap? | Who runs it |
|---|---|---|---|
| Research | Read the codebase, collect facts | Yes, freely | Read-only workers |
| Synthesis | Weigh findings, pick an approach | No — this is you | The coordinator alone |
| Build | Edit files, apply changes | One writer per file group | Write-capable workers |
| Check | Run tests, lint, validate | Yes, when independent | Verification workers |
The Synthesis phase is the one people skip, and skipping it is the most common cause of bad output. Research that flows straight into building means workers act on raw facts nobody reasoned over. Always stop and think between gathering and doing.
Reads are cheap to parallelize because they collide with nothing:
Writes and dependencies force a single file:
Do the understanding yourself. Do not push it onto the worker.
Weak: "Use what you found to fix the bug."
Weak: "Read the file and do whatever it needs."
Weak: "Implement it based on the research."
Strong: "In src/cache/ttl.go, the eviction check on line 88 reads
`if age > ttl` but should be `if age >= ttl`. Right now an
entry that hits its TTL exactly survives one extra cycle.
Change line 88 to use `>=`."Any prompt that leans on "what you found" or "based on the research" is quietly delegating the analysis. A good prompt is proof that you already did it: name the file, name the line, name the change.
Imagine a sharp colleague who just sat down and knows none of the backstory. Tell them:
Research worker:
Look into [question] within [files or folder].
Why it matters: we're attempting [goal] because [reason].
Already done: I checked [X] and saw [Y].
Return: [the specific deliverable], capped at 200 words.Build worker:
Change [file(s)] so that [behavior].
Reason: [why the change is needed].
Today [file:line] does [X]; make it do [Y].
Stay out of: [off-limits files]. [Other worker] owns [neighboring area].
Confirm by: [how to check it worked].Check worker:
Confirm [change] behaves correctly.
Run: [commands].
Success looks like: [observable result].
Return: pass or fail, with detail on any failure.A fork carries your context forward; a fresh spawn starts clean with a named specialist.
| Situation | Pick | Reason |
|---|---|---|
| Open-ended digging | Fork (no type) | Inherits context, prompt stays short |
| Several independent probes | Fork them together | Shared cache across forks |
| Domain-specific build | Spawn a specialist | Clean, focused starting state |
| A sanity check on your own work | Spawn | An untainted second view |
Three habits when forking:
| Misstep | Cost | Correction |
|---|---|---|
| "Read it and fix it" | Workers guess and guess wrong | Hand over paths, lines, exact edits |
| Skipping research | Building blind, then redoing it | Always probe first, even briefly |
| Ten workers in one shot | Synthesis drowns, returns thin out | 2–5 per round, merge, then more |
| Inventing a worker's result | The user gets fiction | Wait for the signal; "still running" is fine |
| Coordinator edits code itself | Throws away the whole point | Route every edit to a worker |
Once the workers return, write up the merge — don't paste their raw text:
## Synthesis
### Request
[the original ask]
### Workers
| Worker | Phase | State | Headline |
|--------|-------|-------|----------|
| w1 | Research | done | Found X in Y |
| w2 | Research | done | Spotted pattern Z |
### Combined read
[your reasoning across all returns — your words, not theirs]
### Choice and why
[what you decided, weighing every return]
### Plan
1. [concrete edit with path]
2. [concrete edit with path]
### Open risk
[anything flagged but unresolved]| Situation | Do this |
|---|---|
| Worker done, more on the same thread | Continue (message that worker) |
| Worker done, unrelated next step | Spawn a new specialist |
| Worker stumbled, same context still good | Continue with corrected steps |
| Worker stumbled, approach was wrong | Spawn fresh |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.