| name | tsh-orchestrating-implementation |
| description | Owns the canonical implementation orchestration workflow for feature implementation, including planning readiness, Human approval gating, delegated execution routing, todo control, and review gates. Use when handling implementation orchestration, `tsh-implement`, or feature implementation workflows that must coordinate specialized agents without writing product code directly. |
| user-invocable | false |
Orchestrating Implementation
This skill is the canonical workflow owner for implementation orchestration in the lower-tier orchestrator. It prepares execution context, routes delegated work, and closes quality gates without writing product code itself.
Keep planning readiness, task routing, todo protocol, execution-plan steps, and review gates here rather than duplicating them in agents or prompts.
This skill is the single owner of route-varying authorization bases, eligibility, and escalation. Execution owners carry the common invariant inline in their own <human-approval-precondition> block; use that inline precondition as the source of truth for the common invariant rather than restating the predicate here as an owners' source of truth.
This skill never edits any file directly; it always delegates every file change to the owning specialist. This applies to product code, tests, infrastructure, prompts, and documentation alike — there is no file type the orchestrator may edit itself. It orchestrates delegation, validation, review, and escalation only.
The `read` and `search` tools are used only to validate routing and delegation decisions, never to research or solve the task directly. Read just enough to choose the right specialist and pass an accurate handoff; do not gather solution context the owning specialist should gather itself.
If no suitable specialist agent exists for a required file change, stop and ask the user instead of self-executing the edit. Self-execution is never the fallback.
The todo list is the progress-control surface. It is not a context-loss recovery mechanism and must not be treated as one.
Workflow
Use the checklist below and keep it synchronized with the todo list:
Implementation orchestration progress:
- [ ] Step 0: Create flow-start todos
- [ ] Step 1: Establish Full Flow and assess planning readiness
- [ ] Step 2: Plan the task order
- [ ] Step 3: Run Full Flow
- [ ] Step 4: Close validation and review gates
Step 0 - Start with todos
- Create todos at the start of Full Flow.
- Create one todo per plan task, per review event, per
[REUSE] UI verification item, and per final gate.
- Consult the todo list before each action.
- Mark the matching todo complete immediately after the action finishes.
- If scope changes, update the execution plan first, then synchronize the todo list.
Step 1 - Establish Full Flow and assess planning readiness
Full Flow is the only implementation-orchestration route for this skill. No alternative flow may be offered, recommended, accepted, recorded, or honored as an override.
Use the following rules before any delegation. Broad inputs remain accepted, but missing research or plan artifacts always route to preparation; no confirmation can authorize implementation without a current actionable plan.
UI-verification scope: UI-verification involvement is broad: ANY change to rendered UI on a Figma-backed screen — layout, spacing, sizing, width/height caps, flex/grid, alignment, typography, colors, or component structure — counts as UI-verification work, even when no [REUSE] task or Figma URL is currently in hand. In that case, obtain the Figma reference (ask the user if it is missing) and run the UI verification gate. Never reclassify a visual/layout change as a plain "narrow code fix" to skip it.
Repository-documentation requests — when the work only touches repository documentation (README, CHANGELOG, in-repo /docs, or the published documentation site) and those targets exist in the project — are recognized as a first-class documentation work type and routed to tsh-technical-writer via the Execution routing table, never improvised or self-executed.
If research or a plan is missing, route to the Full Flow preparation sequence below before selecting an implementation owner. Do not offer or authorize no-plan implementation.
Step 2 - Plan the task order
Produce a task-order plan - the WHAT tasks in WHAT order - before the first delegation, not a binding agent + prompt call sequence.
- Do this before the first delegation.
- Do it again after Human approval and before execution starts.
- List every planned task in order, covering each delegation, review, validation checkpoint, and UI verification item.
- Do not bind an agent or prompt to each task here; the agent + prompt per task is implied at execution time by the Execution routing table.
- Share the intended flow on chat with an explicit note that it may change as execution proceeds.
- Keep the task-order plan synchronized with the todo list whenever order or scope changes.
Task-to-Owner Routing
This table is the single source of truth for selecting a delegate agent and prompt for any task, by task type or tag. Full Flow consults this table for every task — it is not duplicated elsewhere in this skill.
| Task type or tag | Delegate to | Prompt to use | Notes |
|---|
| app code (plan task) | tsh-plan-implementor | tsh-implement-common-task.prompt.md | DEFAULT route for a Human-approved plan revision's actionable, low-risk plan seams that must be executed exactly as written |
| app code (complex) | tsh-software-engineer | tsh-implement-common-task.prompt.md | EXCEPTION route for complex non-UI work; choose Kimi K2.7 Code or GPT-5.3-Codex for medium-reasoning precision on complex work, or Gemini 3.6 Flash for fast, low-cost, large-context analysis |
| UI with Figma | tsh-ui-engineer | tsh-implement-ui-common-task.prompt.md | The internal prompt should be used for Figma-based UI implementation |
| E2E | tsh-e2e-engineer | tsh-implement-e2e.prompt.md | The internal prompt should be used for end-to-end test work |
| infra/Terraform | tsh-devops-engineer | tsh-implement-terraform.prompt.md | The internal prompt should be used for Terraform changes |
| Kubernetes/deploy | tsh-devops-engineer | tsh-deploy-kubernetes.prompt.md | The internal prompt should be used for deployment or Kubernetes work |
| CI/CD | tsh-devops-engineer | tsh-implement-pipeline.prompt.md | The internal prompt should be used for pipeline work |
| observability | tsh-devops-engineer | tsh-implement-observability.prompt.md | The internal prompt should be used for logging, metrics, or tracing work |
| LLM prompts | tsh-prompt-engineer | tsh-engineer-prompt.prompt.md | The internal prompt should be used for prompt-engineering tasks |
| documentation | tsh-technical-writer | tsh-write-documentation.prompt.md |
Note: Apply the app-code decision rule consistently during execution and follow-up fixes: tsh-plan-implementor is the DEFAULT route for actionable, low-risk plan seams, while tsh-software-engineer is the EXCEPTION route for complex non-UI work.
Material Revision Handling
This rule is universal: it applies at any point before implementation completion — including execution discovery, a workflow deviation, a Request changes response, or a review-driven solution change.
Any material change to a plan that was previously Human-approved immediately halts all subsequent file-changing delegation. A generic user confirmation is never sufficient to resume file changes once a previously Human-approved plan revision materially changes — only a renewed Human approval at the gate can do so. Routine progress or status updates that do not change plan content are not material and do not trigger this rule.
When a material revision occurs:
tsh-architect increments the Plan Revision, sets Human Decision=PENDING, clears Approved Revision, and records the reason in the plan file's Changelog section.
- No automatic re-review is invoked. A new review event occurs only through an explicitly user-directed new review event; neither the architect nor the manager initiates one as a routine step.
tsh-engineering-manager requests renewed Human approval at the gate (Approve current plan, Request changes, Stop) before any file-changing delegation resumes.
Approval Gate Separation
Two distinct user-facing gates exist. They must not duplicate each other, and neither may substitute for the other.
| Gate | Owner | Exact labels | When it fires | Who writes the record |
|---|
| Plan-authoring approval | tsh-architect | Approve plan, I have comments | Immediately after a settled review event: a revision-bound verdict accepted for the revision read plus a written disposition for every eligible blocker. It does not fire on the low-risk-exemption path, where no reviewer verdict exists. | tsh-architect writes the literal decision into the plan's ## Human Approval table. |
| Execution authorization (recovery-only) | tsh-engineering-manager | Approve current plan, Request changes, Stop | Before the first file-changing delegation, and again after any material revision — but only when no valid approval already exists for the current unchanged Plan Revision. | tsh-engineering-manager delegates the write to tsh-architect; it never writes the record itself because it has no edit tool. |
The Manager's gate is fail-closed recovery only, never a second normal authorization when a valid current-revision record already exists, including one recorded by tsh-architect.
The manager MUST read the exact plan path and evaluate each canonical approval field before reuse. This skill is the sole detailed owner of that validation and receipt procedure. The manager MUST perform the validation read-only against the exact plan path, then evaluate the existing three canonical fields: Human Decision, Approved Revision, and a valid UTC-Z Decision Timestamp. A valid unchanged persisted record produces an ephemeral bounded reused receipt containing the exact plan path, current revision, persisted timestamp, review path when available, and the result of each predicate field. It authorizes reuse without a duplicate manager gate.
If the record is unreadable or missing, stale, mismatched, non-literal, or in PENDING state, the manager MUST fail closed and produce an ephemeral invalid-or-missing receipt naming the exact failed field or path. Manager-turn-only consent is explicitly rejected as a validity criterion. The exact plan path and persisted fields win if handoff routing metadata conflicts; the manager fails closed rather than using conflicting pointers. Handoff pointers, architect prose, delegated turns, reviewer output, and receipts never replace on-disk validation. Do not persist a receipt or add metadata, provenance, a ledger, a cryptographic claim, a schema change, or a fourth predicate term.
Reuse never manufactures consent: it requires the exact canonical predicate over a literal recorded decision, and any missing, unreadable, stale, mismatched, or PENDING record forces the gate. Neither gate may weaken the canonical ## Human Approval schema, values, validity predicate, or reset behavior owned by tsh-creating-implementation-plans. After any material revision, Material Revision Handling above applies in full and no prior approval is reusable.
Implementation Discussion Boundary
The authoring discussion is the discussion in which the plan was authored, reviewed, and approved at the Architect's plan-authoring gate. The implementation discussion is a new discussion the user starts to deliver that plan. Recording plan-authoring Human approval completes the authoring discussion; implementation begins only in a new discussion.
In the authoring discussion, after a current-revision recorded APPROVED, the manager reports the exact plan path, current Plan Revision, persisted Decision Timestamp, and review path when present, names implementation as the next step, and MUST NOT perform any file-changing delegation there. This includes the Full Flow where /tsh-implement routed planning to the Architect in this same discussion and the Architect recorded approval there.
New implementation discussions enter through /tsh-implement or a direct tsh-engineering-manager invocation. The manager re-reads and reuses the existing on-disk record under the unchanged predicate Human Decision=APPROVED, Approved Revision=current Plan Revision, and a Decision Timestamp that is valid ISO 8601 UTC ending in Z, without presenting a duplicate approval gate. The discussion boundary is a lifecycle stop, never an approval-validity criterion.
Invalid or missing states remain fail-closed, and Material Revision Handling remains unchanged; the boundary grants no exception. The low-risk-exemption path is excluded: no Architect plan-authoring gate ran there, and the manager's execution-authorization gate remains the only user-facing gate. This boundary is instruction-level and auditable; it does not detect or enforce a VS Code conversation identifier. It introduces no fields, values, provenance, receipts, ledgers, or additional predicate terms.
Full Flow
Planning readiness
Check the current state before creating or executing any plan.
| Artifact or signal | Treat as ready when | If not ready |
|---|
*.research.md | It exists for the current task and contains enough context to explain scope, constraints, requirements, and referenced inputs or links | Route to tsh-context-engineer with tsh-research.prompt.md |
*.plan.md | It exists for the current task and contains ordered, actionable tasks that can be delegated | Route to tsh-architect with tsh-plan.prompt.md |
| Open questions gate | It exists and contains no ❓ Open rows in ## Open Questions, so unresolved questions are not blocking execution readiness | Route to tsh-architect with tsh-plan.prompt.md |
| Technical Context | The plan has a populated Technical Context section with conventions, patterns, stack, and testing guidance relevant to implementation | Route to tsh-architect with tsh-review-codebase.prompt.md |
| Reviewer readiness | Satisfied by a settled review event recorded in .plan-review.md — a revision-bound verdict accepted at return plus a written disposition for every eligible blocker — or, before any Human approval has ever been recorded, by the unchanged explicitly recorded valid low-risk automated-review exemption for initial plan preparation; this is never Human approval | Route to tsh-architect with tsh-plan.prompt.md to return a finished reviewed plan or an explicitly stated valid exemption |
| Human approval state | The plan's persisted Human Approval record satisfies Human Decision=APPROVED, Approved Revision=current Plan Revision, and a Decision Timestamp that is valid ISO 8601 UTC ending in Z. A record tsh-architect already wrote at its plan-authoring gate satisfies this row for the unchanged revision; apply the Implementation Discussion Boundary. | Present the mandatory Human approval gate before the first file-changing delegation |
Planning sequence
- Check for existing research and plan files - Inspect current
*.research.md and *.plan.md state first.
- Fill missing context when needed - If research is missing or incomplete, delegate to
tsh-context-engineer with tsh-research.prompt.md.
- Create or refresh the reviewed plan when needed - If the plan is missing, stale, not actionable, or not reviewer-ready, delegate to
tsh-architect with tsh-plan.prompt.md. The architect owns producing a finished reviewed plan with one invocation per plan lifecycle; the sole exception is an explicitly user-directed new review event, never a routine architect or manager option. If a return is non-revision-bound or a blocker remains unresolved, the architect uses vscode/askQuestions with exactly stop here and custom guidance, neither of which authorizes another review. Preserve append-only review history and never approve with unhandled blockers. The plan MUST be authored following the tsh-creating-implementation-plans skill — it owns the plan template and structure rules. Missing research always routes to tsh-context-engineer first; missing plans always route to tsh-architect. After the review event is settled, the architect runs its own plan-authoring approval gate (Approve plan, I have comments) and records the literal decision in the plan's ## Human Approval table; see Approval Gate Separation.
- Create execution todos from the plan - Create todos per plan task, not just per phase.
- Capture UI inventory early - Find every
[REUSE] UI task and every Figma URL in the plan and research files. If a Figma-backed UI task does not have a Figma reference, stop and get it from the user before execution starts.
- Ask for the dev server URL when UI tasks exist - If the UI inventory is non-empty, use
vscode/askQuestions to get the exact user-confirmed full dev server URL before execution starts. Treat it as a pinned session input and forward it unchanged through every reviewer and capture delegation.
- Apply the Technical Context rule - If the plan already contains populated Technical Context, use it and skip rediscovery; otherwise delegate to
tsh-architect with tsh-review-codebase.prompt.md.
- Separate reviewer readiness from Human approval readiness - Reviewer readiness is satisfied by a settled review event recorded in — a revision-bound verdict accepted at return plus a written disposition for every eligible blocker — or, before any Human approval has ever been recorded for this plan, by the unchanged explicitly stated valid low-risk automated-review exemption for initial plan preparation. This is Reviewer readiness only and never execution permission; neither basis substitutes for Human approval. A material revision after Human approval still halts delegation and requires renewed Human approval, but no automatic reviewer invocation; a new review event occurs only through the explicitly user-directed new review event exception.
Execution routing
Process tasks in plan order. Consult the todo list before each task and update the plan and todo list after each completed task. Use the Task-to-Owner Routing table above to select the delegate agent and prompt for each task — it is not repeated here. Apply the app-code decision rule consistently during execution and follow-up fixes: tsh-plan-implementor is the DEFAULT route for actionable, low-risk plan seams, while tsh-software-engineer is the EXCEPTION route for complex non-UI work.
Execution rules and gates
- Stay inside the Human-approved plan - Execute the Human-approved plan revision as written. If execution requires a material deviation, stop immediately and apply Material Revision Handling — a generic confirmation from the user is never sufficient on its own to resume file changes.
- Require current Human approval - Before any file-changing delegation, the delegation must identify a plan whose persisted record satisfies exactly:
Human Decision=APPROVED, Approved Revision=current Plan Revision, and Decision Timestamp is valid ISO 8601 UTC ending in Z. Apply the Implementation Discussion Boundary before delegation. Missing, stale, mismatched, inferred, or Reviewer-only approval must block the file-changing delegation and cannot be bypassed by direct invocation. Recovery follows the execution owner's inline <human-approval-precondition> guided-recovery behavior: name the failed field, condition, or file, then use vscode/askQuestions to offer next steps. Returning to tsh-engineering-manager for the gate is one applicable choice, not the mandatory sole outcome.
- Handle a material plan revision - Apply Material Revision Handling above in full whenever
Request changes, execution discovery, a workflow deviation, or a review-driven solution change materially revises a previously Human-approved plan. A fresh session may reuse persisted approval only when Human Decision=APPROVED, Approved Revision=current Plan Revision, and Decision Timestamp is valid ISO 8601 UTC ending in Z; otherwise the file-changing delegation must be blocked. No automatic reviewer invocation follows; a new review event occurs only through the explicitly user-directed new review event exception. Recovery follows the execution owner's inline <human-approval-precondition> guided-recovery behavior: name the failed field, condition, or file, then use vscode/askQuestions to offer next steps. Returning to tsh-engineering-manager for the gate is one applicable choice, not the mandatory sole outcome.
- Delegate by route with an explicit handoff contract - Use the routing table for each task and hand off a bounded task slice, the relevant technical context, and a targeted summary of the prior worker's actionable output. Do not dump raw prior output or unscoped context; give the specialist exactly the slice they own plus the context they need to execute it. For any Figma-backed UI task, the handoff MUST include the Figma URL or node reference; if it is missing, use to obtain it before delegating. must fetch and review that design before coding.
Preservation coverage
Keep the workflow traceable to the plan's preserved branches:
| Coverage area | Preserved checklist items |
|---|
| Step 0 todos and Step 1 Full Flow establishment | 1-4 |
| Full Flow planning, reviewed-plan handoff, and context handling | 9-14 |
| Execution routing and quality gates | 15-26 |
| UI verification enforcement loop | 40-44 |
Connected Skills
tsh-technical-context-discovering - defines when existing Technical Context is sufficient and when discovery should be skipped or delegated.
tsh-code-reviewing - strengthens the final review gate and keeps implementation quality checks explicit.
tsh-ui-verifying - provides the verification standard behind the per-item UI review gate.
tsh-task-analysing - helps determine whether research context is complete before planning starts.
tsh-task-quality-reviewing - complements planning quality by reinforcing explicit gaps, edge cases, and task completeness.
tsh-creating-implementation-plans - owns the plan template and plan-structure rules used in the planning sequence.