jarvis-agent-factory 3.53.0 → 4.0.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 (33) hide show
  1. package/README.md +9 -6
  2. package/dist/package.json +1 -1
  3. package/dist/src/engine/gates.d.ts +253 -25
  4. package/dist/src/engine/gates.js +140 -28
  5. package/dist/src/engine/gates.js.map +1 -1
  6. package/dist/src/engine/server.js +1 -1
  7. package/dist/src/engine/server.js.map +1 -1
  8. package/dist/src/templates/platforms/claude/commands/algorithm-expert.md +8 -0
  9. package/dist/src/templates/platforms/claude/commands/android.md +8 -0
  10. package/dist/src/templates/platforms/claude/commands/ask.md +335 -0
  11. package/dist/src/templates/platforms/claude/commands/backend-architect.md +8 -0
  12. package/dist/src/templates/platforms/claude/commands/backend.md +8 -0
  13. package/dist/src/templates/platforms/claude/commands/expo.md +8 -0
  14. package/dist/src/templates/platforms/claude/commands/flutter.md +8 -0
  15. package/dist/src/templates/platforms/claude/commands/frontend-architect.md +8 -0
  16. package/dist/src/templates/platforms/claude/commands/frontend.md +8 -0
  17. package/dist/src/templates/platforms/claude/commands/improve.md +208 -0
  18. package/dist/src/templates/platforms/claude/commands/ios.md +8 -0
  19. package/dist/src/templates/platforms/claude/commands/jarvis-lite.md +383 -82
  20. package/dist/src/templates/platforms/claude/commands/jarvis.md +9 -0
  21. package/dist/src/templates/platforms/claude/commands/react-native.md +8 -0
  22. package/dist/src/templates/platforms/claude/commands/review.md +8 -0
  23. package/dist/src/templates/platforms/claude/commands/simplify.md +167 -0
  24. package/dist/src/templates/platforms/claude/commands/sync.md +2 -2
  25. package/dist/src/templates/platforms/claude/commands/taro.md +8 -0
  26. package/dist/src/templates/platforms/claude/commands/trace.md +179 -0
  27. package/dist/src/web/routes.js +20 -2
  28. package/dist/src/web/routes.js.map +1 -1
  29. package/dist/tests/commands-api.test.js +1 -1
  30. package/dist/tests/gates.test.js +4 -4
  31. package/dist/tests/gates.test.js.map +1 -1
  32. package/package.json +1 -1
  33. package/dist/src/templates/platforms/claude/commands/explore.md +0 -220
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Jarvis Agent Factory · 贾维斯智能体工厂
2
2
 
3
3
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue)](./LICENSE)
4
- [![Version](https://img.shields.io/badge/version-v3.53.0-green)](https://github.com/Wjl1224734792/Jarvis-Agent-Factory/releases)
4
+ [![Version](https://img.shields.io/badge/version-v4.0.0-green)](https://github.com/Wjl1224734792/Jarvis-Agent-Factory/releases)
5
5
  [![npm](https://img.shields.io/npm/v/jarvis-agent-factory)](https://www.npmjs.com/package/jarvis-agent-factory)
6
6
  [![Visual Primitives MCP](https://img.shields.io/badge/DeepSeek-Visual%20Primitives%20MCP-purple)](https://github.com/Wjl1224734792/visual-primitives-mcp)
7
7
  <br>💡 **纯文本模型(如 DeepSeek)主力用户** → 搭配 [Visual Primitives MCP](https://github.com/Wjl1224734792/visual-primitives-mcp) 获得视觉理解能力
@@ -9,7 +9,7 @@
9
9
 
10
10
  AI 编程助手配置集 + MCP 编排引擎。从想法到交付的完整软件开发流水线,<br>**仅支持 Claude Code**。
11
11
 
12
- > **v3.53.0** — 深度研究 · 发布 · 需求探索指令 · 文档全面更新
12
+ > **v4.0.0** — /explore→/ask 4模式重做 + 3条新指令(/simplify /trace /improve),指令总数39条
13
13
 
14
14
  ## 快速开始
15
15
 
@@ -291,7 +291,7 @@ test-doc-writer → test-executor → fix-retest
291
291
  | 行为驱动场景 | `/task-bdd` |
292
292
  | 测试驱动任务 | `/task-tdd` |
293
293
  | **探索与研究** | |
294
- | 需求探索 | `/explore` |
294
+ | 需求探询 | `/ask` |
295
295
  | 深度研究 | `/research` |
296
296
  | 浏览器探索 | `/browser-explore` |
297
297
  | **测试** | |
@@ -316,9 +316,9 @@ test-doc-writer → test-executor → fix-retest
316
316
  | | Claude Code |
317
317
  |---|:--:|
318
318
  | Agents | 69 |
319
- | Commands | 36 |
319
+ | Commands | 39 |
320
320
  | Skills | 34 |
321
- | Pipeline | 12 条流水线(full/lite/frontend/backend/refactor/hotfix/migrate/evaluate/debug/research/release/explore) |
321
+ | Pipeline | 15 条流水线(full/lite/frontend/backend/refactor/hotfix/migrate/evaluate/debug/research/release/ask/simplify/trace/improve) |
322
322
  | 钩子 | settings.json |
323
323
  | MCP | `.mcp.json` |
324
324
 
@@ -393,7 +393,10 @@ test-doc-writer → test-executor → fix-retest
393
393
 
394
394
  | **研究** | `/research` | [research.md](docs/flows/research.md) | RS0课题→RS1收集→RS2分析→RS3验证→RS4报告 (5门) |
395
395
  | **发布** | `/release` | [release.md](docs/flows/release.md) | RL0检测→RL1质量→RL2版本→RL3发布→RL4验证 (5门) |
396
- | **探索** | `/explore` | [explore.md](docs/flows/explore.md) | X0澄清→X1场景→X2收敛→X3规格 (4) |
396
+ | **探询** | `/ask` | [ask.md](docs/flows/ask.md) | K0摄入→K1收集→K2分析→K3产出 (4门,4模式自适应) |
397
+ | **简化** | `/simplify` | [simplify.md](docs/flows/simplify.md) | S0分析→S1简化→S2验证→S3报告 (4门) |
398
+ | **追踪** | `/trace` | [trace.md](docs/flows/trace.md) | T0框架→T1假设→T2证据→T3分析→T4方案 (5门) |
399
+ | **改进** | `/improve` | [improve.md](docs/flows/improve.md) | IM0目标→IM1研究→IM2计划→IM3执行→IM4评估 (5门,迭代循环) |
397
400
  | **核心编排** | `/publish` | [publish.md](docs/flows/publish.md) | 环境检测→质量门→测试→版本→commit→push→PR→合并→tag→发布 |
398
401
  | | `/sync` | [sync.md](docs/flows/sync.md) | 检查并同步核心文档与代码一致性 |
399
402
  | | `/browser-explore` | [browser-explore.md](docs/flows/browser-explore.md) | browser-use自主探索+UI bug发现+结构化报告 |
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jarvis-agent-factory",
3
- "version": "3.53.0",
3
+ "version": "4.0.0",
4
4
  "description": "Jarvis Agent Factory CLI — Claude Code 多智能体 AI 编程助手配置安装器 | Multi-agent AI coding assistant config installer for Claude Code",
5
5
  "keywords": [
6
6
  "jarvis",
@@ -65,10 +65,32 @@ export declare const PIPELINE_DEFS: {
65
65
  name: string;
66
66
  gates: string[];
67
67
  };
68
- /** 需求探索:问题澄清→场景挖掘→需求收敛→规格产出 */
69
- explore: {
68
+ /** 需求探询:4模式(K0需求摄入→K1信息收集→K2分析综合→K3交付产出)
69
+ * Interview: 一次一问→代码探索→分析综合→计划产出
70
+ * Direct: 解析需求→快速上下文→快速分析→直接计划
71
+ * Consensus: 加载计划→计划分析→Architect+Critic审查→共识裁决(≤5轮)
72
+ * Review: 加载计划→流程评估→Critic评估→优化建议
73
+ */
74
+ ask: {
70
75
  name: string;
71
76
  gates: string[];
77
+ allow_jump: boolean;
78
+ };
79
+ /** 代码简化:S0代码分析→S1简化执行→S2回归验证→S3报告产出 */
80
+ simplify: {
81
+ name: string;
82
+ gates: string[];
83
+ };
84
+ /** 因果追踪:T0问题框架→T1假设生成→T2证据收集→T3因果分析→T4解决方案 */
85
+ trace: {
86
+ name: string;
87
+ gates: string[];
88
+ };
89
+ /** 自主迭代改进:IM0目标定义→IM1研究分析→IM2计划制定→IM3执行验证→IM4评估迭代 */
90
+ improve: {
91
+ name: string;
92
+ gates: string[];
93
+ allow_jump: boolean;
72
94
  };
73
95
  };
74
96
  export declare const DEFAULT_PIPELINE = "full";
@@ -123,10 +145,24 @@ export declare const GATE_DIRS: {
123
145
  RL2: string;
124
146
  RL3: string;
125
147
  RL4: string;
126
- X0: string;
127
- X1: string;
128
- X2: string;
129
- X3: string;
148
+ K0: string;
149
+ K1: string;
150
+ K2: string;
151
+ K3: string;
152
+ S0: string;
153
+ S1: string;
154
+ S2: string;
155
+ S3: string;
156
+ T0: string;
157
+ T1: string;
158
+ T2: string;
159
+ T3: string;
160
+ T4: string;
161
+ IM0: string;
162
+ IM1: string;
163
+ IM2: string;
164
+ IM3: string;
165
+ IM4: string;
130
166
  };
131
167
  export declare const GATE_CHECKS: {
132
168
  'Gate A': {
@@ -261,16 +297,58 @@ export declare const GATE_CHECKS: {
261
297
  RL4: {
262
298
  check: string;
263
299
  };
264
- X0: {
300
+ K0: {
301
+ check: string;
302
+ };
303
+ K1: {
304
+ check: string;
305
+ };
306
+ K2: {
307
+ check: string;
308
+ };
309
+ K3: {
310
+ check: string;
311
+ };
312
+ S0: {
313
+ check: string;
314
+ };
315
+ S1: {
316
+ check: string;
317
+ };
318
+ S2: {
319
+ check: string;
320
+ };
321
+ S3: {
322
+ check: string;
323
+ };
324
+ T0: {
325
+ check: string;
326
+ };
327
+ T1: {
328
+ check: string;
329
+ };
330
+ T2: {
331
+ check: string;
332
+ };
333
+ T3: {
334
+ check: string;
335
+ };
336
+ T4: {
337
+ check: string;
338
+ };
339
+ IM0: {
340
+ check: string;
341
+ };
342
+ IM1: {
265
343
  check: string;
266
344
  };
267
- X1: {
345
+ IM2: {
268
346
  check: string;
269
347
  };
270
- X2: {
348
+ IM3: {
271
349
  check: string;
272
350
  };
273
- X3: {
351
+ IM4: {
274
352
  check: string;
275
353
  };
276
354
  };
@@ -470,19 +548,75 @@ export declare const GATE_OPERATIONS: {
470
548
  allow: string[];
471
549
  deny: string[];
472
550
  };
473
- X0: {
551
+ K0: {
552
+ allow: string[];
553
+ deny: string[];
554
+ };
555
+ K1: {
556
+ allow: string[];
557
+ deny: string[];
558
+ };
559
+ K2: {
560
+ allow: string[];
561
+ deny: string[];
562
+ };
563
+ K3: {
564
+ allow: string[];
565
+ deny: string[];
566
+ };
567
+ S0: {
568
+ allow: string[];
569
+ deny: string[];
570
+ };
571
+ S1: {
572
+ allow: string[];
573
+ deny: string[];
574
+ };
575
+ S2: {
576
+ allow: string[];
577
+ deny: string[];
578
+ };
579
+ S3: {
580
+ allow: string[];
581
+ deny: string[];
582
+ };
583
+ T0: {
584
+ allow: string[];
585
+ deny: string[];
586
+ };
587
+ T1: {
588
+ allow: string[];
589
+ deny: string[];
590
+ };
591
+ T2: {
474
592
  allow: string[];
475
593
  deny: string[];
476
594
  };
477
- X1: {
595
+ T3: {
478
596
  allow: string[];
479
597
  deny: string[];
480
598
  };
481
- X2: {
599
+ T4: {
482
600
  allow: string[];
483
601
  deny: string[];
484
602
  };
485
- X3: {
603
+ IM0: {
604
+ allow: string[];
605
+ deny: string[];
606
+ };
607
+ IM1: {
608
+ allow: string[];
609
+ deny: string[];
610
+ };
611
+ IM2: {
612
+ allow: string[];
613
+ deny: string[];
614
+ };
615
+ IM3: {
616
+ allow: string[];
617
+ deny: string[];
618
+ };
619
+ IM4: {
486
620
  allow: string[];
487
621
  deny: string[];
488
622
  };
@@ -693,20 +827,89 @@ export declare const GATE_AGENT_GUIDE: {
693
827
  can_spawn: never[];
694
828
  note: string;
695
829
  };
696
- X0: {
830
+ K0: {
831
+ can_spawn: never[];
832
+ note: string;
833
+ team_strategy: string;
834
+ };
835
+ K1: {
836
+ can_spawn: string[];
837
+ note: string;
838
+ team_strategy: string;
839
+ };
840
+ K2: {
841
+ can_spawn: string[];
842
+ note: string;
843
+ team_strategy: string;
844
+ team_rules: string;
845
+ };
846
+ K3: {
847
+ can_spawn: never[];
848
+ note: string;
849
+ };
850
+ S0: {
851
+ can_spawn: string[];
852
+ note: string;
853
+ team_strategy: string;
854
+ };
855
+ S1: {
856
+ can_spawn: string[];
857
+ note: string;
858
+ team_strategy: string;
859
+ team_rules: string;
860
+ };
861
+ S2: {
862
+ can_spawn: string[];
863
+ note: string;
864
+ team_strategy: string;
865
+ };
866
+ S3: {
867
+ can_spawn: never[];
868
+ note: string;
869
+ };
870
+ T0: {
871
+ can_spawn: never[];
872
+ note: string;
873
+ };
874
+ T1: {
697
875
  can_spawn: string[];
698
876
  note: string;
699
877
  team_strategy: string;
700
878
  };
701
- X1: {
879
+ T2: {
702
880
  can_spawn: string[];
703
881
  note: string;
882
+ team_strategy: string;
883
+ };
884
+ T3: {
885
+ can_spawn: never[];
886
+ note: string;
704
887
  };
705
- X2: {
888
+ T4: {
706
889
  can_spawn: never[];
707
890
  note: string;
708
891
  };
709
- X3: {
892
+ IM0: {
893
+ can_spawn: never[];
894
+ note: string;
895
+ };
896
+ IM1: {
897
+ can_spawn: string[];
898
+ note: string;
899
+ team_strategy: string;
900
+ };
901
+ IM2: {
902
+ can_spawn: string[];
903
+ note: string;
904
+ team_strategy: string;
905
+ };
906
+ IM3: {
907
+ can_spawn: string[];
908
+ note: string;
909
+ team_strategy: string;
910
+ team_rules: string;
911
+ };
912
+ IM4: {
710
913
  can_spawn: never[];
711
914
  note: string;
712
915
  };
@@ -761,10 +964,24 @@ export declare const MAX_RETRY: {
761
964
  RL2: number;
762
965
  RL3: number;
763
966
  RL4: number;
764
- X0: number;
765
- X1: number;
766
- X2: number;
767
- X3: number;
967
+ K0: number;
968
+ K1: number;
969
+ K2: number;
970
+ K3: number;
971
+ S0: number;
972
+ S1: number;
973
+ S2: number;
974
+ S3: number;
975
+ T0: number;
976
+ T1: number;
977
+ T2: number;
978
+ T3: number;
979
+ T4: number;
980
+ IM0: number;
981
+ IM1: number;
982
+ IM2: number;
983
+ IM3: number;
984
+ IM4: number;
768
985
  };
769
986
  /** 各个 Gate 的入口条件检查 */
770
987
  export declare const GATE_ENTRY_CONDITIONS: {
@@ -804,9 +1021,20 @@ export declare const GATE_ENTRY_CONDITIONS: {
804
1021
  RL2: string;
805
1022
  RL3: string;
806
1023
  RL4: string;
807
- X1: string;
808
- X2: string;
809
- X3: string;
1024
+ K1: string;
1025
+ K2: string;
1026
+ K3: string;
1027
+ S1: string;
1028
+ S2: string;
1029
+ S3: string;
1030
+ T1: string;
1031
+ T2: string;
1032
+ T3: string;
1033
+ T4: string;
1034
+ IM1: string;
1035
+ IM2: string;
1036
+ IM3: string;
1037
+ IM4: string;
810
1038
  };
811
1039
  /** 动态扫描模板目录生成的完整 Agent 列表(替代硬编码) */
812
1040
  export declare const AGENT_LIST: {
@@ -69,10 +69,32 @@ export const PIPELINE_DEFS = {
69
69
  name: '发布',
70
70
  gates: ['RL0', 'RL1', 'RL2', 'RL3', 'RL4'],
71
71
  },
72
- /** 需求探索:问题澄清→场景挖掘→需求收敛→规格产出 */
73
- explore: {
74
- name: '需求探索',
75
- gates: ['X0', 'X1', 'X2', 'X3'],
72
+ /** 需求探询:4模式(K0需求摄入→K1信息收集→K2分析综合→K3交付产出)
73
+ * Interview: 一次一问→代码探索→分析综合→计划产出
74
+ * Direct: 解析需求→快速上下文→快速分析→直接计划
75
+ * Consensus: 加载计划→计划分析→Architect+Critic审查→共识裁决(≤5轮)
76
+ * Review: 加载计划→流程评估→Critic评估→优化建议
77
+ */
78
+ ask: {
79
+ name: '需求探询',
80
+ gates: ['K0', 'K1', 'K2', 'K3'],
81
+ allow_jump: true,
82
+ },
83
+ /** 代码简化:S0代码分析→S1简化执行→S2回归验证→S3报告产出 */
84
+ simplify: {
85
+ name: '代码简化',
86
+ gates: ['S0', 'S1', 'S2', 'S3'],
87
+ },
88
+ /** 因果追踪:T0问题框架→T1假设生成→T2证据收集→T3因果分析→T4解决方案 */
89
+ trace: {
90
+ name: '因果追踪',
91
+ gates: ['T0', 'T1', 'T2', 'T3', 'T4'],
92
+ },
93
+ /** 自主迭代改进:IM0目标定义→IM1研究分析→IM2计划制定→IM3执行验证→IM4评估迭代 */
94
+ improve: {
95
+ name: '自主迭代改进',
96
+ gates: ['IM0', 'IM1', 'IM2', 'IM3', 'IM4'],
97
+ allow_jump: true,
76
98
  },
77
99
  };
78
100
  export const DEFAULT_PIPELINE = 'full';
@@ -108,8 +130,14 @@ export const GATE_DIRS = {
108
130
  'RS0': 'research', 'RS1': 'research', 'RS2': 'research', 'RS3': 'research', 'RS4': 'research',
109
131
  // /release → docs/shipping/
110
132
  'RL0': 'shipping', 'RL1': 'shipping', 'RL2': 'shipping', 'RL3': 'shipping', 'RL4': 'shipping',
111
- // /explore → docs/requirements/
112
- 'X0': 'requirements', 'X1': 'requirements', 'X2': 'requirements', 'X3': 'requirements',
133
+ // /ask → docs/requirements/
134
+ 'K0': 'requirements', 'K1': 'requirements', 'K2': 'requirements', 'K3': 'requirements',
135
+ // /simplify → docs/simplification/
136
+ 'S0': 'simplification', 'S1': 'simplification', 'S2': 'simplification', 'S3': 'simplification',
137
+ // /trace → docs/trace/
138
+ 'T0': 'trace', 'T1': 'trace', 'T2': 'trace', 'T3': 'trace', 'T4': 'trace',
139
+ // /improve → docs/improvement/
140
+ 'IM0': 'improvement', 'IM1': 'improvement', 'IM2': 'improvement', 'IM3': 'improvement', 'IM4': 'improvement',
113
141
  };
114
142
  export const GATE_CHECKS = {
115
143
  'Gate A': { check: '至少1个需求文档,含REQ-XXX编号' },
@@ -161,11 +189,28 @@ export const GATE_CHECKS = {
161
189
  'RL2': { check: '版本号已递增,CHANGELOG已更新' },
162
190
  'RL3': { check: 'Commit+Tag+Push+npm publish已完成' },
163
191
  'RL4': { check: 'Tag存在+CI已触发+Registry版本已更新' },
164
- // /explore 流水线检查条件
165
- 'X0': { check: '问题空间已澄清,含核心痛点+上下文约束' },
166
- 'X1': { check: '使用场景清单已产出,含主流程+边缘场景' },
167
- 'X2': { check: '需求优先级矩阵已产出,含MVP范围定义' },
168
- 'X3': { check: '结构化需求规格已产出,含功能需求+非功能需求+验收标准' },
192
+ // /ask 流水线检查条件
193
+ 'K0': { check: '需求摄入完成,模式已选择(Interview/Direct/Consensus/Review),核心问题或需求已明确' },
194
+ 'K1': { check: '信息收集完成:代码上下文已探索(Interview)/需求已解析(Direct)/计划已加载(Consensus/Review)' },
195
+ 'K2': { check: '分析综合完成:需求分析+计划草案已产出(Interview/Direct)/架构审查+批评评估已执行(Consensus/Review)' },
196
+ 'K3': { check: '最终交付物已产出:结构化需求计划(Interview/Direct)/共识裁决结果(Consensus)/优化建议+修订方案(Review)' },
197
+ // /simplify 流水线检查条件
198
+ 'S0': { check: '代码分析报告已产出,含复杂度/冗余/AI痕迹/改进机会清单' },
199
+ 'S1': { check: '简化执行完成,代码已按分析报告优化,所有功能保持不变' },
200
+ 'S2': { check: '回归验证通过:Lint+Type-check+Build+Test全部通过,无回归' },
201
+ 'S3': { check: '简化报告已产出,含before/after对比+简化统计+变更清单' },
202
+ // /trace 流水线检查条件
203
+ 'T0': { check: '问题框架已明确,含症状描述+上下文+已知信息+时间线' },
204
+ 'T1': { check: '2-5个竞态假设已生成,每个假设含先验概率+支持条件+证伪条件' },
205
+ 'T2': { check: '每个假设的证据已收集,含支持证据+反对证据+不确定性评估' },
206
+ 'T3': { check: '因果分析完成:贝叶斯更新已执行+假设排序+根因概率+置信度' },
207
+ 'T4': { check: '解决方案已产出,含推荐修复+验证步骤+预防建议' },
208
+ // /improve 流水线检查条件
209
+ 'IM0': { check: '改进目标已定义,含量化指标+基准值+目标值+停止条件' },
210
+ 'IM1': { check: '研究分析完成,代码库改进机会已识别,含优先级排序+预期收益' },
211
+ 'IM2': { check: '改进计划已制定,含可测试假设+实现方案+验证方法' },
212
+ 'IM3': { check: '改进已执行,基准测试已运行,结果已记录' },
213
+ 'IM4': { check: '评估完成:指标对比+迭代决策(继续/停止)+总结报告' },
169
214
  };
170
215
  /**
171
216
  * 每个 Gate 允许的操作类型(硬约束)。
@@ -238,11 +283,28 @@ export const GATE_OPERATIONS = {
238
283
  'RL2': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
239
284
  'RL3': { allow: ['read', 'deploy', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'lint', 'build'] },
240
285
  'RL4': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
241
- // /explore 流水线 Gate 操作矩阵
242
- 'X0': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
243
- 'X1': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
244
- 'X2': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
245
- 'X3': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
286
+ // /ask 流水线 Gate 操作矩阵
287
+ 'K0': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
288
+ 'K1': { allow: ['read', 'write_doc', 'spawn_impl'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
289
+ 'K2': { allow: ['read', 'write_doc', 'spawn_impl', 'sweep_arch'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
290
+ 'K3': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
291
+ // /simplify 流水线 Gate 操作矩阵
292
+ 'S0': { allow: ['read', 'write_doc', 'spawn_impl'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
293
+ 'S1': { allow: ['read', 'write_code', 'spawn_impl'], deny: ['spawn_test', 'build', 'deploy'] },
294
+ 'S2': { allow: ['read', 'lint', 'build', 'spawn_test', 'fix'], deny: ['write_code', 'spawn_impl', 'deploy'] },
295
+ 'S3': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
296
+ // /trace 流水线 Gate 操作矩阵
297
+ 'T0': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
298
+ 'T1': { allow: ['read', 'write_doc', 'spawn_impl'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
299
+ 'T2': { allow: ['read', 'write_doc', 'spawn_impl'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
300
+ 'T3': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
301
+ 'T4': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
302
+ // /improve 流水线 Gate 操作矩阵
303
+ 'IM0': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
304
+ 'IM1': { allow: ['read', 'write_doc', 'spawn_impl'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
305
+ 'IM2': { allow: ['read', 'write_doc', 'spawn_impl'], deny: ['write_code', 'spawn_test', 'build', 'deploy'] },
306
+ 'IM3': { allow: ['read', 'write_code', 'spawn_impl', 'lint', 'build', 'spawn_test', 'fix'], deny: ['deploy'] },
307
+ 'IM4': { allow: ['read', 'write_doc'], deny: ['write_code', 'spawn_impl', 'spawn_test', 'build', 'deploy'] },
246
308
  };
247
309
  /** 获取当前 Gate 允许的操作列表 */
248
310
  export function getGateOperations(gate) {
@@ -306,11 +368,28 @@ export const GATE_AGENT_GUIDE = {
306
368
  'RL2': { can_spawn: [], note: '版本递增——编排者执行版本号bump+CHANGELOG更新' },
307
369
  'RL3': { can_spawn: ['infra-deploy-expert', 'security-review-expert'], note: '发布执行——commit+tag+push+npm publish;安全审计并行' },
308
370
  'RL4': { can_spawn: [], note: '发布验证——确认tag存在、CI触发、Registry更新' },
309
- // /explore 流水线 Agent 生成指引
310
- 'X0': { can_spawn: ['code-explore-expert', 'external-resource-expert'], note: '问题澄清——苏格拉底式Q&A,探索现有代码库+领域知识', team_strategy: 'subagent_only' },
311
- 'X1': { can_spawn: ['code-explore-expert'], note: '场景挖掘——发现使用场景和边缘情况' },
312
- 'X2': { can_spawn: [], note: '需求收敛——编排者综合分析,产出优先级矩阵+MVP范围' },
313
- 'X3': { can_spawn: [], note: '规格产出——编排者产出结构化需求规格文档' },
371
+ // /ask 流水线 Agent 生成指引
372
+ 'K0': { can_spawn: [], note: '需求摄入——编排者判断输入清晰度,自动选择Interview/Direct/Consensus/Review模式;苏格拉底式追问(Interview)或直接解析(Direct)', team_strategy: 'subagent_only' },
373
+ 'K1': { can_spawn: ['code-explore-expert', 'external-resource-expert'], note: '信息收集——Interview:深度代码探索+外部资源; Direct:快速上下文确认; Consensus:分析现有计划覆盖范围; Review:评估现有流程编排', team_strategy: 'subagent_only' },
374
+ 'K2': { can_spawn: ['code-explore-expert', 'frontend-architect', 'backend-architect', 'algorithm-expert'], note: '分析综合——Interview:编排者主导分析+code-explore-expert辅助; Direct:快速分析+code-explore-expert确认; Consensus:编排者(Critic角色)评估+Architect并行审查(≤5轮); Review:编排者(Critic角色)评估+优化建议', team_strategy: 'prefer_team', team_rules: 'Consensus模式: Architect子Agent并行审查(spawn Agent),编排者同时担任Critic独立评估,两者只读不修改文件,编排者汇总后修订计划。Interview/Direct: 编排者主导,code-explore-expert作为subagent辅助(只读)。Review: 编排者独占到K2完成' },
375
+ 'K3': { can_spawn: [], note: '交付产出——编排者产出最终交付物:结构化需求计划(Interview/Direct)/共识裁决结果(Consensus)/优化建议+修订方案(Review)' },
376
+ // /simplify 流水线 Agent 生成指引
377
+ 'S0': { can_spawn: ['code-explore-expert'], note: '代码分析——spawn code-explore-expert扫描目标代码,识别复杂度/冗余/重复/AI痕迹模式', team_strategy: 'subagent_only' },
378
+ 'S1': { can_spawn: ['frontend-dev-expert', 'backend-dev-expert', 'backend-logic-expert', 'remediation-expert'], note: '简化执行——推荐 Agent Team 按模块并行简化,各成员独占文件区域,确保功能不变', team_strategy: 'prefer_team', team_rules: '每个Team成员独占模块/文件区域,禁止多成员共享同一文件。前端按组件拆分,后端按服务模块拆分。只做删除冗余+提取复用+简化逻辑,不改变功能行为' },
379
+ 'S2': { can_spawn: ['frontend-test-expert', 'backend-test-expert'], note: '回归验证——Lint+Type-check+Build+Test全跑,确保简化无回归', team_strategy: 'subagent_only' },
380
+ 'S3': { can_spawn: [], note: '报告产出——编排者汇总before/after对比+简化统计+变更清单' },
381
+ // /trace 流水线 Agent 生成指引
382
+ 'T0': { can_spawn: [], note: '问题框架——编排者定义症状、上下文、已知信息、时间线' },
383
+ 'T1': { can_spawn: ['algorithm-expert', 'code-explore-expert'], note: '假设生成——spawn algorithm-expert+code-explore-expert生成2-5个竞态假设,每个含先验概率+证伪条件', team_strategy: 'subagent_only' },
384
+ 'T2': { can_spawn: ['code-explore-expert', 'external-resource-expert'], note: '证据收集——spawn code-explore-expert+external-resource-expert并行收集每个假设的支持/反对证据', team_strategy: 'subagent_only' },
385
+ 'T3': { can_spawn: [], note: '因果分析——编排者执行贝叶斯更新,按证据权重排序假设,定位根因' },
386
+ 'T4': { can_spawn: [], note: '解决方案——编排者基于确认的根因推荐修复方案+验证步骤+预防建议' },
387
+ // /improve 流水线 Agent 生成指引
388
+ 'IM0': { can_spawn: [], note: '目标定义——编排者与用户确认改进目标+可量化指标+基准值+目标值+停止条件' },
389
+ 'IM1': { can_spawn: ['code-explore-expert', 'external-resource-expert'], note: '研究分析——spawn code-explore-expert分析代码库改进机会,external-resource-expert补充外部最佳实践', team_strategy: 'subagent_only' },
390
+ 'IM2': { can_spawn: ['planner'], note: '计划制定——spawn planner制定改进计划,含可测试假设+实现方案+验证方法+预期收益', team_strategy: 'subagent_only' },
391
+ 'IM3': { can_spawn: ['frontend-dev-expert', 'backend-dev-expert', 'backend-logic-expert', 'remediation-expert', 'frontend-test-expert', 'backend-test-expert'], note: '执行验证——推荐 Agent Team 并行实现改进+运行基准测试,各成员独占模块', team_strategy: 'prefer_team', team_rules: '每个Team成员独占模块/文件区域,禁止多成员共享同一文件。实现和测试Agent各自独立,测试确认改进效果' },
392
+ 'IM4': { can_spawn: [], note: '评估迭代——编排者对比指标+决策继续/停止,若继续则跳回IM1研究新一轮改进' },
314
393
  };
315
394
  /** 获取当前 Gate 可生成的 Agent 指引 */
316
395
  export function getGateAgentGuide(gate) {
@@ -357,9 +436,28 @@ export const MAX_RETRY = {
357
436
  'RL0': 2, 'RL1': 3,
358
437
  'RL2': 2, 'RL3': 2,
359
438
  'RL4': 2,
360
- // /explore 流水线重试次数
361
- 'X0': Infinity, // 需求澄清可无限迭代
362
- 'X1': 2, 'X2': 2, 'X3': 2,
439
+ // /ask 流水线重试次数
440
+ 'K0': Infinity, // 需求摄入可无限迭代(Socratic追问)
441
+ 'K1': 2,
442
+ 'K2': 5, // Consensus模式最多5轮Architect+Critic审查
443
+ 'K3': 2,
444
+ // /simplify 流水线重试次数
445
+ 'S0': 2,
446
+ 'S1': 2,
447
+ 'S2': 3, // 回归验证失败可修复后重试
448
+ 'S3': 2,
449
+ // /trace 流水线重试次数
450
+ 'T0': 2,
451
+ 'T1': 2,
452
+ 'T2': 2,
453
+ 'T3': 3, // 因果分析证据不充分时可补充收集
454
+ 'T4': 2,
455
+ // /improve 流水线重试次数
456
+ 'IM0': 2,
457
+ 'IM1': 2,
458
+ 'IM2': 2,
459
+ 'IM3': 3, // 执行失败可修复后重试
460
+ 'IM4': Infinity, // 迭代直到停止条件满足
363
461
  };
364
462
  /** 各个 Gate 的入口条件检查 */
365
463
  export const GATE_ENTRY_CONDITIONS = {
@@ -406,10 +504,24 @@ export const GATE_ENTRY_CONDITIONS = {
406
504
  'RL2': 'Gate RL1 质量门全部通过',
407
505
  'RL3': 'Gate RL2 版本已递增',
408
506
  'RL4': 'Gate RL3 发布已执行',
409
- // /explore 流水线入口条件
410
- 'X1': 'Gate X0 问题空间已澄清',
411
- 'X2': 'Gate X1 场景已挖掘',
412
- 'X3': 'Gate X2 需求已收敛',
507
+ // /ask 流水线入口条件
508
+ 'K1': 'Gate K0 需求已摄入,模式已选择',
509
+ 'K2': 'Gate K1 信息已收集',
510
+ 'K3': 'Gate K2 分析已完成',
511
+ // /simplify 流水线入口条件
512
+ 'S1': 'Gate S0 代码分析报告已产出',
513
+ 'S2': 'Gate S1 简化执行已完成',
514
+ 'S3': 'Gate S2 回归验证已通过',
515
+ // /trace 流水线入口条件
516
+ 'T1': 'Gate T0 问题框架已明确',
517
+ 'T2': 'Gate T1 假设已生成',
518
+ 'T3': 'Gate T2 证据已收集',
519
+ 'T4': 'Gate T3 因果分析已完成',
520
+ // /improve 流水线入口条件
521
+ 'IM1': 'Gate IM0 改进目标已定义',
522
+ 'IM2': 'Gate IM1 研究分析已完成',
523
+ 'IM3': 'Gate IM2 改进计划已制定',
524
+ 'IM4': 'Gate IM3 改进已执行',
413
525
  };
414
526
  /** 动态扫描模板目录生成的完整 Agent 列表(替代硬编码) */
415
527
  export const AGENT_LIST = getAgentList();