关于 openspec-apply
按照规范驱动工作流实施 OpenSpec 变更提案的技能,指导编码 Agent 从审阅提案和任务,到分阶段实现、质量检查、进度更新及完成汇报。
主要功能
- 01读取提案、任务与增量规范
- 02分阶段实施任务
- 03在 tasks.md 中跟踪进度
- 04每阶段运行质量检查
- 05记录阻塞事项和范围问题
适用场景
- 01实施范围明确的 OpenSpec 提案
- 02按任务清单跟踪实现进度
- 03通过项目质量门验证变更
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ chyiiiiiiiiiiii/ openspec-skills --skill openspec-apply安装后在 Claude Code 中输入/openspec-apply确认已加载。
详细介绍
OpenSpec:Apply
按照 OpenSpec SDD 工作流实施变更提案。
用法
/openspec-apply <change-id>
示例:
/openspec-apply add-user-search
此技能的作用
- 阅读提案并了解范围
- 按照 tasks.md 逐步执行
- 根据差异规范实施
- 随着进度将任务标记为已完成
- 每个阶段结束后运行质量检查
执行步骤
步骤 1:加载上下文
按顺序阅读以下文件:
openspec/project.md- 项目约定openspec/changes/{change-id}/proposal.md- 变更内容和原因openspec/changes/{change-id}/tasks.md- 实施检查清单openspec/changes/{change-id}/specs/*.md- 差异规范
步骤 2:验证前置条件
开始前:
git status # Should be clean or on feature branch
# Run project's lint/analyze command
如果当前不在功能分支上:
git checkout -b feature/{change-id}
步骤 3:逐阶段执行任务
对于 tasks.md 中的每个阶段:
3.1 开始阶段
- 在待办列表中将第一个任务标记为进行中
- 阅读该组件的差异规范
3.2 实施任务
- 遵循项目 CLAUDE.md 中的现有模式
- 按照差异规范的要求编写代码
- 为新功能编写测试
3.3 标记完成
- 更新 tasks.md:将
- [ ]→- [x] - 如有重要内容,添加完成说明
3.4 质量检查
每个阶段完成后,运行项目质量检查:
# Example for Flutter projects:
# make format && make analyze && make run_unit_test
# Example for Node projects:
# npm run lint && npm test
步骤 4:更新进度
每个阶段结束后,更新 tasks.md:
## Phase 1: Foundation (Data Layer)
- [x] 1.1 Create search model ✓ 2024-01-15
- [x] 1.2 Add search to repository ✓ 2024-01-15
- [x] 1.3 Write unit tests ✓ 2024-01-15
**Quality Gate:** PASSED
步骤 5:处理问题
如果遇到阻碍:
- 在 tasks.md 对应任务下记录
- 如有需要,添加
### Blockers部分 - 继续之前先请求澄清
- [ ] 1.2 Add search to repository
- **Blocker:** Unclear if fuzzy search should use DB or in-memory
- **Options:** A) Database query, B) In-memory filtering
- **Waiting for:** Decision from user
步骤 6:完成检查
所有任务完成后:
- 确认所有复选框均为
[x] - 运行完整质量检查
- 更新 proposal.md 状态:
**Status:** Implementation Complete **Completed:** {YYYY-MM-DD}
步骤 7:报告完成情况
## Implementation Complete: {change-id}
### Summary
- {Brief description of what was implemented}
### Files Changed
- `lib/feature/...` - {description}
- `test/...` - {description}
### Quality Verification
- [x] All tests passing
- [x] Lint/analyze clean
- [x] Documentation updated (if applicable)
### Next Step
Run `/openspec-archive {change-id}` to complete the workflow.
实施规则
遵循项目约定
- 阅读并遵循项目的 CLAUDE.md
- 使用现有模式和风格
- 遵守命名约定
保持质量
- 实施过程中编写测试
- 使用具体的异常类型妥善处理错误
- 保持代码整洁、易读
不超出范围
- 仅实施差异规范中的内容
- 不添加“锦上添花”的功能
- 继续之前先提出范围方面的问题
记录变更
- 更新相关文档
- 添加字符串时同步本地化文件
- 引入新模式时更新项目文档
评论
支持 Markdown