用途:implement 是 prd 的执行对应技能,用于端到端实现已批准的 PRD 或范围清晰的任务,并负责驱动任务到完成,包括修复。它不重新实现验证逻辑,而是把完成判定委托给 verify 作为循环的关卡;verify 仍是判断“完成”的唯一依据,也可单独对任意 diff 做独立审计。
输入:当任务来自 prd 时,读取 .dev/<topic-slug>/ 下的产物:prd.md(契约:范围、非目标、需求、验收标准、任务与验证计划,验收标准是验证器对照的评分表)、checklist.md(任务清单,直接采用为实时清单而非重新生成)、context-notes.md(项目背景,避免重复探索)。若这些产物不存在(用户直接给出范围任务、链接的规格或请求),则回退到该单一来源文档并据此建立清单。
就绪检查:编辑代码前,读取上述输入,识别范围、非目标、需求、验收标准与验证方式,检查 git status --short,阅读可能被改动的实际文件;若缺少必要前置工作、凭据、产品决策、破坏性数据变更或结构性批准,应停下并询问。
实时清单:存在 checklist.md 时采用为工作清单,否则从来源文档创建。跟踪需求、验收标准、实现任务、验证命令、浏览器或运行时 QA 场景、人工检查。在验收标准有证据或存在具体阻塞前,不得标记任务完成。
结构化任务列表:当 checklist.md 存在且任务数不少于 3 时,用 TaskCreate 播种结构化任务列表而非扁平 TodoWrite,以保持需求可追溯、顺序与证据附着。每个 T<n> 任务携带 metadata.req、metadata.ac、metadata.checklistId;随后按 (after: T1) 标签用 addBlockedBy 连接依赖。验收标准与人工检查留在 markdown 清单中。无 checklist.md、任务数少或只是单一简单改动时回退 TodoWrite,琐碎任务不必走此流程。
实现循环:按依赖顺序工作,选择 blockedBy 为空的任务(checklistId 最小者优先),绝不启动仍被阻塞的任务。每个任务先标记 in_progress,重读相关文件,做满足映射需求的最小改动,避免无关重构,保留用户自有工作区改动,在重要编辑后运行最小有用检查,并按验收标准实际需要的层级就地验证:可机器检查的(SQL、curl、构建、单元测试、生成输出)立即运行并捕获真实输出;运行时/浏览器标准尽量当场演练,若被真实前置条件阻塞(如无法自动化的 OAuth 登录),记录为具体阻塞而非假设通过。边做边记录证据(命令、file:line、观察结果)。只有映射的验收标准有真实证据或具体阻塞时才标记完成;仅读代码假设可用不算证据,部分或未证实的改动保持 in_progress。新增任务仅当映射到已批准需求或纯属验证/发布卫生时添加,新增产品范围或实质改变已批准结构前需先询问。
最终验证:先完成实现,然后一次性把完成判定委托给未编写该代码的独立验证器子代理。给它 prd.md 或任务中的全部验收标准作为评分表、PRD 的 Verification - Agent 与 Verification - Human 两节作为可用方法、改动范围与相关文件、以及构建中收集的证据。要求它遵循 verify 技能,按正确验证层级判断每条标准,并输出总体判定加逐条结果(checked / failed / not checked)及证据;只能靠读代码确认的标准必须报告为 Blocked(指明缺失前置条件),不得静默通过。验证器只报告、不修改代码。读取判定:Pass 仅在每条标准都有真实证据时有效;若 Pass 仍留下运行时/浏览器标准未检查,应视为 Partial 并推动其实际运行。Pass 则完成;Partial 或 Fail 则修复验证器指出的具体缺口后再次运行验证器确认,第二次后仍失败则报告剩余缺口而非继续循环;Blocked 则停下并报告需要人工或决策的阻塞,作为剩余项呈现,不得掩盖在 Pass 之下。不得凭自己产出的判定、跳过的验证或弱于标准要求的目标宣称完成,应报告具体缺口。
最终报告包含:Status(Done | Partially Done | Blocked)、Changed、Acceptance Criteria(AC1: Met | Not Met | Blocked - 证据)、Verification(命令或场景与结果)、Human Check、Risks。
适用场景:已有批准 PRD 或范围明确任务、需要按需求可追溯地实现并独立验证的编码工作流。限制:依赖 .dev/<slug>/ 产物或单一来源文档;验证判定由独立子代理给出;缺少前置条件、凭据或产品决策时需停下询问;资料未提供具体安装命令、收费或平台信息。