To Plan 是一个用于智能体工程流程的规划技能,作用是把一份已通过验证的设计文档,转换为可恢复的实施计划,使任何智能体在没有任何对话历史的新会话中也能执行并续接。该技能只在用户明确调用时运行,必须按阶段顺序执行,且不得跳过任何关卡。它要求使用 ASD-STE100 简化技术英语来提问和编写输出文件。
用途与前置条件
该技能要求用户提供一份已保存的设计文档路径。若路径缺失或不可读,则停止,不进行起草。设计文档的 frontmatter 必须包含 artifact: design 和 status: validated,外部压力不能豁免这一资格要求。设计文档通过 prd: 链接 PRD,该 PRD 同样必须为 artifact: prd 且 status: validated,并需收集完整的 FR-/NFR-/AC-* 集合。设计文档中需包含 prd_sha256:,并与所链接 PRD 文件精确比对;若 PRD 链接了上下文简报,还需验证其 context_sha256。任一不匹配即停止,因为制品链已过期。
若目标路径已存在计划,需比对其中 design_sha256 与 prd_sha256;只有在用户批准后,才能恢复或修订草稿。对于处于执行中、阻塞或已完成状态的计划,不得将其作为规划制品重写,而应询问是否创建新修订;不得静默覆盖或创建冲突后缀。
证据核查
该技能会从零重新检查当前仓库:相关实现与调用方、测试与可观察契约、公共接口以及工作区改动。若有 Git 元数据,记录当前提交为 repository_baseline,否则记为 unavailable。随后将仓库证据与设计假设比对:实现事实优先采用当前证据,但不得静默更改已通过验证的产品意图。若出现实质性偏差,应停止并询问,说明过时假设与当前证据,在用户解决冲突前不得从已被替换的入口点起草。
计划内容要求
计划基于 assets/plan.md 起草,并保留 Execution Protocol 部分不变,因为正是它让无对话历史的新会话能够执行并恢复计划。计划中需记录已验证设计与 PRD 文件的 SHA-256 哈希至 design_sha256 和 prd_sha256。
计划必须覆盖 PRD 与设计中的全部 FR-、NFR- 和 AC-*,不得臆造行为,并在 Requirement Coverage 下逐项映射。每个任务需有唯一稳定的 Task N 标识,且恰好一个可独立验证的结果;当行为变化时,任务应小到足以完成一轮红-绿-重构循环,初始状态为 Status: Not Started。
每个任务在有符号时需给出恰好一个当前 file:symbol 入口点;仅当不存在稳定符号时,才使用单一文件路径。需告知实施者从该入口点向下追踪,不得冻结下游文件映射,也不得包含生产代码清单。任务需在 Depends on: 下声明确切的任务标识或写 none,并排序使每个任务完成后项目均可构建且测试通过。
对于每个涉及生产行为的任务,需规定 TDD 循环:RED 阶段的测试与预期失败、GREEN 阶段的最小行为、REFACTOR 阶段允许的清理;不得在失败测试之前规划生产代码。对于非行为任务,需说明为何不适用 TDD,并提供最小的可观察验证。所有验证结果必须可观察,例如测试结果、命令输出或行为,而非“代码已写”。执行证据(变更文件、命令与结果、完成时间、阻塞项)留空,由实施技能填写。仅在相关时包含 Migration、Rollout 和 Rollback;不适用时删除可选章节,而非写 N/A。
保存与审批
计划需立即保存到 docs/agentic-engineering/plans/<session>/<subject>.md,状态为 status: draft,并复用设计文档的 <session> 与 <subject>,使制品按名称配对。若发生冲突,询问是恢复还是修订,不得静默覆盖;若写入失败,报告并停止。保存后报告路径与简短摘要,并请用户验证文档。根据请求修改并再次询问,直至用户批准。批准后将状态设为 status: validated,并报告计划路径,作为外部计划执行技能的输入。执行状态保存在计划本身中,因此任何后续会话都能从活动任务或第一个未完成任务继续。
不变约束
任何阶段都适用以下约束:未经用户明确同意,绝不执行 git commit;批准保存制品或继续工作流不等于同意提交。绝不编写生产代码,该技能只做规划,不做实现。绝不检查、编辑或询问 .gitignore;保存计划后,可以仅说一句:Consider adding docs/agentic-engineering/ to .gitignore manually.
适用场景与限制
该技能适用于已有通过验证的设计文档与 PRD、需要生成可供其他智能体执行的实施计划的工程流程,强调制品链哈希校验、证据驱动和 TDD 约束。它不负责实现代码,也不管理版本提交;若设计或 PRD 未验证、哈希不匹配或证据存在实质偏差,则会停止并要求用户处理。关于其具体安装方式、运行环境与其他平台层面的信息,资料暂未提供。