maestro-flow 0.4.20 → 0.4.21

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 (136) hide show
  1. package/.agents/skills/maestro-ralph-execute/SKILL.md +2 -1
  2. package/.agents/skills/maestro-swarm-workflow/SKILL.md +27 -19
  3. package/.agents/skills/maestro-universal-workflow/SKILL.md +563 -0
  4. package/.agents/skills/team-adversarial-swarm/SKILL.md +235 -0
  5. package/.agents/skills/team-adversarial-swarm/scripts/aco.py +473 -0
  6. package/.agents/skills/team-adversarial-swarm/scripts/pheromone.py +144 -0
  7. package/.agents/skills/team-adversarial-swarm/scripts/scoring.py +92 -0
  8. package/.agents/skills/team-adversarial-swarm/scripts/test_aco.py +475 -0
  9. package/.agents/skills/team-adversarial-swarm/specs/ant-output-schema.md +115 -0
  10. package/.agents/skills/team-adversarial-swarm/specs/convergence-criteria.md +75 -0
  11. package/.agents/skills/team-adversarial-swarm/specs/pheromone-schema.md +90 -0
  12. package/.agents/skills/team-adversarial-swarm/specs/swarm-config-template.json +66 -0
  13. package/.agents/skills/team-adversarial-swarm/specs/swarm-protocol.md +105 -0
  14. package/.agents/skills/team-adversarial-swarm/workflows/wf-swarm-converge.js +197 -0
  15. package/.agents/skills/team-adversarial-swarm/workflows/wf-swarm-explore.js +194 -0
  16. package/.agents/skills/team-adversarial-swarm/workflows/wf-swarm-score.js +188 -0
  17. package/.agents/skills/team-adversarial-swarm/workflows/wf-swarm-synthesize.js +248 -0
  18. package/.agy/skills/maestro-ralph-execute/SKILL.md +2 -1
  19. package/.agy/skills/maestro-swarm-workflow/SKILL.md +27 -19
  20. package/.agy/skills/maestro-universal-workflow/SKILL.md +560 -0
  21. package/.agy/skills/team-adversarial-swarm/SKILL.md +244 -0
  22. package/.agy/skills/team-adversarial-swarm/scripts/aco.py +473 -0
  23. package/.agy/skills/team-adversarial-swarm/scripts/pheromone.py +144 -0
  24. package/.agy/skills/team-adversarial-swarm/scripts/scoring.py +92 -0
  25. package/.agy/skills/team-adversarial-swarm/scripts/test_aco.py +475 -0
  26. package/.agy/skills/team-adversarial-swarm/specs/ant-output-schema.md +115 -0
  27. package/.agy/skills/team-adversarial-swarm/specs/convergence-criteria.md +75 -0
  28. package/.agy/skills/team-adversarial-swarm/specs/pheromone-schema.md +90 -0
  29. package/.agy/skills/team-adversarial-swarm/specs/swarm-config-template.json +66 -0
  30. package/.agy/skills/team-adversarial-swarm/specs/swarm-protocol.md +105 -0
  31. package/.agy/skills/team-adversarial-swarm/workflows/wf-swarm-converge.js +197 -0
  32. package/.agy/skills/team-adversarial-swarm/workflows/wf-swarm-explore.js +194 -0
  33. package/.agy/skills/team-adversarial-swarm/workflows/wf-swarm-score.js +188 -0
  34. package/.agy/skills/team-adversarial-swarm/workflows/wf-swarm-synthesize.js +248 -0
  35. package/.claude/commands/maestro-ralph-execute.md +2 -1
  36. package/.claude/commands/maestro-swarm-workflow.md +27 -19
  37. package/.claude/commands/maestro-universal-workflow.md +561 -0
  38. package/.claude/skills/team-adversarial-swarm/SKILL.md +233 -0
  39. package/.claude/skills/team-adversarial-swarm/scripts/aco.py +473 -0
  40. package/.claude/skills/team-adversarial-swarm/scripts/pheromone.py +144 -0
  41. package/.claude/skills/team-adversarial-swarm/scripts/scoring.py +92 -0
  42. package/.claude/skills/team-adversarial-swarm/scripts/test_aco.py +475 -0
  43. package/.claude/skills/team-adversarial-swarm/specs/ant-output-schema.md +115 -0
  44. package/.claude/skills/team-adversarial-swarm/specs/convergence-criteria.md +75 -0
  45. package/.claude/skills/team-adversarial-swarm/specs/pheromone-schema.md +90 -0
  46. package/.claude/skills/team-adversarial-swarm/specs/swarm-config-template.json +66 -0
  47. package/.claude/skills/team-adversarial-swarm/specs/swarm-protocol.md +105 -0
  48. package/.claude/skills/team-adversarial-swarm/workflows/wf-swarm-converge.js +197 -0
  49. package/.claude/skills/team-adversarial-swarm/workflows/wf-swarm-explore.js +194 -0
  50. package/.claude/skills/team-adversarial-swarm/workflows/wf-swarm-score.js +188 -0
  51. package/.claude/skills/team-adversarial-swarm/workflows/wf-swarm-synthesize.js +248 -0
  52. package/dashboard/dist-server/dashboard/src/server/wiki/graph-analysis.js +1 -1
  53. package/dashboard/dist-server/dashboard/src/server/wiki/graph-analysis.js.map +1 -1
  54. package/dashboard/dist-server/dashboard/src/server/wiki/search.js +1 -1
  55. package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
  56. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.d.ts +1 -1
  57. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +5 -5
  58. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
  59. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +3 -3
  60. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  61. package/dashboard/dist-server/src/graph/types.d.ts +111 -0
  62. package/dashboard/dist-server/src/graph/types.js +2 -0
  63. package/dashboard/dist-server/src/graph/types.js.map +1 -0
  64. package/dist/src/commands/install-backend.d.ts +0 -7
  65. package/dist/src/commands/install-backend.d.ts.map +1 -1
  66. package/dist/src/commands/install-backend.js +0 -14
  67. package/dist/src/commands/install-backend.js.map +1 -1
  68. package/dist/src/commands/install.d.ts.map +1 -1
  69. package/dist/src/commands/install.js +0 -18
  70. package/dist/src/commands/install.js.map +1 -1
  71. package/dist/src/commands/kg.d.ts +2 -2
  72. package/dist/src/commands/kg.d.ts.map +1 -1
  73. package/dist/src/commands/kg.js +150 -179
  74. package/dist/src/commands/kg.js.map +1 -1
  75. package/dist/src/graph/analyzers/fs-analyzer.d.ts +10 -0
  76. package/dist/src/graph/analyzers/fs-analyzer.d.ts.map +1 -0
  77. package/dist/src/graph/analyzers/fs-analyzer.js +959 -0
  78. package/dist/src/graph/analyzers/fs-analyzer.js.map +1 -0
  79. package/dist/src/graph/index.d.ts +6 -0
  80. package/dist/src/graph/index.d.ts.map +1 -0
  81. package/dist/src/graph/index.js +6 -0
  82. package/dist/src/graph/index.js.map +1 -0
  83. package/dist/src/graph/loader.d.ts +3 -0
  84. package/dist/src/graph/loader.d.ts.map +1 -0
  85. package/dist/src/graph/loader.js +12 -0
  86. package/dist/src/graph/loader.js.map +1 -0
  87. package/dist/src/graph/merger.d.ts +56 -0
  88. package/dist/src/graph/merger.d.ts.map +1 -0
  89. package/dist/src/graph/merger.js +896 -0
  90. package/dist/src/graph/merger.js.map +1 -0
  91. package/dist/src/graph/query.d.ts +7 -0
  92. package/dist/src/graph/query.d.ts.map +1 -0
  93. package/dist/src/graph/query.js +126 -0
  94. package/dist/src/graph/query.js.map +1 -0
  95. package/dist/src/graph/types.d.ts +112 -0
  96. package/dist/src/graph/types.d.ts.map +1 -0
  97. package/dist/src/graph/types.js +2 -0
  98. package/dist/src/graph/types.js.map +1 -0
  99. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  100. package/dist/src/i18n/locales/en.js +0 -10
  101. package/dist/src/i18n/locales/en.js.map +1 -1
  102. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  103. package/dist/src/i18n/locales/zh.js +0 -10
  104. package/dist/src/i18n/locales/zh.js.map +1 -1
  105. package/dist/src/i18n/types.d.ts +0 -9
  106. package/dist/src/i18n/types.d.ts.map +1 -1
  107. package/dist/src/tui/install-ui/InstallConfirm.d.ts +0 -1
  108. package/dist/src/tui/install-ui/InstallConfirm.d.ts.map +1 -1
  109. package/dist/src/tui/install-ui/InstallConfirm.js +1 -1
  110. package/dist/src/tui/install-ui/InstallConfirm.js.map +1 -1
  111. package/dist/src/tui/install-ui/InstallExecution.d.ts +0 -1
  112. package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
  113. package/dist/src/tui/install-ui/InstallExecution.js +0 -22
  114. package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
  115. package/dist/src/tui/install-ui/InstallFlow.d.ts +1 -1
  116. package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -1
  117. package/dist/src/tui/install-ui/InstallFlow.js +5 -23
  118. package/dist/src/tui/install-ui/InstallFlow.js.map +1 -1
  119. package/dist/src/tui/install-ui/InstallHub.d.ts +0 -2
  120. package/dist/src/tui/install-ui/InstallHub.d.ts.map +1 -1
  121. package/dist/src/tui/install-ui/InstallHub.js +0 -6
  122. package/dist/src/tui/install-ui/InstallHub.js.map +1 -1
  123. package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -1
  124. package/dist/src/tui/install-ui/InstallResult.js +1 -1
  125. package/dist/src/tui/install-ui/InstallResult.js.map +1 -1
  126. package/dist/src/utils/update-notices.js +12 -0
  127. package/dist/src/utils/update-notices.js.map +1 -1
  128. package/package.json +1 -1
  129. package/workflows/swarm/wf-analyze.js +195 -34
  130. package/workflows/swarm/wf-brainstorm.js +225 -53
  131. package/workflows/swarm/wf-execute.js +199 -23
  132. package/workflows/swarm/wf-grill.js +181 -20
  133. package/workflows/swarm/wf-milestone-audit.js +178 -29
  134. package/workflows/swarm/wf-plan.js +288 -53
  135. package/workflows/swarm/wf-review.js +195 -80
  136. package/workflows/swarm/wf-verify.js +125 -28
@@ -0,0 +1,233 @@
1
+ ---
2
+ name: team-adversarial-swarm
3
+ description: "ACO swarm intelligence with modular Workflow composition and adversarial decision gates. Coordinator drives iteration loop; 4 composable Workflow scripts handle exploration, scoring, convergence, and synthesis — each with built-in adversarial patterns."
4
+ allowed-tools: Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*), Workflow(*), AskUserQuestion(*), Agent(*)
5
+ ---
6
+
7
+ # Team Adversarial Swarm
8
+
9
+ ACO 蚁群优化 + 模块化 Workflow 编排 + 对抗决策。
10
+
11
+ 继承 `team-swarm` 的蚁群算法核心(Python ACO 脚本),用 4 个可组合的 Workflow 脚本
12
+ 替代 team-worker 架构,在每个决策节点注入对抗性 agent 模式。
13
+
14
+ ## Architecture
15
+
16
+ ```
17
+ SKILL.md (Coordinator — this file)
18
+
19
+ │ Phase 1: Config Generation (inline)
20
+ │ Phase 2: ACO Init (Bash: aco.py init)
21
+
22
+ │ Phase 3: Iteration Loop ×K
23
+ │ ┌──────────────────────────────────────────────────┐
24
+ │ │ 3a. Bash: aco.py select → assignments │
25
+ │ │ 3b. Workflow(wf-swarm-explore) ← 模块1 │
26
+ │ │ N ants parallel → ant_results │
27
+ │ │ 3c. Workflow(wf-swarm-score) ← 模块2 │
28
+ │ │ 3-vote adversarial scoring → verified_scores │
29
+ │ │ 3d. Write scores → Bash: aco.py update │
30
+ │ │ 3e. Workflow(wf-swarm-converge) ← 模块3 │
31
+ │ │ prosecutor/defender/judge → converged? │
32
+ │ │ 3f. if converged: break │
33
+ │ └──────────────────────────────────────────────────┘
34
+
35
+ │ Phase 4: Bash: aco.py report
36
+ │ Workflow(wf-swarm-synthesize) ← 模块4
37
+ │ 3-perspective analysis + arbitration → best-solution.md
38
+ ```
39
+
40
+ ## Workflow Module Registry
41
+
42
+ | Module | Script | Args Interface | Adversarial Pattern | Returns |
43
+ |--------|--------|---------------|--------------------|---------|
44
+ | **Explore** | `workflows/wf-swarm-explore.js` | `{ iteration, assignments[], objective, session, config }` | N ants parallel | `{ ant_results[] }` |
45
+ | **Score** | `workflows/wf-swarm-score.js` | `{ iteration, ant_results[], objective, rubric? }` | 3-vote per ant (prosecutor/defender/judge) | `{ scores{}, calibration }` |
46
+ | **Converge** | `workflows/wf-swarm-converge.js` | `{ iteration, best, history[], config }` | prosecutor(continue)/defender(stop)/judge | `{ converged, reason, confidence }` |
47
+ | **Synthesize** | `workflows/wf-swarm-synthesize.js` | `{ best, top_k[], convergence_story, objective }` | 3-perspective + arbitrator | `{ report, caveats }` |
48
+
49
+ 每个模块独立可用,也可由 Coordinator 组合编排。
50
+
51
+ ## Shared Dependencies
52
+
53
+ **所有依赖均在本 skill 内部,无外部引用。**
54
+
55
+ - **Python ACO 脚本**: `<this-skill>/scripts/aco.py`
56
+ - 运行时解析: `Glob(".claude/skills/team-adversarial-swarm/scripts/aco.py")`
57
+ - 依赖模块: `pheromone.py`, `scoring.py`(同目录)
58
+ - 命令: `init` / `select` / `update` / `converged` / `report`
59
+ - 协议: [specs/swarm-protocol.md](specs/swarm-protocol.md)
60
+ - **Workflow 脚本**: `<this-skill>/workflows/wf-swarm-*.js`
61
+ - 运行时解析: `Glob(".claude/skills/team-adversarial-swarm/workflows/wf-swarm-*.js")`
62
+
63
+ ## Specs Reference
64
+
65
+ | Spec | Purpose |
66
+ |------|---------|
67
+ | [specs/swarm-protocol.md](specs/swarm-protocol.md) | Coordinator ↔ Script ↔ Workflow 三方协议 |
68
+ | [specs/pheromone-schema.md](specs/pheromone-schema.md) | 信息素矩阵结构、更新公式、蒸发规则 |
69
+ | [specs/ant-output-schema.md](specs/ant-output-schema.md) | 蚁输出 JSON 合约(三层评分) |
70
+ | [specs/convergence-criteria.md](specs/convergence-criteria.md) | 双层收敛:Python 信号 + 对抗辩论 |
71
+ | [specs/swarm-config-template.json](specs/swarm-config-template.json) | 用户配置模板 |
72
+
73
+ ## Session Directory
74
+
75
+ ```
76
+ .workflow/.team/TAS-<slug>-<date>/
77
+ ├── swarm-config.json # Phase 1 output
78
+ ├── pheromone/ # ACO state (managed by aco.py)
79
+ │ ├── current.json
80
+ │ └── history/
81
+ ├── trails/ # Per-iteration trails (managed by aco.py)
82
+ ├── scores/ # Adversarial scoring results
83
+ │ └── iter-<k>-scores.json
84
+ ├── artifacts/
85
+ │ ├── ant-<k>-<id>.json # Ant outputs
86
+ │ └── best-solution.md # Final synthesis
87
+ ├── workflows/ # Workflow run artifacts
88
+ │ ├── explore-<k>.json # Per-iteration explore results
89
+ │ ├── score-<k>.json # Per-iteration score results
90
+ │ └── converge-<k>.json # Per-iteration convergence decision
91
+ └── best.json # Canonical best (managed by aco.py)
92
+ ```
93
+
94
+ ---
95
+
96
+ ## Coordinator Execution Flow
97
+
98
+ ### Phase 0: Resume Check
99
+
100
+ 1. `Glob(".workflow/.team/TAS-*/swarm-config.json")` → 查找活跃 session
101
+ 2. 若存在且有 `workflows/converge-*.json` 未标记 converged → 恢复到对应迭代
102
+ 3. 若无活跃 session → Phase 1
103
+
104
+ ### Phase 1: Config Generation
105
+
106
+ 解析用户 intent,生成 `swarm-config.json`。
107
+
108
+ 若 intent 不够明确,用 AskUserQuestion 澄清:
109
+ - 搜索空间是什么?(文件 glob / 节点列表 / 抽象决策集)
110
+ - 目标是什么?(最优方案 / 发现问题 / 优化路径)
111
+ - 如何评分?(测试通过率 / lint / 自定义规则 / LLM 对抗评分)
112
+ - 预算?(最大迭代 / 每轮蚁数 / token 预算)
113
+
114
+ 生成 config 字段:
115
+ ```json
116
+ {
117
+ "task": { "objective": "...", "evidence_requirements": "..." },
118
+ "swarm": { "n_ants": 5, "max_iterations": 5 },
119
+ "aco": { "alpha": 1.0, "beta": 2.0, "rho": 0.1, "q": 1.0 },
120
+ "task_space": { "nodes": [...], "auto_discover_from": "..." },
121
+ "scoring": { "mode": "adversarial", "rubric": "..." },
122
+ "convergence": { "patience": 2, "min_improvement": 0.01, "max_iterations": 5 }
123
+ }
124
+ ```
125
+
126
+ Write 到 `<session>/swarm-config.json`。
127
+
128
+ ### Phase 2: ACO Init
129
+
130
+ 1. 创建 session 目录: `TAS-<slug>-<date>`
131
+ 2. 解析 aco.py 路径(从 team-swarm skill 继承)
132
+ 3. `Bash: python <aco.py> --session <session> init`
133
+ 4. 解析输出: `{ n_nodes, n_edges, pheromone_path }`
134
+
135
+ ### Phase 3: Iteration Loop
136
+
137
+ ```python
138
+ for k in range(1, max_iterations + 1):
139
+ # 3a. ACO selection
140
+ assignments = Bash("python aco.py --session <session> select --iter k")
141
+
142
+ # 3b. Parallel exploration (Workflow Module 1)
143
+ explore_result = Workflow({
144
+ scriptPath: "<skill>/workflows/wf-swarm-explore.js",
145
+ args: { iteration: k, assignments, objective, session, config }
146
+ })
147
+
148
+ # 3c. Adversarial scoring (Workflow Module 2)
149
+ score_result = Workflow({
150
+ scriptPath: "<skill>/workflows/wf-swarm-score.js",
151
+ args: { iteration: k, ant_results: explore_result.ant_results, objective, rubric }
152
+ })
153
+
154
+ # 3d. Write scores + pheromone update
155
+ Write("<session>/scores/iter-k-scores.json", score_result)
156
+ Bash("python aco.py --session <session> update --iter k")
157
+
158
+ # 3e. Adversarial convergence check (Workflow Module 3)
159
+ converge_result = Workflow({
160
+ scriptPath: "<skill>/workflows/wf-swarm-converge.js",
161
+ args: { iteration: k, best: aco_best, history: iter_history, config }
162
+ })
163
+
164
+ # 3f. Save + check
165
+ Write("<session>/workflows/converge-k.json", converge_result)
166
+ if converge_result.converged: break
167
+ ```
168
+
169
+ **注意**:每次 Workflow 调用是独立的,数据通过 args 传入、返回值传出。
170
+ Coordinator 负责 Workflow 间的数据桥接和 Python 脚本调用。
171
+
172
+ ### Phase 4: Synthesis
173
+
174
+ 1. `Bash: python aco.py --session <session> report` → 获取 best + top_k + curve
175
+ 2. 调用 Workflow Module 4:
176
+ ```
177
+ Workflow({
178
+ scriptPath: "<skill>/workflows/wf-swarm-synthesize.js",
179
+ args: { best, top_k, convergence_story, objective }
180
+ })
181
+ ```
182
+ 3. 将 synthesis 结果写入 `<session>/artifacts/best-solution.md`
183
+ 4. 展示完成摘要 + AskUserQuestion(归档 / 保留 / 导出 / 再跑一轮)
184
+
185
+ ---
186
+
187
+ ## Module Composition Patterns
188
+
189
+ ### 完整流水线(默认)
190
+ ```
191
+ explore → score → update → converge → [loop] → synthesize
192
+ ```
193
+
194
+ ### 仅探索(跳过评分,用 self_score)
195
+ ```
196
+ explore → update(self_score) → converge → synthesize
197
+ ```
198
+
199
+ ### 单次迭代调试
200
+ ```
201
+ explore(k=1) → score(k=1) // 不循环,只看一轮
202
+ ```
203
+
204
+ ### 独立评分(已有 ant artifacts)
205
+ ```
206
+ score(ant_results from files) → 输出 verified_scores
207
+ ```
208
+
209
+ ### 独立综合(已有 best + trails)
210
+ ```
211
+ synthesize(best, top_k) → best-solution.md
212
+ ```
213
+
214
+ ---
215
+
216
+ ## Error Handling
217
+
218
+ | Scenario | Resolution |
219
+ |----------|------------|
220
+ | aco.py 未找到 | Glob team-swarm skill 路径;提示安装 |
221
+ | Python < 3.10 | 尝试 python3;报告依赖 |
222
+ | Workflow 执行失败 | 记录错误,提供 --resume 恢复点 |
223
+ | 所有蚁全部失败 | 暂停,AskUserQuestion(重试/终止/调整config) |
224
+ | 收敛从不触发 | max_iterations 安全网总会触发 |
225
+ | 幻觉集群 (>50% 蚁被降分) | 暂停,AskUserQuestion(继续/调整评分规则) |
226
+
227
+ ## Completion
228
+
229
+ 展示最终结果 + 交互选择:
230
+ - **归档**: 保存 session,展示 best-solution.md
231
+ - **继续**: 保持 session,可追加迭代
232
+ - **导出**: 复制 best-solution.md 到目标位置
233
+ - **再跑**: 重置收敛,继续 K 轮