Skip to content

Commit b3074e8

Browse files
王璨claude
andcommitted
doc: add OpenSpec SDD contribution workflow
Document the recommended OpenSpec spec-driven development flow so contributors align on proposal, design, and task review before implementation. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent e7266b9 commit b3074e8

1 file changed

Lines changed: 38 additions & 0 deletions

File tree

CONTRIBUTING.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,44 @@ cp .env.example .env # 编辑 .env,填入 DEEPSEEK_API_KEY
2929
git checkout -b feature/your-feature
3030
```
3131

32+
## 基于 OpenSpec 的 SDD 开发
33+
34+
仓库已包含 `openspec/` 目录,推荐在实现中大型功能、交互流程调整或重要重构时,先走 **Spec-Driven Development(SDD)** 流程,再开始编码。
35+
36+
### 推荐流程
37+
38+
1. **先澄清问题和边界**
39+
- 使用 Claude Code 时,推荐先通过 `/opsx:explore``openspec-explore` 梳理需求、约束和非目标。
40+
2. **创建变更提案**
41+
- 推荐使用 `/opsx:propose``openspec-propose` 自动生成变更骨架。
42+
- 变更会创建在 `openspec/changes/<change-name>/` 下,通常包含:
43+
- `proposal.md`:要解决什么问题,为什么要做
44+
- `design.md`:方案设计与关键权衡
45+
- `tasks.md`:可执行的实现任务拆分
46+
3. **评审 proposal / design / tasks**
47+
- 在开始编码前,先确认范围、实现路径和验收标准已经清晰。
48+
4. **按任务实现**
49+
- 使用 `/opsx:apply``openspec-apply-change``tasks.md` 逐步落地。
50+
5. **完成后归档**
51+
- 变更完成后,可使用 `/opsx:archive``openspec-archive-change` 归档对应 change。
52+
53+
### 目录约定
54+
55+
- `openspec/specs/`:沉淀长期有效的能力规格。
56+
- `openspec/changes/`:存放尚在推进中的变更提案与实现任务。
57+
- `openspec/config.yaml`:定义当前仓库的 OpenSpec 配置。
58+
59+
### 适用场景
60+
61+
以下情况优先使用 OpenSpec SDD:
62+
63+
- 新增 MCP 能力或跨模块功能
64+
- 调整核心交互流程或权限模型
65+
- 会影响多个文件/多个子系统的重构
66+
- 需要在编码前先对齐方案、边界和验收标准的需求
67+
68+
如果只是小型修复、文案调整或局部重构,可以直接提交代码,不必强制走完整 SDD 流程。
69+
3270
## 测试
3371

3472
项目使用 [Vitest](https://vitest.dev/) 作为测试框架。

0 commit comments

Comments
 (0)