Feature Ship Router
Definition
Act as the single entry point for Phase 3 Ship: build, review, test, and push one feature. Invoke each named skill below in order. Use their outputs to create and maintain FEATURE_DELIVERY.md.
FEATURE_DELIVERY.md is the delivery document for the feature. It records what was inspected, what was planned, what changed, how behavior was verified, how the code compares to the plan, what tests and docs were updated, what diff was reviewed, and what was committed and pushed.
Questions To Ask
- What feature is being built, and which acceptance criteria define done?
- Which existing project documents should guide the work?
- Should the feature be pushed after commit, or only prepared locally?
- What branch, remote, issue, or pull request context matters?
- Are there user changes that must be preserved outside this feature?
Required Output Document
- Create or update exactly this file at the repository or workspace root:
FEATURE_DELIVERY.md.
- Read
AGENT_GUARDRAILS.md, FEATURE_MAP.md, and FEATURE_DESIGN.md when available.
- Preserve correct prior decisions, update stale parts, and add update notes whenever the implementation changes the plan.
- Use
TBD plus a precise question when a project fact is unknown.
- Keep the document comprehensive enough that another coding agent can understand what was built and why.
Existing Project Comparison
- Compare the feature against
AGENT_GUARDRAILS.md, FEATURE_MAP.md, FEATURE_DESIGN.md, and current repository files when available.
- Reconcile implementation facts with the plan before committing.
- Check for tactical complexity, stale docs, missing tests, unrelated changes, and broken project conventions.
Suggestive Plan
- Inspect the repository and current git state.
- Plan the smallest strategic implementation slice.
- Write precise coding-agent instructions and implement the slice.
- Verify behavior, compare plan to code, review complexity, and fix issues.
- Add tests, update docs, review the final diff, commit, and push when allowed.
Exact Skill Invocation Flow
The user should only need to invoke $feature-ship-router. This router is responsible for invoking these skills explicitly, one by one, by exact skill name.
Visible Routing Protocol
When this router is invoked, the agent must make the routing visible to the user. Do not silently blend phases together.
Before doing feature work:
- Create a visible checklist with all 12 subskills in order.
- Mark only the current subskill as
in_progress.
- Announce the current subskill by exact name, for example:
Invoking $repository-inspection.
- Read that subskill's
SKILL.md completely before acting on that phase.
- Perform only the work that belongs to that phase.
- Update the matching section in
FEATURE_DELIVERY.md.
- Mark the subskill complete before moving to the next one.
Each phase must produce an observable artifact:
- A
FEATURE_DELIVERY.md section update, or
- A code/test/doc change, or
- A verification command result, or
- A short explicit note that no change was needed and why.
If implementation work has already happened before this router is invoked, still run the full visible sequence. In that case, use early phases to inspect and reconcile existing work instead of pretending they already happened.
Do not jump from planning directly to coding, from coding directly to commit, or from verification directly to push without visibly completing the intervening subskills.
Phase Work And Handoff Protocol
Router phases must do real work. Naming or reading a subskill is not enough to complete a phase.
For every subskill phase:
- Read the latest
Routing Log entry in FEATURE_DELIVERY.md, if one exists.
- Treat that entry as the incoming handoff from the previous skill.
- Inspect the project, current diff, verification evidence, or delivery document sections needed for this phase.
- Produce phase output: observations, implementation edits, verification results, review findings, fixes, tests, documentation updates, commit decisions, or an explicit "no change needed" note backed by evidence.
- Update the matching
FEATURE_DELIVERY.md section before moving on.
- Add a new
Routing Log handoff entry for the next skill.
- Mark the phase with exactly one status:
done, needs_user_answer, needs_fix, deferred, or blocked.
Use this handoff format:
### $current-skill -> $next-skill
Status: done | needs_user_answer | needs_fix | deferred | blocked
Work completed:
- ...
Evidence or files checked:
- ...
Questions or TBDs:
- ...
Next skill focus:
- ...
The next skill must consume the previous handoff before doing its own work. If a phase has questions that block safe progress, ask the user or write a precise TBD in FEATURE_DELIVERY.md. If a phase has only nonblocking questions, record them and continue with the safest stated assumption.
No phase may complete with only "invoked skill" or "read skill". It must leave an artifact in FEATURE_DELIVERY.md, the routing log, code, tests, docs, verification output, or a reviewed commit decision.
- Invoke
$repository-inspection.
- Write or update
Repository Inspection.
- Invoke
$implementation-planning.
- Write or update
Implementation Plan.
- Invoke
$coding-agent-instructions.
- Write or update
Coding Agent Instructions.
- Invoke
$small-slice-implementation.
- Write or update
Implementation Notes.
- Invoke
$run-behavior-verification.
- Write or update
Behavior Verification.
- Invoke
$plan-to-code-comparison.
- Write or update
Plan To Code Comparison.
- Invoke
$design-complexity-review.
- Write or update
Design And Complexity Review.
- Invoke
$strategic-fixing-refactoring.
- Write or update
Fixes And Refactors.
- Invoke
$test-implementation.
- Write or update
Test Implementation.
- Invoke
$documentation-review.
- Write or update
Documentation Review.
- Invoke
$final-diff-review.
- Write or update
Final Diff Review.
- Invoke
$commit-and-push.
- Write or update
Commit And Push.
Document Structure
FEATURE_DELIVERY.md must include:
- Read This First
- Feature Target
- Repository Inspection
- Implementation Plan
- Coding Agent Instructions
- Implementation Notes
- Behavior Verification
- Plan To Code Comparison
- Design And Complexity Review
- Fixes And Refactors
- Test Implementation
- Documentation Review
- Final Diff Review
- Commit And Push
- Existing Project Comparison
- Change Log
- Routing Log
- Open Questions And TBDs
Use references/feature-delivery-template.md when creating the document from scratch.
Operating Rules
- Keep the feature small enough to finish, verify, and push as one coherent change.
- Compare against the existing project before planning and after coding.
- Prefer strategic programming: make small design investments while implementing rather than layering tactical patches.
- Keep complexity moving downward into owner modules behind stable interfaces.
- Update
FEATURE_DELIVERY.md whenever implementation facts diverge from the plan.
- Do not commit unrelated user changes.
- Push only after verification, final diff review, and an explicit user request or project rule allowing push.
- Do not enter
$commit-and-push until all previous subskills are visibly complete in the checklist and represented in FEATURE_DELIVERY.md.
- Do not mark a subskill complete until it has written its phase output and handoff entry.
- If a phase uncovers a defect, route back through
$strategic-fixing-refactoring, then repeat $run-behavior-verification, $plan-to-code-comparison, $design-complexity-review, $test-implementation, $documentation-review, and $final-diff-review as needed before committing.
- If a phase uncovers unrelated work, record it as excluded from scope and do not stage or commit it.
- In the final response, list each invoked subskill and the concrete result it produced.
Example
For "add invoice resend", inspect billing ownership, plan one admin-to-service slice, implement the route and service change, verify email behavior, compare against the feature design, review complexity, add tests and docs, then commit and push the focused diff.
Vocabulary
- Ship: complete the full loop from inspected plan to pushed feature.
- Delivery document: durable record of implementation decisions and verification.
- Strategic slice: small feature change that works while improving or preserving design.
- Commit-ready: final state after verification, tests, docs, and diff review.
Expected Outcome
Produce one working, tested, understandable feature pushed to GitHub, with FEATURE_DELIVERY.md documenting the inspection, plan, implementation, review, tests, docs, final diff, commit, and push result.
1---2name: feature-ship-router3description: Automatically invoke the Phase 3 Ship skills one by one by exact skill name, compare the implementation against the project and feature plan, create or continuously update FEATURE_DELIVERY.md, then commit and push one working tested understandable feature when requested.4---56# Feature Ship Router78## Definition910Act as the single entry point for Phase 3 Ship: build, review, test, and push one feature. Invoke each named skill below in order. Use their outputs to create and maintain `FEATURE_DELIVERY.md`.1112`FEATURE_DELIVERY.md` is the delivery document for the feature. It records what was inspected, what was planned, what changed, how behavior was verified, how the code compares to the plan, what tests and docs were updated, what diff was reviewed, and what was committed and pushed.1314## Questions To Ask1516- What feature is being built, and which acceptance criteria define done?17- Which existing project documents should guide the work?18- Should the feature be pushed after commit, or only prepared locally?19- What branch, remote, issue, or pull request context matters?20- Are there user changes that must be preserved outside this feature?2122## Required Output Document2324- Create or update exactly this file at the repository or workspace root: `FEATURE_DELIVERY.md`.25- Read `AGENT_GUARDRAILS.md`, `FEATURE_MAP.md`, and `FEATURE_DESIGN.md` when available.26- Preserve correct prior decisions, update stale parts, and add update notes whenever the implementation changes the plan.27- Use `TBD` plus a precise question when a project fact is unknown.28- Keep the document comprehensive enough that another coding agent can understand what was built and why.2930## Existing Project Comparison3132- Compare the feature against `AGENT_GUARDRAILS.md`, `FEATURE_MAP.md`, `FEATURE_DESIGN.md`, and current repository files when available.33- Reconcile implementation facts with the plan before committing.34- Check for tactical complexity, stale docs, missing tests, unrelated changes, and broken project conventions.3536## Suggestive Plan37381. Inspect the repository and current git state.392. Plan the smallest strategic implementation slice.403. Write precise coding-agent instructions and implement the slice.414. Verify behavior, compare plan to code, review complexity, and fix issues.425. Add tests, update docs, review the final diff, commit, and push when allowed.4344## Exact Skill Invocation Flow4546The user should only need to invoke `$feature-ship-router`. This router is responsible for invoking these skills explicitly, one by one, by exact skill name.4748## Visible Routing Protocol4950When this router is invoked, the agent must make the routing visible to the user. Do not silently blend phases together.5152Before doing feature work:53541. Create a visible checklist with all 12 subskills in order.552. Mark only the current subskill as `in_progress`.563. Announce the current subskill by exact name, for example: `Invoking $repository-inspection`.574. Read that subskill's `SKILL.md` completely before acting on that phase.585. Perform only the work that belongs to that phase.596. Update the matching section in `FEATURE_DELIVERY.md`.607. Mark the subskill complete before moving to the next one.6162Each phase must produce an observable artifact:6364- A `FEATURE_DELIVERY.md` section update, or65- A code/test/doc change, or66- A verification command result, or67- A short explicit note that no change was needed and why.6869If implementation work has already happened before this router is invoked, still run the full visible sequence. In that case, use early phases to inspect and reconcile existing work instead of pretending they already happened.7071Do not jump from planning directly to coding, from coding directly to commit, or from verification directly to push without visibly completing the intervening subskills.7273## Phase Work And Handoff Protocol7475Router phases must do real work. Naming or reading a subskill is not enough to complete a phase.7677For every subskill phase:78791. Read the latest `Routing Log` entry in `FEATURE_DELIVERY.md`, if one exists.802. Treat that entry as the incoming handoff from the previous skill.813. Inspect the project, current diff, verification evidence, or delivery document sections needed for this phase.824. Produce phase output: observations, implementation edits, verification results, review findings, fixes, tests, documentation updates, commit decisions, or an explicit "no change needed" note backed by evidence.835. Update the matching `FEATURE_DELIVERY.md` section before moving on.846. Add a new `Routing Log` handoff entry for the next skill.857. Mark the phase with exactly one status: `done`, `needs_user_answer`, `needs_fix`, `deferred`, or `blocked`.8687Use this handoff format:8889```md90### $current-skill -> $next-skill91Status: done | needs_user_answer | needs_fix | deferred | blocked92Work completed:93- ...94Evidence or files checked:95- ...96Questions or TBDs:97- ...98Next skill focus:99- ...100```101102The next skill must consume the previous handoff before doing its own work. If a phase has questions that block safe progress, ask the user or write a precise `TBD` in `FEATURE_DELIVERY.md`. If a phase has only nonblocking questions, record them and continue with the safest stated assumption.103104No phase may complete with only "invoked skill" or "read skill". It must leave an artifact in `FEATURE_DELIVERY.md`, the routing log, code, tests, docs, verification output, or a reviewed commit decision.1051061. Invoke `$repository-inspection`.107 - Write or update `Repository Inspection`.1082. Invoke `$implementation-planning`.109 - Write or update `Implementation Plan`.1103. Invoke `$coding-agent-instructions`.111 - Write or update `Coding Agent Instructions`.1124. Invoke `$small-slice-implementation`.113 - Write or update `Implementation Notes`.1145. Invoke `$run-behavior-verification`.115 - Write or update `Behavior Verification`.1166. Invoke `$plan-to-code-comparison`.117 - Write or update `Plan To Code Comparison`.1187. Invoke `$design-complexity-review`.119 - Write or update `Design And Complexity Review`.1208. Invoke `$strategic-fixing-refactoring`.121 - Write or update `Fixes And Refactors`.1229. Invoke `$test-implementation`.123 - Write or update `Test Implementation`.12410. Invoke `$documentation-review`.125 - Write or update `Documentation Review`.12611. Invoke `$final-diff-review`.127 - Write or update `Final Diff Review`.12812. Invoke `$commit-and-push`.129 - Write or update `Commit And Push`.130131## Document Structure132133`FEATURE_DELIVERY.md` must include:134135- Read This First136- Feature Target137- Repository Inspection138- Implementation Plan139- Coding Agent Instructions140- Implementation Notes141- Behavior Verification142- Plan To Code Comparison143- Design And Complexity Review144- Fixes And Refactors145- Test Implementation146- Documentation Review147- Final Diff Review148- Commit And Push149- Existing Project Comparison150- Change Log151- Routing Log152- Open Questions And TBDs153154Use `references/feature-delivery-template.md` when creating the document from scratch.155156## Operating Rules157158- Keep the feature small enough to finish, verify, and push as one coherent change.159- Compare against the existing project before planning and after coding.160- Prefer strategic programming: make small design investments while implementing rather than layering tactical patches.161- Keep complexity moving downward into owner modules behind stable interfaces.162- Update `FEATURE_DELIVERY.md` whenever implementation facts diverge from the plan.163- Do not commit unrelated user changes.164- Push only after verification, final diff review, and an explicit user request or project rule allowing push.165- Do not enter `$commit-and-push` until all previous subskills are visibly complete in the checklist and represented in `FEATURE_DELIVERY.md`.166- Do not mark a subskill complete until it has written its phase output and handoff entry.167- If a phase uncovers a defect, route back through `$strategic-fixing-refactoring`, then repeat `$run-behavior-verification`, `$plan-to-code-comparison`, `$design-complexity-review`, `$test-implementation`, `$documentation-review`, and `$final-diff-review` as needed before committing.168- If a phase uncovers unrelated work, record it as excluded from scope and do not stage or commit it.169- In the final response, list each invoked subskill and the concrete result it produced.170171## Example172173For "add invoice resend", inspect billing ownership, plan one admin-to-service slice, implement the route and service change, verify email behavior, compare against the feature design, review complexity, add tests and docs, then commit and push the focused diff.174175## Vocabulary176177- Ship: complete the full loop from inspected plan to pushed feature.178- Delivery document: durable record of implementation decisions and verification.179- Strategic slice: small feature change that works while improving or preserving design.180- Commit-ready: final state after verification, tests, docs, and diff review.181182## Expected Outcome183184Produce one working, tested, understandable feature pushed to GitHub, with `FEATURE_DELIVERY.md` documenting the inspection, plan, implementation, review, tests, docs, final diff, commit, and push result.