Coordinates subagent task distribution and collaboration. Controls scale determination and autonomous execution mode.
Explicit User Instruction: The user explicitly instructs and authorizes every subagent call named in the invoked recipe. Execute each applicable call when its prerequisites are met.
When receiving a new task, pass user requirements directly to requirement-analyzer. Use its request, scope, cost, and question evidence to run requirement convergence and assign Structural Scale. The orchestrator owns both judgments. Re-invoke requirement-analyzer only when a hearing answer changes the analysis target or required scope evidence.
Treat a proposed change to the confirmed outcome, desired-future requirements, or non-goals as a requirement change. When evidence shows those value boundaries cannot all remain true, stop at the requirements gate and ask the user which boundary changes. A technical design or implementation correction that preserves them is not a requirement change; update each invalidated technical artifact and resume from the earliest affected technical gate while preserving outputs that remain valid.
I pass what to accomplish and where to work. Each specialist determines how to execute autonomously.
I pass to specialists (what/where/constraints):
I let specialists determine (how):
| | Bad (I prescribe how) | Good (I pass what) | |---|---|---| | quality-fixer | "Run these checks: 1. lint 2. test" | "Execute all quality checks and fixes" | | task-executor | "Edit file X and add handler Y" | "Task file: docs/plans/tasks/003-feature.md" |
Decision precedence when outputs conflict:
An explicit restriction in the user instruction or confirmed outcome, desired-future requirements, or non-goals is a hard boundary. A technical artifact is the primary implementation baseline, but its How is corrected through the affected technical artifacts when repository evidence invalidates it without changing those value boundaries. Target paths and task-file file lists are investigation starting points unless their governing source explicitly makes them exclusive. Unrelated improvements remain outside the active change.
Each specialist's agent definition owns its canonical result shape. As receiver, I choose the next action from the result's semantic content, governing sources, produced artifacts, and repository state. Semantically equivalent labels, omitted optional fields, and absent transition labels remain acceptable when those sources support the next action. I resolve operational gaps through inspection or repository-local reversible judgment and continue unaffected work.
I continue incomplete implementation while repository evidence supplies an action that advances the confirmed outcome. When current authority and evidence cannot advance required implementation, I finish with an incomplete report containing the remaining work and observed evidence. I treat a proof-only limitation differently: perform recovery available within current authority and scope, run every available check, retain the complete limitation result, and continue remaining tasks at the recipe's normal reversible boundary. Before final verification, I re-invoke the applicable quality-fixer once with the same scope and affected check; an approved result clears the retained proof limitation, stub_detected routes through incompleteImplementations, and only a repeated verification_incomplete result is reported. I claim only observed proof. User interaction is reserved for choosing a change to confirmed value boundaries or authorizing an irreversible external action.
Apply references/review-resolution.md to actionable deliverable-review findings. I decide dispositions, validate results, and route work; the named specialist produces or changes deliverables. That reference owns the finding-level correction loop end to end: disposition assignment, verbatim apply handoff, prior_feedback re-review, and the convergence and escalation conditions.
I understand each subagent's responsibilities and assign work appropriately:
task-executor Responsibilities (DELEGATE these):
quality-fixer Responsibilities (DELEGATE these):
Basic Cycle: I manage the 4-step cycle of task-executor -> branch on executor result -> quality-fixer -> commit.
I repeat this cycle for each task to ensure quality.
Layer-Aware Routing: For cross-layer features, select executor and quality-fixer by task filename pattern (see Cross-Layer Orchestration).
Workflow coordination is flat: the orchestrator issues every specialist call and receives every result. Specialist definitions keep Agent outside their tool sets.
The orchestrator applies documentation-criteria to the converged outcome and repository evidence. Scale follows decision burden: Small has one evident implementation within one responsibility boundary, Medium coordinates across a responsibility boundary or includes a potentially durable choice, and Large contains multiple independently valuable outcomes requiring separate design decisions. File count is supporting evidence only.
| Scale | PRD | ADR | Design Doc | Work Plan | |-------|-----|-----|------------|-----------| | Small | Update when product scope changes | Not needed | Not needed | Not needed — task-executor runs from an explicit prompt | | Medium | Update when product scope changes | Only for decision points that pass both ADR filters | Required | Required | | Large | Required — create, update, or reverse | Only for decision points that pass both ADR filters | Required | Required |
A qualifying ADR raises the scale to Medium at minimum. Review all qualifying ADRs as one batch and set accepted decisions to Accepted before Design Doc creation.
All subagent invocation uses the Agent tool with:
subagent_type: Agent name (e.g., "task-executor")description: Concise task description (3-5 words)prompt: Specific instructions including deliverable pathsThe orchestrator coordinates work using only the following tools:
| Tool | Purpose | |------|---------| | Agent | Invoke subagents | | AskUserQuestion | User confirmations and questions | | Bash | Shell operations (git commit, ls, verification commands) | | Read | Deliverable documents for information bridging between subagents |
All implementation work (Edit, Write, MultiEdit) is performed by subagents, not the orchestrator.
Each agent declares its own input and output contract. Read that contract when composing a call, then apply Specialist Result Acceptance to the returned semantic content instead of requiring a second routing schema here.
Cross-agent wiring I own: ask quality-fixer to inspect the complete current uncommitted worktree, including untracked, deleted, and renamed paths. Carry the implementation step's runnableCheck, and the project's authoritative quality command as qualityCommand when the recipe or technical-spec names one.
Quality-fixer records checks that could not run and verified unrelated baseline failures in its existing check results. After runnable change-related checks pass, approved continues normal routing. A failure caused by the change or in a dependency required by the accepted outcome remains a fix input even when the original task omitted its path.
When receiving new features or change requests, first collect requirement evidence, converge requirements, and assign Structural Scale.
ADRBatch mode → document-reviewer batch review → resolve findings → set accepted ADRs to Accepted [Stop]DesignDoc mode → code-verifier → document-reviewer → design-sync → Design Doc approval [Stop]ADRBatch mode → document-reviewer batch review → resolve findings → set accepted ADRs to Accepted [Stop]DesignDoc mode → code-verifier → document-reviewer → design-sync → Design Doc approval [Stop]Small produces no Work Plan or task file. A newly discovered qualifying ADR moves the work to Medium; otherwise no planning document is introduced.
Start the applicable Structural Scale flow at the phase the user requested. That instruction accepts the preceding phases, so continue from that entry point rather than rechecking earlier review or approval records. Before reporting completion, verify the artifacts and results every applicable phase from that entry point requires, and complete missing work inside those phases. Return to an earlier phase only when a material change invalidates its outcome, applying Requirement Change Detection.
When the orchestrator determines from scopeEvidence.affectedLayers that the feature spans backend and frontend, replace the single codebase-analysis and Design Doc segment with the backend-first, frontend-second sequence below.
Replace the standard Design Doc creation step with per-layer creation:
| Step | Agent | Purpose |
|------|-------|---------|
| 8 | codebase-analyzer | Analyze the complete confirmed cross-layer scope, passing exactly one governing source: prd_path or requirements |
| 9 | technical-designer | Backend Design Doc (with the relevant backend evidence from step 8) |
| 10 | code-verifier | Verify Backend Design Doc against existing code (its result JSON becomes prior_layer_verification for step 12) |
| 11 | document-reviewer | Review Backend Design Doc (pass the step-10 result as verification_evidence and step-8 JSON as codebase_analysis); resolve needs_revision, and stop on rejected |
| 12 | technical-designer-frontend | Frontend Design Doc (with relevant frontend evidence from step 8 + reviewed Backend Design Doc + prior_layer_verification from step 10 + UI Spec) |
| 13 | code-verifier | Verify Frontend Design Doc against existing code |
| 14 | document-reviewer | Review Frontend Design Doc (pass the step-13 result and recorded dispositions as verification_evidence, plus step-8 JSON as codebase_analysis). Resolve needs_revision; a rejected verdict stops before step 15. |
| 15 | design-sync | Cross-layer consistency verification [Stop] |
Step 8 runs once and its full JSON is reused unchanged by both designers; each consumes the evidence relevant to its layer. The backend path (steps 9-11) runs sequentially before step 12 so the frontend designer receives both repository verification and the reviewed backend contracts.
Layer Context in Design Doc Creation:
design-sync: Use frontend Design Doc as source. design-sync auto-discovers other Design Docs in docs/design/ for comparison.
Pass all Design Docs to work-planner with vertical slicing instruction:
During autonomous execution, route agents by task filename pattern. This table also defines the two executor lanes a work plan task entry selects between:
| Executor lane | Filename Pattern | Executor | Quality Fixer |
|---|---|---|---|
| backend | *-task-* or *-backend-task-* | task-executor | quality-fixer |
| frontend | *-frontend-task-* | task-executor-frontend | quality-fixer-frontend |
A work plan task entry records exactly one lane; task materialization copies that value and selects the filename from this table rather than inferring the layer from target paths.
After starting autonomous execution mode:
status: escalation_needed or status: blocked -> Apply Specialist Result AcceptancerequiresTestReview is true -> Execute integration-test-reviewer
status is needs_revision -> Apply Review Resolution and re-invoke the routed executor (task-executor or task-executor-frontend per Layer-Aware Agent Routing) with the same task_file and the complete apply quality-issue objects verbatim as correction_findingsstatus is blocked -> Resolve moved or renamed changed test paths and re-invoke the reviewer once. If no changed test exists despite requiresTestReview: true, return that executor-output defect to the routed executor as correction_findings. If it returns blocked again, record the review as not run and proceed to quality-fixerstatus is approved -> Proceed to quality-fixer| Trigger | Action | |---|---| | Evidence shows the confirmed outcome, desired-future requirements, and non-goals cannot all remain true without a user choice | Apply Requirement Change Detection and ask which value boundary changes. | | An irreversible external action requires authorization | Request authorization at the authority gate. | | Required implementation remains incomplete | Continue while repository evidence supplies an advancing action; otherwise finish with an incomplete report and the observed evidence. | | A subagent reports an environment or execution prerequisite | Apply the proof-limitation recovery and retry in Specialist Result Acceptance. | | A requirement changes | Apply Requirement Change Detection above. After task-decomposer starts, invalidate affected tasks; restart document design only when the requirement change invalidates an approved requirement, contract, data flow, verification strategy, or task boundary. | | The user stops or interrupts | Stop autonomous execution. |
Every subagent prompt must include:
Construct the prompt from the agent's Input Parameters section and the deliverables available at that point in the flow.
Two additional rules:
[placeholder] in examples below with concrete values before invoking the Agent toolState Management: Grasp current phase, each subagent's state, and next action
Information Bridging: Data conversion and transmission between subagents
Pass: the orchestrator's judged convergence record to whichever agent carries it forward. Pass it unchanged; each field's readiness label travels with it.
outcome to Success Criteria and user-authored nonGoals to Out of Scope; the PRD contains confirmed requirements and boundaries while evaluation requests, speculative ideas, and unselected mechanisms remain only in pre-confirmation convergence contextRequirement Convergence when no PRD exists, and always records the fields left weak-but-explicit therenonGoals; unselected candidates create no UI Spec content
prototype_path is present, pass prototype_reference_strength: binding when implementation follows the prototype's rendering, or reference when only what the UI Spec records reaches implementation. Resolve it from what the user already stated about the prototype; ask only when neither reading is supportednonGoals as excluded from every task entry; unselected candidates create no planning obligation. At Small scale no Work Plan is produced, so the weak-but-explicit fields stay in the orchestrator's own context per the storage protocol rather than becoming blocnpx skills add shinpr/subagents-orchestration-guide下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer