用途:从 OpenSpec 变更中实现任务,适合用户要开始、继续或逐项推进某个变更的实现工作时使用。
主要能力:选择变更(可指定名称,或从对话上下文推断、仅一个活跃变更时自动选择,歧义时用 openspec list --json 让用户选择);用 openspec status --change "<name>" --json 了解 schema、规划范围与编辑约束;用 openspec instructions apply --change "<name>" --json 获取 contextFiles、进度、任务列表与动态指令;读取 contextFiles 中列出的文件后逐项实现,完成后把任务标记为 - [x]。
使用方式:若用户指定了 store(本机注册的独立 OpenSpec 仓库),先运行 openspec store list --json 获取 id,并在读写 specs 与 changes 的命令上追加 --store <id>,该选择在后续流程中保持;未指定时命令作用于最近的本地 openspec/ 根目录。状态为 blocked 时提示使用 openspec-continue-change 或查看下一产物;状态为 all_done 时建议归档。
适用场景:spec-driven 等 schema 下的变更实现,可与其他动作交错调用,不锁定阶段。
限制:任务不明确、发现设计问题或遇到错误/阻塞时应暂停并等待指示,不猜测;代码改动保持最小且聚焦;context 与 operationGuidance 属提示级输入,不能作为任务完成的证据,也不能绕过 blocked 状态;与内置指令、用户明确选择或 CLI 控制值冲突时应报告并保留控制值;不得把运行时上下文或操作指引原样复制进实现文件或规划产物。具体命令输出字段与 schema 差异以 CLI 实际返回为准。