| name | verify |
| description | Use when the user requests a review or when change risk justifies an independent verification pass: run real checks and assess correctness, security, and regressions. |
| argument-hint | [request or context] |
Contextual selection
CoderKit is an optional helper framework, not a mandatory process. Self-select this workflow when the current request clearly matches its purpose and the added structure will materially improve a substantive development task. Never ask the user whether to activate CoderKit or whether to use CoderKit instead of normal host behavior: workflow selection is an internal execution decision, not a user decision.
Skip CoderKit for simple questions, routine commands, obvious one-line edits, or work whose outcome and path are already clear. Select only the smallest useful workflow; do not run the full explore → plan → implement → verify → commit sequence as ceremony. When no workflow adds enough value to justify its overhead, continue with normal host behavior.
Ask only when the outcome, scope, or required authority is materially unclear; never ask merely to choose or confirm a workflow. Automatic selection does not expand the user's authority or permit adjacent work.
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. Select another CoderKit workflow only when it is genuinely needed and the user's existing request already authorizes that work; never chain the whole lifecycle by default. Otherwise stop and report the result or natural next step without asking the user to activate anything. Never turn workflow selection into a confirmation prompt, and never treat automatic selection as authorization for Git publication, deployment, destructive changes, or other adjacent work.
Verify
Two roles in one pass: run the checks the agent can actually run, and review the change the checks cannot judge.
Method
- Resolve what is under verification: the change or claim, its requirements or plan, base and head, and what "working" concretely means for it. When the user names no scope, default to the working-tree diff against the merge base with the default branch.
- Run proportional checks in escalating order: focused tests, typecheck or lint, build, then exercising the real flow at runtime, with screenshots or output where the behavior is visual. Capture actual output; never infer a result from reading code alone, and never report a check as passing without having run it.
- Review what checks cannot judge: read the diff in context, then inspect the affected callers, interfaces, tests, trust boundaries, and adjacent behavior needed to evaluate a concrete risk.
- Prioritize correctness, security, data loss, regressions, and missing requirements. Review maintainability only where it creates a concrete future failure or disproportionate complexity. Separate introduced problems from pre-existing conditions.
- For every finding, provide severity, confidence, precise location, triggering condition, impact, and an actionable correction. Verify the surrounding code before reporting it.
- Do not duplicate formatter or linter output, invent speculative edge cases without a plausible path, or turn personal style preference into a defect.
- Report faithfully: a failing check or a defect is a finding, not an invitation to silently fix. Remain read-only unless the user asks for fixes.
- Calibrate the verdict to the actual scope: ready, ready with specific fixes, or not ready. List verification gaps and residual risks separately from defects, then stop.
Quality bar
A short report with two proven findings and real command output is better than a long one padded with possibilities. When clean, state that the checks pass and no material findings remain, and name any limits plainly.
Completion evidence
Commands run with actual output, prioritized findings, and a calibrated verdict.