Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Dispatch explicit disjoint packets exactly
.claude/skills/boshu2-swarm/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | -8% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -46% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -27% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -26% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -32% | 0% |
Swarm exposes one optional factory port:
textdispatch_once(explicit_disjoint_packets, executor) -> per-packet candidate | evidence | error
The caller supplies every complete packet, proves their write scopes disjoint, and chooses the executor. Swarm dispatches each packet once, preserves packet and context identities, collects results, and stops.
Write scopes must be workspace-relative and canonical — symlink-resolved and already normalized. The disjointness check is lexical: it case-folds prefixes so scopes differing only by case are treated as a collision (safe on case-insensitive filesystems), but it cannot see a symlink that aliases two scopes onto one target. Supplying non-canonical or symlinked scopes forfeits the disjointness guarantee; a non-empty write_scope.exclude is rejected, not silently ignored, because the proof cannot honor it.
Exactly-once dispatch over proven-disjoint scopes is why parallel failures stay independent: no packet can observe, block, or corrupt another, so N packets yield N factual results about N experiments rather than one tangle. Those results are not semantic verdicts.
Named failure mode — partial-batch launch: dispatching valid packets before discovering an invalid one, leaving the batch half-run; validate the entire batch before the first call.
Anti-pattern: re-dispatching a packet whose executor returned an error. Corrective: return the error as that packet's factual result; retry is the caller's decision, not the dispatcher's.
The reference implementation is scripts/dispatch_once.py. It validates the entire explicit batch before the first call, invokes the supplied executor exactly once for each packet, and returns executor exceptions as factual per-packet errors.
Swarm's own effect is invoking the selected executor once per packet; the real blast radius rides on the packets. Each packet's transitive effects — whatever its executor writes, runs, or reaches — are the caller's to declare on the packet, not Swarm's to bound.
Swarm does not select work, create packets, schedule from a backlog, persist a queue, claim ownership, retry, validate, integrate, close, use Git, or deliver. Executor failures remain executor evidence and cannot become core phase or verdict state. The adapter cannot select AgentOps semantics, issue a binding verdict, or turn factory completion into delivery or validation proof.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-06 | fail→fail | 9,525 | 2,480 | -74% | 1 | 1 | 0% | 1,324 | 927 | -30% | 0 | 0 | — |
case-01 | fail→fail | 15,462 | 18,789 | +22% | 1 | 1 | 0% | 3,214 | 3,990 | +24% | 0 | 0 | — |
case-02 | fail→pass | 21,631 | 17,034 | -21% | 1 | 1 | 0% | 4,457 | 4,100 | -8% | 0 | 0 | — |
case-03 | fail→fail | 10,739 | 5,491 | -49% | 1 | 1 | 0% | 2,041 | 873 | -57% | 0 | 0 | — |
case-04 | fail→pass | 11,705 | 2,604 | -78% | 1 | 1 | 0% | 1,846 | 992 | -46% | 0 | 0 | — |
case-05 | fail→pass | 11,497 | 4,695 | -59% | 1 | 1 | 0% | 1,857 | 1,363 | -27% | 0 | 0 | — |
case-07 | fail→pass | 12,517 | 5,412 | -57% | 1 | 1 | 0% | 1,979 | 1,459 | -26% | 0 | 0 | — |
case-08 | pass→pass | 12,024 | 6,316 | -47% | 1 | 1 | 0% | 1,792 | 1,396 | -22% | 0 | 0 | — |
case-09 | pass→pass | 35,190 | 3,323 | -91% | 1 | 1 | 0% | 2,553 | 1,052 | -59% | 0 | 0 | — |
case-10 | fail→pass | 9,684 | 3,232 | -67% | 1 | 1 | 0% | 1,533 | 1,038 | -32% | 0 | 0 | — |
case-11 | fail→pass | 12,437 | 4,051 | -67% | 1 | 1 | 0% | 1,863 | 1,293 | -31% | 0 | 0 | — |
case-12 | fail→pass | 9,584 | 2,522 | -74% | 1 | 1 | 0% | 1,489 | 950 | -36% | 0 | 0 | — |
case-13 | fail→pass | 13,187 | 3,357 | -75% | 1 | 1 | 0% | 1,894 | 1,032 | -46% | 0 | 0 | — |
case-14 | fail→pass | 14,332 | 4,469 | -69% | 1 | 1 | 0% | 2,258 | 1,287 | -43% | 0 | 0 | — |
case-15 | fail→fail | 14,623 | 4,985 | -66% | 1 | 1 | 0% | 2,156 | 1,311 | -39% | 0 | 0 | — |
case-16 | fail→pass | 3,519 | 1,773 | -50% | 1 | 1 | 0% | 489 | 721 | +47% | 0 | 0 | — |
case-17 | fail→pass | 14,185 | 2,824 | -80% | 1 | 1 | 0% | 2,150 | 955 | -56% | 0 | 0 | — |
case-18 | pass→pass | 10,826 | 8,871 | -18% | 1 | 1 | 0% | 1,882 | 2,060 | +9% | 0 | 0 | — |
case-19 | pass→pass | 8,365 | 5,230 | -37% | 1 | 1 | 0% | 1,553 | 1,465 | -6% | 0 | 0 | — |
case-20 | pass→pass | 18,552 | 11,335 | -39% | 1 | 1 | 0% | 3,255 | 2,402 | -26% | 0 | 0 | — |
case-21 | pass→pass | 4,179 | 3,554 | -15% | 1 | 1 | 0% | 719 | 1,074 | +49% | 0 | 0 | — |
case-22 | pass→pass | 8,629 | 11,165 | +29% | 1 | 1 | 0% | 1,439 | 2,319 | +61% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 21 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +50 percentage points is the difference between those two pass rates over the 21 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.