用途:当用户希望开始、继续或逐个完成某个 OpenSpec 变更中的任务时使用该技能。
主要能力与用法:先确定变更名。可用类似 $openspec-apply-change (Codex) 或 /openspec-apply-change(其他 agent)加变更名的方式调用;未提供时从对话上下文推断,仅一个活动变更时自动选择,含糊时必须列出并让用户选择。选择变更后用 openspec status --change "<name>" --json 查看 schema、planningHome、changeRoot、actionContext 及承载任务的产物;再用 openspec instructions apply --change "<name>" --json 获取 contextFiles、进度、任务清单和动态指令。若用户指定了 store,先运行 openspec store list --json 获取 id,再在 new change、status、instructions、list、show、validate、archive、doctor、context、view 等读写命令上追加 --store <id>,并保持粘性。
状态处理:state 为 blocked 时提示缺少产物,建议继续创建;为 all_done 时提示可归档;否则读取 contextFiles 中列出的全部文件后逐个实现任务,完成后把 - [ ] 改为 - [x],循环直到完成或阻塞。
适用场景:在 OpenSpec 仓库或已注册 store 中推进 spec-driven 等 schema 的变更实现。
限制与注意事项:必须区分 context 与 operationGuidance,不得当作任务完成证据、不得借此绕过 blocked 状态;与内置指令、用户明确选择或 CLI 控制值冲突时报告冲突并保留控制值;不清晰、遇错或有设计问题时暂停等待指示;代码改动保持最小且聚焦;不把上下文或运行指导原样复制进实现或规划文件。
其他:该技能支持“对变更执行动作”的流动模型,可在任务存在后的任意时间调用,也可与其他动作交错执行;具体安装方式暂未提供。