| name | implement |
| description | Implement an approved request or plan using project conventions and proportionate verification. Runs only on an explicit CoderKit implement request. |
Explicit activation
Run this workflow only when the user explicitly requests CoderKit and names this tool. Do not suggest, infer, or auto-select it from task context. If it was selected without an explicit request, continue with normal host behavior without applying or mentioning CoderKit.
Prompting envelope
Structure the work in this order:
- Outcome: state the result the user wants before choosing an approach.
- Relevant context: gather what the prompt, repository, and named artifacts already provide before asking for anything.
- Important boundaries: identify the scope, authority, and constraints the work must not cross.
- Work: execute against the outcome within those boundaries.
- Verification: prove the outcome with the completion evidence this tool requires.
Ask only when missing information materially changes the result or required authority. Accept steering without restarting the workflow.
Proportionality
Right-size the workflow to the task. Use a fast path when the outcome and evidence are obvious; use deeper investigation only when uncertainty, risk, or scope warrants it. Do not create documents, dispatch agents, add process infrastructure, or expand test coverage merely because the workflow can — the work artifacts below are the one exception: they are mandated completion evidence, not discretionary documents. Stop when the completion evidence is satisfied. A finished, verified result is better than a perfect process.
Treat user-named files, URLs, tools, and prior artifacts as authoritative inputs: inspect them before substituting a generic alternative. Keep tangential cleanup and speculative improvements out of the active scope unless the user asks for them.
Work artifacts
Persistent work products live in the target project under docs/work/NNN-short-name/: NNN is a zero-padded index allocated as the highest existing index plus one (starting at 000), and short-name is a kebab-case name derived from the request.
plan.md — written by plan whenever it runs; the stable contract later tools read as authority.
tasks.md — created and maintained by implement from the plan's units: main tasks, subtasks, and any subagent or orchestration assignments, with statuses updated as work progresses.
tasks/ — optional subfolder, created only when a single task needs a dedicated brief (for example a subagent fan-out).
Explore produces no artifact. Tools other than plan and implement read these files but do not create them.
Completion
Finish with the evidence required by this tool, then name the natural next step — the next CoderKit tool in the workflow when one applies (explore → plan → implement → verify → commit, with debug for unexpected behavior), or nothing when the work is complete. Offer it as a suggestion the user can invoke; never invoke another CoderKit tool yourself, and never start the suggested work. This applies only at the end of an explicitly requested workflow: outside one, do not suggest CoderKit tools at all.
Implement
Method
- Triage the input: follow an approved plan when one exists; otherwise derive the smallest executable scope directly from the request. Stop and surface a contradiction if the plan no longer matches repository reality.
- When following a plan document, locate its work folder (user-named, or the highest-index
docs/work/ folder matching the request) and on first run seed tasks.md from the plan's units: main tasks, subtasks, and any subagent or orchestration assignments. Requests without a plan document stay artifact-free.
- Inspect repository instructions, named references, relevant implementation, callers, tests, and working-tree state before editing.
- Preserve unrelated work. Reuse existing code and conventions before adding dependencies, abstractions, files, or infrastructure.
- Implement the smallest complete vertical change. Work in coherent batches and keep the application runnable between them when practical.
- As each batch completes, update statuses in
tasks.md and record deviations and discoveries there. Split a task into a tasks/ brief only when it needs dedicated instructions, such as a subagent fan-out.
- Validate trust boundaries and handle failures that could cause data loss, insecure behavior, or misleading success. Avoid defensive complexity for impossible internal states.
- Add or update the smallest check that proves changed behavior. Characterize legacy behavior before changing it when regression risk is material.
- Run focused verification after the change, then only the broader checks justified by its reach and risk. Fix relevant failures immediately; do not accumulate a speculative test matrix.
- Inspect the final diff for accidental scope, dead code, debug output, generated drift, and incomplete work. Finish the requested feature rather than stopping at an internal milestone.
Stop conditions
Stop when the requested behavior is implemented, the proportional checks pass, and the diff contains only intended work. Do not add another review cycle or supporting system without a concrete unresolved risk.
Completion evidence
Changed files, relevant runnable checks with results, and an up-to-date tasks.md when a plan document exists.