dev-playbooks-cn 1.0.19 → 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.
Files changed (29) hide show
  1. package/README.md +41 -62
  2. package/bin/devbooks.js +30 -1
  3. package/package.json +1 -1
  4. package/skills/Skills/344/275/277/347/224/250/350/257/264/346/230/216.md +8 -73
  5. package/skills/_shared/mcp-enhancement-template.md +1 -4
  6. package/skills/_shared/workflow-next-steps.md +111 -0
  7. package/skills/devbooks-brownfield-bootstrap/SKILL.md +1 -1
  8. package/skills/devbooks-brownfield-bootstrap/scripts/cod-update.sh +1 -1
  9. package/skills/devbooks-code-review/SKILL.md +33 -0
  10. package/skills/devbooks-coder/SKILL.md +43 -1
  11. package/skills/devbooks-delivery-workflow/SKILL.md +1 -1
  12. package/skills/devbooks-design-doc/SKILL.md +37 -0
  13. package/skills/devbooks-impact-analysis/SKILL.md +1 -1
  14. package/skills/devbooks-implementation-plan/SKILL.md +42 -0
  15. package/skills/devbooks-proposal-author/SKILL.md +40 -0
  16. package/skills/devbooks-proposal-author/references//346/217/220/346/241/210/346/222/260/345/206/231/346/217/220/347/244/272/350/257/215.md +10 -0
  17. package/skills/devbooks-router/SKILL.md +7 -8
  18. package/skills/devbooks-spec-contract/SKILL.md +35 -1
  19. package/skills/devbooks-test-owner/SKILL.md +144 -0
  20. package/templates/dev-playbooks/README.md +4 -14
  21. package/templates/dev-playbooks/docs/DevBooks/351/205/215/347/275/256/346/214/207/345/215/227.md +1 -14
  22. package/skills/devbooks-federation/SKILL.md +0 -264
  23. package/skills/devbooks-federation/scripts/federation-check.sh +0 -144
  24. package/skills/devbooks-federation/templates/federation.yaml +0 -89
  25. package/skills/devbooks-index-bootstrap/SKILL.md +0 -240
  26. package/skills/devbooks-proposal-debate-workflow/SKILL.md +0 -78
  27. package/skills/devbooks-proposal-debate-workflow/references//346/217/220/346/241/210/345/257/271/350/276/251/345/267/245/344/275/234/346/265/201.md +0 -24
  28. package/skills/devbooks-proposal-debate-workflow/references//346/217/220/346/241/210/345/257/271/350/276/251/346/250/241/346/235/277.md +0 -35
  29. package/skills/devbooks-proposal-debate-workflow/scripts/proposal-debate-check.sh +0 -102
package/README.md CHANGED
@@ -27,22 +27,7 @@ AI 编码助手很强大,但往往**不可预测**:
27
27
  - **基于证据的完成**:完成由测试/构建/证据定义,而非 AI 自我评估
28
28
  - **强制角色隔离**:Test Owner 与 Coder 必须在独立对话中工作
29
29
  - **多重质量闸门**:Green 证据检查、任务完成率、角色边界检查
30
- - **21 个 Skills**:覆盖提案、设计、对辩、评审、熵度量、联邦分析等
31
-
32
- ---
33
-
34
- ## DevBooks 对比一览
35
-
36
- | 维度 | DevBooks | OpenSpec | spec-kit | 无规格 |
37
- |------|----------|----------|----------|--------|
38
- | 规格驱动工作流 | 是 | 是 | 是 | 否 |
39
- | 变更产物的可追溯性 | 变更包集中存档(proposal/design/spec/tasks/verification/evidence) | 主要以变更目录/文件组织为主 | 以文档+任务编排为主 | 无 |
40
- | 角色与职责边界 | **强制隔离**(Test Owner / Coder) | 约定为主(不强制) | 约定为主(不强制) | 无 |
41
- | 完成判据(DoD) | **证据驱动 + 闸门**(测试/构建/审计) | 人工定义/人工检查 | 人工定义/人工检查 | 常依赖主观判断 |
42
- | 代码质量保障 | 守门 + 指标(熵度量/热点)+ Review 角色 | 依赖外部工具/人工 review | 依赖外部工具/人工 review | 不稳定 |
43
- | 影响面分析 | CKB 图基能力(可降级 Grep) | 文本搜索/人工推导 | 文本搜索/人工推导 | 容易漏改 |
44
- | 存量项目起步 | 自动生成基线规格/术语表/最小验证锚点 | 手动补齐 | 有限 | - |
45
- | 自动化覆盖面 | 21 个 Skills(提案→实现→归档闭环) | 3 个核心命令 | 工具包(偏 0→1) | - |
30
+ - **18 个 Skills**:覆盖提案、设计、评审、熵度量等完整工作流
46
31
 
47
32
  ---
48
33
 
@@ -174,7 +159,6 @@ DevBooks 使用两个目录根:
174
159
  | `devbooks-impact-analysis` | 跨模块影响分析 |
175
160
  | `devbooks-proposal-challenger` | 质疑和挑战提案 |
176
161
  | `devbooks-proposal-judge` | 裁决提案 |
177
- | `devbooks-proposal-debate-workflow` | 三角对辩(Author/Challenger/Judge) |
178
162
  | `devbooks-design-doc` | 创建设计文档 |
179
163
  | `devbooks-spec-contract` | 定义规格与契约 |
180
164
  | `devbooks-implementation-plan` | 创建实现计划 |
@@ -206,9 +190,7 @@ DevBooks 使用两个目录根:
206
190
  | Skill | 说明 |
207
191
  |-------|------|
208
192
  | `devbooks-entropy-monitor` | 系统熵度量 |
209
- | `devbooks-federation` | 跨仓库联邦分析 |
210
193
  | `devbooks-brownfield-bootstrap` | 存量项目初始化 |
211
- | `devbooks-index-bootstrap` | 生成 SCIP 索引 |
212
194
 
213
195
  ---
214
196
 
@@ -216,54 +198,55 @@ DevBooks 使用两个目录根:
216
198
 
217
199
  ### vs. OpenSpec
218
200
 
219
- [OpenSpec](https://github.com/Fission-AI/OpenSpec) 是轻量级规格驱动框架,用三个核心命令(proposal/apply/archive)对齐人与 AI,按功能文件夹分组变更。
220
-
221
- **DevBooks 新增:**
222
- - **角色隔离**:Test Owner 与 Coder 硬边界(必须独立对话)
223
- - **质量闸门**:5+ 验证闸门拦截伪完成
224
- - **21 个 Skills**:覆盖提案、对辩、评审、熵度量、联邦分析
225
- - **基于证据的完成**:测试/构建定义"完成",而非 AI 自评
201
+ [OpenSpec](https://github.com/Fission-AI/OpenSpec) 是轻量级规格驱动框架,用三个核心命令(proposal/apply/archive)对齐人与 AI
226
202
 
227
- **选择 OpenSpec**:简单规格驱动变更,需要轻量工作流。
203
+ **OpenSpec 的局限**:
204
+ - 缺乏角色隔离,AI 可能自我验证"已完成"
205
+ - 无质量闸门,伪完成难以拦截
206
+ - 只有 3 个命令,复杂变更覆盖不足
228
207
 
229
- **选择 DevBooks**:大型变更、需要角色分离和质量验证。
208
+ **DevBooks 解决方案**:
209
+ - **强制角色隔离**:Test Owner 与 Coder 必须独立对话,杜绝自我验证
210
+ - **5+ 质量闸门**:Green 证据检查、任务完成率、角色边界检查
211
+ - **18 个 Skills**:覆盖提案→实现→归档完整闭环
230
212
 
231
213
  ### vs. spec-kit
232
214
 
233
- [GitHub spec-kit](https://github.com/github/spec-kit) 提供规格驱动开发工具包,有 constitution 文件、多步骤细化和结构化规划。
234
-
235
- **DevBooks 新增:**
236
- - **存量优先**:自动为现有代码库生成基线规格
237
- - **角色隔离**:测试编写与实现强制分离
238
- - **质量闸门**:运行时验证,不只是工作流引导
239
- - **原型模式**:安全实验不污染主 src/
215
+ [GitHub spec-kit](https://github.com/github/spec-kit) 提供规格驱动开发工具包,有 constitution 文件和结构化规划。
240
216
 
241
- **选择 spec-kit**:0→1 绿地项目,使用支持的 AI 工具。
217
+ **spec-kit 的局限**:
218
+ - 偏向 0→1 绿地项目,存量项目支持有限
219
+ - 无强制角色隔离,测试与实现可能混淆
220
+ - 依赖人工检查,缺乏运行时验证
242
221
 
243
- **选择 DevBooks**:存量项目或需要强制质量闸门。
222
+ **DevBooks 解决方案**:
223
+ - **存量优先**:`devbooks-brownfield-bootstrap` 自动生成基线规格
224
+ - **强制角色隔离**:测试编写与实现物理分离
225
+ - **运行时闸门**:自动验证,不依赖人工检查
244
226
 
245
227
  ### vs. Kiro.dev
246
228
 
247
- [Kiro](https://kiro.dev/) 是 AWS 的代理式 IDE,用三阶段工作流(EARS 格式需求、设计、任务),但规格与实现产物分开存储。
229
+ [Kiro](https://kiro.dev/) 是 AWS 的代理式 IDE,用三阶段工作流(需求、设计、任务)。
248
230
 
249
- **DevBooks 差异:**
250
- - **变更包**:每个变更包含 proposal/design/spec/plan/verification/evidence,整个生命周期可在一个位置追溯
251
- - **角色隔离**:Test Owner 与 Coder 强制分离
252
- - **质量闸门**:通过闸门验证,不只是任务完成
231
+ **Kiro 的局限**:
232
+ - 规格与实现产物分开存储,追溯困难
233
+ - 无强制角色隔离
234
+ - 依赖特定 IDE 环境
253
235
 
254
- **选择 Kiro**:想要集成 IDE 体验和 AWS 生态。
255
-
256
- **选择 DevBooks**:想要变更包捆绑所有产物并强制角色边界。
236
+ **DevBooks 解决方案**:
237
+ - **变更包**:proposal/design/spec/plan/verification/evidence 集中存储,完整追溯
238
+ - **强制角色隔离**:Test Owner 与 Coder 硬边界
239
+ - **工具无关**:支持 Claude Code、Codex CLI、Cursor 等多种工具
257
240
 
258
241
  ### vs. 无规格
259
242
 
260
243
  没有规格时,AI 从模糊提示生成代码,导致不可预测的输出、范围蔓延和"幻觉式完成"。
261
244
 
262
245
  **DevBooks 带来:**
263
- - 实现前商定规格
264
- - 验证真实完成的质量闸门
265
- - 防止自我验证的角色隔离
266
- - 每个变更的证据链
246
+ - 实现前商定规格,范围清晰可控
247
+ - 质量闸门验证真实完成
248
+ - 角色隔离防止自我验证
249
+ - 每个变更的完整证据链
267
250
 
268
251
  ---
269
252
 
@@ -349,12 +332,6 @@ DevBooks 跟踪四维系统熵:
349
332
 
350
333
  </details>
351
334
 
352
- <details>
353
- <summary><strong>跨仓库联邦</strong></summary>
354
-
355
- 多仓库分析用 `devbooks-federation`,分析跨仓库边界的契约和依赖,支持协调变更。
356
-
357
- </details>
358
335
 
359
336
  <details>
360
337
  <summary><strong>MCP 自动检测</strong></summary>
@@ -380,19 +357,21 @@ DevBooks Skills 支持 MCP(Model Context Protocol)优雅降级:在没有 M
380
357
  - 超时/失败 → 静默降级到基础模式,不阻塞执行
381
358
  - 无需手动选择"基础/增强"模式
382
359
 
383
- 如需启用增强能力:按 `docs/推荐MCP.md` 配置 CKB,并运行 `devbooks-index-bootstrap` 生成 `index.scip`。
360
+ 如需启用增强能力:按 `docs/推荐MCP.md` 配置 CKB,并手动生成 `index.scip`。
384
361
 
385
362
  </details>
386
363
 
387
364
  <details>
388
- <summary><strong>提案对辩工作流</strong></summary>
365
+ <summary><strong>提案审查流程</strong></summary>
366
+
367
+ 严格提案审查使用独立对话的 Challenger 和 Judge:
389
368
 
390
- 严格提案审查用三角对辩 `devbooks-proposal-debate-workflow`:
369
+ 三个角色(必须独立对话):
370
+ 1. **Author**:创建并捍卫提案(使用 `devbooks-proposal-author`)
371
+ 2. **Challenger**:质疑假设、发现缺口、识别风险(使用 `devbooks-proposal-challenger`)
372
+ 3. **Judge**:做最终决定、记录理由(使用 `devbooks-proposal-judge`)
391
373
 
392
- 三个角色:
393
- 1. **Author**:创建并捍卫提案
394
- 2. **Challenger**:质疑假设、发现缺口、识别风险
395
- 3. **Judge**:做最终决定、记录理由
374
+ **重要**:三个角色必须在**独立对话**中工作,以避免角色混淆和自我验证。
396
375
 
397
376
  决定结果:`Approved`、`Revise`、`Rejected`
398
377
 
package/bin/devbooks.js CHANGED
@@ -247,6 +247,23 @@ function copyDirSync(src, dest) {
247
247
  return count;
248
248
  }
249
249
 
250
+ function pruneRemovedSkills(skillsDestDir, allowedSkillNames) {
251
+ if (!fs.existsSync(skillsDestDir)) return 0;
252
+ let removedCount = 0;
253
+ const entries = fs.readdirSync(skillsDestDir, { withFileTypes: true });
254
+
255
+ for (const entry of entries) {
256
+ if (!entry.isDirectory()) continue;
257
+ if (!entry.name.startsWith('devbooks-')) continue;
258
+ if (allowedSkillNames.has(entry.name)) continue;
259
+
260
+ fs.rmSync(path.join(skillsDestDir, entry.name), { recursive: true, force: true });
261
+ removedCount++;
262
+ }
263
+
264
+ return removedCount;
265
+ }
266
+
250
267
  function getSkillsSupportLabel(level) {
251
268
  switch (level) {
252
269
  case SKILLS_SUPPORT.FULL:
@@ -391,6 +408,7 @@ function installSkills(toolIds, update = false) {
391
408
  .filter(name => fs.statSync(path.join(skillsSrcDir, name)).isDirectory());
392
409
 
393
410
  if (skillDirs.length === 0) continue;
411
+ const skillNames = new Set(skillDirs);
394
412
 
395
413
  fs.mkdirSync(skillsDestDir, { recursive: true });
396
414
 
@@ -420,7 +438,15 @@ function installSkills(toolIds, update = false) {
420
438
  installedCount++;
421
439
  }
422
440
 
423
- results.push({ tool: tool.name, type: 'skills', count: installedCount, total: skillDirs.length });
441
+ const removedCount = update ? pruneRemovedSkills(skillsDestDir, skillNames) : 0;
442
+
443
+ results.push({
444
+ tool: tool.name,
445
+ type: 'skills',
446
+ count: installedCount,
447
+ total: skillDirs.length,
448
+ removed: removedCount
449
+ });
424
450
  }
425
451
 
426
452
  // Qoder: 创建 agents 目录结构(但不复制 Skills,因为格式不同)
@@ -915,6 +941,9 @@ async function updateCommand(projectDir) {
915
941
  if (result.count > 0) {
916
942
  console.log(chalk.green('✓') + ` ${result.tool} ${result.type}: 更新了 ${result.count}/${result.total} 个`);
917
943
  }
944
+ if (result.removed && result.removed > 0) {
945
+ console.log(chalk.green('✓') + ` ${result.tool} ${result.type}: 清理了 ${result.removed} 个已删除的技能`);
946
+ }
918
947
  }
919
948
 
920
949
  // 更新 Rules(项目目录)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dev-playbooks-cn",
3
- "version": "1.0.19",
3
+ "version": "1.1.0",
4
4
  "description": "AI-driven spec-based development workflow",
5
5
  "keywords": [
6
6
  "devbooks",
@@ -115,26 +115,6 @@
115
115
 
116
116
  ---
117
117
 
118
- ## `devbooks-proposal-debate-workflow`(Proposal Debate Workflow)
119
-
120
- - 作用:把“提案-质疑-裁决”跑成一套三角对辩流程(Author/Challenger/Judge 角色隔离),并确保 Decision Log 状态明确。
121
- - 使用场景:
122
- - 你想强制三角色对抗来提高提案质量
123
- - 团队里经常“风险没说清就开工”
124
- - 使用话术:
125
- ```text
126
- 你现在是 Proposal Debate Orchestrator。请点名使用 `devbooks-proposal-debate-workflow`。
127
- 先读:`dev-playbooks/project.md`
128
- 约束:Author/Challenger/Judge 必须独立对话/独立实例;如果我无法提供独立对话,你就停止并说明原因。
129
- 目标:最终 `dev-playbooks/changes/<change-id>/proposal.md` 的 Decision Log 状态必须为 Approved/Revise/Rejected(禁止 Pending)。
130
- 请你按工作流逐步告诉我:每一个独立对话里我要复制粘贴的指令是什么,以及每一步需要我把什么结果贴回当前对话。
131
-
132
- 我的需求是:
133
- <一句话需求 + 背景 + 约束>
134
- ```
135
-
136
- ---
137
-
138
118
  ## `devbooks-design-doc`(Design Owner / Design Doc)
139
119
 
140
120
  - 作用:产出 `design.md`,只写 What/Constraints + AC-xxx(禁止写实现步骤),作为测试与计划的黄金真理。
@@ -364,61 +344,16 @@
364
344
 
365
345
  ---
366
346
 
367
- ## `devbooks-index-bootstrap`(Index Bootstrapper)【新】
347
+ ## `devbooks-test-reviewer`(Test Reviewer)【新】
368
348
 
369
- - 作用:自动检测项目语言栈并生成 SCIP 索引,激活图基代码理解能力(调用图、影响分析、符号引用等)。
370
- - **触发条件**:
371
- - 用户说"初始化索引/建立代码图谱/激活图分析"
372
- - `mcp__ckb__getStatus` 返回 SCIP 后端 `healthy: false`
373
- - 进入新项目且 `index.scip` 不存在
349
+ - 作用:以 Test Reviewer 角色评审 tests/ 测试质量(覆盖、边界、可读性、可维护性),只输出评审意见,不修改代码。
374
350
  - 使用场景:
375
- - 想使用 `devbooks-impact-analysis` 的图基分析模式
376
- - 想在 `devbooks-coder`/`devbooks-code-review` 中获得热点感知
377
- - CKB MCP 工具报错"SCIP 后端不可用"
351
+ - Test Owner 完成测试后,需要独立评审测试质量
352
+ - 想发现测试覆盖盲区、边界条件遗漏、测试可维护性问题
378
353
  - 使用话术:
379
354
  ```text
380
- 请点名使用 `devbooks-index-bootstrap`。
381
- 目标:检测项目语言栈,生成 SCIP 索引,激活图基代码理解能力。
382
- 项目根目录:$(pwd)
383
- ```
384
- - 手动生成索引(无需 Skill):
385
- ```bash
386
- # TypeScript/JavaScript
387
- npm install -g @anthropic-ai/scip-typescript
388
- scip-typescript index --output index.scip
389
-
390
- # Python
391
- pip install scip-python
392
- scip-python index . --output index.scip
393
-
394
- # Go
395
- go install github.com/sourcegraph/scip-go@latest
396
- scip-go --output index.scip
397
- ```
398
-
399
- ---
400
-
401
- ## `devbooks-federation`(Federation Analyst)【新】
402
-
403
- - 作用:跨仓库联邦分析与契约同步。检测契约变更、分析跨仓库影响、通知下游消费者。
404
- - **触发条件**:
405
- - 用户说"跨仓库影响/联邦分析/契约同步/上下游依赖/多仓库"
406
- - 变更涉及 `federation.yaml` 中定义的契约文件
407
- - 使用场景:
408
- - 多仓库项目,需要分析变更对下游的影响
409
- - 对外 API/契约变更,需要通知消费者
410
- - 想建立跨仓库的影响追溯
411
- - 前置条件:
412
- - 项目根目录存在 `.devbooks/federation.yaml`(从 `skills/devbooks-federation/templates/federation.yaml` 复制)
413
- - 使用话术:
414
- ```text
415
- 请点名使用 `devbooks-federation`。
416
- 目标:分析本次变更的跨仓库影响,检测契约变更,生成影响报告。
417
- 项目根目录:$(pwd)
418
- 变更文件:<变更的文件列表>
419
- ```
420
- - 脚本支持:
421
- ```bash
422
- # 检查联邦契约变更
423
- bash ~/.claude/skills/devbooks-federation/scripts/federation-check.sh --project-root "$(pwd)"
355
+ 你现在是 Test Reviewer。请点名使用 `devbooks-test-reviewer`。
356
+ 请只做测试质量评审(覆盖率/边界条件/可读性/可维护性),不修改代码。
357
+ 输入:`tests/**` + `dev-playbooks/changes/<change-id>/verification.md`(如有)
358
+ 输出:覆盖盲区 / 边界条件遗漏 / 可维护性风险 / 改进建议。
424
359
  ```
@@ -48,7 +48,7 @@
48
48
 
49
49
  ```
50
50
  ⚠️ CKB 不可用(超时或未配置),使用基础模式执行。
51
- 如需启用增强功能,请运行 devbooks-index-bootstrap skill 生成索引。
51
+ 如需启用增强功能,请手动生成 SCIP 索引。
52
52
  ```
53
53
  ```
54
54
 
@@ -65,7 +65,6 @@
65
65
  - devbooks-proposal-author(纯文档生成)
66
66
  - devbooks-proposal-challenger(纯评审)
67
67
  - devbooks-proposal-judge(纯裁决)
68
- - devbooks-proposal-debate-workflow(流程编排)
69
68
  - devbooks-design-backport(文档回写)
70
69
  - devbooks-spec-gardener(文件整理)
71
70
  - devbooks-test-reviewer(测试评审)
@@ -88,8 +87,6 @@
88
87
  | devbooks-code-review | mcp__ckb__getHotspots | 热点文件高亮 |
89
88
  | devbooks-impact-analysis | mcp__ckb__analyzeImpact, findReferences | 精确影响分析 |
90
89
  | devbooks-brownfield-bootstrap | mcp__ckb__* | COD 模型生成 |
91
- | devbooks-index-bootstrap | mcp__ckb__getStatus | 索引状态检测 |
92
- | devbooks-federation | mcp__ckb__*, mcp__github__* | 跨仓库分析 |
93
90
  | devbooks-router | mcp__ckb__getStatus | 索引可用性检测 |
94
91
  | devbooks-spec-contract | mcp__ckb__findReferences | 引用检测 |
95
92
  | devbooks-entropy-monitor | mcp__ckb__getHotspots | 热点趋势分析 |
@@ -0,0 +1,111 @@
1
+ # DevBooks 工作流下一步参考
2
+
3
+ 本文档定义了每个 skill 的标准下一步推荐。所有 skill 应引用此文件以确保一致的工作流指导。
4
+
5
+ ## 工作流顺序
6
+
7
+ ```
8
+ ┌─────────────────────────────────────────────────────────────────┐
9
+ │ 提案阶段 (PROPOSAL) │
10
+ │ proposal-author → impact-analysis → design-doc → spec-contract │
11
+ │ ↓ │
12
+ │ implementation-plan │
13
+ └─────────────────────────────────────────────────────────────────┘
14
+
15
+ ┌─────────────────────────────────────────────────────────────────┐
16
+ │ 实施阶段 (APPLY) │
17
+ │ test-owner (会话A) ←→ coder (会话B) │
18
+ │ (必须在不同会话中进行) │
19
+ └─────────────────────────────────────────────────────────────────┘
20
+
21
+ ┌─────────────────────────────────────────────────────────────────┐
22
+ │ 评审阶段 (REVIEW) │
23
+ │ code-review │
24
+ └─────────────────────────────────────────────────────────────────┘
25
+
26
+ ┌─────────────────────────────────────────────────────────────────┐
27
+ │ 归档阶段 (ARCHIVE) │
28
+ │ spec-gardener │
29
+ └─────────────────────────────────────────────────────────────────┘
30
+ ```
31
+
32
+ ## 下一步矩阵
33
+
34
+ | 当前 Skill | 下一步 | 条件 |
35
+ |------------|--------|------|
36
+ | `devbooks-proposal-author` | `devbooks-impact-analysis` | 如果跨模块影响不明确 |
37
+ | `devbooks-proposal-author` | `devbooks-design-doc` | 如果影响明确 |
38
+ | `devbooks-proposal-author` | `devbooks-proposal-challenger` | 如果高风险(可选) |
39
+ | `devbooks-impact-analysis` | `devbooks-design-doc` | 始终 |
40
+ | `devbooks-proposal-challenger` | `devbooks-proposal-judge` | 始终 |
41
+ | `devbooks-proposal-judge` | `devbooks-design-doc` | 如果 Approved/Revise |
42
+ | `devbooks-design-doc` | `devbooks-spec-contract` | 如果有外部行为/契约变更 |
43
+ | `devbooks-design-doc` | `devbooks-implementation-plan` | 如果无外部契约变更 |
44
+ | `devbooks-spec-contract` | `devbooks-implementation-plan` | 始终(绝不直接推荐 test-owner/coder) |
45
+ | `devbooks-implementation-plan` | `devbooks-test-owner` | 始终(必须单独会话) |
46
+ | `devbooks-test-owner` | `devbooks-coder` | Red 基线后(必须单独会话) |
47
+ | `devbooks-coder` | `devbooks-code-review` | 所有任务完成后 |
48
+ | `devbooks-code-review` | `devbooks-spec-gardener` | 如果有 spec deltas |
49
+ | `devbooks-code-review` | 归档完成 | 如果无 spec deltas |
50
+ | `devbooks-test-reviewer` | `devbooks-coder` | 如果发现测试问题,交回 |
51
+ | `devbooks-design-backport` | `devbooks-implementation-plan` | 设计更新后重跑计划 |
52
+ | `devbooks-spec-gardener` | 归档完成 | 始终 |
53
+
54
+ ## 关键约束
55
+
56
+ ### 提案阶段流程
57
+ ```
58
+ proposal-author → [impact-analysis] → design-doc → [spec-contract] → implementation-plan
59
+ ```
60
+ - 如果有外部行为/契约变更,`spec-contract` 是必需的
61
+ - 对于跨模块变更,推荐使用 `impact-analysis`
62
+ - **绝不从 spec-contract 或 design-doc 直接跳到 test-owner/coder**
63
+
64
+ ### 实施阶段流程
65
+ ```
66
+ implementation-plan → test-owner (会话A) ←→ coder (会话B)
67
+ ```
68
+ - Test Owner 和 Coder **必须在不同会话中**
69
+ - Test Owner 先产出 Red 基线
70
+ - Coder 按 tasks.md 实现,让闸门变绿
71
+
72
+ ### 角色隔离规则
73
+ - Author、Challenger、Judge:辩论需在不同会话
74
+ - Test Owner、Coder:不同会话(硬性要求)
75
+ - Coder **不能修改** `tests/**`
76
+
77
+ ## 标准下一步输出格式
78
+
79
+ 推荐下一步时,使用此格式:
80
+
81
+ ```markdown
82
+ ## 推荐的下一步
83
+
84
+ 根据当前产物,推荐的下一个 skill 是:
85
+
86
+ **下一步:`devbooks-<skill-name>`**
87
+
88
+ 原因:<为什么这个 skill 是工作流中的下一步>
89
+
90
+ ### 如何调用
91
+ ```
92
+ 运行 devbooks-<skill-name> skill 处理变更 <change-id>
93
+ ```
94
+
95
+ ### 替代路径(如适用)
96
+ - 如果 <条件>:改用 `devbooks-<alternative-skill>`
97
+ ```
98
+
99
+ ## 常见错误避免
100
+
101
+ 1. **在 spec-contract 后直接推荐 test-owner/coder**
102
+ - 正确:spec-contract → implementation-plan → test-owner
103
+
104
+ 2. **在 design-doc 后直接推荐 coder**
105
+ - 正确:design-doc → [spec-contract] → implementation-plan → test-owner → coder
106
+
107
+ 3. **在同一会话中推荐 test-owner 和 coder**
108
+ - 正确:始终提醒"必须在不同会话中"
109
+
110
+ 4. **跳过 implementation-plan**
111
+ - implementation-plan 在实施阶段前是必需的
@@ -272,5 +272,5 @@ MCP 增强规则参考:`skills/_shared/mcp-enhancement-template.md`
272
272
 
273
273
  ```
274
274
  ⚠️ CKB 不可用,使用传统分析方法生成项目画像。
275
- 如需更精确的架构分析,请运行 devbooks-index-bootstrap skill 生成索引。
275
+ 如需更精确的架构分析,请手动生成 SCIP 索引。
276
276
  ```
@@ -182,7 +182,7 @@ EOF
182
182
  echo "" >> "$temp_file"
183
183
  echo "---" >> "$temp_file"
184
184
  echo "" >> "$temp_file"
185
- echo "> 提示:运行 \`devbooks-index-bootstrap\` 生成 SCIP 索引以获得更精确的依赖分析" >> "$temp_file"
185
+ echo "> 提示:手动生成 SCIP 索引以获得更精确的依赖分析(参考 docs/推荐MCP.md)" >> "$temp_file"
186
186
 
187
187
  # 只在内容变化时更新
188
188
  if [ -f "$output" ]; then
@@ -136,6 +136,39 @@ override dispose() {
136
136
 
137
137
  ---
138
138
 
139
+ ## 下一步推荐
140
+
141
+ **参考**:`skills/_shared/workflow-next-steps.md`
142
+
143
+ 完成 code-review 后,下一步取决于具体情况:
144
+
145
+ | 条件 | 下一个 Skill | 原因 |
146
+ |------|--------------|------|
147
+ | 有 spec deltas | `devbooks-spec-gardener` | 归档前合并规格到真理 |
148
+ | 无 spec deltas | 归档完成 | 无需其他 skill |
149
+ | 发现重大问题 | 交回 `devbooks-coder` | 归档前修复问题 |
150
+
151
+ ### 输出模板
152
+
153
+ 完成 code-review 后,输出:
154
+
155
+ ```markdown
156
+ ## 推荐的下一步
157
+
158
+ **下一步:`devbooks-spec-gardener`**(如果有 spec deltas)
159
+
160
+ **归档完成**(如果无 spec deltas)
161
+
162
+ 原因:代码评审已完成。下一步是[合并 spec deltas 到真理 / 完成归档]。
163
+
164
+ ### 如何调用(如果有 spec deltas)
165
+ ```
166
+ 运行 devbooks-spec-gardener skill 处理变更 <change-id>
167
+ ```
168
+ ```
169
+
170
+ ---
171
+
139
172
  ## MCP 增强
140
173
 
141
174
  本 Skill 支持 MCP 运行时增强,自动检测并启用高级功能。
@@ -245,6 +245,48 @@ fi
245
245
 
246
246
  ---
247
247
 
248
+ ## 下一步推荐
249
+
250
+ **参考**:`skills/_shared/workflow-next-steps.md`
251
+
252
+ 完成 coder(所有任务完成,闸门变绿)后,下一步是:
253
+
254
+ | 条件 | 下一个 Skill | 原因 |
255
+ |------|--------------|------|
256
+ | 所有任务已完成 | `devbooks-code-review` | 评审可读性/一致性 |
257
+ | 需要修改测试 | 交回 `devbooks-test-owner` | Coder 不能修改测试 |
258
+
259
+ **关键**:
260
+ - Coder **不能修改** `tests/**`
261
+ - 如发现测试问题,交回 Test Owner(单独会话)
262
+ - 工作流顺序是:
263
+ ```
264
+ coder → code-review → spec-gardener (如有 spec deltas) → 归档
265
+ ```
266
+
267
+ ### 输出模板
268
+
269
+ 完成 coder(所有闸门变绿)后,输出:
270
+
271
+ ```markdown
272
+ ## 推荐的下一步
273
+
274
+ **下一步:`devbooks-code-review`**
275
+
276
+ 原因:所有任务已完成,闸门已变绿。下一步是代码评审,检查可读性、一致性和可维护性。
277
+
278
+ ### 如何调用
279
+ ```
280
+ 运行 devbooks-code-review skill 处理变更 <change-id>
281
+ ```
282
+
283
+ ### 评审后
284
+ - 如有 spec deltas:`devbooks-spec-gardener` 合并到真理
285
+ - 如无 spec deltas:归档完成
286
+ ```
287
+
288
+ ---
289
+
248
290
  ## MCP 增强
249
291
 
250
292
  本 Skill 支持 MCP 运行时增强,自动检测并启用高级功能。
@@ -278,6 +320,6 @@ MCP 增强规则参考:`skills/_shared/mcp-enhancement-template.md`
278
320
 
279
321
  ```
280
322
  ⚠️ CKB 不可用,跳过热点检测。
281
- 如需启用热点预警,请运行 devbooks-index-bootstrap skill 生成索引。
323
+ 如需启用热点预警,请手动生成 SCIP 索引。
282
324
  ```
283
325
 
@@ -213,5 +213,5 @@ MCP 增强规则参考:`skills/_shared/mcp-enhancement-template.md`
213
213
 
214
214
  ```
215
215
  ⚠️ CKB 索引不可用,架构检查将使用基础模式。
216
- 建议运行 devbooks-index-bootstrap skill 生成索引以启用精确检查。
216
+ 建议手动生成 SCIP 索引以启用精确检查。
217
217
  ```
@@ -188,6 +188,43 @@ tools:
188
188
 
189
189
  ---
190
190
 
191
+ ## 下一步推荐
192
+
193
+ **参考**:`skills/_shared/workflow-next-steps.md`
194
+
195
+ 完成 design-doc 后,下一步取决于变更范围:
196
+
197
+ | 条件 | 下一个 Skill | 原因 |
198
+ |------|--------------|------|
199
+ | 有外部行为/契约变更 | `devbooks-spec-contract` | 必须先定义契约再做计划 |
200
+ | 无外部契约变更 | `devbooks-implementation-plan` | 直接进入任务计划 |
201
+
202
+ **关键**:绝不在 design-doc 后直接推荐 `devbooks-test-owner` 或 `devbooks-coder`。工作流顺序是:
203
+ ```
204
+ design-doc → [spec-contract] → implementation-plan → test-owner → coder
205
+ ```
206
+
207
+ ### 输出模板
208
+
209
+ 完成 design-doc 后,输出:
210
+
211
+ ```markdown
212
+ ## 推荐的下一步
213
+
214
+ **下一步:`devbooks-spec-contract`**(如果有外部行为/契约变更)
215
+
216
+ **下一步:`devbooks-implementation-plan`**(如果无外部契约变更)
217
+
218
+ 原因:设计已完成。下一步是[定义外部契约 / 创建实现计划]。
219
+
220
+ ### 如何调用
221
+ ```
222
+ 运行 devbooks-<skill-name> skill 处理变更 <change-id>
223
+ ```
224
+ ```
225
+
226
+ ---
227
+
191
228
  ## MCP 增强
192
229
 
193
230
  本 Skill 不依赖 MCP 服务,无需运行时检测。
@@ -130,6 +130,6 @@ MCP 增强规则参考:`skills/_shared/mcp-enhancement-template.md`
130
130
 
131
131
  ```
132
132
  ⚠️ CKB 不可用,使用 Grep 文本搜索进行影响分析。
133
- 分析结果可能不够精确,建议运行 devbooks-index-bootstrap skill 生成索引后重新分析。
133
+ 分析结果可能不够精确,建议手动生成 SCIP 索引后重新分析。
134
134
  ```
135
135