maestro-flow 0.3.1 → 0.3.3

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 (574) hide show
  1. package/.claude/CLAUDE.md +2 -2
  2. package/.claude/agents/cli-explore-agent.md +1 -1
  3. package/.claude/agents/team-worker.md +237 -237
  4. package/.claude/commands/maestro-coordinate.md +65 -65
  5. package/.claude/commands/maestro-link-coordinate.md +71 -71
  6. package/.claude/commands/maestro-overlay.md +178 -122
  7. package/.claude/commands/manage-issue-execute.md +73 -73
  8. package/.claude/skills/team-coordinate/SKILL.md +266 -266
  9. package/.claude/skills/team-lifecycle-v4/SKILL.md +209 -209
  10. package/.claude/skills/team-lifecycle-v4/roles/analyst/role.md +94 -94
  11. package/.claude/skills/team-lifecycle-v4/roles/executor/commands/implement.md +62 -62
  12. package/.claude/skills/team-lifecycle-v4/roles/planner/role.md +85 -85
  13. package/.claude/skills/team-lifecycle-v4/roles/writer/role.md +95 -95
  14. package/.claude/skills/team-quality-assurance/SKILL.md +147 -147
  15. package/.claude/skills/team-quality-assurance/roles/scout/role.md +75 -75
  16. package/.claude/skills/team-review/SKILL.md +147 -147
  17. package/.claude/skills/team-review/roles/reviewer/role.md +68 -68
  18. package/.claude/skills/team-review/roles/scanner/role.md +79 -79
  19. package/.claude/skills/team-tech-debt/SKILL.md +128 -128
  20. package/.claude/skills/team-tech-debt/roles/executor/role.md +76 -76
  21. package/.claude/skills/team-tech-debt/roles/scanner/role.md +90 -90
  22. package/.claude/skills/team-tech-debt/roles/validator/role.md +78 -78
  23. package/.claude/skills/team-testing/SKILL.md +143 -143
  24. package/.claude/skills/team-testing/roles/executor/role.md +99 -99
  25. package/.claude/skills/team-testing/roles/generator/role.md +98 -98
  26. package/.codex/skills/maestro-coordinate/SKILL.md +4 -5
  27. package/.codex/skills/manage-issue-analyze/SKILL.md +3 -3
  28. package/.codex/skills/manage-issue-execute/SKILL.md +4 -4
  29. package/.codex/skills/manage-issue-plan/SKILL.md +2 -2
  30. package/.codex/skills/team-coordinate/SKILL.md +7 -7
  31. package/.codex/skills/team-coordinate/roles/coordinator/role.md +1 -1
  32. package/.codex/skills/team-lifecycle-v4/SKILL.md +2 -2
  33. package/.codex/skills/team-lifecycle-v4/instructions/agent-instruction.md +2 -2
  34. package/.codex/skills/team-lifecycle-v4/roles/analyst/role.md +2 -2
  35. package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +2 -2
  36. package/.codex/skills/team-lifecycle-v4/roles/executor/commands/implement.md +1 -1
  37. package/.codex/skills/team-lifecycle-v4/roles/planner/role.md +2 -2
  38. package/.codex/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  39. package/.codex/skills/team-quality-assurance/SKILL.md +2 -2
  40. package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +2 -2
  41. package/.codex/skills/team-quality-assurance/roles/scout/role.md +2 -2
  42. package/.codex/skills/team-review/SKILL.md +2 -2
  43. package/.codex/skills/team-review/roles/coordinator/role.md +2 -2
  44. package/.codex/skills/team-review/roles/reviewer/role.md +1 -1
  45. package/.codex/skills/team-review/roles/scanner/role.md +1 -1
  46. package/.codex/skills/team-tech-debt/SKILL.md +2 -2
  47. package/.codex/skills/team-tech-debt/roles/coordinator/role.md +1 -1
  48. package/.codex/skills/team-tech-debt/roles/executor/role.md +1 -1
  49. package/.codex/skills/team-tech-debt/roles/scanner/role.md +1 -1
  50. package/.codex/skills/team-tech-debt/roles/validator/role.md +1 -1
  51. package/.codex/skills/team-testing/SKILL.md +2 -2
  52. package/.codex/skills/team-testing/roles/coordinator/role.md +2 -2
  53. package/.codex/skills/team-testing/roles/executor/role.md +1 -1
  54. package/.codex/skills/team-testing/roles/generator/role.md +1 -1
  55. package/README.md +31 -2
  56. package/README.zh-CN.md +23 -1
  57. package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
  58. package/dist/src/agents/cli-agent-runner.js +6 -15
  59. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  60. package/dist/src/commands/delegate.d.ts.map +1 -1
  61. package/dist/src/commands/delegate.js +77 -1
  62. package/dist/src/commands/delegate.js.map +1 -1
  63. package/dist/src/commands/hooks.d.ts +15 -0
  64. package/dist/src/commands/hooks.d.ts.map +1 -1
  65. package/dist/src/commands/hooks.js +29 -2
  66. package/dist/src/commands/hooks.js.map +1 -1
  67. package/dist/src/commands/install-backend.d.ts +15 -0
  68. package/dist/src/commands/install-backend.d.ts.map +1 -1
  69. package/dist/src/commands/install-backend.js +67 -0
  70. package/dist/src/commands/install-backend.js.map +1 -1
  71. package/dist/src/commands/install-ui/BackupConfig.d.ts +6 -4
  72. package/dist/src/commands/install-ui/BackupConfig.d.ts.map +1 -1
  73. package/dist/src/commands/install-ui/BackupConfig.js +39 -12
  74. package/dist/src/commands/install-ui/BackupConfig.js.map +1 -1
  75. package/dist/src/commands/install-ui/ConfigPanel.d.ts.map +1 -1
  76. package/dist/src/commands/install-ui/ConfigPanel.js +1 -1
  77. package/dist/src/commands/install-ui/ConfigPanel.js.map +1 -1
  78. package/dist/src/commands/install-ui/InstallConfirm.d.ts +3 -0
  79. package/dist/src/commands/install-ui/InstallConfirm.d.ts.map +1 -1
  80. package/dist/src/commands/install-ui/InstallConfirm.js +5 -1
  81. package/dist/src/commands/install-ui/InstallConfirm.js.map +1 -1
  82. package/dist/src/commands/install-ui/InstallExecution.d.ts +2 -0
  83. package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
  84. package/dist/src/commands/install-ui/InstallExecution.js +30 -5
  85. package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
  86. package/dist/src/commands/install-ui/InstallFlow.d.ts +1 -1
  87. package/dist/src/commands/install-ui/InstallFlow.d.ts.map +1 -1
  88. package/dist/src/commands/install-ui/InstallFlow.js +31 -6
  89. package/dist/src/commands/install-ui/InstallFlow.js.map +1 -1
  90. package/dist/src/commands/install-ui/InstallHub.d.ts +5 -0
  91. package/dist/src/commands/install-ui/InstallHub.d.ts.map +1 -1
  92. package/dist/src/commands/install-ui/InstallHub.js +24 -0
  93. package/dist/src/commands/install-ui/InstallHub.js.map +1 -1
  94. package/dist/src/commands/install-ui/InstallResult.d.ts.map +1 -1
  95. package/dist/src/commands/install-ui/InstallResult.js +1 -1
  96. package/dist/src/commands/install-ui/InstallResult.js.map +1 -1
  97. package/dist/src/commands/install-ui/StatuslineConfig.d.ts +9 -0
  98. package/dist/src/commands/install-ui/StatuslineConfig.d.ts.map +1 -0
  99. package/dist/src/commands/install-ui/StatuslineConfig.js +13 -0
  100. package/dist/src/commands/install-ui/StatuslineConfig.js.map +1 -0
  101. package/dist/src/commands/install-ui/index.d.ts +1 -1
  102. package/dist/src/commands/install-ui/index.d.ts.map +1 -1
  103. package/dist/src/commands/install-ui/types.d.ts +6 -0
  104. package/dist/src/commands/install-ui/types.d.ts.map +1 -1
  105. package/dist/src/commands/install-ui/types.js +3 -0
  106. package/dist/src/commands/install-ui/types.js.map +1 -1
  107. package/dist/src/commands/install.d.ts.map +1 -1
  108. package/dist/src/commands/install.js +6 -1
  109. package/dist/src/commands/install.js.map +1 -1
  110. package/dist/src/commands/launcher.js +1 -1
  111. package/dist/src/commands/launcher.js.map +1 -1
  112. package/dist/src/commands/overlay-ui/OverlayList.d.ts +35 -0
  113. package/dist/src/commands/overlay-ui/OverlayList.d.ts.map +1 -0
  114. package/dist/src/commands/overlay-ui/OverlayList.js +143 -0
  115. package/dist/src/commands/overlay-ui/OverlayList.js.map +1 -0
  116. package/dist/src/commands/overlay-ui/index.d.ts +2 -0
  117. package/dist/src/commands/overlay-ui/index.d.ts.map +1 -0
  118. package/dist/src/commands/overlay-ui/index.js +188 -0
  119. package/dist/src/commands/overlay-ui/index.js.map +1 -0
  120. package/dist/src/commands/overlay.d.ts.map +1 -1
  121. package/dist/src/commands/overlay.js +124 -60
  122. package/dist/src/commands/overlay.js.map +1 -1
  123. package/dist/src/commands/team.d.ts +10 -0
  124. package/dist/src/commands/team.d.ts.map +1 -1
  125. package/dist/src/commands/team.js +436 -42
  126. package/dist/src/commands/team.js.map +1 -1
  127. package/dist/src/core/manifest.d.ts.map +1 -1
  128. package/dist/src/core/manifest.js +58 -0
  129. package/dist/src/core/manifest.js.map +1 -1
  130. package/dist/src/core/overlay/applier.d.ts +36 -1
  131. package/dist/src/core/overlay/applier.d.ts.map +1 -1
  132. package/dist/src/core/overlay/applier.js +109 -1
  133. package/dist/src/core/overlay/applier.js.map +1 -1
  134. package/dist/src/hooks/delegate-monitor.js +1 -1
  135. package/dist/src/hooks/delegate-monitor.js.map +1 -1
  136. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
  137. package/dist/src/hooks/plugins/spec-injection-plugin.js +17 -1
  138. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  139. package/dist/src/hooks/spec-injector.d.ts +2 -1
  140. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  141. package/dist/src/hooks/spec-injector.js +19 -2
  142. package/dist/src/hooks/spec-injector.js.map +1 -1
  143. package/dist/src/hooks/team-monitor.d.ts.map +1 -1
  144. package/dist/src/hooks/team-monitor.js +17 -0
  145. package/dist/src/hooks/team-monitor.js.map +1 -1
  146. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  147. package/dist/src/i18n/locales/en.js +25 -1
  148. package/dist/src/i18n/locales/en.js.map +1 -1
  149. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  150. package/dist/src/i18n/locales/zh.js +25 -1
  151. package/dist/src/i18n/locales/zh.js.map +1 -1
  152. package/dist/src/i18n/types.d.ts +22 -0
  153. package/dist/src/i18n/types.d.ts.map +1 -1
  154. package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
  155. package/dist/src/mcp/delegate-channel-relay.js +2 -7
  156. package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
  157. package/dist/src/tools/namespace-guard.d.ts +37 -0
  158. package/dist/src/tools/namespace-guard.d.ts.map +1 -0
  159. package/dist/src/tools/namespace-guard.js +126 -0
  160. package/dist/src/tools/namespace-guard.js.map +1 -0
  161. package/dist/src/tools/spec-loader.d.ts +17 -1
  162. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  163. package/dist/src/tools/spec-loader.js +71 -13
  164. package/dist/src/tools/spec-loader.js.map +1 -1
  165. package/dist/src/tools/team-members.d.ts +16 -0
  166. package/dist/src/tools/team-members.d.ts.map +1 -1
  167. package/dist/src/tools/team-members.js +31 -0
  168. package/dist/src/tools/team-members.js.map +1 -1
  169. package/package.json +1 -1
  170. package/workflows/delegate-usage.md +330 -0
  171. package/dist/agents/cli-agent-runner.d.ts +0 -131
  172. package/dist/agents/cli-agent-runner.d.ts.map +0 -1
  173. package/dist/agents/cli-agent-runner.js +0 -688
  174. package/dist/agents/cli-agent-runner.js.map +0 -1
  175. package/dist/agents/cli-history-store.d.ts +0 -63
  176. package/dist/agents/cli-history-store.d.ts.map +0 -1
  177. package/dist/agents/cli-history-store.js +0 -242
  178. package/dist/agents/cli-history-store.js.map +0 -1
  179. package/dist/agents/dashboard-bridge.d.ts +0 -39
  180. package/dist/agents/dashboard-bridge.d.ts.map +0 -1
  181. package/dist/agents/dashboard-bridge.js +0 -76
  182. package/dist/agents/dashboard-bridge.js.map +0 -1
  183. package/dist/agents/parallel-cli-runner.d.ts +0 -46
  184. package/dist/agents/parallel-cli-runner.d.ts.map +0 -1
  185. package/dist/agents/parallel-cli-runner.js +0 -277
  186. package/dist/agents/parallel-cli-runner.js.map +0 -1
  187. package/dist/agents/terminal-adapter.d.ts +0 -94
  188. package/dist/agents/terminal-adapter.d.ts.map +0 -1
  189. package/dist/agents/terminal-adapter.js +0 -132
  190. package/dist/agents/terminal-adapter.js.map +0 -1
  191. package/dist/agents/terminal-backend.d.ts +0 -53
  192. package/dist/agents/terminal-backend.d.ts.map +0 -1
  193. package/dist/agents/terminal-backend.js +0 -286
  194. package/dist/agents/terminal-backend.js.map +0 -1
  195. package/dist/async/delegate-broker-client.d.ts +0 -22
  196. package/dist/async/delegate-broker-client.d.ts.map +0 -1
  197. package/dist/async/delegate-broker-client.js +0 -47
  198. package/dist/async/delegate-broker-client.js.map +0 -1
  199. package/dist/async/delegate-broker.d.ts +0 -180
  200. package/dist/async/delegate-broker.d.ts.map +0 -1
  201. package/dist/async/delegate-broker.js +0 -1040
  202. package/dist/async/delegate-broker.js.map +0 -1
  203. package/dist/async/delegate-control.d.ts +0 -37
  204. package/dist/async/delegate-control.d.ts.map +0 -1
  205. package/dist/async/delegate-control.js +0 -155
  206. package/dist/async/delegate-control.js.map +0 -1
  207. package/dist/async/index.d.ts +0 -3
  208. package/dist/async/index.d.ts.map +0 -1
  209. package/dist/async/index.js +0 -3
  210. package/dist/async/index.js.map +0 -1
  211. package/dist/cli.d.ts +0 -2
  212. package/dist/cli.d.ts.map +0 -1
  213. package/dist/cli.js +0 -40
  214. package/dist/cli.js.map +0 -1
  215. package/dist/commands/cli.d.ts +0 -3
  216. package/dist/commands/cli.d.ts.map +0 -1
  217. package/dist/commands/cli.js +0 -262
  218. package/dist/commands/cli.js.map +0 -1
  219. package/dist/commands/coordinate.d.ts +0 -3
  220. package/dist/commands/coordinate.d.ts.map +0 -1
  221. package/dist/commands/coordinate.js +0 -275
  222. package/dist/commands/coordinate.js.map +0 -1
  223. package/dist/commands/delegate.d.ts +0 -37
  224. package/dist/commands/delegate.d.ts.map +0 -1
  225. package/dist/commands/delegate.js +0 -470
  226. package/dist/commands/delegate.js.map +0 -1
  227. package/dist/commands/ext.d.ts +0 -3
  228. package/dist/commands/ext.d.ts.map +0 -1
  229. package/dist/commands/ext.js +0 -28
  230. package/dist/commands/ext.js.map +0 -1
  231. package/dist/commands/hooks.d.ts +0 -3
  232. package/dist/commands/hooks.d.ts.map +0 -1
  233. package/dist/commands/hooks.js +0 -126
  234. package/dist/commands/hooks.js.map +0 -1
  235. package/dist/commands/install.d.ts +0 -3
  236. package/dist/commands/install.d.ts.map +0 -1
  237. package/dist/commands/install.js +0 -621
  238. package/dist/commands/install.js.map +0 -1
  239. package/dist/commands/launcher.d.ts +0 -3
  240. package/dist/commands/launcher.d.ts.map +0 -1
  241. package/dist/commands/launcher.js +0 -635
  242. package/dist/commands/launcher.js.map +0 -1
  243. package/dist/commands/link-coordinate.d.ts +0 -3
  244. package/dist/commands/link-coordinate.d.ts.map +0 -1
  245. package/dist/commands/link-coordinate.js +0 -225
  246. package/dist/commands/link-coordinate.js.map +0 -1
  247. package/dist/commands/msg.d.ts +0 -3
  248. package/dist/commands/msg.d.ts.map +0 -1
  249. package/dist/commands/msg.js +0 -110
  250. package/dist/commands/msg.js.map +0 -1
  251. package/dist/commands/overlay.d.ts +0 -3
  252. package/dist/commands/overlay.d.ts.map +0 -1
  253. package/dist/commands/overlay.js +0 -243
  254. package/dist/commands/overlay.js.map +0 -1
  255. package/dist/commands/run.d.ts +0 -3
  256. package/dist/commands/run.d.ts.map +0 -1
  257. package/dist/commands/run.js +0 -15
  258. package/dist/commands/run.js.map +0 -1
  259. package/dist/commands/serve.d.ts +0 -3
  260. package/dist/commands/serve.d.ts.map +0 -1
  261. package/dist/commands/serve.js +0 -16
  262. package/dist/commands/serve.js.map +0 -1
  263. package/dist/commands/spec.d.ts +0 -8
  264. package/dist/commands/spec.d.ts.map +0 -1
  265. package/dist/commands/spec.js +0 -147
  266. package/dist/commands/spec.js.map +0 -1
  267. package/dist/commands/stop.d.ts +0 -3
  268. package/dist/commands/stop.d.ts.map +0 -1
  269. package/dist/commands/stop.js +0 -218
  270. package/dist/commands/stop.js.map +0 -1
  271. package/dist/commands/tool.d.ts +0 -3
  272. package/dist/commands/tool.d.ts.map +0 -1
  273. package/dist/commands/tool.js +0 -29
  274. package/dist/commands/tool.js.map +0 -1
  275. package/dist/commands/uninstall.d.ts +0 -3
  276. package/dist/commands/uninstall.d.ts.map +0 -1
  277. package/dist/commands/uninstall.js +0 -77
  278. package/dist/commands/uninstall.js.map +0 -1
  279. package/dist/commands/view.d.ts +0 -3
  280. package/dist/commands/view.d.ts.map +0 -1
  281. package/dist/commands/view.js +0 -337
  282. package/dist/commands/view.js.map +0 -1
  283. package/dist/config/cli-tools-config.d.ts +0 -26
  284. package/dist/config/cli-tools-config.d.ts.map +0 -1
  285. package/dist/config/cli-tools-config.js +0 -49
  286. package/dist/config/cli-tools-config.js.map +0 -1
  287. package/dist/config/cli-tools-config.test.d.ts +0 -2
  288. package/dist/config/cli-tools-config.test.d.ts.map +0 -1
  289. package/dist/config/cli-tools-config.test.js +0 -59
  290. package/dist/config/cli-tools-config.test.js.map +0 -1
  291. package/dist/config/index.d.ts +0 -4
  292. package/dist/config/index.d.ts.map +0 -1
  293. package/dist/config/index.js +0 -27
  294. package/dist/config/index.js.map +0 -1
  295. package/dist/config/paths.d.ts +0 -15
  296. package/dist/config/paths.d.ts.map +0 -1
  297. package/dist/config/paths.js +0 -27
  298. package/dist/config/paths.js.map +0 -1
  299. package/dist/config/template-discovery.d.ts +0 -32
  300. package/dist/config/template-discovery.d.ts.map +0 -1
  301. package/dist/config/template-discovery.js +0 -128
  302. package/dist/config/template-discovery.js.map +0 -1
  303. package/dist/coordinator/cli-executor.d.ts +0 -22
  304. package/dist/coordinator/cli-executor.d.ts.map +0 -1
  305. package/dist/coordinator/cli-executor.js +0 -49
  306. package/dist/coordinator/cli-executor.js.map +0 -1
  307. package/dist/coordinator/expr-evaluator.d.ts +0 -11
  308. package/dist/coordinator/expr-evaluator.d.ts.map +0 -1
  309. package/dist/coordinator/expr-evaluator.js +0 -351
  310. package/dist/coordinator/expr-evaluator.js.map +0 -1
  311. package/dist/coordinator/graph-loader.d.ts +0 -16
  312. package/dist/coordinator/graph-loader.d.ts.map +0 -1
  313. package/dist/coordinator/graph-loader.js +0 -190
  314. package/dist/coordinator/graph-loader.js.map +0 -1
  315. package/dist/coordinator/graph-types.d.ts +0 -304
  316. package/dist/coordinator/graph-types.d.ts.map +0 -1
  317. package/dist/coordinator/graph-types.js +0 -6
  318. package/dist/coordinator/graph-types.js.map +0 -1
  319. package/dist/coordinator/graph-walker.d.ts +0 -51
  320. package/dist/coordinator/graph-walker.d.ts.map +0 -1
  321. package/dist/coordinator/graph-walker.js +0 -666
  322. package/dist/coordinator/graph-walker.js.map +0 -1
  323. package/dist/coordinator/index.d.ts +0 -13
  324. package/dist/coordinator/index.d.ts.map +0 -1
  325. package/dist/coordinator/index.js +0 -14
  326. package/dist/coordinator/index.js.map +0 -1
  327. package/dist/coordinator/intent-router.d.ts +0 -11
  328. package/dist/coordinator/intent-router.d.ts.map +0 -1
  329. package/dist/coordinator/intent-router.js +0 -65
  330. package/dist/coordinator/intent-router.js.map +0 -1
  331. package/dist/coordinator/link-session.d.ts +0 -29
  332. package/dist/coordinator/link-session.d.ts.map +0 -1
  333. package/dist/coordinator/link-session.js +0 -192
  334. package/dist/coordinator/link-session.js.map +0 -1
  335. package/dist/coordinator/link-walker.d.ts +0 -56
  336. package/dist/coordinator/link-walker.d.ts.map +0 -1
  337. package/dist/coordinator/link-walker.js +0 -548
  338. package/dist/coordinator/link-walker.js.map +0 -1
  339. package/dist/coordinator/output-parser.d.ts +0 -5
  340. package/dist/coordinator/output-parser.d.ts.map +0 -1
  341. package/dist/coordinator/output-parser.js +0 -114
  342. package/dist/coordinator/output-parser.js.map +0 -1
  343. package/dist/coordinator/parallel-executor.d.ts +0 -24
  344. package/dist/coordinator/parallel-executor.d.ts.map +0 -1
  345. package/dist/coordinator/parallel-executor.js +0 -43
  346. package/dist/coordinator/parallel-executor.js.map +0 -1
  347. package/dist/coordinator/prompt-assembler.d.ts +0 -15
  348. package/dist/coordinator/prompt-assembler.d.ts.map +0 -1
  349. package/dist/coordinator/prompt-assembler.js +0 -228
  350. package/dist/coordinator/prompt-assembler.js.map +0 -1
  351. package/dist/coordinator/step-analyzer.d.ts +0 -8
  352. package/dist/coordinator/step-analyzer.d.ts.map +0 -1
  353. package/dist/coordinator/step-analyzer.js +0 -82
  354. package/dist/coordinator/step-analyzer.js.map +0 -1
  355. package/dist/core/extension-loader.d.ts +0 -11
  356. package/dist/core/extension-loader.d.ts.map +0 -1
  357. package/dist/core/extension-loader.js +0 -54
  358. package/dist/core/extension-loader.js.map +0 -1
  359. package/dist/core/manifest.d.ts +0 -24
  360. package/dist/core/manifest.d.ts.map +0 -1
  361. package/dist/core/manifest.js +0 -139
  362. package/dist/core/manifest.js.map +0 -1
  363. package/dist/core/mcp-tool-registry.integration.test.d.ts +0 -2
  364. package/dist/core/mcp-tool-registry.integration.test.d.ts.map +0 -1
  365. package/dist/core/mcp-tool-registry.integration.test.js +0 -220
  366. package/dist/core/mcp-tool-registry.integration.test.js.map +0 -1
  367. package/dist/core/overlay/applier.d.ts +0 -73
  368. package/dist/core/overlay/applier.d.ts.map +0 -1
  369. package/dist/core/overlay/applier.js +0 -248
  370. package/dist/core/overlay/applier.js.map +0 -1
  371. package/dist/core/overlay/loader.d.ts +0 -26
  372. package/dist/core/overlay/loader.d.ts.map +0 -1
  373. package/dist/core/overlay/loader.js +0 -199
  374. package/dist/core/overlay/loader.js.map +0 -1
  375. package/dist/core/overlay/patcher.d.ts +0 -26
  376. package/dist/core/overlay/patcher.d.ts.map +0 -1
  377. package/dist/core/overlay/patcher.js +0 -212
  378. package/dist/core/overlay/patcher.js.map +0 -1
  379. package/dist/core/overlay/section-parser.d.ts +0 -25
  380. package/dist/core/overlay/section-parser.d.ts.map +0 -1
  381. package/dist/core/overlay/section-parser.js +0 -99
  382. package/dist/core/overlay/section-parser.js.map +0 -1
  383. package/dist/core/overlay/types.d.ts +0 -51
  384. package/dist/core/overlay/types.d.ts.map +0 -1
  385. package/dist/core/overlay/types.js +0 -15
  386. package/dist/core/overlay/types.js.map +0 -1
  387. package/dist/core/tool-registry.d.ts +0 -10
  388. package/dist/core/tool-registry.d.ts.map +0 -1
  389. package/dist/core/tool-registry.js +0 -29
  390. package/dist/core/tool-registry.js.map +0 -1
  391. package/dist/core/tool-registry.test.d.ts +0 -2
  392. package/dist/core/tool-registry.test.d.ts.map +0 -1
  393. package/dist/core/tool-registry.test.js +0 -78
  394. package/dist/core/tool-registry.test.js.map +0 -1
  395. package/dist/db/connection-pool.d.ts +0 -21
  396. package/dist/db/connection-pool.d.ts.map +0 -1
  397. package/dist/db/connection-pool.js +0 -53
  398. package/dist/db/connection-pool.js.map +0 -1
  399. package/dist/db/index.d.ts +0 -6
  400. package/dist/db/index.d.ts.map +0 -1
  401. package/dist/db/index.js +0 -9
  402. package/dist/db/index.js.map +0 -1
  403. package/dist/db/schema/core/index.d.ts +0 -5
  404. package/dist/db/schema/core/index.d.ts.map +0 -1
  405. package/dist/db/schema/core/index.js +0 -5
  406. package/dist/db/schema/core/index.js.map +0 -1
  407. package/dist/db/schema/core/organizations.d.ts +0 -244
  408. package/dist/db/schema/core/organizations.d.ts.map +0 -1
  409. package/dist/db/schema/core/organizations.js +0 -44
  410. package/dist/db/schema/core/organizations.js.map +0 -1
  411. package/dist/db/schema/core/permissions.d.ts +0 -158
  412. package/dist/db/schema/core/permissions.d.ts.map +0 -1
  413. package/dist/db/schema/core/permissions.js +0 -62
  414. package/dist/db/schema/core/permissions.js.map +0 -1
  415. package/dist/db/schema/core/refresh-tokens.d.ts +0 -147
  416. package/dist/db/schema/core/refresh-tokens.d.ts.map +0 -1
  417. package/dist/db/schema/core/refresh-tokens.js +0 -22
  418. package/dist/db/schema/core/refresh-tokens.js.map +0 -1
  419. package/dist/db/schema/core/users.d.ts +0 -178
  420. package/dist/db/schema/core/users.d.ts.map +0 -1
  421. package/dist/db/schema/core/users.js +0 -14
  422. package/dist/db/schema/core/users.js.map +0 -1
  423. package/dist/db/tenant-migrator.d.ts +0 -11
  424. package/dist/db/tenant-migrator.d.ts.map +0 -1
  425. package/dist/db/tenant-migrator.js +0 -74
  426. package/dist/db/tenant-migrator.js.map +0 -1
  427. package/dist/db/tenant-schema.d.ts +0 -290
  428. package/dist/db/tenant-schema.d.ts.map +0 -1
  429. package/dist/db/tenant-schema.js +0 -32
  430. package/dist/db/tenant-schema.js.map +0 -1
  431. package/dist/hooks/constants.d.ts +0 -40
  432. package/dist/hooks/constants.d.ts.map +0 -1
  433. package/dist/hooks/constants.js +0 -53
  434. package/dist/hooks/constants.js.map +0 -1
  435. package/dist/hooks/context-monitor.d.ts +0 -33
  436. package/dist/hooks/context-monitor.d.ts.map +0 -1
  437. package/dist/hooks/context-monitor.js +0 -117
  438. package/dist/hooks/context-monitor.js.map +0 -1
  439. package/dist/hooks/delegate-monitor.d.ts +0 -24
  440. package/dist/hooks/delegate-monitor.d.ts.map +0 -1
  441. package/dist/hooks/delegate-monitor.js +0 -76
  442. package/dist/hooks/delegate-monitor.js.map +0 -1
  443. package/dist/hooks/index.d.ts +0 -4
  444. package/dist/hooks/index.d.ts.map +0 -1
  445. package/dist/hooks/index.js +0 -4
  446. package/dist/hooks/index.js.map +0 -1
  447. package/dist/hooks/statusline.d.ts +0 -29
  448. package/dist/hooks/statusline.d.ts.map +0 -1
  449. package/dist/hooks/statusline.js +0 -134
  450. package/dist/hooks/statusline.js.map +0 -1
  451. package/dist/index.d.ts +0 -8
  452. package/dist/index.d.ts.map +0 -1
  453. package/dist/index.js +0 -6
  454. package/dist/index.js.map +0 -1
  455. package/dist/mcp/delegate-channel-relay.d.ts +0 -51
  456. package/dist/mcp/delegate-channel-relay.d.ts.map +0 -1
  457. package/dist/mcp/delegate-channel-relay.js +0 -307
  458. package/dist/mcp/delegate-channel-relay.js.map +0 -1
  459. package/dist/mcp/server.d.ts +0 -6
  460. package/dist/mcp/server.d.ts.map +0 -1
  461. package/dist/mcp/server.js +0 -64
  462. package/dist/mcp/server.js.map +0 -1
  463. package/dist/middleware/auth.d.ts +0 -13
  464. package/dist/middleware/auth.d.ts.map +0 -1
  465. package/dist/middleware/auth.js +0 -27
  466. package/dist/middleware/auth.js.map +0 -1
  467. package/dist/middleware/permission.d.ts +0 -9
  468. package/dist/middleware/permission.d.ts.map +0 -1
  469. package/dist/middleware/permission.js +0 -19
  470. package/dist/middleware/permission.js.map +0 -1
  471. package/dist/middleware/rate-limit.d.ts +0 -9
  472. package/dist/middleware/rate-limit.d.ts.map +0 -1
  473. package/dist/middleware/rate-limit.js +0 -40
  474. package/dist/middleware/rate-limit.js.map +0 -1
  475. package/dist/middleware/tenant.d.ts +0 -17
  476. package/dist/middleware/tenant.d.ts.map +0 -1
  477. package/dist/middleware/tenant.js +0 -57
  478. package/dist/middleware/tenant.js.map +0 -1
  479. package/dist/middleware/validation.d.ts +0 -40
  480. package/dist/middleware/validation.d.ts.map +0 -1
  481. package/dist/middleware/validation.js +0 -51
  482. package/dist/middleware/validation.js.map +0 -1
  483. package/dist/routes/auth.d.ts +0 -3
  484. package/dist/routes/auth.d.ts.map +0 -1
  485. package/dist/routes/auth.js +0 -77
  486. package/dist/routes/auth.js.map +0 -1
  487. package/dist/routes/members.d.ts +0 -4
  488. package/dist/routes/members.d.ts.map +0 -1
  489. package/dist/routes/members.js +0 -114
  490. package/dist/routes/members.js.map +0 -1
  491. package/dist/routes/organizations.d.ts +0 -5
  492. package/dist/routes/organizations.d.ts.map +0 -1
  493. package/dist/routes/organizations.js +0 -97
  494. package/dist/routes/organizations.js.map +0 -1
  495. package/dist/services/auth.service.d.ts +0 -24
  496. package/dist/services/auth.service.d.ts.map +0 -1
  497. package/dist/services/auth.service.js +0 -70
  498. package/dist/services/auth.service.js.map +0 -1
  499. package/dist/services/password.service.d.ts +0 -3
  500. package/dist/services/password.service.d.ts.map +0 -1
  501. package/dist/services/password.service.js +0 -18
  502. package/dist/services/password.service.js.map +0 -1
  503. package/dist/services/rbac.service.d.ts +0 -7
  504. package/dist/services/rbac.service.d.ts.map +0 -1
  505. package/dist/services/rbac.service.js +0 -36
  506. package/dist/services/rbac.service.js.map +0 -1
  507. package/dist/services/token.service.d.ts +0 -18
  508. package/dist/services/token.service.d.ts.map +0 -1
  509. package/dist/services/token.service.js +0 -86
  510. package/dist/services/token.service.js.map +0 -1
  511. package/dist/tools/core-memory.d.ts +0 -12
  512. package/dist/tools/core-memory.d.ts.map +0 -1
  513. package/dist/tools/core-memory.js +0 -276
  514. package/dist/tools/core-memory.js.map +0 -1
  515. package/dist/tools/edit-file.d.ts +0 -25
  516. package/dist/tools/edit-file.d.ts.map +0 -1
  517. package/dist/tools/edit-file.js +0 -462
  518. package/dist/tools/edit-file.js.map +0 -1
  519. package/dist/tools/index.d.ts +0 -8
  520. package/dist/tools/index.d.ts.map +0 -1
  521. package/dist/tools/index.js +0 -536
  522. package/dist/tools/index.js.map +0 -1
  523. package/dist/tools/read-file.d.ts +0 -13
  524. package/dist/tools/read-file.d.ts.map +0 -1
  525. package/dist/tools/read-file.js +0 -91
  526. package/dist/tools/read-file.js.map +0 -1
  527. package/dist/tools/read-many-files.d.ts +0 -15
  528. package/dist/tools/read-many-files.d.ts.map +0 -1
  529. package/dist/tools/read-many-files.js +0 -187
  530. package/dist/tools/read-many-files.js.map +0 -1
  531. package/dist/tools/spec-index-builder.d.ts +0 -58
  532. package/dist/tools/spec-index-builder.d.ts.map +0 -1
  533. package/dist/tools/spec-index-builder.js +0 -211
  534. package/dist/tools/spec-index-builder.js.map +0 -1
  535. package/dist/tools/spec-init.d.ts +0 -17
  536. package/dist/tools/spec-init.d.ts.map +0 -1
  537. package/dist/tools/spec-init.js +0 -215
  538. package/dist/tools/spec-init.js.map +0 -1
  539. package/dist/tools/spec-keyword-extractor.d.ts +0 -24
  540. package/dist/tools/spec-keyword-extractor.d.ts.map +0 -1
  541. package/dist/tools/spec-keyword-extractor.js +0 -84
  542. package/dist/tools/spec-keyword-extractor.js.map +0 -1
  543. package/dist/tools/spec-keyword-extractor.test.d.ts +0 -2
  544. package/dist/tools/spec-keyword-extractor.test.d.ts.map +0 -1
  545. package/dist/tools/spec-keyword-extractor.test.js +0 -99
  546. package/dist/tools/spec-keyword-extractor.test.js.map +0 -1
  547. package/dist/tools/spec-loader.d.ts +0 -15
  548. package/dist/tools/spec-loader.d.ts.map +0 -1
  549. package/dist/tools/spec-loader.js +0 -93
  550. package/dist/tools/spec-loader.js.map +0 -1
  551. package/dist/tools/team-msg.d.ts +0 -52
  552. package/dist/tools/team-msg.d.ts.map +0 -1
  553. package/dist/tools/team-msg.js +0 -449
  554. package/dist/tools/team-msg.js.map +0 -1
  555. package/dist/tools/write-file.d.ts +0 -19
  556. package/dist/tools/write-file.d.ts.map +0 -1
  557. package/dist/tools/write-file.js +0 -165
  558. package/dist/tools/write-file.js.map +0 -1
  559. package/dist/types/index.d.ts +0 -47
  560. package/dist/types/index.d.ts.map +0 -1
  561. package/dist/types/index.js +0 -2
  562. package/dist/types/index.js.map +0 -1
  563. package/dist/types/tool-schema.d.ts +0 -37
  564. package/dist/types/tool-schema.d.ts.map +0 -1
  565. package/dist/types/tool-schema.js +0 -24
  566. package/dist/types/tool-schema.js.map +0 -1
  567. package/dist/utils/file-reader.d.ts +0 -74
  568. package/dist/utils/file-reader.d.ts.map +0 -1
  569. package/dist/utils/file-reader.js +0 -217
  570. package/dist/utils/file-reader.js.map +0 -1
  571. package/dist/utils/path-validator.d.ts +0 -52
  572. package/dist/utils/path-validator.d.ts.map +0 -1
  573. package/dist/utils/path-validator.js +0 -151
  574. package/dist/utils/path-validator.js.map +0 -1
@@ -1,78 +1,78 @@
1
- ---
2
- role: validator
3
- prefix: TDVAL
4
- inner_loop: false
5
- message_types: [state_update]
6
- ---
7
-
8
- # Tech Debt Validator
9
-
10
- Cleanup result validator. Run test suite, type checks, lint checks, and quality analysis to verify debt cleanup introduced no regressions. Compare before/after debt scores, produce validation-report.json.
11
-
12
- ## Phase 2: Load Context
13
-
14
- | Input | Source | Required |
15
- |-------|--------|----------|
16
- | Session path | task description (regex: `session:\s*(.+)`) | Yes |
17
- | .msg/meta.json | <session>/.msg/meta.json | Yes |
18
- | Fix log | <session>/fixes/fix-log.json | No |
19
-
20
- 1. Extract session path from task description
21
- 2. Read .msg/meta.json for: worktree.path, debt_inventory, fix_results, debt_score_before
22
- 3. Determine command prefix: `cd "<worktree-path>" && ` if worktree exists
23
- 4. Read fix-log.json for modified files list
24
- 5. Detect available validation tools in worktree:
25
-
26
- | Signal | Tool | Method |
27
- |--------|------|--------|
28
- | package.json + npm | npm test | Test suite |
29
- | pytest available | python -m pytest | Test suite |
30
- | npx tsc available | npx tsc --noEmit | Type check |
31
- | npx eslint available | npx eslint | Lint check |
32
-
33
- ## Phase 3: Run Validation Checks
34
-
35
- Execute 4-layer validation (all commands in worktree):
36
-
37
- **1. Test Suite**:
38
- - Run `npm test` or `python -m pytest` in worktree
39
- - PASS if no FAIL/error/failed keywords; FAIL with regression count otherwise
40
- - Skip with "no-tests" if no test runner available
41
-
42
- **2. Type Check**:
43
- - Run `npx tsc --noEmit` in worktree
44
- - Count `error TS` occurrences for error count
45
-
46
- **3. Lint Check**:
47
- - Run `npx eslint --no-error-on-unmatched-pattern <modified-files>` in worktree
48
- - Count error occurrences
49
-
50
- **4. Quality Analysis** (optional, when > 5 modified files):
51
- - Use gemini CLI to compare code quality before/after
52
- - Assess complexity, duplication, naming quality improvements
53
-
54
- **Debt Score Calculation**:
55
- - debt_score_after = debt items NOT in modified files (remaining unfixed items)
56
- - improvement_percentage = ((before - after) / before) * 100
57
-
58
- **Auto-fix attempt** (when total_regressions <= 3):
59
- - Use CLI tool to fix regressions in worktree:
60
- ```
61
- Bash({
62
- command: `cd "${worktreePath}" && maestro cli -p "PURPOSE: Fix regressions found in validation
63
- TASK: ${regressionDetails}
64
- MODE: write
65
- CONTEXT: @${modifiedFiles.join(' @')}
66
- EXPECTED: Fixed regressions
67
- CONSTRAINTS: Fix only regressions | Preserve debt cleanup changes | No suppressions" --tool gemini --mode write`,
68
- run_in_background: false
69
- })
70
- ```
71
- - Re-run validation checks after fix attempt
72
-
73
- ## Phase 4: Compare & Report
74
-
75
- 1. Calculate: total_regressions = test_regressions + type_errors + lint_errors; passed = (total_regressions === 0)
76
- 2. Write `<session>/validation/validation-report.json` with: validation_date, passed, regressions, checks (per-check status), debt_score_before, debt_score_after, improvement_percentage
77
- 3. Update .msg/meta.json with `validation_results` and `debt_score_after`
78
- 4. Select message type: `validation_complete` if passed, `regression_found` if not
1
+ ---
2
+ role: validator
3
+ prefix: TDVAL
4
+ inner_loop: false
5
+ message_types: [state_update]
6
+ ---
7
+
8
+ # Tech Debt Validator
9
+
10
+ Cleanup result validator. Run test suite, type checks, lint checks, and quality analysis to verify debt cleanup introduced no regressions. Compare before/after debt scores, produce validation-report.json.
11
+
12
+ ## Phase 2: Load Context
13
+
14
+ | Input | Source | Required |
15
+ |-------|--------|----------|
16
+ | Session path | task description (regex: `session:\s*(.+)`) | Yes |
17
+ | .msg/meta.json | <session>/.msg/meta.json | Yes |
18
+ | Fix log | <session>/fixes/fix-log.json | No |
19
+
20
+ 1. Extract session path from task description
21
+ 2. Read .msg/meta.json for: worktree.path, debt_inventory, fix_results, debt_score_before
22
+ 3. Determine command prefix: `cd "<worktree-path>" && ` if worktree exists
23
+ 4. Read fix-log.json for modified files list
24
+ 5. Detect available validation tools in worktree:
25
+
26
+ | Signal | Tool | Method |
27
+ |--------|------|--------|
28
+ | package.json + npm | npm test | Test suite |
29
+ | pytest available | python -m pytest | Test suite |
30
+ | npx tsc available | npx tsc --noEmit | Type check |
31
+ | npx eslint available | npx eslint | Lint check |
32
+
33
+ ## Phase 3: Run Validation Checks
34
+
35
+ Execute 4-layer validation (all commands in worktree):
36
+
37
+ **1. Test Suite**:
38
+ - Run `npm test` or `python -m pytest` in worktree
39
+ - PASS if no FAIL/error/failed keywords; FAIL with regression count otherwise
40
+ - Skip with "no-tests" if no test runner available
41
+
42
+ **2. Type Check**:
43
+ - Run `npx tsc --noEmit` in worktree
44
+ - Count `error TS` occurrences for error count
45
+
46
+ **3. Lint Check**:
47
+ - Run `npx eslint --no-error-on-unmatched-pattern <modified-files>` in worktree
48
+ - Count error occurrences
49
+
50
+ **4. Quality Analysis** (optional, when > 5 modified files):
51
+ - Use gemini CLI to compare code quality before/after
52
+ - Assess complexity, duplication, naming quality improvements
53
+
54
+ **Debt Score Calculation**:
55
+ - debt_score_after = debt items NOT in modified files (remaining unfixed items)
56
+ - improvement_percentage = ((before - after) / before) * 100
57
+
58
+ **Auto-fix attempt** (when total_regressions <= 3):
59
+ - Use CLI tool to fix regressions in worktree:
60
+ ```
61
+ Bash({
62
+ command: `cd "${worktreePath}" && maestro delegate "PURPOSE: Fix regressions found in validation
63
+ TASK: ${regressionDetails}
64
+ MODE: write
65
+ CONTEXT: @${modifiedFiles.join(' @')}
66
+ EXPECTED: Fixed regressions
67
+ CONSTRAINTS: Fix only regressions | Preserve debt cleanup changes | No suppressions" --tool gemini --mode write`,
68
+ run_in_background: false
69
+ })
70
+ ```
71
+ - Re-run validation checks after fix attempt
72
+
73
+ ## Phase 4: Compare & Report
74
+
75
+ 1. Calculate: total_regressions = test_regressions + type_errors + lint_errors; passed = (total_regressions === 0)
76
+ 2. Write `<session>/validation/validation-report.json` with: validation_date, passed, regressions, checks (per-check status), debt_score_before, debt_score_after, improvement_percentage
77
+ 3. Update .msg/meta.json with `validation_results` and `debt_score_after`
78
+ 4. Select message type: `validation_complete` if passed, `regression_found` if not
@@ -1,143 +1,143 @@
1
- ---
2
- name: team-testing
3
- description: Unified team skill for testing team. Progressive test coverage through Generator-Critic loops, shared memory, and dynamic layer selection. Triggers on "team testing".
4
- allowed-tools: TeamCreate(*), TeamDelete(*), SendMessage(*), TaskCreate(*), TaskUpdate(*), TaskList(*), TaskGet(*), Agent(*), AskUserQuestion(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*), mcp__ccw-tools__team_msg(*)
5
- ---
6
-
7
- # Team Testing
8
-
9
- Orchestrate multi-agent test pipeline: strategist -> generator -> executor -> analyst. Progressive layer coverage (L1/L2/L3) with Generator-Critic loops for coverage convergence.
10
-
11
- ## Architecture
12
-
13
- ```
14
- Skill(skill="team-testing", args="task description")
15
- |
16
- SKILL.md (this file) = Router
17
- |
18
- +--------------+--------------+
19
- | |
20
- no --role flag --role <name>
21
- | |
22
- Coordinator Worker
23
- roles/coordinator/role.md roles/<name>/role.md
24
- |
25
- +-- analyze -> dispatch -> spawn workers -> STOP
26
- |
27
- +-------+-------+-------+-------+
28
- v v v v
29
- [strat] [gen] [exec] [analyst]
30
- team-worker agents, each loads roles/<role>/role.md
31
- ```
32
-
33
- ## Role Registry
34
-
35
- | Role | Path | Prefix | Inner Loop |
36
- |------|------|--------|------------|
37
- | coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | — | — |
38
- | strategist | [roles/strategist/role.md](roles/strategist/role.md) | STRATEGY-* | false |
39
- | generator | [roles/generator/role.md](roles/generator/role.md) | TESTGEN-* | true |
40
- | executor | [roles/executor/role.md](roles/executor/role.md) | TESTRUN-* | true |
41
- | analyst | [roles/analyst/role.md](roles/analyst/role.md) | TESTANA-* | false |
42
-
43
- ## Role Router
44
-
45
- Parse `$ARGUMENTS`:
46
- - Has `--role <name>` -> Read `roles/<name>/role.md`, execute Phase 2-4
47
- - No `--role` -> `@roles/coordinator/role.md`, execute entry router
48
-
49
- ## Shared Constants
50
-
51
- - **Session prefix**: `TST`
52
- - **Session path**: `.workflow/.team/TST-<slug>-<date>/`
53
- - **Team name**: `testing`
54
- - **CLI tools**: `maestro cli --mode analysis` (read-only), `maestro cli --mode write` (modifications)
55
- - **Message bus**: `mcp__ccw-tools__team_msg(session_id=<session-id>, ...)`
56
-
57
- ## Worker Spawn Template
58
-
59
- Coordinator spawns workers using this template:
60
-
61
- ```
62
- Agent({
63
- subagent_type: "team-worker",
64
- description: "Spawn <role> worker",
65
- team_name: "testing",
66
- name: "<role>",
67
- run_in_background: true,
68
- prompt: `## Role Assignment
69
- role: <role>
70
- role_spec: <skill_root>/roles/<role>/role.md
71
- session: <session-folder>
72
- session_id: <session-id>
73
- team_name: testing
74
- requirement: <task-description>
75
- inner_loop: <true|false>
76
-
77
- ## Progress Milestones
78
- session_id: <session-id>
79
- Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
80
- Report blockers immediately via team_msg type="blocker".
81
- Report completion via team_msg type="task_complete" after final SendMessage.
82
-
83
- Read role_spec file (@<skill_root>/roles/<role>/role.md) to load Phase 2-4 domain instructions.
84
- Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
85
- })
86
- ```
87
-
88
- ## User Commands
89
-
90
- | Command | Action |
91
- |---------|--------|
92
- | `check` / `status` | View pipeline status graph |
93
- | `resume` / `continue` | Advance to next step |
94
- | `revise <TASK-ID>` | Revise specific task |
95
- | `feedback <text>` | Inject feedback for revision |
96
-
97
- ## Completion Action
98
-
99
- When pipeline completes, coordinator presents:
100
-
101
- ```
102
- AskUserQuestion({
103
- questions: [{
104
- question: "Testing pipeline complete. What would you like to do?",
105
- header: "Completion",
106
- multiSelect: false,
107
- options: [
108
- { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
109
- { label: "Keep Active", description: "Keep session for follow-up work" },
110
- { label: "Deepen Coverage", description: "Add more test layers or increase coverage targets" }
111
- ]
112
- }]
113
- })
114
- ```
115
-
116
- ## Session Directory
117
-
118
- ```
119
- .workflow/.team/TST-<slug>-<date>/
120
- ├── .msg/messages.jsonl # Team message bus
121
- ├── .msg/meta.json # Session metadata
122
- ├── wisdom/ # Cross-task knowledge
123
- ├── strategy/ # Strategist output
124
- ├── tests/ # Generator output (L1-unit/, L2-integration/, L3-e2e/)
125
- ├── results/ # Executor output
126
- └── analysis/ # Analyst output
127
- ```
128
-
129
- ## Specs Reference
130
-
131
- - [specs/pipelines.md](specs/pipelines.md) — Pipeline definitions and task registry
132
- - [specs/team-config.json](specs/team-config.json) — Team configuration
133
-
134
- ## Error Handling
135
-
136
- | Scenario | Resolution |
137
- |----------|------------|
138
- | Unknown --role value | Error with available role list |
139
- | Role not found | Error with expected path (roles/<name>/role.md) |
140
- | CLI tool fails | Worker fallback to direct implementation |
141
- | GC loop exceeded | Accept current coverage with warning |
142
- | Fast-advance conflict | Coordinator reconciles on next callback |
143
- | Completion action fails | Default to Keep Active |
1
+ ---
2
+ name: team-testing
3
+ description: Unified team skill for testing team. Progressive test coverage through Generator-Critic loops, shared memory, and dynamic layer selection. Triggers on "team testing".
4
+ allowed-tools: TeamCreate(*), TeamDelete(*), SendMessage(*), TaskCreate(*), TaskUpdate(*), TaskList(*), TaskGet(*), Agent(*), AskUserQuestion(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*), mcp__ccw-tools__team_msg(*)
5
+ ---
6
+
7
+ # Team Testing
8
+
9
+ Orchestrate multi-agent test pipeline: strategist -> generator -> executor -> analyst. Progressive layer coverage (L1/L2/L3) with Generator-Critic loops for coverage convergence.
10
+
11
+ ## Architecture
12
+
13
+ ```
14
+ Skill(skill="team-testing", args="task description")
15
+ |
16
+ SKILL.md (this file) = Router
17
+ |
18
+ +--------------+--------------+
19
+ | |
20
+ no --role flag --role <name>
21
+ | |
22
+ Coordinator Worker
23
+ roles/coordinator/role.md roles/<name>/role.md
24
+ |
25
+ +-- analyze -> dispatch -> spawn workers -> STOP
26
+ |
27
+ +-------+-------+-------+-------+
28
+ v v v v
29
+ [strat] [gen] [exec] [analyst]
30
+ team-worker agents, each loads roles/<role>/role.md
31
+ ```
32
+
33
+ ## Role Registry
34
+
35
+ | Role | Path | Prefix | Inner Loop |
36
+ |------|------|--------|------------|
37
+ | coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | — | — |
38
+ | strategist | [roles/strategist/role.md](roles/strategist/role.md) | STRATEGY-* | false |
39
+ | generator | [roles/generator/role.md](roles/generator/role.md) | TESTGEN-* | true |
40
+ | executor | [roles/executor/role.md](roles/executor/role.md) | TESTRUN-* | true |
41
+ | analyst | [roles/analyst/role.md](roles/analyst/role.md) | TESTANA-* | false |
42
+
43
+ ## Role Router
44
+
45
+ Parse `$ARGUMENTS`:
46
+ - Has `--role <name>` -> Read `roles/<name>/role.md`, execute Phase 2-4
47
+ - No `--role` -> `@roles/coordinator/role.md`, execute entry router
48
+
49
+ ## Shared Constants
50
+
51
+ - **Session prefix**: `TST`
52
+ - **Session path**: `.workflow/.team/TST-<slug>-<date>/`
53
+ - **Team name**: `testing`
54
+ - **CLI tools**: `maestro delegate --mode analysis` (read-only), `maestro delegate --mode write` (modifications)
55
+ - **Message bus**: `mcp__ccw-tools__team_msg(session_id=<session-id>, ...)`
56
+
57
+ ## Worker Spawn Template
58
+
59
+ Coordinator spawns workers using this template:
60
+
61
+ ```
62
+ Agent({
63
+ subagent_type: "team-worker",
64
+ description: "Spawn <role> worker",
65
+ team_name: "testing",
66
+ name: "<role>",
67
+ run_in_background: true,
68
+ prompt: `## Role Assignment
69
+ role: <role>
70
+ role_spec: <skill_root>/roles/<role>/role.md
71
+ session: <session-folder>
72
+ session_id: <session-id>
73
+ team_name: testing
74
+ requirement: <task-description>
75
+ inner_loop: <true|false>
76
+
77
+ ## Progress Milestones
78
+ session_id: <session-id>
79
+ Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
80
+ Report blockers immediately via team_msg type="blocker".
81
+ Report completion via team_msg type="task_complete" after final SendMessage.
82
+
83
+ Read role_spec file (@<skill_root>/roles/<role>/role.md) to load Phase 2-4 domain instructions.
84
+ Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
85
+ })
86
+ ```
87
+
88
+ ## User Commands
89
+
90
+ | Command | Action |
91
+ |---------|--------|
92
+ | `check` / `status` | View pipeline status graph |
93
+ | `resume` / `continue` | Advance to next step |
94
+ | `revise <TASK-ID>` | Revise specific task |
95
+ | `feedback <text>` | Inject feedback for revision |
96
+
97
+ ## Completion Action
98
+
99
+ When pipeline completes, coordinator presents:
100
+
101
+ ```
102
+ AskUserQuestion({
103
+ questions: [{
104
+ question: "Testing pipeline complete. What would you like to do?",
105
+ header: "Completion",
106
+ multiSelect: false,
107
+ options: [
108
+ { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
109
+ { label: "Keep Active", description: "Keep session for follow-up work" },
110
+ { label: "Deepen Coverage", description: "Add more test layers or increase coverage targets" }
111
+ ]
112
+ }]
113
+ })
114
+ ```
115
+
116
+ ## Session Directory
117
+
118
+ ```
119
+ .workflow/.team/TST-<slug>-<date>/
120
+ ├── .msg/messages.jsonl # Team message bus
121
+ ├── .msg/meta.json # Session metadata
122
+ ├── wisdom/ # Cross-task knowledge
123
+ ├── strategy/ # Strategist output
124
+ ├── tests/ # Generator output (L1-unit/, L2-integration/, L3-e2e/)
125
+ ├── results/ # Executor output
126
+ └── analysis/ # Analyst output
127
+ ```
128
+
129
+ ## Specs Reference
130
+
131
+ - [specs/pipelines.md](specs/pipelines.md) — Pipeline definitions and task registry
132
+ - [specs/team-config.json](specs/team-config.json) — Team configuration
133
+
134
+ ## Error Handling
135
+
136
+ | Scenario | Resolution |
137
+ |----------|------------|
138
+ | Unknown --role value | Error with available role list |
139
+ | Role not found | Error with expected path (roles/<name>/role.md) |
140
+ | CLI tool fails | Worker fallback to direct implementation |
141
+ | GC loop exceeded | Accept current coverage with warning |
142
+ | Fast-advance conflict | Coordinator reconciles on next callback |
143
+ | Completion action fails | Default to Keep Active |
@@ -1,99 +1,99 @@
1
- ---
2
- role: executor
3
- prefix: TESTRUN
4
- inner_loop: true
5
- message_types:
6
- success: tests_passed
7
- failure: tests_failed
8
- coverage: coverage_report
9
- error: error
10
- ---
11
-
12
- # Test Executor
13
-
14
- Execute tests, collect coverage, attempt auto-fix for failures. Acts as the Critic in the Generator-Critic loop. Reports pass rate and coverage for coordinator GC decisions.
15
-
16
- ## Phase 2: Context Loading
17
-
18
- | Input | Source | Required |
19
- |-------|--------|----------|
20
- | Task description | From task subject/description | Yes |
21
- | Session path | Extracted from task description | Yes |
22
- | Test directory | Task description (Input: <path>) | Yes |
23
- | Coverage target | Task description (default: 80%) | Yes |
24
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
25
-
26
- 1. Extract session path and test directory from task description
27
- 2. Load test specs: Run `ccw spec load --category test` for test framework conventions and coverage targets
28
- 3. Extract coverage target (default: 80%)
29
- 3. Read .msg/meta.json for framework info (from strategist namespace)
30
- 4. Determine test framework:
31
-
32
- | Framework | Run Command |
33
- |-----------|-------------|
34
- | Jest | `npx jest --coverage --json --outputFile=<session>/results/jest-output.json` |
35
- | Pytest | `python -m pytest --cov --cov-report=json:<session>/results/coverage.json -v` |
36
- | Vitest | `npx vitest run --coverage --reporter=json` |
37
-
38
- 5. Find test files to execute:
39
-
40
- ```
41
- Glob("<session>/<test-dir>/**/*")
42
- ```
43
-
44
- ## Phase 3: Test Execution + Fix Cycle
45
-
46
- **Iterative test-fix cycle** (max 3 iterations):
47
-
48
- | Step | Action |
49
- |------|--------|
50
- | 1 | Run test command |
51
- | 2 | Parse results: pass rate + coverage |
52
- | 3 | pass_rate >= 0.95 AND coverage >= target -> success, exit |
53
- | 4 | Extract failing test details |
54
- | 5 | Delegate fix to CLI tool (gemini write mode) |
55
- | 6 | Increment iteration; >= 3 -> exit with failures |
56
-
57
- ```
58
- Bash("<test-command> 2>&1 || true")
59
- ```
60
-
61
- **Auto-fix delegation** (on failure):
62
-
63
- ```
64
- Bash({
65
- command: `maestro cli -p "PURPOSE: Fix test failures to achieve pass rate >= 0.95; success = all tests pass
66
- TASK: • Analyze test failure output • Identify root causes • Fix test code only (not source) • Preserve test intent
67
- MODE: write
68
- CONTEXT: @<session>/<test-dir>/**/* | Memory: Test framework: <framework>, iteration <N>/3
69
- EXPECTED: Fixed test files with: corrected assertions, proper async handling, fixed imports, maintained coverage
70
- CONSTRAINTS: Only modify test files | Preserve test structure | No source code changes
71
- Test failures:
72
- <test-output>" --tool gemini --mode write --cd <session>`,
73
- run_in_background: false
74
- })
75
- ```
76
-
77
- **Save results**: `<session>/results/run-<N>.json`
78
-
79
- ## Phase 4: Defect Pattern Extraction & State Update
80
-
81
- **Extract defect patterns from failures**:
82
-
83
- | Pattern Type | Detection Keywords |
84
- |--------------|-------------------|
85
- | Null reference | "null", "undefined", "Cannot read property" |
86
- | Async timing | "timeout", "async", "await", "promise" |
87
- | Import errors | "Cannot find module", "import" |
88
- | Type mismatches | "type", "expected", "received" |
89
-
90
- **Record effective test patterns** (if pass_rate > 0.8):
91
-
92
- | Pattern | Detection |
93
- |---------|-----------|
94
- | Happy path | "should succeed", "valid input" |
95
- | Edge cases | "edge", "boundary", "limit" |
96
- | Error handling | "should fail", "error", "throw" |
97
-
98
- Update `<session>/wisdom/.msg/meta.json` under `executor` namespace:
99
- - Merge `{ "executor": { pass_rate, coverage, defect_patterns, effective_patterns, coverage_history_entry } }`
1
+ ---
2
+ role: executor
3
+ prefix: TESTRUN
4
+ inner_loop: true
5
+ message_types:
6
+ success: tests_passed
7
+ failure: tests_failed
8
+ coverage: coverage_report
9
+ error: error
10
+ ---
11
+
12
+ # Test Executor
13
+
14
+ Execute tests, collect coverage, attempt auto-fix for failures. Acts as the Critic in the Generator-Critic loop. Reports pass rate and coverage for coordinator GC decisions.
15
+
16
+ ## Phase 2: Context Loading
17
+
18
+ | Input | Source | Required |
19
+ |-------|--------|----------|
20
+ | Task description | From task subject/description | Yes |
21
+ | Session path | Extracted from task description | Yes |
22
+ | Test directory | Task description (Input: <path>) | Yes |
23
+ | Coverage target | Task description (default: 80%) | Yes |
24
+ | .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
25
+
26
+ 1. Extract session path and test directory from task description
27
+ 2. Load test specs: Run `ccw spec load --category test` for test framework conventions and coverage targets
28
+ 3. Extract coverage target (default: 80%)
29
+ 3. Read .msg/meta.json for framework info (from strategist namespace)
30
+ 4. Determine test framework:
31
+
32
+ | Framework | Run Command |
33
+ |-----------|-------------|
34
+ | Jest | `npx jest --coverage --json --outputFile=<session>/results/jest-output.json` |
35
+ | Pytest | `python -m pytest --cov --cov-report=json:<session>/results/coverage.json -v` |
36
+ | Vitest | `npx vitest run --coverage --reporter=json` |
37
+
38
+ 5. Find test files to execute:
39
+
40
+ ```
41
+ Glob("<session>/<test-dir>/**/*")
42
+ ```
43
+
44
+ ## Phase 3: Test Execution + Fix Cycle
45
+
46
+ **Iterative test-fix cycle** (max 3 iterations):
47
+
48
+ | Step | Action |
49
+ |------|--------|
50
+ | 1 | Run test command |
51
+ | 2 | Parse results: pass rate + coverage |
52
+ | 3 | pass_rate >= 0.95 AND coverage >= target -> success, exit |
53
+ | 4 | Extract failing test details |
54
+ | 5 | Delegate fix to CLI tool (gemini write mode) |
55
+ | 6 | Increment iteration; >= 3 -> exit with failures |
56
+
57
+ ```
58
+ Bash("<test-command> 2>&1 || true")
59
+ ```
60
+
61
+ **Auto-fix delegation** (on failure):
62
+
63
+ ```
64
+ Bash({
65
+ command: `maestro delegate "PURPOSE: Fix test failures to achieve pass rate >= 0.95; success = all tests pass
66
+ TASK: • Analyze test failure output • Identify root causes • Fix test code only (not source) • Preserve test intent
67
+ MODE: write
68
+ CONTEXT: @<session>/<test-dir>/**/* | Memory: Test framework: <framework>, iteration <N>/3
69
+ EXPECTED: Fixed test files with: corrected assertions, proper async handling, fixed imports, maintained coverage
70
+ CONSTRAINTS: Only modify test files | Preserve test structure | No source code changes
71
+ Test failures:
72
+ <test-output>" --tool gemini --mode write --cd <session>`,
73
+ run_in_background: false
74
+ })
75
+ ```
76
+
77
+ **Save results**: `<session>/results/run-<N>.json`
78
+
79
+ ## Phase 4: Defect Pattern Extraction & State Update
80
+
81
+ **Extract defect patterns from failures**:
82
+
83
+ | Pattern Type | Detection Keywords |
84
+ |--------------|-------------------|
85
+ | Null reference | "null", "undefined", "Cannot read property" |
86
+ | Async timing | "timeout", "async", "await", "promise" |
87
+ | Import errors | "Cannot find module", "import" |
88
+ | Type mismatches | "type", "expected", "received" |
89
+
90
+ **Record effective test patterns** (if pass_rate > 0.8):
91
+
92
+ | Pattern | Detection |
93
+ |---------|-----------|
94
+ | Happy path | "should succeed", "valid input" |
95
+ | Edge cases | "edge", "boundary", "limit" |
96
+ | Error handling | "should fail", "error", "throw" |
97
+
98
+ Update `<session>/wisdom/.msg/meta.json` under `executor` namespace:
99
+ - Merge `{ "executor": { pass_rate, coverage, defect_patterns, effective_patterns, coverage_history_entry } }`