claude-flow 3.25.5 → 3.26.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 (312) hide show
  1. package/.claude/helpers/.helpers-version +1 -1
  2. package/.claude/helpers/helpers.manifest.json +5 -4
  3. package/.claude/helpers/hook-handler.cjs +129 -0
  4. package/.claude/helpers/statusline.cjs +300 -123
  5. package/.claude/proven-config.json +1 -1
  6. package/.claude/security-scans/scan-all-standard.json +321 -0
  7. package/.claude/security-scans/scan-code-deep.json +1209 -0
  8. package/.claude/security-scans/scan-deps-full.json +14 -0
  9. package/package.json +3 -1
  10. package/v3/@claude-flow/cli/catalog-manifest.json +12 -0
  11. package/v3/@claude-flow/cli/dist/src/commands/advisor.d.ts +15 -0
  12. package/v3/@claude-flow/cli/dist/src/commands/advisor.js +94 -0
  13. package/v3/@claude-flow/cli/dist/src/commands/doctor.js +151 -32
  14. package/v3/@claude-flow/cli/dist/src/commands/funnel.d.ts +13 -0
  15. package/v3/@claude-flow/cli/dist/src/commands/funnel.js +103 -0
  16. package/v3/@claude-flow/cli/dist/src/commands/hooks.js +112 -46
  17. package/v3/@claude-flow/cli/dist/src/commands/index.js +10 -0
  18. package/v3/@claude-flow/cli/dist/src/commands/init.js +44 -0
  19. package/v3/@claude-flow/cli/dist/src/commands/proxy.d.ts +21 -0
  20. package/v3/@claude-flow/cli/dist/src/commands/proxy.js +310 -0
  21. package/v3/@claude-flow/cli/dist/src/commands/security.js +29 -0
  22. package/v3/@claude-flow/cli/dist/src/commands/settings.d.ts +19 -0
  23. package/v3/@claude-flow/cli/dist/src/commands/settings.js +180 -0
  24. package/v3/@claude-flow/cli/dist/src/commands/version.d.ts +42 -0
  25. package/v3/@claude-flow/cli/dist/src/commands/version.js +106 -0
  26. package/v3/@claude-flow/cli/dist/src/funnel/advisor-tip.d.ts +58 -0
  27. package/v3/@claude-flow/cli/dist/src/funnel/advisor-tip.js +92 -0
  28. package/v3/@claude-flow/cli/dist/src/funnel/attribution.d.ts +37 -0
  29. package/v3/@claude-flow/cli/dist/src/funnel/attribution.js +101 -0
  30. package/v3/@claude-flow/cli/dist/src/funnel/consent.d.ts +22 -0
  31. package/v3/@claude-flow/cli/dist/src/funnel/consent.js +55 -0
  32. package/v3/@claude-flow/cli/dist/src/funnel/credit-errors.d.ts +31 -0
  33. package/v3/@claude-flow/cli/dist/src/funnel/credit-errors.js +88 -0
  34. package/v3/@claude-flow/cli/dist/src/funnel/credit-notifier.d.ts +44 -0
  35. package/v3/@claude-flow/cli/dist/src/funnel/credit-notifier.js +74 -0
  36. package/v3/@claude-flow/cli/dist/src/funnel/disclosure.d.ts +46 -0
  37. package/v3/@claude-flow/cli/dist/src/funnel/disclosure.js +97 -0
  38. package/v3/@claude-flow/cli/dist/src/funnel/enrollment.d.ts +36 -0
  39. package/v3/@claude-flow/cli/dist/src/funnel/enrollment.js +64 -0
  40. package/v3/@claude-flow/cli/dist/src/funnel/environment.d.ts +17 -0
  41. package/v3/@claude-flow/cli/dist/src/funnel/environment.js +39 -0
  42. package/v3/@claude-flow/cli/dist/src/funnel/event-transport.d.ts +51 -0
  43. package/v3/@claude-flow/cli/dist/src/funnel/event-transport.js +199 -0
  44. package/v3/@claude-flow/cli/dist/src/funnel/events.d.ts +42 -0
  45. package/v3/@claude-flow/cli/dist/src/funnel/events.js +150 -0
  46. package/v3/@claude-flow/cli/dist/src/funnel/index.d.ts +20 -0
  47. package/v3/@claude-flow/cli/dist/src/funnel/index.js +20 -0
  48. package/v3/@claude-flow/cli/dist/src/funnel/insights.d.ts +49 -0
  49. package/v3/@claude-flow/cli/dist/src/funnel/insights.js +120 -0
  50. package/v3/@claude-flow/cli/dist/src/funnel/local-signals.d.ts +15 -0
  51. package/v3/@claude-flow/cli/dist/src/funnel/local-signals.js +68 -0
  52. package/v3/@claude-flow/cli/dist/src/funnel/message-transport.d.ts +51 -0
  53. package/v3/@claude-flow/cli/dist/src/funnel/message-transport.js +149 -0
  54. package/v3/@claude-flow/cli/dist/src/funnel/messages.d.ts +55 -0
  55. package/v3/@claude-flow/cli/dist/src/funnel/messages.js +160 -0
  56. package/v3/@claude-flow/cli/dist/src/funnel/power-saver-notifier.d.ts +44 -0
  57. package/v3/@claude-flow/cli/dist/src/funnel/power-saver-notifier.js +92 -0
  58. package/v3/@claude-flow/cli/dist/src/funnel/precedence.d.ts +16 -0
  59. package/v3/@claude-flow/cli/dist/src/funnel/precedence.js +85 -0
  60. package/v3/@claude-flow/cli/dist/src/funnel/promo.d.ts +41 -0
  61. package/v3/@claude-flow/cli/dist/src/funnel/promo.js +144 -0
  62. package/v3/@claude-flow/cli/dist/src/funnel/rate-limit-notifier.d.ts +55 -0
  63. package/v3/@claude-flow/cli/dist/src/funnel/rate-limit-notifier.js +102 -0
  64. package/v3/@claude-flow/cli/dist/src/funnel/rotation.d.ts +19 -0
  65. package/v3/@claude-flow/cli/dist/src/funnel/rotation.js +70 -0
  66. package/v3/@claude-flow/cli/dist/src/funnel/state.d.ts +13 -0
  67. package/v3/@claude-flow/cli/dist/src/funnel/state.js +52 -0
  68. package/v3/@claude-flow/cli/dist/src/funnel/toggle-cooldown.d.ts +17 -0
  69. package/v3/@claude-flow/cli/dist/src/funnel/toggle-cooldown.js +32 -0
  70. package/v3/@claude-flow/cli/dist/src/funnel/types.d.ts +86 -0
  71. package/v3/@claude-flow/cli/dist/src/funnel/types.js +26 -0
  72. package/v3/@claude-flow/cli/dist/src/init/executor.js +25 -19
  73. package/v3/@claude-flow/cli/dist/src/init/helper-refresh.d.ts +33 -2
  74. package/v3/@claude-flow/cli/dist/src/init/helper-refresh.js +102 -12
  75. package/v3/@claude-flow/cli/dist/src/init/helpers-generator.js +52 -0
  76. package/v3/@claude-flow/cli/dist/src/init/mcp-generator.js +11 -6
  77. package/v3/@claude-flow/cli/dist/src/init/statusline-generator.js +282 -116
  78. package/v3/@claude-flow/cli/dist/src/services/daemon-autostart.js +28 -5
  79. package/v3/@claude-flow/cli/dist/src/services/fable-harness.d.ts +39 -0
  80. package/v3/@claude-flow/cli/dist/src/services/fable-harness.js +41 -0
  81. package/v3/@claude-flow/cli/package.json +16 -4
  82. package/v3/README.md +493 -0
  83. package/.claude/coordinator/config.json +0 -24
  84. package/.claude/coordinator/state.json +0 -37
  85. package/.claude/coordinator/tick-log/tick-01.json +0 -17
  86. package/.claude/coordinator/tick-log/tick-02.json +0 -17
  87. package/.claude/coordinator/tick-log/tick-03.json +0 -17
  88. package/.claude/coordinator/tick-log/tick-04.json +0 -14
  89. package/.claude/coordinator/tick-log/tick-05.json +0 -16
  90. package/.claude/settings.local.json +0 -11
  91. package/v3/@claude-flow/cli/dist/src/ruvector/lattice-wasm.d.ts +0 -14
  92. package/v3/@claude-flow/cli/dist/src/ruvector/lattice-wasm.js +0 -144
  93. package/v3/@claude-flow/guidance/dist/adversarial.d.ts +0 -284
  94. package/v3/@claude-flow/guidance/dist/adversarial.js +0 -572
  95. package/v3/@claude-flow/guidance/dist/analyzer.d.ts +0 -530
  96. package/v3/@claude-flow/guidance/dist/analyzer.js +0 -2587
  97. package/v3/@claude-flow/guidance/dist/artifacts.d.ts +0 -283
  98. package/v3/@claude-flow/guidance/dist/artifacts.js +0 -356
  99. package/v3/@claude-flow/guidance/dist/authority.d.ts +0 -290
  100. package/v3/@claude-flow/guidance/dist/authority.js +0 -558
  101. package/v3/@claude-flow/guidance/dist/capabilities.d.ts +0 -209
  102. package/v3/@claude-flow/guidance/dist/capabilities.js +0 -485
  103. package/v3/@claude-flow/guidance/dist/coherence.d.ts +0 -233
  104. package/v3/@claude-flow/guidance/dist/coherence.js +0 -372
  105. package/v3/@claude-flow/guidance/dist/compiler.d.ts +0 -87
  106. package/v3/@claude-flow/guidance/dist/compiler.js +0 -410
  107. package/v3/@claude-flow/guidance/dist/conformance-kit.d.ts +0 -225
  108. package/v3/@claude-flow/guidance/dist/conformance-kit.js +0 -629
  109. package/v3/@claude-flow/guidance/dist/continue-gate.d.ts +0 -214
  110. package/v3/@claude-flow/guidance/dist/continue-gate.js +0 -353
  111. package/v3/@claude-flow/guidance/dist/crypto-utils.d.ts +0 -17
  112. package/v3/@claude-flow/guidance/dist/crypto-utils.js +0 -24
  113. package/v3/@claude-flow/guidance/dist/evolution.d.ts +0 -282
  114. package/v3/@claude-flow/guidance/dist/evolution.js +0 -500
  115. package/v3/@claude-flow/guidance/dist/gates.d.ts +0 -79
  116. package/v3/@claude-flow/guidance/dist/gates.js +0 -302
  117. package/v3/@claude-flow/guidance/dist/gateway.d.ts +0 -206
  118. package/v3/@claude-flow/guidance/dist/gateway.js +0 -452
  119. package/v3/@claude-flow/guidance/dist/generators.d.ts +0 -153
  120. package/v3/@claude-flow/guidance/dist/generators.js +0 -682
  121. package/v3/@claude-flow/guidance/dist/headless.d.ts +0 -177
  122. package/v3/@claude-flow/guidance/dist/headless.js +0 -342
  123. package/v3/@claude-flow/guidance/dist/hooks.d.ts +0 -109
  124. package/v3/@claude-flow/guidance/dist/hooks.js +0 -347
  125. package/v3/@claude-flow/guidance/dist/index.d.ts +0 -205
  126. package/v3/@claude-flow/guidance/dist/index.js +0 -321
  127. package/v3/@claude-flow/guidance/dist/ledger.d.ts +0 -162
  128. package/v3/@claude-flow/guidance/dist/ledger.js +0 -375
  129. package/v3/@claude-flow/guidance/dist/manifest-validator.d.ts +0 -289
  130. package/v3/@claude-flow/guidance/dist/manifest-validator.js +0 -838
  131. package/v3/@claude-flow/guidance/dist/memory-gate.d.ts +0 -222
  132. package/v3/@claude-flow/guidance/dist/memory-gate.js +0 -382
  133. package/v3/@claude-flow/guidance/dist/meta-governance.d.ts +0 -265
  134. package/v3/@claude-flow/guidance/dist/meta-governance.js +0 -348
  135. package/v3/@claude-flow/guidance/dist/optimizer.d.ts +0 -104
  136. package/v3/@claude-flow/guidance/dist/optimizer.js +0 -329
  137. package/v3/@claude-flow/guidance/dist/persistence.d.ts +0 -189
  138. package/v3/@claude-flow/guidance/dist/persistence.js +0 -464
  139. package/v3/@claude-flow/guidance/dist/proof.d.ts +0 -185
  140. package/v3/@claude-flow/guidance/dist/proof.js +0 -238
  141. package/v3/@claude-flow/guidance/dist/retriever.d.ts +0 -172
  142. package/v3/@claude-flow/guidance/dist/retriever.js +0 -596
  143. package/v3/@claude-flow/guidance/dist/ruvbot-integration.d.ts +0 -370
  144. package/v3/@claude-flow/guidance/dist/ruvbot-integration.js +0 -738
  145. package/v3/@claude-flow/guidance/dist/temporal.d.ts +0 -426
  146. package/v3/@claude-flow/guidance/dist/temporal.js +0 -658
  147. package/v3/@claude-flow/guidance/dist/trust.d.ts +0 -283
  148. package/v3/@claude-flow/guidance/dist/trust.js +0 -473
  149. package/v3/@claude-flow/guidance/dist/truth-anchors.d.ts +0 -276
  150. package/v3/@claude-flow/guidance/dist/truth-anchors.js +0 -488
  151. package/v3/@claude-flow/guidance/dist/types.d.ts +0 -378
  152. package/v3/@claude-flow/guidance/dist/types.js +0 -10
  153. package/v3/@claude-flow/guidance/dist/uncertainty.d.ts +0 -372
  154. package/v3/@claude-flow/guidance/dist/uncertainty.js +0 -619
  155. package/v3/@claude-flow/guidance/dist/wasm-kernel.d.ts +0 -48
  156. package/v3/@claude-flow/guidance/dist/wasm-kernel.js +0 -158
  157. package/v3/@claude-flow/shared/dist/core/config/defaults.d.ts +0 -41
  158. package/v3/@claude-flow/shared/dist/core/config/defaults.js +0 -186
  159. package/v3/@claude-flow/shared/dist/core/config/index.d.ts +0 -8
  160. package/v3/@claude-flow/shared/dist/core/config/index.js +0 -12
  161. package/v3/@claude-flow/shared/dist/core/config/loader.d.ts +0 -45
  162. package/v3/@claude-flow/shared/dist/core/config/loader.js +0 -238
  163. package/v3/@claude-flow/shared/dist/core/config/schema.d.ts +0 -1728
  164. package/v3/@claude-flow/shared/dist/core/config/schema.js +0 -160
  165. package/v3/@claude-flow/shared/dist/core/config/validator.d.ts +0 -92
  166. package/v3/@claude-flow/shared/dist/core/config/validator.js +0 -147
  167. package/v3/@claude-flow/shared/dist/core/event-bus.d.ts +0 -31
  168. package/v3/@claude-flow/shared/dist/core/event-bus.js +0 -197
  169. package/v3/@claude-flow/shared/dist/core/index.d.ts +0 -15
  170. package/v3/@claude-flow/shared/dist/core/index.js +0 -19
  171. package/v3/@claude-flow/shared/dist/core/interfaces/agent.interface.d.ts +0 -200
  172. package/v3/@claude-flow/shared/dist/core/interfaces/agent.interface.js +0 -6
  173. package/v3/@claude-flow/shared/dist/core/interfaces/coordinator.interface.d.ts +0 -310
  174. package/v3/@claude-flow/shared/dist/core/interfaces/coordinator.interface.js +0 -7
  175. package/v3/@claude-flow/shared/dist/core/interfaces/event.interface.d.ts +0 -224
  176. package/v3/@claude-flow/shared/dist/core/interfaces/event.interface.js +0 -46
  177. package/v3/@claude-flow/shared/dist/core/interfaces/index.d.ts +0 -10
  178. package/v3/@claude-flow/shared/dist/core/interfaces/index.js +0 -15
  179. package/v3/@claude-flow/shared/dist/core/interfaces/memory.interface.d.ts +0 -298
  180. package/v3/@claude-flow/shared/dist/core/interfaces/memory.interface.js +0 -7
  181. package/v3/@claude-flow/shared/dist/core/interfaces/task.interface.d.ts +0 -185
  182. package/v3/@claude-flow/shared/dist/core/interfaces/task.interface.js +0 -6
  183. package/v3/@claude-flow/shared/dist/core/orchestrator/event-coordinator.d.ts +0 -35
  184. package/v3/@claude-flow/shared/dist/core/orchestrator/event-coordinator.js +0 -101
  185. package/v3/@claude-flow/shared/dist/core/orchestrator/health-monitor.d.ts +0 -60
  186. package/v3/@claude-flow/shared/dist/core/orchestrator/health-monitor.js +0 -166
  187. package/v3/@claude-flow/shared/dist/core/orchestrator/index.d.ts +0 -46
  188. package/v3/@claude-flow/shared/dist/core/orchestrator/index.js +0 -64
  189. package/v3/@claude-flow/shared/dist/core/orchestrator/lifecycle-manager.d.ts +0 -56
  190. package/v3/@claude-flow/shared/dist/core/orchestrator/lifecycle-manager.js +0 -195
  191. package/v3/@claude-flow/shared/dist/core/orchestrator/session-manager.d.ts +0 -83
  192. package/v3/@claude-flow/shared/dist/core/orchestrator/session-manager.js +0 -193
  193. package/v3/@claude-flow/shared/dist/core/orchestrator/task-manager.d.ts +0 -49
  194. package/v3/@claude-flow/shared/dist/core/orchestrator/task-manager.js +0 -253
  195. package/v3/@claude-flow/shared/dist/events/domain-events.d.ts +0 -282
  196. package/v3/@claude-flow/shared/dist/events/domain-events.js +0 -165
  197. package/v3/@claude-flow/shared/dist/events/event-store.d.ts +0 -126
  198. package/v3/@claude-flow/shared/dist/events/event-store.js +0 -427
  199. package/v3/@claude-flow/shared/dist/events/event-store.test.d.ts +0 -8
  200. package/v3/@claude-flow/shared/dist/events/event-store.test.js +0 -293
  201. package/v3/@claude-flow/shared/dist/events/example-usage.d.ts +0 -10
  202. package/v3/@claude-flow/shared/dist/events/example-usage.js +0 -193
  203. package/v3/@claude-flow/shared/dist/events/index.d.ts +0 -21
  204. package/v3/@claude-flow/shared/dist/events/index.js +0 -22
  205. package/v3/@claude-flow/shared/dist/events/projections.d.ts +0 -177
  206. package/v3/@claude-flow/shared/dist/events/projections.js +0 -421
  207. package/v3/@claude-flow/shared/dist/events/rvf-event-log.d.ts +0 -82
  208. package/v3/@claude-flow/shared/dist/events/rvf-event-log.js +0 -340
  209. package/v3/@claude-flow/shared/dist/events/state-reconstructor.d.ts +0 -101
  210. package/v3/@claude-flow/shared/dist/events/state-reconstructor.js +0 -263
  211. package/v3/@claude-flow/shared/dist/events.d.ts +0 -80
  212. package/v3/@claude-flow/shared/dist/events.js +0 -249
  213. package/v3/@claude-flow/shared/dist/hooks/example-usage.d.ts +0 -42
  214. package/v3/@claude-flow/shared/dist/hooks/example-usage.js +0 -351
  215. package/v3/@claude-flow/shared/dist/hooks/executor.d.ts +0 -100
  216. package/v3/@claude-flow/shared/dist/hooks/executor.js +0 -267
  217. package/v3/@claude-flow/shared/dist/hooks/hooks.test.d.ts +0 -9
  218. package/v3/@claude-flow/shared/dist/hooks/hooks.test.js +0 -322
  219. package/v3/@claude-flow/shared/dist/hooks/index.d.ts +0 -52
  220. package/v3/@claude-flow/shared/dist/hooks/index.js +0 -51
  221. package/v3/@claude-flow/shared/dist/hooks/registry.d.ts +0 -133
  222. package/v3/@claude-flow/shared/dist/hooks/registry.js +0 -277
  223. package/v3/@claude-flow/shared/dist/hooks/safety/bash-safety.d.ts +0 -105
  224. package/v3/@claude-flow/shared/dist/hooks/safety/bash-safety.js +0 -481
  225. package/v3/@claude-flow/shared/dist/hooks/safety/file-organization.d.ts +0 -144
  226. package/v3/@claude-flow/shared/dist/hooks/safety/file-organization.js +0 -328
  227. package/v3/@claude-flow/shared/dist/hooks/safety/git-commit.d.ts +0 -158
  228. package/v3/@claude-flow/shared/dist/hooks/safety/git-commit.js +0 -450
  229. package/v3/@claude-flow/shared/dist/hooks/safety/index.d.ts +0 -17
  230. package/v3/@claude-flow/shared/dist/hooks/safety/index.js +0 -17
  231. package/v3/@claude-flow/shared/dist/hooks/session-hooks.d.ts +0 -234
  232. package/v3/@claude-flow/shared/dist/hooks/session-hooks.js +0 -334
  233. package/v3/@claude-flow/shared/dist/hooks/task-hooks.d.ts +0 -163
  234. package/v3/@claude-flow/shared/dist/hooks/task-hooks.js +0 -326
  235. package/v3/@claude-flow/shared/dist/hooks/types.d.ts +0 -267
  236. package/v3/@claude-flow/shared/dist/hooks/types.js +0 -62
  237. package/v3/@claude-flow/shared/dist/hooks/verify-exports.test.d.ts +0 -9
  238. package/v3/@claude-flow/shared/dist/hooks/verify-exports.test.js +0 -93
  239. package/v3/@claude-flow/shared/dist/index.d.ts +0 -20
  240. package/v3/@claude-flow/shared/dist/index.js +0 -50
  241. package/v3/@claude-flow/shared/dist/mcp/connection-pool.d.ts +0 -98
  242. package/v3/@claude-flow/shared/dist/mcp/connection-pool.js +0 -364
  243. package/v3/@claude-flow/shared/dist/mcp/index.d.ts +0 -69
  244. package/v3/@claude-flow/shared/dist/mcp/index.js +0 -84
  245. package/v3/@claude-flow/shared/dist/mcp/server.d.ts +0 -166
  246. package/v3/@claude-flow/shared/dist/mcp/server.js +0 -590
  247. package/v3/@claude-flow/shared/dist/mcp/session-manager.d.ts +0 -136
  248. package/v3/@claude-flow/shared/dist/mcp/session-manager.js +0 -335
  249. package/v3/@claude-flow/shared/dist/mcp/tool-registry.d.ts +0 -178
  250. package/v3/@claude-flow/shared/dist/mcp/tool-registry.js +0 -439
  251. package/v3/@claude-flow/shared/dist/mcp/transport/http.d.ts +0 -104
  252. package/v3/@claude-flow/shared/dist/mcp/transport/http.js +0 -476
  253. package/v3/@claude-flow/shared/dist/mcp/transport/index.d.ts +0 -102
  254. package/v3/@claude-flow/shared/dist/mcp/transport/index.js +0 -238
  255. package/v3/@claude-flow/shared/dist/mcp/transport/stdio.d.ts +0 -104
  256. package/v3/@claude-flow/shared/dist/mcp/transport/stdio.js +0 -263
  257. package/v3/@claude-flow/shared/dist/mcp/transport/websocket.d.ts +0 -133
  258. package/v3/@claude-flow/shared/dist/mcp/transport/websocket.js +0 -396
  259. package/v3/@claude-flow/shared/dist/mcp/types.d.ts +0 -436
  260. package/v3/@claude-flow/shared/dist/mcp/types.js +0 -54
  261. package/v3/@claude-flow/shared/dist/plugin-interface.d.ts +0 -544
  262. package/v3/@claude-flow/shared/dist/plugin-interface.js +0 -23
  263. package/v3/@claude-flow/shared/dist/plugin-loader.d.ts +0 -139
  264. package/v3/@claude-flow/shared/dist/plugin-loader.js +0 -434
  265. package/v3/@claude-flow/shared/dist/plugin-registry.d.ts +0 -183
  266. package/v3/@claude-flow/shared/dist/plugin-registry.js +0 -457
  267. package/v3/@claude-flow/shared/dist/plugins/index.d.ts +0 -10
  268. package/v3/@claude-flow/shared/dist/plugins/index.js +0 -10
  269. package/v3/@claude-flow/shared/dist/plugins/official/hive-mind-plugin.d.ts +0 -106
  270. package/v3/@claude-flow/shared/dist/plugins/official/hive-mind-plugin.js +0 -241
  271. package/v3/@claude-flow/shared/dist/plugins/official/index.d.ts +0 -10
  272. package/v3/@claude-flow/shared/dist/plugins/official/index.js +0 -10
  273. package/v3/@claude-flow/shared/dist/plugins/official/maestro-plugin.d.ts +0 -121
  274. package/v3/@claude-flow/shared/dist/plugins/official/maestro-plugin.js +0 -355
  275. package/v3/@claude-flow/shared/dist/plugins/types.d.ts +0 -93
  276. package/v3/@claude-flow/shared/dist/plugins/types.js +0 -9
  277. package/v3/@claude-flow/shared/dist/resilience/bulkhead.d.ts +0 -105
  278. package/v3/@claude-flow/shared/dist/resilience/bulkhead.js +0 -206
  279. package/v3/@claude-flow/shared/dist/resilience/circuit-breaker.d.ts +0 -132
  280. package/v3/@claude-flow/shared/dist/resilience/circuit-breaker.js +0 -233
  281. package/v3/@claude-flow/shared/dist/resilience/index.d.ts +0 -19
  282. package/v3/@claude-flow/shared/dist/resilience/index.js +0 -19
  283. package/v3/@claude-flow/shared/dist/resilience/rate-limiter.d.ts +0 -168
  284. package/v3/@claude-flow/shared/dist/resilience/rate-limiter.js +0 -314
  285. package/v3/@claude-flow/shared/dist/resilience/retry.d.ts +0 -91
  286. package/v3/@claude-flow/shared/dist/resilience/retry.js +0 -159
  287. package/v3/@claude-flow/shared/dist/security/index.d.ts +0 -10
  288. package/v3/@claude-flow/shared/dist/security/index.js +0 -12
  289. package/v3/@claude-flow/shared/dist/security/input-validation.d.ts +0 -73
  290. package/v3/@claude-flow/shared/dist/security/input-validation.js +0 -201
  291. package/v3/@claude-flow/shared/dist/security/secure-random.d.ts +0 -92
  292. package/v3/@claude-flow/shared/dist/security/secure-random.js +0 -142
  293. package/v3/@claude-flow/shared/dist/services/index.d.ts +0 -7
  294. package/v3/@claude-flow/shared/dist/services/index.js +0 -7
  295. package/v3/@claude-flow/shared/dist/services/v3-progress.service.d.ts +0 -124
  296. package/v3/@claude-flow/shared/dist/services/v3-progress.service.js +0 -402
  297. package/v3/@claude-flow/shared/dist/types/agent.types.d.ts +0 -137
  298. package/v3/@claude-flow/shared/dist/types/agent.types.js +0 -6
  299. package/v3/@claude-flow/shared/dist/types/index.d.ts +0 -11
  300. package/v3/@claude-flow/shared/dist/types/index.js +0 -17
  301. package/v3/@claude-flow/shared/dist/types/mcp.types.d.ts +0 -266
  302. package/v3/@claude-flow/shared/dist/types/mcp.types.js +0 -7
  303. package/v3/@claude-flow/shared/dist/types/memory.types.d.ts +0 -236
  304. package/v3/@claude-flow/shared/dist/types/memory.types.js +0 -7
  305. package/v3/@claude-flow/shared/dist/types/swarm.types.d.ts +0 -186
  306. package/v3/@claude-flow/shared/dist/types/swarm.types.js +0 -65
  307. package/v3/@claude-flow/shared/dist/types/task.types.d.ts +0 -178
  308. package/v3/@claude-flow/shared/dist/types/task.types.js +0 -32
  309. package/v3/@claude-flow/shared/dist/types.d.ts +0 -197
  310. package/v3/@claude-flow/shared/dist/types.js +0 -21
  311. package/v3/@claude-flow/shared/dist/utils/secure-logger.d.ts +0 -69
  312. package/v3/@claude-flow/shared/dist/utils/secure-logger.js +0 -208
@@ -1,682 +0,0 @@
1
- /**
2
- * CLAUDE.md Generator
3
- *
4
- * Generates a structured CLAUDE.md file optimized for the Guidance Control Plane.
5
- * The output is designed so that when compiled by GuidanceCompiler, it produces
6
- * a clean constitution (always-loaded invariants) and well-tagged shards
7
- * (task-scoped rules retrievable by intent).
8
- *
9
- * Structure conventions:
10
- * - Lines 1-60: Constitution (always loaded into every task)
11
- * - Remaining: Tagged shards (retrieved by intent classification)
12
- * - Headings map to shard boundaries
13
- * - Keywords in headings drive intent tagging: "test", "build", "security", etc.
14
- *
15
- * @module @claude-flow/guidance/generators
16
- */
17
- // ============================================================================
18
- // CLAUDE.md Generator
19
- // ============================================================================
20
- export function generateClaudeMd(profile) {
21
- const sections = [];
22
- // --- Constitution (lines 1-60, always loaded) ---
23
- sections.push(`# ${profile.name}`);
24
- sections.push('');
25
- if (profile.description) {
26
- sections.push(profile.description);
27
- sections.push('');
28
- }
29
- // Core invariants
30
- sections.push('## Core Invariants');
31
- sections.push('');
32
- sections.push('These rules are always active regardless of task type.');
33
- sections.push('');
34
- // Language-specific invariants
35
- for (const lang of profile.languages) {
36
- const invariants = getLanguageInvariants(lang);
37
- if (invariants.length > 0) {
38
- for (const inv of invariants) {
39
- sections.push(`- ${inv}`);
40
- }
41
- }
42
- }
43
- // Forbidden patterns
44
- if (profile.forbidden && profile.forbidden.length > 0) {
45
- sections.push('');
46
- for (const f of profile.forbidden) {
47
- sections.push(`- NEVER: ${f}`);
48
- }
49
- }
50
- // Required patterns
51
- if (profile.required && profile.required.length > 0) {
52
- for (const r of profile.required) {
53
- sections.push(`- ALWAYS: ${r}`);
54
- }
55
- }
56
- sections.push('');
57
- // --- Build & Test (tagged shard) ---
58
- sections.push('## Build & Test');
59
- sections.push('');
60
- const pm = profile.packageManager || 'npm';
61
- if (profile.buildCommand) {
62
- sections.push(`Build: \`${profile.buildCommand}\``);
63
- }
64
- else {
65
- sections.push(`Build: \`${pm} run build\``);
66
- }
67
- if (profile.testCommand) {
68
- sections.push(`Test: \`${profile.testCommand}\``);
69
- }
70
- else {
71
- sections.push(`Test: \`${pm} test\``);
72
- }
73
- if (profile.lintCommand) {
74
- sections.push(`Lint: \`${profile.lintCommand}\``);
75
- }
76
- sections.push('');
77
- sections.push('Run tests before committing. Run the build to catch type errors.');
78
- sections.push('');
79
- // --- Project Structure ---
80
- sections.push('## Project Structure');
81
- sections.push('');
82
- if (profile.monorepo) {
83
- sections.push('This is a monorepo. Each package has its own CLAUDE.md that layers on top of this root file.');
84
- }
85
- if (profile.srcDir) {
86
- sections.push(`Source code: \`${profile.srcDir}/\``);
87
- }
88
- if (profile.testDir) {
89
- sections.push(`Tests: \`${profile.testDir}/\``);
90
- }
91
- if (profile.architecture) {
92
- sections.push('');
93
- sections.push(profile.architecture);
94
- }
95
- sections.push('');
96
- // --- Coding Standards ---
97
- if (profile.conventions && profile.conventions.length > 0) {
98
- sections.push('## Coding Standards');
99
- sections.push('');
100
- for (const c of profile.conventions) {
101
- sections.push(`- ${c}`);
102
- }
103
- sections.push('');
104
- }
105
- // --- Domain Rules ---
106
- if (profile.domainRules && profile.domainRules.length > 0) {
107
- sections.push('## Domain Rules');
108
- sections.push('');
109
- for (const rule of profile.domainRules) {
110
- sections.push(`- ${rule}`);
111
- }
112
- sections.push('');
113
- }
114
- // --- Framework-specific shards ---
115
- if (profile.frameworks && profile.frameworks.length > 0) {
116
- for (const fw of profile.frameworks) {
117
- const fwRules = getFrameworkRules(fw);
118
- if (fwRules.length > 0) {
119
- sections.push(`## ${fw} Conventions`);
120
- sections.push('');
121
- for (const rule of fwRules) {
122
- sections.push(`- ${rule}`);
123
- }
124
- sections.push('');
125
- }
126
- }
127
- }
128
- // --- Security ---
129
- sections.push('## Security');
130
- sections.push('');
131
- sections.push('- Never commit secrets, API keys, or credentials to git');
132
- sections.push('- Never run destructive commands (`rm -rf /`, `DROP TABLE`, `git push --force`) without explicit confirmation');
133
- sections.push('- Validate all external input at system boundaries');
134
- sections.push('- Use parameterized queries for database operations');
135
- sections.push('');
136
- // --- Guidance Control Plane integration ---
137
- if (profile.guidanceControlPlane) {
138
- sections.push('## Guidance Control Plane');
139
- sections.push('');
140
- sections.push('This project uses `@claude-flow/guidance` to enforce these rules programmatically.');
141
- sections.push('The constitution (this section and above) is always loaded. Sections below are');
142
- sections.push('retrieved by intent classification — only relevant rules are injected per task.');
143
- sections.push('');
144
- sections.push('Gates enforce: destructive ops, secrets detection, diff size limits, tool allowlist.');
145
- sections.push('The optimizer watches violations and promotes winning CLAUDE.local.md experiments here.');
146
- sections.push('');
147
- if (profile.wasmKernel) {
148
- sections.push('WASM kernel: hot-path operations (hashing, secret scanning) use the Rust WASM kernel');
149
- sections.push('for 1.25-1.96x speedup. Falls back to JS automatically if WASM is unavailable.');
150
- sections.push('');
151
- }
152
- }
153
- // --- Swarm configuration ---
154
- if (profile.swarm) {
155
- sections.push('## Swarm Configuration');
156
- sections.push('');
157
- sections.push(`Topology: ${profile.swarm.topology || 'hierarchical'}`);
158
- sections.push(`Max agents: ${profile.swarm.maxAgents || 8}`);
159
- sections.push(`Strategy: ${profile.swarm.strategy || 'specialized'}`);
160
- sections.push('');
161
- }
162
- // --- Imports ---
163
- if (profile.imports && profile.imports.length > 0) {
164
- sections.push('## Individual Preferences');
165
- sections.push('');
166
- for (const imp of profile.imports) {
167
- sections.push(`@${imp}`);
168
- }
169
- sections.push('');
170
- }
171
- return sections.join('\n');
172
- }
173
- // ============================================================================
174
- // CLAUDE.local.md Generator
175
- // ============================================================================
176
- export function generateClaudeLocalMd(local) {
177
- const sections = [];
178
- sections.push('# Local Development Notes');
179
- sections.push('');
180
- sections.push('> This file is auto-gitignored by Claude Code. It stays on this machine only.');
181
- sections.push('');
182
- if (local.developer) {
183
- sections.push(`Developer: ${local.developer}`);
184
- sections.push('');
185
- }
186
- // Local URLs
187
- if (local.localUrls && Object.keys(local.localUrls).length > 0) {
188
- sections.push('## Local URLs');
189
- sections.push('');
190
- for (const [name, url] of Object.entries(local.localUrls)) {
191
- sections.push(`- ${name}: ${url}`);
192
- }
193
- sections.push('');
194
- }
195
- // Databases
196
- if (local.databases && Object.keys(local.databases).length > 0) {
197
- sections.push('## Local Databases');
198
- sections.push('');
199
- for (const [name, conn] of Object.entries(local.databases)) {
200
- sections.push(`- ${name}: \`${conn}\``);
201
- }
202
- sections.push('');
203
- }
204
- // Environment
205
- if (local.envVars && Object.keys(local.envVars).length > 0) {
206
- sections.push('## Environment Variables');
207
- sections.push('');
208
- sections.push('```bash');
209
- for (const [key, val] of Object.entries(local.envVars)) {
210
- sections.push(`export ${key}="${val}"`);
211
- }
212
- sections.push('```');
213
- sections.push('');
214
- }
215
- // Preferences
216
- if (local.preferences && local.preferences.length > 0) {
217
- sections.push('## Preferences');
218
- sections.push('');
219
- for (const p of local.preferences) {
220
- sections.push(`- ${p}`);
221
- }
222
- sections.push('');
223
- }
224
- // Machine notes
225
- if (local.machineNotes && local.machineNotes.length > 0) {
226
- sections.push('## Machine Notes');
227
- sections.push('');
228
- if (local.os) {
229
- sections.push(`OS: ${local.os}`);
230
- }
231
- if (local.editor) {
232
- sections.push(`Editor: ${local.editor}`);
233
- }
234
- for (const note of local.machineNotes) {
235
- sections.push(`- ${note}`);
236
- }
237
- sections.push('');
238
- }
239
- // Debug
240
- if (local.debug && local.debug.length > 0) {
241
- sections.push('## Debug Settings');
242
- sections.push('');
243
- for (const d of local.debug) {
244
- sections.push(`- ${d}`);
245
- }
246
- sections.push('');
247
- }
248
- return sections.join('\n');
249
- }
250
- // ============================================================================
251
- // Skills Generator
252
- // ============================================================================
253
- export function generateSkillMd(skill) {
254
- const lines = [];
255
- // YAML frontmatter
256
- lines.push('---');
257
- lines.push(`name: ${skill.name}`);
258
- lines.push(`version: ${skill.version || '1.0.0'}`);
259
- lines.push(`description: ${skill.description}`);
260
- lines.push(`category: ${skill.category}`);
261
- if (skill.tags && skill.tags.length > 0) {
262
- lines.push(`tags: [${skill.tags.join(', ')}]`);
263
- }
264
- if (skill.requires && skill.requires.length > 0) {
265
- lines.push('requires:');
266
- for (const r of skill.requires) {
267
- lines.push(` - ${r}`);
268
- }
269
- }
270
- if (skill.capabilities && skill.capabilities.length > 0) {
271
- lines.push('capabilities:');
272
- for (const c of skill.capabilities) {
273
- lines.push(` - ${c}`);
274
- }
275
- }
276
- lines.push('---');
277
- lines.push('');
278
- // Skill title and instructions
279
- lines.push(`# ${formatTitle(skill.name)} Skill`);
280
- lines.push('');
281
- lines.push(skill.instructions);
282
- return lines.join('\n');
283
- }
284
- // ============================================================================
285
- // Agent Definition Generator
286
- // ============================================================================
287
- export function generateAgentMd(agent) {
288
- const lines = [];
289
- // YAML frontmatter
290
- lines.push('---');
291
- lines.push(`name: ${agent.name}`);
292
- lines.push(`type: ${agent.type}`);
293
- if (agent.color) {
294
- lines.push(`color: "${agent.color}"`);
295
- }
296
- lines.push(`description: ${agent.description}`);
297
- if (agent.capabilities && agent.capabilities.length > 0) {
298
- lines.push('capabilities:');
299
- for (const c of agent.capabilities) {
300
- lines.push(` - ${c}`);
301
- }
302
- }
303
- if (agent.focus && agent.focus.length > 0) {
304
- lines.push('focus:');
305
- for (const f of agent.focus) {
306
- lines.push(` - ${f}`);
307
- }
308
- }
309
- lines.push(`temperature: ${agent.temperature ?? 0.2}`);
310
- if (agent.priority) {
311
- lines.push(`priority: ${agent.priority}`);
312
- }
313
- if (agent.preHook || agent.postHook) {
314
- lines.push('hooks:');
315
- if (agent.preHook) {
316
- lines.push(' pre: |');
317
- lines.push(` ${agent.preHook}`);
318
- }
319
- if (agent.postHook) {
320
- lines.push(' post: |');
321
- lines.push(` ${agent.postHook}`);
322
- }
323
- }
324
- lines.push('---');
325
- lines.push('');
326
- // Agent title
327
- lines.push(`# ${formatTitle(agent.name)} Agent`);
328
- lines.push('');
329
- lines.push(agent.description);
330
- lines.push('');
331
- // System prompt
332
- if (agent.systemPrompt) {
333
- lines.push('## System Prompt');
334
- lines.push('');
335
- lines.push(agent.systemPrompt);
336
- lines.push('');
337
- }
338
- // Instructions
339
- if (agent.instructions) {
340
- lines.push('## Instructions');
341
- lines.push('');
342
- lines.push(agent.instructions);
343
- lines.push('');
344
- }
345
- return lines.join('\n');
346
- }
347
- // ============================================================================
348
- // Agent Index Generator
349
- // ============================================================================
350
- export function generateAgentIndex(agents) {
351
- const lines = [];
352
- lines.push('# Generated Agent Index');
353
- lines.push('');
354
- lines.push('agents:');
355
- for (const a of agents) {
356
- lines.push(` - ${a.name}`);
357
- }
358
- lines.push('');
359
- // Group by type
360
- const byType = new Map();
361
- for (const a of agents) {
362
- const list = byType.get(a.type) || [];
363
- list.push(a.name);
364
- byType.set(a.type, list);
365
- }
366
- lines.push('types:');
367
- for (const [type, names] of byType) {
368
- lines.push(` ${type}:`);
369
- for (const n of names) {
370
- lines.push(` - ${n}`);
371
- }
372
- }
373
- return lines.join('\n');
374
- }
375
- export function scaffold(options) {
376
- const files = new Map();
377
- // CLAUDE.md
378
- files.set('CLAUDE.md', generateClaudeMd(options.project));
379
- // CLAUDE.local.md
380
- if (options.local) {
381
- files.set('CLAUDE.local.md', generateClaudeLocalMd(options.local));
382
- }
383
- // Default agents based on project
384
- const agents = [...(options.agents || [])];
385
- if (options.includeDefaultAgents) {
386
- agents.push(...getDefaultAgents(options.project));
387
- }
388
- // Default skills based on project
389
- const skills = [...(options.skills || [])];
390
- if (options.includeDefaultSkills) {
391
- skills.push(...getDefaultSkills(options.project));
392
- }
393
- // Generate agent files
394
- for (const agent of agents) {
395
- const category = agent.category || 'core';
396
- const path = `.claude/agents/${category}/${agent.name}.md`;
397
- files.set(path, generateAgentMd(agent));
398
- }
399
- // Generate agent index
400
- if (agents.length > 0) {
401
- files.set('.claude/agents/index.yaml', generateAgentIndex(agents));
402
- }
403
- // Generate skill files
404
- for (const skill of skills) {
405
- const path = `.claude/skills/${skill.name}/SKILL.md`;
406
- files.set(path, generateSkillMd(skill));
407
- }
408
- return { files };
409
- }
410
- // ============================================================================
411
- // Helpers
412
- // ============================================================================
413
- function formatTitle(kebab) {
414
- return kebab
415
- .split('-')
416
- .map(w => w.charAt(0).toUpperCase() + w.slice(1))
417
- .join(' ');
418
- }
419
- function getLanguageInvariants(lang) {
420
- const lower = lang.toLowerCase();
421
- const map = {
422
- typescript: [
423
- 'No `any` types. Use `unknown` if the type is truly unknown.',
424
- 'Prefer `const` over `let`. Never use `var`.',
425
- 'All public functions and exported types require JSDoc.',
426
- 'Use strict TypeScript (`strict: true` in tsconfig).',
427
- ],
428
- javascript: [
429
- 'Prefer `const` over `let`. Never use `var`.',
430
- 'Use strict mode (`"use strict"` or ES modules).',
431
- ],
432
- python: [
433
- 'Follow PEP 8 style guide.',
434
- 'Use type hints for all function signatures.',
435
- 'Prefer f-strings over `.format()` or `%` formatting.',
436
- ],
437
- rust: [
438
- 'Run `cargo clippy` before committing.',
439
- 'No `unwrap()` in production code. Use `?` or proper error handling.',
440
- 'All public items require doc comments (`///`).',
441
- ],
442
- go: [
443
- 'Run `go vet` and `golangci-lint` before committing.',
444
- 'Always handle errors. Never use `_` for error returns.',
445
- 'Follow Effective Go conventions.',
446
- ],
447
- java: [
448
- 'Follow Google Java Style Guide.',
449
- 'All public classes and methods require Javadoc.',
450
- 'Prefer immutable objects where possible.',
451
- ],
452
- };
453
- return map[lower] || [`Follow established ${lang} conventions.`];
454
- }
455
- function getFrameworkRules(framework) {
456
- const lower = framework.toLowerCase();
457
- const map = {
458
- react: [
459
- 'Prefer functional components with hooks over class components.',
460
- 'Use `useMemo`/`useCallback` only when profiling shows a need.',
461
- 'Keep components small and focused. Extract custom hooks for shared logic.',
462
- ],
463
- nextjs: [
464
- 'Use the App Router unless there is a specific reason for Pages Router.',
465
- 'Prefer Server Components by default. Add `"use client"` only when needed.',
466
- 'Use `next/image` for all images.',
467
- ],
468
- express: [
469
- 'Use async error handling middleware.',
470
- 'Validate all request bodies with a schema validator (zod, joi, etc.).',
471
- 'Never expose stack traces in production error responses.',
472
- ],
473
- fastify: [
474
- 'Use JSON Schema for request/response validation.',
475
- 'Register plugins in a consistent order.',
476
- ],
477
- django: [
478
- 'Use class-based views for CRUD, function-based for custom logic.',
479
- 'Always use the ORM. Never write raw SQL unless performance-critical.',
480
- 'Run `manage.py check` before deploying.',
481
- ],
482
- flask: [
483
- 'Use blueprints for modular organization.',
484
- 'Never use `app.run()` in production.',
485
- ],
486
- prisma: [
487
- 'Run `prisma generate` after schema changes.',
488
- 'Never edit generated client code.',
489
- 'Use transactions for multi-table operations.',
490
- ],
491
- vitest: [
492
- 'Use `describe` blocks to group related tests.',
493
- 'Prefer `expect().toBe()` for primitives, `expect().toEqual()` for objects.',
494
- 'Use `beforeEach` for shared setup, not `beforeAll` (test isolation).',
495
- ],
496
- jest: [
497
- 'Use `describe` blocks to group related tests.',
498
- 'Prefer `expect().toBe()` for primitives, `expect().toEqual()` for objects.',
499
- 'Mock external dependencies, never internal implementation details.',
500
- ],
501
- };
502
- return map[lower] || [];
503
- }
504
- function getDefaultAgents(profile) {
505
- const agents = [];
506
- // Every project gets a coordinator and coder
507
- agents.push({
508
- name: 'coordinator',
509
- type: 'coordinator',
510
- description: `Coordinates multi-agent workflows for ${profile.name}`,
511
- category: 'core',
512
- color: '#4A90D9',
513
- capabilities: ['task-decomposition', 'agent-routing', 'context-management', 'progress-tracking'],
514
- temperature: 0.2,
515
- priority: 'high',
516
- instructions: [
517
- 'Break complex tasks into subtasks and assign to specialized agents.',
518
- 'Track progress across all active agents.',
519
- 'Resolve conflicts when agents produce contradictory outputs.',
520
- 'Ensure all subtasks align with the original goal.',
521
- ].join('\n'),
522
- });
523
- agents.push({
524
- name: 'coder',
525
- type: 'developer',
526
- description: `Implementation specialist for ${profile.name}`,
527
- category: 'core',
528
- color: '#FF6B35',
529
- capabilities: ['code-generation', 'refactoring', 'optimization', 'api-design', 'error-handling'],
530
- focus: profile.languages,
531
- temperature: 0.2,
532
- priority: 'high',
533
- instructions: [
534
- `Write clean, idiomatic ${profile.languages.join('/')} code.`,
535
- 'Follow the coding standards defined in CLAUDE.md.',
536
- 'Prefer editing existing files over creating new ones.',
537
- 'Run tests after making changes.',
538
- ].join('\n'),
539
- });
540
- agents.push({
541
- name: 'tester',
542
- type: 'tester',
543
- description: `Test specialist for ${profile.name}`,
544
- category: 'core',
545
- color: '#2ECC71',
546
- capabilities: ['unit-testing', 'integration-testing', 'test-coverage', 'edge-cases'],
547
- temperature: 0.2,
548
- priority: 'high',
549
- instructions: [
550
- 'Write tests that cover the happy path and meaningful edge cases.',
551
- 'Use descriptive test names that explain the expected behavior.',
552
- 'Keep tests isolated — no shared mutable state between tests.',
553
- `Run: \`${profile.testCommand || (profile.packageManager || 'npm') + ' test'}\``,
554
- ].join('\n'),
555
- });
556
- agents.push({
557
- name: 'reviewer',
558
- type: 'reviewer',
559
- description: `Code review specialist for ${profile.name}`,
560
- category: 'core',
561
- color: '#9B59B6',
562
- capabilities: ['code-review', 'quality-analysis', 'security-review', 'performance-review'],
563
- temperature: 0.3,
564
- priority: 'medium',
565
- instructions: [
566
- 'Review for correctness, readability, and maintainability.',
567
- 'Check for security issues: injection, XSS, hardcoded secrets.',
568
- 'Flag unnecessary complexity and suggest simpler alternatives.',
569
- 'Verify test coverage for changed code.',
570
- ].join('\n'),
571
- });
572
- // Security agent if guidance control plane is enabled
573
- if (profile.guidanceControlPlane) {
574
- agents.push({
575
- name: 'security-auditor',
576
- type: 'security-specialist',
577
- description: 'Security analysis integrated with guidance control plane',
578
- category: 'security',
579
- color: '#E74C3C',
580
- capabilities: ['threat-detection', 'secret-scanning', 'input-validation', 'dependency-audit'],
581
- temperature: 0.1,
582
- priority: 'high',
583
- instructions: [
584
- 'Scan all code changes for secrets and credentials.',
585
- 'Check for OWASP Top 10 vulnerabilities.',
586
- 'Validate that enforcement gates are wired for all external inputs.',
587
- 'Report findings through the guidance proof chain for audit trail.',
588
- ].join('\n'),
589
- });
590
- }
591
- return agents;
592
- }
593
- function getDefaultSkills(profile) {
594
- const skills = [];
595
- // Build & test skill
596
- skills.push({
597
- name: 'build-and-test',
598
- description: `Build and test ${profile.name}`,
599
- category: 'core',
600
- tags: ['build', 'test', 'ci'],
601
- capabilities: ['Run build', 'Run tests', 'Fix build errors', 'Fix test failures'],
602
- instructions: [
603
- `## Build`,
604
- '',
605
- '```bash',
606
- profile.buildCommand || `${profile.packageManager || 'npm'} run build`,
607
- '```',
608
- '',
609
- '## Test',
610
- '',
611
- '```bash',
612
- profile.testCommand || `${profile.packageManager || 'npm'} test`,
613
- '```',
614
- '',
615
- '## Workflow',
616
- '',
617
- '1. Run the build first to catch type errors',
618
- '2. Run tests to verify correctness',
619
- '3. If either fails, fix the issue and re-run',
620
- '4. Never commit with failing tests or build errors',
621
- ].join('\n'),
622
- });
623
- // Code review skill
624
- skills.push({
625
- name: 'code-review',
626
- description: 'Review code for quality, security, and correctness',
627
- category: 'core',
628
- tags: ['review', 'quality', 'security'],
629
- capabilities: ['Security scanning', 'Quality analysis', 'Performance review', 'Style checking'],
630
- instructions: [
631
- '## Review Checklist',
632
- '',
633
- '1. **Correctness**: Does the code do what it claims?',
634
- '2. **Security**: Any secrets, injection vectors, or unsafe patterns?',
635
- '3. **Tests**: Are changes covered by tests?',
636
- '4. **Readability**: Can another developer understand this without context?',
637
- '5. **Performance**: Any obvious O(n^2) loops or unnecessary allocations?',
638
- '6. **Style**: Does it follow the project coding standards?',
639
- ].join('\n'),
640
- });
641
- // Guidance control plane skill
642
- if (profile.guidanceControlPlane) {
643
- skills.push({
644
- name: 'guidance-enforcement',
645
- description: 'Enforce guidance rules through the control plane',
646
- category: 'security',
647
- tags: ['guidance', 'enforcement', 'gates', 'policy'],
648
- requires: ['@claude-flow/guidance'],
649
- capabilities: [
650
- 'Gate enforcement for commands, edits, and tool calls',
651
- 'Proof chain generation for audit trails',
652
- 'Memory write authorization',
653
- 'Trust score tracking',
654
- ],
655
- instructions: [
656
- '## Guidance Control Plane',
657
- '',
658
- 'This project uses `@claude-flow/guidance` to enforce CLAUDE.md rules programmatically.',
659
- '',
660
- '### Before executing commands:',
661
- '```typescript',
662
- "const results = plane.evaluateCommand('rm -rf /tmp/build');",
663
- "if (results.some(r => r.decision === 'deny')) { /* blocked */ }",
664
- '```',
665
- '',
666
- '### Before editing files:',
667
- '```typescript',
668
- "const results = plane.evaluateEdit('config.ts', content, lineCount);",
669
- '```',
670
- '',
671
- '### Track every run:',
672
- '```typescript',
673
- "const event = plane.startRun('task-id', 'feature');",
674
- '// ... work ...',
675
- 'await plane.finalizeRun(event);',
676
- '```',
677
- ].join('\n'),
678
- });
679
- }
680
- return skills;
681
- }
682
- //# sourceMappingURL=generators.js.map