sdd-full 5.1.9 → 5.2.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/.claude/skills/multi-expert-discussion/SKILL.md +21 -7
- package/.claude/skills/multi-expert-discussion/references/mechanisms.md +49 -3
- package/.claude/skills/multi-expert-discussion/references/problem-routing.md +7 -1
- package/.claude/skills/multi-expert-discussion/references/schemas.md +1 -1
- package/.claude/skills/multi-expert-discussion/references/scoring.md +4 -4
- package/.claude/skills/multi-expert-discussion/references/workflow-engine.md +27 -3
- package/.claude/skills/multi-expert-discussion/templates/reports.md +43 -0
- package/bin.js +1 -1
- package/package.json +1 -1
|
@@ -25,7 +25,7 @@ disable-model-invocation: false
|
|
|
25
25
|
→ 加载对应流程(YAML工作流图)
|
|
26
26
|
→ 阶段0分层前置(仅收敛型)→ 问题定义 → 专家招募 → 初始立场对齐
|
|
27
27
|
→ 圆桌研讨(搜索子阶段可选)
|
|
28
|
-
→ (分叉条件触发?)→
|
|
28
|
+
→ (分叉条件触发?)→ 阶段4:多分支并行探索 → 阶段5:分支结果对比融合
|
|
29
29
|
→ 最终报告 → (二次研讨?)→ 迭代深化
|
|
30
30
|
→ [静默模式](可选:仅输出最终报告,无中间过程)
|
|
31
31
|
```
|
|
@@ -65,14 +65,22 @@ disable-model-invocation: false
|
|
|
65
65
|
5. **生成阶段备忘录**(模板见 templates/reports.md),发送至各专家进行事实性确认
|
|
66
66
|
6. **确认后的备忘录存入上下文**,作为决策链记录
|
|
67
67
|
7. **主持人检测死锁指标**(公式详见 references/scoring.md),触发则执行熔断策略(详见 references/mechanisms.md)
|
|
68
|
-
8. **检查分叉/合并条件**(详见下文阶段
|
|
68
|
+
8. **检查分叉/合并条件**(详见下文阶段4和阶段5)
|
|
69
69
|
|
|
70
70
|
### 本轮结束前,分支管理AI判断
|
|
71
71
|
|
|
72
|
-
- 若存在≥2个互斥高置信度方向(或用户要求),触发 **Fork** 操作(见阶段
|
|
72
|
+
- 若存在≥2个互斥高置信度方向(或用户要求),触发 **Fork** 操作(见阶段4)
|
|
73
73
|
- 否则,继续下一轮,直到达到预设轮次、收敛或死锁熔断
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
### 主线程退出条件(未触发分叉时)
|
|
76
|
+
|
|
77
|
+
阶段 3 在以下任一条件满足时结束,进入后续阶段:
|
|
78
|
+
1. **收敛退出**:连续 2 轮满足「新共识项数 = 0 且 分歧强度 ≤ 1.0」,表示分歧已充分收敛
|
|
79
|
+
2. **轮次退出**:达到预设最大轮次(默认 5 轮),即使仍存在分歧
|
|
80
|
+
3. **死锁退出**:触发死锁检测条件(连续 3 轮无进展)且魔鬼代言人介入无效
|
|
81
|
+
4. **用户显式指令**:用户在任何轮次后主动要求结束讨论
|
|
82
|
+
|
|
83
|
+
## 阶段 4:多分支并行探索(Fork)
|
|
76
84
|
|
|
77
85
|
- **触发条件**:在任意轮次后,满足以下之一:
|
|
78
86
|
- 专家组裁决:存在≥2个高置信度但互斥方向
|
|
@@ -85,7 +93,7 @@ disable-model-invocation: false
|
|
|
85
93
|
- **分叉管理API**:详见 templates/reports.md
|
|
86
94
|
- **资源隔离**:分支间不直接共享后续生成内容,只通过分叉点继承公共知识
|
|
87
95
|
|
|
88
|
-
## 阶段
|
|
96
|
+
## 阶段 5:分支结果对比与融合(Merge)
|
|
89
97
|
|
|
90
98
|
### 分支合并条件
|
|
91
99
|
|
|
@@ -96,6 +104,12 @@ disable-model-invocation: false
|
|
|
96
104
|
4. 用户显式指令"合并讨论"
|
|
97
105
|
5. 全局时间预算耗尽
|
|
98
106
|
|
|
107
|
+
**收敛 vs 死锁判定边界**:
|
|
108
|
+
- **收敛(良性结束)**:连续 2 轮无新分歧项产生,且分歧强度持续下降(D_n < D_{n-1} × 0.95)
|
|
109
|
+
- **死锁(恶性僵持)**:连续 3 轮无新共识项,且分歧强度持平或上升(D_n ≥ D_{n-1} × 0.95),置信度无显著变化
|
|
110
|
+
- 两者互斥:同一分支在一次研讨中不会同时满足收敛和死锁条件
|
|
111
|
+
- 若某分支在达到死锁判定前已满足收敛条件,优先按收敛处理
|
|
112
|
+
|
|
99
113
|
**特殊规则**:
|
|
100
114
|
- 若仅1个分支达到收敛而其他分支仍在讨论,收敛分支提前冻结,等待其他分支
|
|
101
115
|
- 若某分支的资源(token/时间)耗尽,生成部分结论并标记"未完成"
|
|
@@ -116,7 +130,7 @@ disable-model-invocation: false
|
|
|
116
130
|
- 若存在互补可能性,元审查AI可提议融合方案
|
|
117
131
|
- 输出最终推荐排序,附完整决策追溯链(模板见 templates/reports.md)
|
|
118
132
|
|
|
119
|
-
## 阶段
|
|
133
|
+
## 阶段 6:对输出的二次研讨(迭代深化)
|
|
120
134
|
|
|
121
135
|
支持用户对已生成的任何结论、风险项或子议题发起新一轮研讨,实现递归深入研究。
|
|
122
136
|
|
|
@@ -125,7 +139,7 @@ disable-model-invocation: false
|
|
|
125
139
|
1. 主持人提取被指定议题,并将其作为新的核心问题
|
|
126
140
|
2. 继承上一轮的所有阶段备忘录、分支对比表、决策链作为背景知识
|
|
127
141
|
3. 沿用原专家团队,或根据新问题增补专家。每位专家的初始偏见声明可更新
|
|
128
|
-
4. 完全复用阶段1至阶段
|
|
142
|
+
4. 完全复用阶段1至阶段5的机制
|
|
129
143
|
5. 新一轮产生独立的决策链和备忘录,并与上一轮建立关联(生成二级决策链,模板见 templates/reports.md)
|
|
130
144
|
- **嵌套支持**:理论上可多次迭代,每次生成新的研讨层,直至用户满意
|
|
131
145
|
|
|
@@ -23,6 +23,21 @@
|
|
|
23
23
|
4. 若反方论证存在合理性(置信度 ≥ 中),判定为回音室效应
|
|
24
24
|
- **处理**:指定一名置信度最高的专家临时担任魔鬼代言人(任期:1轮)
|
|
25
25
|
|
|
26
|
+
**回音室假收敛处理(升级路径)**:
|
|
27
|
+
|
|
28
|
+
当以下条件同时满足时,判定为"假收敛循环":
|
|
29
|
+
- 魔鬼代言人已被触发 ≥ 2 次(针对同一或相似议题)
|
|
30
|
+
- 每次魔鬼代言人的反方论证均被专家组驳回
|
|
31
|
+
- 共识度 ≥ 4.8 在该议题上持续 ≥ 3 轮
|
|
32
|
+
|
|
33
|
+
升级处理流程:
|
|
34
|
+
1. 审查AI将该议题标记为"高共识但存疑"
|
|
35
|
+
2. 触发外部搜索子阶段,强制对该议题的核心假设进行独立事实验证
|
|
36
|
+
3. 搜索结果注入后,专家组重新审视:
|
|
37
|
+
- 若外部验证支持原共识 → 标记为"经外部验证的共识",魔鬼代言人不再对该议题介入
|
|
38
|
+
- 若外部验证发现疑点 → 将该议题从共识仓库中移出,作为开放分歧重新讨论
|
|
39
|
+
4. 若外部验证后仍无法解决,提交主持人决策(标记为"待用户裁决")
|
|
40
|
+
|
|
26
41
|
## 上诉与异议裁决流程
|
|
27
42
|
|
|
28
43
|
1. 专家在审查AI发布备忘录后1轮内(窗口期),可对以下事项提起上诉:
|
|
@@ -47,6 +62,12 @@
|
|
|
47
62
|
4. 元审查裁定为最终裁定,不可再次上诉(防止无限递归)
|
|
48
63
|
5. 所有上诉记录记入阶段备忘录
|
|
49
64
|
|
|
65
|
+
**上诉窗口期延展规则**:
|
|
66
|
+
- 超时或弃权的专家(本轮未发言)自动享受窗口期延展
|
|
67
|
+
- 延展规则:该专家回归后的首轮发言前,仍可对缺席期间的所有备忘录提起上诉
|
|
68
|
+
- 已超期的轮次在备忘录中标注"保留上诉权至专家回归"
|
|
69
|
+
- 连续超时 ≥ 3 轮的专家,丧失该批次的上诉权(确认该专家已失活)
|
|
70
|
+
|
|
50
71
|
## 元审查流程(对内 + 对外)
|
|
51
72
|
|
|
52
73
|
### 对内元审查(处理上诉)
|
|
@@ -96,13 +117,19 @@
|
|
|
96
117
|
|
|
97
118
|
## 随机新专家调入流程
|
|
98
119
|
|
|
99
|
-
1. 候选人池来源:预定义的"备用专家角色列表"(在阶段1
|
|
100
|
-
2.
|
|
120
|
+
1. 候选人池来源:预定义的"备用专家角色列表"(在阶段1与用户共同确定),**全局共享**
|
|
121
|
+
2. 分支内调入规则:
|
|
122
|
+
a. 候选人池为全局共享资源,所有分支共用
|
|
123
|
+
b. 当一个分支从池中调入某专家角色后,该角色被标记为 `in_use`
|
|
124
|
+
c. `in_use` 角色不会被其他分支重复调入
|
|
125
|
+
d. 分支终止或冻结时,释放该角色回候选人池(标记 `available`)
|
|
126
|
+
3. 若某分支的当前候选池为空(所有备用角色已被其他分支占用),向主持人告警并暂停该分支的随机调入
|
|
127
|
+
4. 调入步骤:
|
|
101
128
|
a. 从候选人池中随机抽取1-2名未参与当前研讨的专家角色
|
|
102
129
|
b. 注入当前上下文快照(问题陈述 + 最近3轮备忘录 + 当前共识仓库)
|
|
103
130
|
c. 新专家在首轮发言中完成偏见声明和初始立场(跳过阶段2对齐)
|
|
104
131
|
d. 新专家首轮发言不参与该轮的置信度均值计算(视为"预热轮")
|
|
105
|
-
|
|
132
|
+
5. 若候选人池已耗尽,则触发"研讨终止"并向用户报告
|
|
106
133
|
|
|
107
134
|
## 分支内死锁处理与主线程差异
|
|
108
135
|
|
|
@@ -176,6 +203,25 @@
|
|
|
176
203
|
- **特性**:一旦进入共识仓库,后续轮次不可推翻(immutable=true)
|
|
177
204
|
- **例外**:审查AI发现共识基于错误事实,可标记为"存疑"并重新开放讨论
|
|
178
205
|
|
|
206
|
+
### 共识仓库修订流程(不可变性例外)
|
|
207
|
+
|
|
208
|
+
当审查AI发现共识仓库中的某条共识基于错误事实时,执行以下修订流程:
|
|
209
|
+
|
|
210
|
+
1. **创建《共识修订提案》**:审查AI生成修订提案,包含:
|
|
211
|
+
- 目标共识项 ID(如 C-001)
|
|
212
|
+
- 错误事实描述
|
|
213
|
+
- 佐证材料(外部验证来源)
|
|
214
|
+
- 建议的修正内容
|
|
215
|
+
2. **标记存疑**:在原共识项上添加 `status: "disputed"` 标记,`immutable` 字段不变但自动创建新版本占位
|
|
216
|
+
3. **注入讨论**:将修订提案注入下一轮讨论,通知所有相关专家重新审阅
|
|
217
|
+
4. **重审**:相关专家在下一轮就该议题重新发言和评分
|
|
218
|
+
5. **版本化**:达成新共识后:
|
|
219
|
+
- 创建新版本(版本号递增,如 C-001-v2)
|
|
220
|
+
- 新版本 `immutable: true`
|
|
221
|
+
- 旧版本 `immutable: false`,`superseded_by: "C-001-v2"`
|
|
222
|
+
6. **审计保留**:旧版本不可删除,保留在审计链中作为决策演化记录
|
|
223
|
+
7. **流程终止条件**:若无法达成新共识(连续2轮无变化),标记该议题为"争议保留",提交用户决策
|
|
224
|
+
|
|
179
225
|
## 融合方案冲突检测
|
|
180
226
|
|
|
181
227
|
1. 元审查AI提取各分支的"最高置信度组件"(每个分支置信度最高的子结论)
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
| 用户需做出具体决策、产出可交付成果(如"如何用高德SDK做骑行导航""评估Flutter与React Native选型") | 收敛型(convergent) | 收敛型流程 + 阶段0分层前置 |
|
|
8
8
|
| 用户需探索可能性、生成创意、无唯一答案(如"明年产品线有哪些创新方向""如何提升用户留存") | 发散型(divergent) | 发散型流程 |
|
|
9
9
|
| 用户需理解一个领域、建立认知框架(如"什么是量子计算""解释Kubernetes架构") | 探索型(exploration) | 探索型流程 |
|
|
10
|
+
| 用户输入同时包含收敛和探索特征(如"评估Flutter可行性并学习其架构") | 混合型(hybrid) | 先探索后收敛的两阶段流程 |
|
|
10
11
|
|
|
11
12
|
## 路由决策逻辑
|
|
12
13
|
|
|
@@ -14,6 +15,9 @@
|
|
|
14
15
|
2. 匹配上述判定规则
|
|
15
16
|
3. 加载对应类型的流程
|
|
16
17
|
4. 若匹配到收敛型,额外触发阶段0分层前置
|
|
18
|
+
5. 若匹配到混合型,加载先探索后收敛的两阶段流程:
|
|
19
|
+
- 阶段1:探索模式运行 → 建立认知框架
|
|
20
|
+
- 阶段2:收敛模式运行 → 基于认知产出决策
|
|
17
21
|
|
|
18
22
|
## 不确定处理
|
|
19
23
|
|
|
@@ -24,4 +28,6 @@
|
|
|
24
28
|
> 2. **发散型** — 探索多种可能性,生成创意\n
|
|
25
29
|
> 3. **探索型** — 深入理解这个领域,建立认知框架"
|
|
26
30
|
|
|
27
|
-
用户选择后,路由到对应流程。
|
|
31
|
+
用户选择后,路由到对应流程。
|
|
32
|
+
|
|
33
|
+
**兜底策略**:若用户在询问后仍未做出选择,或在限定时间内未回复,系统默认按收敛型处理(加载收敛型流程 + 阶段0分层前置),并在流程开始时标注"已按默认收敛模式启动,可在任何轮次重选类型"。
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
| Schema | 名称 | 定义位置 | 用途简介 |
|
|
6
6
|
|--------|------|---------|---------|
|
|
7
7
|
| S1 | 阶段备忘录 | templates/reports.md | 记录每轮研讨的摘要、专家立场、共识、分歧、健康指标等 |
|
|
8
|
-
| S2 |
|
|
8
|
+
| S2 | 决策链 | templates/reports.md | 记录决策过程的完整追溯链,支持多层嵌套引用 |
|
|
9
9
|
| S3 | 上下文快照 | references/mechanisms.md | 分叉或熔断时保存的精简状态,用于断点续存 |
|
|
10
10
|
| S4 | 状态转储 | references/mechanisms.md | 完整导出当前全量记忆,用于崩溃恢复、审计、跨会话继承 |
|
|
11
11
|
| S5 | 专家状态 | references/mechanisms.md (包含于S3) | 记录专家的历史立场、置信度、偏见自评等 |
|
|
@@ -47,12 +47,30 @@ workflow:
|
|
|
47
47
|
- 阶段序列:基础概念 → 知识图谱构建 → 关键点深入 → 认知框架输出
|
|
48
48
|
- 特征:知识驱动、循序渐进、概念关联
|
|
49
49
|
|
|
50
|
+
## 与 SKILL.md 阶段编号映射
|
|
51
|
+
|
|
52
|
+
YAML 工作流阶段与 SKILL.md 核心流程的阶段号对应关系如下:
|
|
53
|
+
|
|
54
|
+
| YAML 阶段ID | YAML 阶段名 | 对应 SKILL.md 阶段 | 说明 |
|
|
55
|
+
|------------|------------|-------------------|------|
|
|
56
|
+
| clarify | 需求澄清 | 阶段 0(收敛型分层前置) + 阶段 1(问题定义) | 收敛型额外包含阶段 0 |
|
|
57
|
+
| design | 方案设计 | 阶段 2(初始立场对齐) + 阶段 3(圆桌研讨) | 初始立场在方案设计前期完成 |
|
|
58
|
+
| risk | 风险评估 | 阶段 3 内循环 + Meta 审查 | 风险审查作为圆桌研讨的子环节 |
|
|
59
|
+
| 无对应 | 多分支探索 | 阶段 4(Fork → 分支并行) | YAML 中由外部编排触发分叉 |
|
|
60
|
+
| 无对应 | 分支合并 | 阶段 5(Merge → 对比融合) | YAML 中由外部编排触发合并 |
|
|
61
|
+
| 无对应 | 二次研讨 | 阶段 6(迭代深化) | 非默认流程,用户触发后执行 |
|
|
62
|
+
|
|
63
|
+
**使用说明**:系统加载 YAML 工作流后,将 YAML 阶段按上表映射到 SKILL.md 中的执行流程。每个阶段执行时,由原子原语组合实现具体操作。
|
|
64
|
+
|
|
50
65
|
## 自定义流程
|
|
51
66
|
|
|
52
67
|
用户可在对话中直接声明流程:
|
|
53
68
|
|
|
54
69
|
> "我想讨论新产品方向。流程:第一轮各提5个想法,第二轮互相挑战,第三轮投票收敛。输出创意评估矩阵。"
|
|
55
70
|
|
|
71
|
+
英文示例:
|
|
72
|
+
> "I want to discuss product innovation. Process: Round 1 brainstorm 5 ideas each, Round 2 cross-challenge, Round 3 vote to converge. Output an innovation assessment matrix."
|
|
73
|
+
|
|
56
74
|
系统解析后:
|
|
57
75
|
1. 提取阶段序列(3轮:想法生成 → 交叉挑战 → 投票收敛)
|
|
58
76
|
2. 提取最终输出物(创意评估矩阵)
|
|
@@ -60,9 +78,15 @@ workflow:
|
|
|
60
78
|
|
|
61
79
|
### 解析规则
|
|
62
80
|
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
81
|
+
- 关键词匹配(中英文兼容):
|
|
82
|
+
- 中文:"第一轮/第二轮/第三轮/第1轮/第2轮/第3轮" → 阶段序列
|
|
83
|
+
- 英文:"round 1/round 2/round 3/Round 1/Round 2/Round 3" → 阶段序列
|
|
84
|
+
- 动作提取(中英文兼容):
|
|
85
|
+
- 中文:"提想法/互相挑战/投票/讨论/评估/分析" → 阶段类型推断
|
|
86
|
+
- 英文:"brainstorm/challenge/vote/discuss/evaluate/analyze" → 阶段类型推断
|
|
87
|
+
- 输出提取(中英文兼容):
|
|
88
|
+
- 中文:"输出XXX" → 阶段/最终产出物
|
|
89
|
+
- 英文:"output XXX/deliver XXX" → 阶段/最终产出物
|
|
66
90
|
|
|
67
91
|
## 与原子原语的关系
|
|
68
92
|
|
|
@@ -138,6 +138,49 @@
|
|
|
138
138
|
}
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
+
## 单分支最终方案报告 JSON 模板(无分叉场景)
|
|
142
|
+
|
|
143
|
+
当研讨未触发分叉操作时(仅单分支运行),使用以下模板替代多分支方案报告:
|
|
144
|
+
|
|
145
|
+
```json
|
|
146
|
+
{
|
|
147
|
+
"report_type": "单分支最终方案报告",
|
|
148
|
+
"branch_id": "main",
|
|
149
|
+
"generated_at": "ISO 8601",
|
|
150
|
+
"total_rounds": 5,
|
|
151
|
+
"session_type": "single_branch",
|
|
152
|
+
"final_conclusion": {
|
|
153
|
+
"recommended_solution": "方案描述(≤200字)",
|
|
154
|
+
"confidence": {
|
|
155
|
+
"overall_score": 14.2,
|
|
156
|
+
"label": "高",
|
|
157
|
+
"dimensions": {
|
|
158
|
+
"source_reliability": 4.5,
|
|
159
|
+
"logic_consistency": 4.8,
|
|
160
|
+
"data_verifiability": 4.1,
|
|
161
|
+
"external_validation": 4.0
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"key_strengths": ["优势1", "优势2"],
|
|
165
|
+
"fatal_weaknesses": ["致命弱点(如有)"],
|
|
166
|
+
"resolution_path": "收敛型结束 / 轮次结束 / 死锁熔断(见分歧终止报告)",
|
|
167
|
+
"resource_feasibility": "高/中/低",
|
|
168
|
+
"implementation_risks": [
|
|
169
|
+
{"risk": "风险描述", "probability": "高/中/低", "impact": "高/中/低", "mitigation": "缓解措施"}
|
|
170
|
+
]
|
|
171
|
+
},
|
|
172
|
+
"alternative_options": [
|
|
173
|
+
{"rank": 2, "description": "备选方案", "confidence_score": 11.8, "reason_for_lower_rank": "原因"}
|
|
174
|
+
],
|
|
175
|
+
"decision_chain": {}
|
|
176
|
+
}
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
**使用说明**:
|
|
180
|
+
- 当研讨无分叉时,使用此模板替换多分支报告
|
|
181
|
+
- `session_type` 字段标记为 "single_branch",与多分支场景区分
|
|
182
|
+
- 输出目录中的 "多分支决策对比" 替换为 "方案演进过程"
|
|
183
|
+
|
|
141
184
|
## 证据链 JSON 模板
|
|
142
185
|
|
|
143
186
|
```json
|
package/bin.js
CHANGED