sdd-workflow 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +226 -0
- package/bin/sdd-init.js +59 -0
- package/package.json +30 -0
- package/src/installer.js +558 -0
- package/templates/skills/sdd-constitution/SKILL.md +128 -0
- package/templates/skills/sdd-implement/SKILL.md +153 -0
- package/templates/skills/sdd-init/SKILL.md +302 -0
- package/templates/skills/sdd-plan/SKILL.md +226 -0
- package/templates/skills/sdd-review/SKILL.md +498 -0
- package/templates/skills/sdd-run/SKILL.md +439 -0
- package/templates/skills/sdd-specify/SKILL.md +280 -0
- package/templates/skills/sdd-split/SKILL.md +432 -0
- package/templates/skills/sdd-tasks/SKILL.md +199 -0
- package/templates/skills/sdd-testcases/SKILL.md +235 -0
- package/templates/specify/README.md +179 -0
- package/templates/specify/scripts/create-feature.sh +144 -0
- package/templates/specify/templates/constitution-template.md +74 -0
- package/templates/specify/templates/plan-modular-template/README.md +98 -0
- package/templates/specify/templates/plan-modular-template/architecture.md +127 -0
- package/templates/specify/templates/plan-modular-template/backend-api.md +191 -0
- package/templates/specify/templates/plan-modular-template/backend-impl.md +134 -0
- package/templates/specify/templates/plan-modular-template/changelog.md +34 -0
- package/templates/specify/templates/plan-modular-template/data-model.md +130 -0
- package/templates/specify/templates/plan-modular-template/frontend-api.md +126 -0
- package/templates/specify/templates/plan-modular-template/frontend-impl.md +108 -0
- package/templates/specify/templates/plan-modular-template/performance.md +112 -0
- package/templates/specify/templates/plan-modular-template/security.md +85 -0
- package/templates/specify/templates/plan-template.md +190 -0
- package/templates/specify/templates/requirements/metadata-template.json +12 -0
- package/templates/specify/templates/requirements/original-template.md +26 -0
- package/templates/specify/templates/spec-modular-template/README.md +69 -0
- package/templates/specify/templates/spec-modular-template/acceptance-criteria.md +49 -0
- package/templates/specify/templates/spec-modular-template/changelog.md +27 -0
- package/templates/specify/templates/spec-modular-template/constraints.md +125 -0
- package/templates/specify/templates/spec-modular-template/overview.md +60 -0
- package/templates/specify/templates/spec-modular-template/user-stories.md +59 -0
- package/templates/specify/templates/spec-template.md +214 -0
- package/templates/specify/templates/tasks-modular-template/README.md +79 -0
- package/templates/specify/templates/tasks-template.md +232 -0
- package/templates/specify/templates/testcases-template.md +434 -0
- package/templates/teams/sdd-development-team.md +318 -0
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
# SDD Development Agent Team 配置
|
|
2
|
+
|
|
3
|
+
> 专为 SDD (Specification-Driven Development) 工作流设计的 Agent Team 配置
|
|
4
|
+
> 适配任何全栈/前端/后端项目
|
|
5
|
+
|
|
6
|
+
## 启用 Agent Teams
|
|
7
|
+
|
|
8
|
+
在 `settings.json` 中添加:
|
|
9
|
+
|
|
10
|
+
```json
|
|
11
|
+
{
|
|
12
|
+
"env": {
|
|
13
|
+
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Team 1: 功能开发团队 (Feature Development Team)
|
|
21
|
+
|
|
22
|
+
**适用场景**: 新功能开发,需要完整的前后端实现
|
|
23
|
+
|
|
24
|
+
**团队结构**:
|
|
25
|
+
|
|
26
|
+
| 角色 | 职责 | 关注点 |
|
|
27
|
+
|------|------|--------|
|
|
28
|
+
| **Tech Lead** | 技术负责人,协调工作,审核决策 | 整体架构、技术方案 |
|
|
29
|
+
| **Backend Developer** | 后端开发,遵循项目架构分层 | 后端代码目录 |
|
|
30
|
+
| **Frontend Developer** | 前端开发,组件实现 | 前端代码目录 |
|
|
31
|
+
| **Test Engineer** | 测试验证,确保测试通过 | 单元测试、集成测试 |
|
|
32
|
+
| **Code Reviewer** | 代码审查,质量把关 | 代码规范、性能、安全 |
|
|
33
|
+
|
|
34
|
+
**启动提示词**:
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
创建一个功能开发团队来实现 [功能名称]。
|
|
38
|
+
|
|
39
|
+
团队配置:
|
|
40
|
+
1. Tech Lead - 负责整体技术方案审核,确保符合项目宪法(.specify/memory/constitution.md)
|
|
41
|
+
2. Backend Developer - 负责后端开发,遵循项目架构分层,优先复用现有方法
|
|
42
|
+
3. Frontend Developer - 负责前端开发,遵循组件化规范
|
|
43
|
+
4. Test Engineer - 负责测试验证,确保所有测试用例通过
|
|
44
|
+
5. Code Reviewer - 负责代码审查,检查N+1查询、安全漏洞、代码规范
|
|
45
|
+
|
|
46
|
+
参考文档:
|
|
47
|
+
- 功能规格: .specify/specs/{feature_id}/spec.md
|
|
48
|
+
- 测试用例: .specify/specs/{feature_id}/testcases.md ← 测试优先
|
|
49
|
+
- 技术计划: .specify/specs/{feature_id}/plan.md
|
|
50
|
+
- 任务分解: .specify/specs/{feature_id}/tasks.md
|
|
51
|
+
|
|
52
|
+
工作流程(红-绿-重构):
|
|
53
|
+
1. Tech Lead 先审核技术方案,确认符合架构约束
|
|
54
|
+
2. 每个任务遵循 红-绿-重构 流程:
|
|
55
|
+
- 🔴 Test Engineer 先写测试(测试失败)
|
|
56
|
+
- 🟢 Backend/Frontend 写实现(测试通过)
|
|
57
|
+
- 🔵 Code Reviewer 审查代码(测试仍通过)
|
|
58
|
+
3. Tech Lead 综合验收
|
|
59
|
+
|
|
60
|
+
注意:
|
|
61
|
+
- 后端开发遵循项目宪法中定义的架构分层
|
|
62
|
+
- 避免N+1查询,使用批量查询
|
|
63
|
+
- 优先复用现有方法
|
|
64
|
+
- **测试必须先写,测试通过才算任务完成**
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Team 2: 代码审查团队 (Code Review Team)
|
|
70
|
+
|
|
71
|
+
**适用场景**: PR审查、代码质量检查、安全审计
|
|
72
|
+
|
|
73
|
+
**团队结构**:
|
|
74
|
+
|
|
75
|
+
| 角色 | 职责 | 检查项 |
|
|
76
|
+
|------|------|--------|
|
|
77
|
+
| **Security Reviewer** | 安全审查 | SQL注入、XSS、权限控制 |
|
|
78
|
+
| **Performance Reviewer** | 性能审查 | N+1查询、索引使用、缓存策略 |
|
|
79
|
+
| **Code Quality Reviewer** | 代码质量 | 命名规范、代码复用、lint |
|
|
80
|
+
|
|
81
|
+
**启动提示词**:
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
创建一个代码审查团队来审查 PR #[编号]。
|
|
85
|
+
|
|
86
|
+
团队配置:
|
|
87
|
+
1. Security Reviewer - 检查安全漏洞(SQL注入、XSS、敏感信息暴露)
|
|
88
|
+
2. Performance Reviewer - 检查性能问题(N+1查询、批量查询、索引)
|
|
89
|
+
3. Code Quality Reviewer - 检查代码规范(命名、注释、复用、lint)
|
|
90
|
+
|
|
91
|
+
审查标准参考:
|
|
92
|
+
- 项目宪法: .specify/memory/constitution.md
|
|
93
|
+
- 简单性原则: 优先复用现有方法,避免重复造轮子
|
|
94
|
+
|
|
95
|
+
每个审查者独立审查后,汇总发现的问题。
|
|
96
|
+
重点关注:
|
|
97
|
+
- 是否有新增方法可以复用现有方法替代
|
|
98
|
+
- 是否存在循环内数据库查询
|
|
99
|
+
- 是否符合项目的架构分层原则
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Team 3: 问题排查团队 (Debug Team)
|
|
105
|
+
|
|
106
|
+
**适用场景**: 复杂Bug排查,需要多角度分析
|
|
107
|
+
|
|
108
|
+
**团队结构**:
|
|
109
|
+
|
|
110
|
+
| 角色 | 职责 | 排查方向 |
|
|
111
|
+
|------|------|----------|
|
|
112
|
+
| **Lead Investigator** | 主导排查,协调方向 | 问题复现、根因定位 |
|
|
113
|
+
| **Frontend Detective** | 前端链路追踪 | 组件渲染、API调用、状态管理 |
|
|
114
|
+
| **Backend Detective** | 后端链路追踪 | Service层、DAO层、数据库 |
|
|
115
|
+
| **Devil's Advocate** | 挑战假设 | 质疑其他队友的理论 |
|
|
116
|
+
|
|
117
|
+
**启动提示词**:
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
创建一个问题排查团队来调查 [问题描述]。
|
|
121
|
+
|
|
122
|
+
团队配置:
|
|
123
|
+
1. Lead Investigator - 主导排查方向,汇总发现
|
|
124
|
+
2. Frontend Detective - 从前端追踪,检查API调用、状态管理
|
|
125
|
+
3. Backend Detective - 从后端追踪,检查服务层、数据库
|
|
126
|
+
4. Devil's Advocate - 挑战其他队友的理论,防止过早下结论
|
|
127
|
+
|
|
128
|
+
问题描述:
|
|
129
|
+
[详细描述问题现象、复现步骤、预期行为]
|
|
130
|
+
|
|
131
|
+
排查方式:
|
|
132
|
+
- 使用全链路追踪,从用户操作到数据库逐层排查
|
|
133
|
+
- 队友之间相互质疑,辩论直到达成共识
|
|
134
|
+
|
|
135
|
+
输出:
|
|
136
|
+
- 根因分析
|
|
137
|
+
- 修复建议
|
|
138
|
+
- 防止复发的措施
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Team 4: 技术调研团队 (Research Team)
|
|
144
|
+
|
|
145
|
+
**适用场景**: 新技术调研、架构评估、竞品分析
|
|
146
|
+
|
|
147
|
+
**团队结构**:
|
|
148
|
+
|
|
149
|
+
| 角色 | 职责 | 调研方向 |
|
|
150
|
+
|------|------|----------|
|
|
151
|
+
| **Architect** | 架构评估 | 技术选型、架构影响 |
|
|
152
|
+
| **UX Researcher** | 用户体验 | 交互设计、用户流程 |
|
|
153
|
+
| **Risk Analyst** | 风险分析 | 技术风险、兼容性、性能 |
|
|
154
|
+
|
|
155
|
+
**启动提示词**:
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
创建一个技术调研团队来评估 [调研主题]。
|
|
159
|
+
|
|
160
|
+
团队配置:
|
|
161
|
+
1. Architect - 评估技术选型和架构影响
|
|
162
|
+
2. UX Researcher - 评估用户体验和交互设计
|
|
163
|
+
3. Risk Analyst - 分析技术风险和潜在问题
|
|
164
|
+
|
|
165
|
+
调研目标:
|
|
166
|
+
[描述需要调研的内容]
|
|
167
|
+
|
|
168
|
+
输出要求:
|
|
169
|
+
- 每个角色独立调研后分享发现
|
|
170
|
+
- 相互质疑和补充
|
|
171
|
+
- 最终形成统一建议
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Team 5: SDD规划团队 (SDD Planning Team)
|
|
177
|
+
|
|
178
|
+
**适用场景**: 大型功能的SDD规划阶段,需要多角度分析
|
|
179
|
+
|
|
180
|
+
**团队结构**:
|
|
181
|
+
|
|
182
|
+
| 角色 | 职责 | 输出 |
|
|
183
|
+
|------|------|------|
|
|
184
|
+
| **Product Analyst** | 需求分析 | 功能规格(spec.md) |
|
|
185
|
+
| **Test Designer** | 测试设计 | 测试用例(testcases.md) |
|
|
186
|
+
| **Solution Architect** | 技术方案 | 技术计划(plan.md) |
|
|
187
|
+
| **Task Planner** | 任务分解 | 任务列表(tasks.md) |
|
|
188
|
+
|
|
189
|
+
**启动提示词**:
|
|
190
|
+
|
|
191
|
+
```
|
|
192
|
+
创建一个SDD规划团队来规划 [功能名称]。
|
|
193
|
+
|
|
194
|
+
团队配置:
|
|
195
|
+
1. Product Analyst - 分析需求,编写功能规格文档
|
|
196
|
+
2. Test Designer - 设计测试用例(测试优先!)
|
|
197
|
+
3. Solution Architect - 基于测试用例设计技术方案
|
|
198
|
+
4. Task Planner - 分解任务,标注测试任务
|
|
199
|
+
|
|
200
|
+
参考资料:
|
|
201
|
+
- 项目宪法: .specify/memory/constitution.md
|
|
202
|
+
|
|
203
|
+
工作流程(测试优先):
|
|
204
|
+
1. Product Analyst 分析需求
|
|
205
|
+
2. Test Designer 基于需求设计测试用例(先定义测试)
|
|
206
|
+
3. Solution Architect 基于测试用例设计技术方案
|
|
207
|
+
4. Task Planner 基于技术方案分解任务(包含测试任务)
|
|
208
|
+
|
|
209
|
+
输出:
|
|
210
|
+
- .specify/specs/{feature_id}/spec.md
|
|
211
|
+
- .specify/specs/{feature_id}/testcases.md ← 测试优先
|
|
212
|
+
- .specify/specs/{feature_id}/plan.md
|
|
213
|
+
- .specify/specs/{feature_id}/tasks.md
|
|
214
|
+
|
|
215
|
+
注意:
|
|
216
|
+
- 测试用例必须在技术计划之前完成
|
|
217
|
+
- 技术方案必须能够通过所有测试用例
|
|
218
|
+
- 任务粒度控制在0.5-4小时
|
|
219
|
+
- 标注可并行执行的任务
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## 最佳实践
|
|
225
|
+
|
|
226
|
+
### 1. 团队规模建议
|
|
227
|
+
- **3-4人**: 最常见的配置,平衡并行性和协调成本
|
|
228
|
+
- **5人**: 用于复杂任务,如全面代码审查
|
|
229
|
+
- **避免超过5人**: 协调开销会超过收益
|
|
230
|
+
|
|
231
|
+
### 2. 任务分配原则
|
|
232
|
+
```
|
|
233
|
+
好的分配:
|
|
234
|
+
- Backend Developer 处理后端代码目录中的文件
|
|
235
|
+
- Frontend Developer 处理前端代码目录中的文件
|
|
236
|
+
- 两人不编辑同一文件
|
|
237
|
+
|
|
238
|
+
避免的分配:
|
|
239
|
+
- 两个队友同时修改同一个文件
|
|
240
|
+
- 后端队友处理前端组件(或反之)
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
### 3. 显示模式选择
|
|
244
|
+
```json
|
|
245
|
+
// settings.json
|
|
246
|
+
{
|
|
247
|
+
"teammateMode": "tmux" // 推荐:每个队友独立窗格
|
|
248
|
+
}
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
### 4. 检查点设置
|
|
252
|
+
在任务中设置检查点,确保质量:
|
|
253
|
+
- **Checkpoint 1**: 后端API完成,可联调
|
|
254
|
+
- **Checkpoint 2**: 前端组件完成,可演示
|
|
255
|
+
- **Checkpoint 3**: 代码审查通过
|
|
256
|
+
|
|
257
|
+
### 5. 使用 Hooks 强制质量门
|
|
258
|
+
```json
|
|
259
|
+
// settings.json
|
|
260
|
+
{
|
|
261
|
+
"hooks": {
|
|
262
|
+
"TeammateIdle": "echo '队友即将空闲,请检查工作成果'"
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
|
|
269
|
+
## 快速启动命令
|
|
270
|
+
|
|
271
|
+
### 功能开发
|
|
272
|
+
```
|
|
273
|
+
创建一个功能开发团队来实现 [功能名称]。
|
|
274
|
+
参考 .specify/specs/{feature_id}/ 下的SDD文档。
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### 代码审查
|
|
278
|
+
```
|
|
279
|
+
创建一个代码审查团队来审查最近的代码变更。
|
|
280
|
+
重点关注N+1查询、代码复用、安全漏洞。
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### 问题排查
|
|
284
|
+
```
|
|
285
|
+
创建一个问题排查团队来调查 [问题描述]。
|
|
286
|
+
使用竞争假设方式,队友相互质疑。
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
### SDD规划
|
|
290
|
+
```
|
|
291
|
+
创建一个SDD规划团队来规划 [功能名称]。
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## 注意事项
|
|
297
|
+
|
|
298
|
+
### 令牌成本
|
|
299
|
+
- 每个队友有独立的 context window
|
|
300
|
+
- 4人团队的令牌消耗约为单会话的3-4倍
|
|
301
|
+
- 建议在任务明确后再创建团队
|
|
302
|
+
|
|
303
|
+
### 避免的问题
|
|
304
|
+
1. **文件冲突**: 确保队友不编辑同一文件
|
|
305
|
+
2. **过度并行**: 简单任务不需要团队
|
|
306
|
+
3. **无人值守**: 定期检查队友进度
|
|
307
|
+
|
|
308
|
+
### 与 Subagents 的选择
|
|
309
|
+
| 场景 | 使用 |
|
|
310
|
+
|------|------|
|
|
311
|
+
| 只需要结果,不需要协作 | Subagents |
|
|
312
|
+
| 队友需要讨论、相互质疑 | Agent Teams |
|
|
313
|
+
| 快速验证、简单查询 | Subagents |
|
|
314
|
+
| 代码审查、复杂调试 | Agent Teams |
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
318
|
+
*此配置基于 Claude Code Agent Teams 功能和 SDD 开发流程设计*
|