From dmj
Use when you face 2+ independent tasks (separate test failures, subsystems, files, or investigations) with no shared state or sequential dependency, and working them one at a time would waste time.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dmj:dispatching-parallel-teamsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Run independent work concurrently with an Agent Team: spawn teammates with isolated context you construct, let them claim tasks from a shared list, require progress messages + a peer channel, then synthesize.
Run independent work concurrently with an Agent Team: spawn teammates with isolated context you construct, let them claim tasks from a shared list, require progress messages + a peer channel, then synthesize.
digraph d {
"2+ tasks?" [shape=diamond];
"Independent?" [shape=diamond];
"Overlap files?" [shape=diamond];
"One teammate" [shape=box];
"Fan out + worktree each" [shape=box];
"Fan out + shared list" [shape=box];
"2+ tasks?" -> "One teammate" [label=no];
"2+ tasks?" -> "Independent?" [label=yes];
"Independent?" -> "One teammate" [label="no, coupled"];
"Independent?" -> "Overlap files?" [label=yes];
"Overlap files?" -> "Fan out + worktree each" [label=yes];
"Overlap files?" -> "Fan out + shared list" [label=no];
}
Good fits: test files failing on different root causes, independent subsystems, parallel research threads, competing spikes. Not for: coupled failures (fixing one may fix others), exploratory debugging before you know what broke, or anything needing one whole-system view. Deterministic fan-out (loops, judge panels, schema-validated outputs, resumable runs) with user opt-in: prefer the Workflow tool; routing table in dmj:harnessing-claude.
TeamCreate, then one Agent per domain (always team_name + a unique name, strongest model available at invocation, max thinking). Overlapping file sets get a worktree each (dmj:using-git-worktrees) or serialize. If TeamCreate is unavailable, run the same domains as native parallel Agent calls and synthesize yourself.Teammates MUST SendMessage a midway progress update and MAY message peers about anything shared (an interface, a fixture, a discovered root cause). Fire-and-forget (spawn and walk away) is forbidden: you lose visibility and teammates duplicate or conflict. You (lead) stay available to unblock.
Orchestrator posture. The lead session is the control plane: delegate processing and bulk reading, hold conclusions not transcripts, stay responsive to the user. A user update mid-run is a STEER: relay it to the affected running teammates via SendMessage (they receive it on their next turn); never stop or respawn agents for a course correction.
When teammates report: read each result, check for conflicting edits (same file touched by two), run the full suite to confirm fixes compose, spot-check (parallel workers can make the same systematic error). Resolve conflicts before integrating.
No interactive user: dispatch on the plan as written, record assumptions, PARK only user-owned decisions (irreversible, security, cost, public surface). One teammate's blocker halts its task, not the others.
Handoff: this primitive powers dmj:brainstorming (context sweep, review lenses), dmj:executing-plans, and dmj:team-driven-development (per-wave fan-out).
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub divyamohan1993/dmjcustomizations --plugin dmj