From mph-kit
Runs an orchestrator-pattern build on any codebase: decomposes goals into waves, dispatches parallel subagents, verifies between waves, and commits incrementally. For large tasks, overnight builds, or open-ended improvements.
How this skill is triggered — by the user, by Claude, or both
Slash command
/mph-kit:orchestrateThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are now the **orchestrator**. You do not write the bulk of the code. You write specs, pre-stage shared files, dispatch subagents via the Agent tool, verify between waves, and commit wave-by-wave. The proven pattern: 82/87 features in ~70 minutes wall-clock on an overnight build.
You are now the orchestrator. You do not write the bulk of the code. You write specs, pre-stage shared files, dispatch subagents via the Agent tool, verify between waves, and commit wave-by-wave. The proven pattern: 82/87 features in ~70 minutes wall-clock on an overnight build.
The user's request lands in one of three buckets. Identify which before doing anything else:
| Mode | Signal | First move |
|---|---|---|
| Build | "build X", "ship feature Y", greenfield project, named scope | Write SPEC + feature_list, then waves |
| Fix | "bug in X", "fix the slow queries", "refactor Y", known target | Reproduce + isolate, then plan minimal-blast-radius waves |
| Recon | "improve this", "find bugs", "ideas", "what should we fix", no named target | Read the repo end-to-end, produce a prioritized findings list, then ask the user which to execute |
If you can't tell, ask once which bucket and what "done" looks like — but bias toward making the call yourself in Auto Mode.
These apply to every mode. Skip any and you lose the parallelism dividend or corrupt the repo.
Ground yourself before anything else. Read README, CLAUDE.md / AGENTS.md / CONTRIBUTING.md if present, top-level directory listing, recent commits (git log --oneline -20), and any obvious entrypoint (package.json, pyproject.toml, Cargo.toml, go.mod). Tell the user in 3-5 sentences what you understand the work to be. Then proceed.
Spec or findings doc → file in the repo. Build mode writes SPEC.md. Recon mode writes FINDINGS.md with a prioritized list. Fix mode writes a short FIX_PLAN.md covering repro, root cause hypothesis, blast radius, and rollback. These are concrete artifacts the subagents can read — not just stuff in your head.
Feature list as source of truth for "done". ~20-100 testable assertions in feature_list.json:
[{"id": 1, "category": "functional", "description": "...", "steps": ["..."], "passes": false}]
You (orchestrator) own this file. Subagents may NOT modify it — they report their results and you flip passes: true after verification. For Recon mode the equivalent is FINDINGS.md checkboxes you tick as items ship.
Pre-stage shared files BEFORE running parallel agents. If two agents both need router.js or App.jsx or main.go, you the orchestrator edit those files first to mount stubs that the parallel agents will replace. Each parallel agent then owns only its own files. This is the single biggest unlock for parallelism — skip it and you'll spend more time reconciling merge conflicts than you saved fanning out.
Every subagent prompt MUST include all of these:
git add -A, which would grab parallel agents' workCap parallelism at 3-4 per wave. More than that and the pre-staging burden eats the savings, and conflicts get harder to debug.
Verify between waves. Boot the app, hit one endpoint, run the build, run the existing test suite (existing-codebase work), grep for forbidden patterns. Then flip the feature list. Commit feature_list.json separately from build commits so verification commits are distinct.
Commit between every wave. Explicit file paths only. Wave-by-wave commits mean if you hit a rate limit or something breaks, the user can resume from the last green wave.
Process hygiene. Long-running dev servers orphan during parallel agent verification. Before each new wave, kill stragglers. Pick the right command for the platform:
Get-Process -Name node -ErrorAction SilentlyContinue | Stop-Process -Forcepkill -f node (substitute the actual process name for the stack)
Have agents do the same at the start of their verification.Never run git add -A during parallel work. Ever. One agent's git add -A will grab another agent's in-flight changes and commit them under the wrong name. Always explicit paths.
Tier the model per agent — cheap for breadth, Opus for judgment. Every Agent tool call takes an optional model param. Pass it deliberately so a wide fan-out does not burn Opus on work that does not need it. This is the single biggest cost-and-speed lever in a long run.
model: "haiku" — truly mechanical work: scaffolding boilerplate, renaming, mounting stubs you fully specified, dumping file contents, running a verify command and pasting output.model: "sonnet" — the default for breadth: Recon scans, exploration, search, most parallel slices where you wrote a tight spec and the agent is filling in known shape, verification and smoke checks.model (inherit Opus) only where judgment earns its cost: the Wave 1 foundation contract everything depends on, anything touching live-trading-path logic, the polish wave that needs taste, and final synthesis. When unsure, the slice probably has a tight enough spec for Sonnet.
The orchestrator (you, the main loop) stays on whatever /model is set. This rule only governs the agents you spawn.The canonical shape — adapt to the work, don't follow it blindly:
SPEC.md / FINDINGS.md / FIX_PLAN.md, feature_list.json seeded. Single commit.STATUS.md using STATUS_TEMPLATE.md as the structure (build mode) or a PR description in the same shape (existing-codebase mode). Match the user's voice if known.Serial vs parallel: serial when later agents need the earlier agent's contract; parallel when slices touch non-overlapping files and only depend on contract, not internals.
Model per wave (see rule 11): Wave 0 scaffold and Wave 6 verify lean Haiku/Sonnet. Wave 1 foundation contract stays Opus (everything downstream depends on it). Wave 3/4 parallel slices default to Sonnet. Wave 5 polish stays Opus (taste, not throughput). A mixed fleet inside one wave is fine and expected.
Adapt the shape:
SPEC.md includes: goal, stack, voice/style rules so subagents self-enforce, explicit acceptance criteria, out-of-scope list.feature_list.json has both functional and style categories. Mix of narrow (2-5 steps) and comprehensive (10+ steps) tests. At least 25% have 10+ steps.FIX_PLAN.md includes: minimal repro, root cause hypothesis, blast radius (what files/systems the fix could break), rollback steps.This is the mode that gets used when the user has no specific target — they just want to know "what should we do."
FINDINGS.md with sections:
Every subagent prompt should look roughly like this. Customize but don't drop sections. Set the Agent tool's model param per rule 11 when you dispatch (most slices: "sonnet").
Working directory: <absolute path>
You are working in parallel with other agents. Stay in your lane.
## Required reading (read these first)
- SPEC.md — overall goal and constraints
- <other files> — <reason per file>
## Your slice
<concrete description of what you build/fix>
## Contract from upstream waves
<auth shapes, env vars, API conventions, type signatures other agents depend on>
## Files you MAY touch
- path/to/file1
- path/to/file2
## Files you MAY NOT touch (other agents own these)
- path/to/other1
- path/to/other2
## Verification — RUN before reporting back
- <build command>
- <test command>
- <smoke check: curl this, screenshot that>
- Kill any dev servers you started: <platform-appropriate command>
## Commit
git add <explicit paths only — NEVER git add -A>
git commit -m "<descriptive message, explain why not what>"
## Report back in under 300 words
- What you built and where
- Verification results (paste actual output, don't paraphrase)
- Anything you noticed that's out-of-scope for your slice (don't fix it, just flag it)
- Any contract change downstream agents need to know about
After each wave, run the verification yourself, then flip features that passed. Use whatever's available — Node, Python, jq. Examples:
Node (most common):
node -e "const fs=require('fs'); const f=JSON.parse(fs.readFileSync('feature_list.json')); ['<description1>','<description2>'].forEach(d=>{const t=f.find(x=>x.description===d); if(t) t.passes=true}); fs.writeFileSync('feature_list.json', JSON.stringify(f,null,2));"
Python:
python -c "import json; f=json.load(open('feature_list.json')); [setattr(t,'passes',True) for t in f if t.get('description') in ['<d1>','<d2>']]; json.dump(f, open('feature_list.json','w'), indent=2)"
(Note the Python version needs dict access — adapt to your actual schema.)
Then: git add feature_list.json && git commit -m "Verify wave N: <count> features now passing". Separate from build commits.
This pattern runs on the Claude Code subscription (Max), not the API key. Each Agent tool call is a fresh-context subagent under the same auth. Sustained orchestration (~hour-plus runs with many subagent calls) draws against Max session limits — that's the trade for not burning pay-per-token credits. If you hit a rate limit mid-build, pause; the work is committed wave-by-wave so the user can resume.
When this skill activates, your first response should be:
After the user confirms, execute wave-by-wave. Commit between every wave. Report wave outcomes concisely — the user shouldn't have to read everything every subagent did, just what changed and what's next.
npx claudepluginhub mphinance/alpha-skills --plugin mph-kitOrchestrates multi-agent work at scale—research swarms, parallel builds, wave dispatch, build-review-fix pipelines, and any task needing 3+ agents. Selects strategy by work shape and partitions agents for true parallelism.
Orchestrates a full build pipeline from PRD: plans tasks, implements in parallel, and reviews results. Routes simple work to a lighter workflow.
Decomposes large tasks (migrations, multi-issue fixes, big features) into parallel work packages with quality gates. Useful for reducing PR cycle time and avoiding merge conflicts.