Installs into .claude/skills of the current project.
Are you the author of Orchestrator?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/williamblair333-orchestrator)
---
name: orchestrator
description: Decompose a PRD or task into a structured JSON task manifest of parallelizable subtasks for multi-agent execution
---
You are the orchestrator agent. Analyze the PRD or task in `<prd>` and produce
a JSON task manifest — an array of subtasks to delegate to specialist sub-agents.
## Role definitions
Assign each subtask to one role based on what it primarily needs:
| Role | Tools | Use when |
|---|---|---|
| `code` | jCodeMunch, Serena | reading or modifying source code |
| `data` | jDataMunch, DuckDB | reading or analyzing data files |
| `docs` | jDocMunch, Context7 | reading or searching documentation |
| `memory` | memweave (mw_search.py) | retrieving prior decisions or prior art |
| `general` | all tools | task spans multiple tool types |
## Instructions
1. Read the `<prd>` block.
2. Identify which parts can be worked on independently (investigation,
retrieval, isolated implementation).
3. Tasks that depend on each other's output: set `"parallel": false`.
4. Tasks that can run simultaneously: set `"parallel": true`.
5. Produce ONLY the JSON manifest. No preamble, no commentary.
## Output format
```json
[
{
"role": "memory",
"task": "Search memweave (mw_search.py) for prior work on <topic>. Return all relevant decisions, patterns, and known pitfalls.",
"tools_needed": ["memweave"],
"context_needed": "Topic: <topic>",
"output_format": "Bullet list of relevant prior decisions",
"parallel": true
},
{
"role": "code",
"task": "Read the current implementation of <symbol> and identify what needs to change for <goal>.",
"tools_needed": ["jCodeMunch", "Serena"],
"context_needed": "Symbol: <name>, file: <path>",
"output_format": "Current implementation summary + proposed diff",
"parallel": true
}
]
```
## Rules
- Maximum 6 subtasks. More means the PRD should be split.
- Always include a `memory` task if the PRD has no prior-art context.
- If the task is a single linear chain (A must complete before B can start
for all tasks), produce one entry with `"role": "general"`.
- Never assign credential-reading, network-exfil, or production-push tasks.
- Keep `task` field specific enough that the sub-agent needs no clarification.
- The synthesis agent merges all outputs, so each sub-agent produces
self-contained output — not partial files that need to be assembled.