mcpField
O
openspec-apply

openspec-apply

github.com/chyiiiiiiiiiiii开发1348 次安装39 周前更新
代码仓库

关于 openspec-apply

按照规范驱动工作流实施 OpenSpec 变更提案的技能,指导编码 Agent 从审阅提案和任务,到分阶段实现、质量检查、进度更新及完成汇报。

主要功能

  1. 01读取提案、任务与增量规范
  2. 02分阶段实施任务
  3. 03在 tasks.md 中跟踪进度
  4. 04每阶段运行质量检查
  5. 05记录阻塞事项和范围问题

适用场景

  1. 01实施范围明确的 OpenSpec 提案
  2. 02按任务清单跟踪实现进度
  3. 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

此技能的作用

  1. 阅读提案并了解范围
  2. 按照 tasks.md 逐步执行
  3. 根据差异规范实施
  4. 随着进度将任务标记为已完成
  5. 每个阶段结束后运行质量检查

执行步骤

步骤 1:加载上下文

按顺序阅读以下文件:

  1. openspec/project.md - 项目约定
  2. openspec/changes/{change-id}/proposal.md - 变更内容和原因
  3. openspec/changes/{change-id}/tasks.md - 实施检查清单
  4. 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:处理问题

如果遇到阻碍:

  1. 在 tasks.md 对应任务下记录
  2. 如有需要,添加 ### Blockers 部分
  3. 继续之前先请求澄清
- [ ] 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:完成检查

所有任务完成后:

  1. 确认所有复选框均为 [x]
  2. 运行完整质量检查
  3. 更新 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