关于 open-spec-apply
open-spec-apply 是依据工作中的变更任务实现代码的技能,面向使用 specs/changes/ 管理变更的开发者。它会读取变更文档、逐项执行任务并更新进度;遇到歧义或阻碍时暂停询问。
主要功能
- 01选择或推断待实现的变更
- 02读取提案、设计和任务文档
- 03逐项实现并更新任务勾选状态
- 04展示当前进度与剩余任务
- 05遇到歧义或阻碍时暂停
适用场景
- 01按任务清单落实代码变更
- 02在部分完成后继续实现变更
- 03在需求不清楚时先确认再继续
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aircury/ ai-framework --skill open-spec-apply安装后在 Claude Code 中输入/open-spec-apply确认已加载。
详细介绍
实施进行中的变更中的任务。
输入:可选择指定变更名称。如果未指定,请检查能否从对话上下文中推断。如果名称含糊或不明确,必须提示用户从可用变更中选择。
步骤
-
选择变更
如果提供了名称,则使用该名称。否则:
- 如果用户在对话上下文中提到了某项变更,则据此推断
- 如果
specs/changes/下只有一个目录,则自动选择 - 如果存在多个可能选项,则检查
specs/changes/下的可用目录,并询问用户要选择哪一个
始终提示:“正在使用变更:”,并说明如何更换(例如,
open-spec-apply <other>)。 -
读取变更工件
读取
specs/changes/<name>/下存在的文件:proposal.mddesign.mdtasks.md
如果缺少
tasks.md,请暂停,并询问是否先使用open-spec-propose技能创建该文件。 -
显示当前进度
显示:
- 正在使用的变更
- 进度:“已完成 N/M 项任务”
- 剩余任务概览
-
实施任务(循环直至完成或受阻)
对于每项待处理任务:
- 显示当前正在处理的任务
- 进行所需的代码更改
- 保持更改精简且聚焦
- 在任务文件中将任务标记为完成:
- [ ]→- [x] - 继续下一项任务
以下情况应暂停:
- 任务不明确 → 请求澄清
- 实施过程中发现设计问题 → 建议更新工件
- 遇到错误或阻碍 → 报告并等待指示
- 用户中断
-
完成或暂停时,显示状态
显示:
- 本次会话完成的任务
- 总体进度:“已完成 N/M 项任务”
- 如果全部完成:建议使用
open-spec-complete技能同步specs/features/ - 如果已暂停:说明原因并等待指示
实施期间的输出
## Implementing: <change-name>
Working on task 3/7: <task description>
[...implementation happening...]
✓ Task complete
Working on task 4/7: <task description>
[...implementation happening...]
✓ Task complete
完成时的输出
## Implementation Complete
**Change:** <change-name>
**Progress:** 7/7 tasks complete ✓
### Completed This Session
- [x] Task 1
- [x] Task 2
...
All tasks complete! Use the `open-spec-complete` skill to sync `specs/features/` and clean up workflow artifacts.
遇到问题而暂停时的输出
## Implementation Paused
**Change:** <change-name>
**Progress:** 4/7 tasks complete
### Issue Encountered
<description of the issue>
**Options:**
1. <option 1>
2. <option 2>
3. Other approach
What would you like to do?
注意事项
- 持续处理任务,直至全部完成或受阻
- 开始前始终阅读可用的变更工件
- 如果任务含糊不清,请先暂停并询问,不要直接实施
- 如果实施过程中发现问题,请暂停并建议更新工件
- 代码更改应精简,并仅涉及相应任务
- 每完成一项任务后,立即更新任务复选框
- 遇到错误、阻碍或不明确的要求时,请暂停,不要猜测
- 将
specs/changes/视为工作状态;完成后仍需同步specs/features/
灵活工作流集成
此技能支持“对变更执行操作”的模式:
- 可随时调用:工件尚未全部完成时(只要已有任务)、部分实施后,或与其他操作交替进行时
- 允许更新工件:如果实施过程中发现设计问题,建议更新工件;工作流程不受阶段限制,可灵活推进
评论
支持 Markdown