moflo 4.8.16 → 4.8.19

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 (468) hide show
  1. package/.claude/agents/browser/browser-agent.yaml +182 -182
  2. package/.claude/agents/core/coder.md +265 -265
  3. package/.claude/agents/core/planner.md +167 -167
  4. package/.claude/agents/core/researcher.md +189 -189
  5. package/.claude/agents/core/reviewer.md +325 -325
  6. package/.claude/agents/core/tester.md +318 -318
  7. package/.claude/agents/database-specialist.yaml +21 -21
  8. package/.claude/agents/dual-mode/codex-coordinator.md +224 -224
  9. package/.claude/agents/dual-mode/codex-worker.md +211 -211
  10. package/.claude/agents/dual-mode/dual-orchestrator.md +291 -291
  11. package/.claude/agents/github/code-review-swarm.md +537 -537
  12. package/.claude/agents/github/github-modes.md +172 -172
  13. package/.claude/agents/github/issue-tracker.md +318 -318
  14. package/.claude/agents/github/multi-repo-swarm.md +552 -552
  15. package/.claude/agents/github/pr-manager.md +190 -190
  16. package/.claude/agents/github/project-board-sync.md +508 -508
  17. package/.claude/agents/github/release-manager.md +366 -366
  18. package/.claude/agents/github/release-swarm.md +582 -582
  19. package/.claude/agents/github/repo-architect.md +397 -397
  20. package/.claude/agents/github/swarm-issue.md +572 -572
  21. package/.claude/agents/github/swarm-pr.md +427 -427
  22. package/.claude/agents/github/sync-coordinator.md +451 -451
  23. package/.claude/agents/github/workflow-automation.md +634 -634
  24. package/.claude/agents/goal/code-goal-planner.md +445 -445
  25. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +129 -129
  26. package/.claude/agents/hive-mind/queen-coordinator.md +202 -202
  27. package/.claude/agents/hive-mind/scout-explorer.md +241 -241
  28. package/.claude/agents/hive-mind/swarm-memory-manager.md +192 -192
  29. package/.claude/agents/hive-mind/worker-specialist.md +216 -216
  30. package/.claude/agents/index.yaml +17 -17
  31. package/.claude/agents/neural/safla-neural.md +73 -73
  32. package/.claude/agents/project-coordinator.yaml +15 -15
  33. package/.claude/agents/python-specialist.yaml +21 -21
  34. package/.claude/agents/reasoning/goal-planner.md +72 -72
  35. package/.claude/agents/security-auditor.yaml +20 -20
  36. package/.claude/agents/swarm/adaptive-coordinator.md +395 -395
  37. package/.claude/agents/swarm/hierarchical-coordinator.md +326 -326
  38. package/.claude/agents/swarm/mesh-coordinator.md +391 -391
  39. package/.claude/agents/templates/migration-plan.md +745 -745
  40. package/.claude/agents/typescript-specialist.yaml +21 -21
  41. package/.claude/checkpoints/1767754460.json +8 -8
  42. package/.claude/commands/agents/agent-spawning.md +28 -28
  43. package/.claude/commands/github/github-modes.md +146 -146
  44. package/.claude/commands/github/github-swarm.md +121 -121
  45. package/.claude/commands/github/issue-tracker.md +291 -291
  46. package/.claude/commands/github/pr-manager.md +169 -169
  47. package/.claude/commands/github/release-manager.md +337 -337
  48. package/.claude/commands/github/repo-architect.md +366 -366
  49. package/.claude/commands/github/sync-coordinator.md +300 -300
  50. package/.claude/commands/memory/neural.md +47 -47
  51. package/.claude/commands/sparc/analyzer.md +51 -51
  52. package/.claude/commands/sparc/architect.md +53 -53
  53. package/.claude/commands/sparc/ask.md +97 -97
  54. package/.claude/commands/sparc/batch-executor.md +54 -54
  55. package/.claude/commands/sparc/code.md +89 -89
  56. package/.claude/commands/sparc/coder.md +54 -54
  57. package/.claude/commands/sparc/debug.md +83 -83
  58. package/.claude/commands/sparc/debugger.md +54 -54
  59. package/.claude/commands/sparc/designer.md +53 -53
  60. package/.claude/commands/sparc/devops.md +109 -109
  61. package/.claude/commands/sparc/docs-writer.md +80 -80
  62. package/.claude/commands/sparc/documenter.md +54 -54
  63. package/.claude/commands/sparc/innovator.md +54 -54
  64. package/.claude/commands/sparc/integration.md +83 -83
  65. package/.claude/commands/sparc/mcp.md +117 -117
  66. package/.claude/commands/sparc/memory-manager.md +54 -54
  67. package/.claude/commands/sparc/optimizer.md +54 -54
  68. package/.claude/commands/sparc/orchestrator.md +131 -131
  69. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
  70. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
  71. package/.claude/commands/sparc/researcher.md +54 -54
  72. package/.claude/commands/sparc/reviewer.md +54 -54
  73. package/.claude/commands/sparc/security-review.md +80 -80
  74. package/.claude/commands/sparc/sparc-modes.md +174 -174
  75. package/.claude/commands/sparc/sparc.md +111 -111
  76. package/.claude/commands/sparc/spec-pseudocode.md +80 -80
  77. package/.claude/commands/sparc/supabase-admin.md +348 -348
  78. package/.claude/commands/sparc/swarm-coordinator.md +54 -54
  79. package/.claude/commands/sparc/tdd.md +54 -54
  80. package/.claude/commands/sparc/tester.md +54 -54
  81. package/.claude/commands/sparc/tutorial.md +79 -79
  82. package/.claude/commands/sparc/workflow-manager.md +54 -54
  83. package/.claude/commands/sparc.md +166 -166
  84. package/.claude/commands/swarm/analysis.md +95 -95
  85. package/.claude/commands/swarm/development.md +96 -96
  86. package/.claude/commands/swarm/examples.md +168 -168
  87. package/.claude/commands/swarm/maintenance.md +102 -102
  88. package/.claude/commands/swarm/optimization.md +117 -117
  89. package/.claude/commands/swarm/research.md +136 -136
  90. package/.claude/commands/swarm/testing.md +131 -131
  91. package/.claude/commands/workflows/development.md +77 -77
  92. package/.claude/commands/workflows/research.md +62 -62
  93. package/.claude/guidance/moflo-bootstrap.md +126 -126
  94. package/.claude/guidance/shipped/agent-bootstrap.md +126 -126
  95. package/.claude/guidance/shipped/guidance-memory-strategy.md +262 -262
  96. package/.claude/guidance/shipped/memory-strategy.md +204 -204
  97. package/.claude/guidance/shipped/moflo.md +608 -608
  98. package/.claude/guidance/shipped/task-swarm-integration.md +441 -441
  99. package/.claude/helpers/intelligence.cjs +207 -207
  100. package/.claude/helpers/statusline.cjs +851 -851
  101. package/.claude/skills/fl/SKILL.md +583 -583
  102. package/.claude/skills/flo/SKILL.md +583 -583
  103. package/.claude/skills/github-code-review/SKILL.md +1140 -1140
  104. package/.claude/skills/github-multi-repo/SKILL.md +874 -874
  105. package/.claude/skills/github-project-management/SKILL.md +1277 -1277
  106. package/.claude/skills/github-release-management/SKILL.md +1081 -1081
  107. package/.claude/skills/github-workflow-automation/SKILL.md +1065 -1065
  108. package/.claude/skills/hive-mind-advanced/SKILL.md +712 -712
  109. package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
  110. package/.claude/skills/performance-analysis/SKILL.md +563 -563
  111. package/.claude/skills/sparc-methodology/SKILL.md +1115 -1115
  112. package/.claude/skills/swarm-advanced/SKILL.md +973 -973
  113. package/LICENSE +21 -21
  114. package/README.md +685 -685
  115. package/bin/cli.js +0 -0
  116. package/bin/gate-hook.mjs +50 -50
  117. package/bin/gate.cjs +138 -138
  118. package/bin/generate-code-map.mjs +91 -12
  119. package/bin/hook-handler.cjs +83 -83
  120. package/bin/hooks.mjs +656 -656
  121. package/bin/index-guidance.mjs +892 -892
  122. package/bin/index-tests.mjs +709 -709
  123. package/bin/lib/process-manager.mjs +243 -243
  124. package/bin/lib/registry-cleanup.cjs +41 -41
  125. package/bin/prompt-hook.mjs +72 -72
  126. package/bin/semantic-search.mjs +472 -472
  127. package/bin/session-start-launcher.mjs +238 -226
  128. package/bin/setup-project.mjs +250 -250
  129. package/package.json +123 -121
  130. package/src/@claude-flow/cli/README.md +452 -452
  131. package/src/@claude-flow/cli/bin/cli.js +180 -175
  132. package/src/@claude-flow/cli/bin/preinstall.cjs +2 -2
  133. package/src/@claude-flow/cli/dist/src/commands/completions.js +409 -409
  134. package/src/@claude-flow/cli/dist/src/commands/doctor.js +1091 -1091
  135. package/src/@claude-flow/cli/dist/src/commands/embeddings.js +25 -25
  136. package/src/@claude-flow/cli/dist/src/commands/github.js +61 -61
  137. package/src/@claude-flow/cli/dist/src/commands/hive-mind.js +90 -90
  138. package/src/@claude-flow/cli/dist/src/commands/hooks.js +9 -9
  139. package/src/@claude-flow/cli/dist/src/commands/ruvector/import.js +14 -14
  140. package/src/@claude-flow/cli/dist/src/commands/ruvector/setup.js +624 -624
  141. package/src/@claude-flow/cli/dist/src/config/moflo-config.js +91 -91
  142. package/src/@claude-flow/cli/dist/src/init/claudemd-generator.d.ts +29 -29
  143. package/src/@claude-flow/cli/dist/src/init/claudemd-generator.js +43 -43
  144. package/src/@claude-flow/cli/dist/src/init/executor.js +485 -453
  145. package/src/@claude-flow/cli/dist/src/init/helpers-generator.js +482 -482
  146. package/src/@claude-flow/cli/dist/src/init/moflo-init.d.ts +30 -30
  147. package/src/@claude-flow/cli/dist/src/init/moflo-init.js +848 -839
  148. package/src/@claude-flow/cli/dist/src/init/settings-generator.js +6 -2
  149. package/src/@claude-flow/cli/dist/src/init/statusline-generator.js +786 -786
  150. package/src/@claude-flow/cli/dist/src/memory/memory-initializer.js +371 -371
  151. package/src/@claude-flow/cli/dist/src/runtime/headless.js +28 -28
  152. package/src/@claude-flow/cli/dist/src/services/agentic-flow-bridge.js +6 -0
  153. package/src/@claude-flow/cli/dist/src/services/headless-worker-executor.js +84 -84
  154. package/src/@claude-flow/cli/package.json +1 -1
  155. package/src/@claude-flow/guidance/README.md +1195 -1195
  156. package/src/@claude-flow/guidance/dist/adversarial.d.ts +284 -0
  157. package/src/@claude-flow/guidance/dist/adversarial.js +572 -0
  158. package/src/@claude-flow/guidance/dist/analyzer.d.ts +530 -0
  159. package/src/@claude-flow/guidance/dist/analyzer.js +2518 -0
  160. package/src/@claude-flow/guidance/dist/artifacts.d.ts +283 -0
  161. package/src/@claude-flow/guidance/dist/artifacts.js +356 -0
  162. package/src/@claude-flow/guidance/dist/authority.d.ts +290 -0
  163. package/src/@claude-flow/guidance/dist/authority.js +558 -0
  164. package/src/@claude-flow/guidance/dist/capabilities.d.ts +209 -0
  165. package/src/@claude-flow/guidance/dist/capabilities.js +485 -0
  166. package/src/@claude-flow/guidance/dist/coherence.d.ts +233 -0
  167. package/src/@claude-flow/guidance/dist/coherence.js +372 -0
  168. package/src/@claude-flow/guidance/dist/compiler.d.ts +87 -0
  169. package/src/@claude-flow/guidance/dist/compiler.js +419 -0
  170. package/src/@claude-flow/guidance/dist/conformance-kit.d.ts +225 -0
  171. package/src/@claude-flow/guidance/dist/conformance-kit.js +629 -0
  172. package/src/@claude-flow/guidance/dist/continue-gate.d.ts +214 -0
  173. package/src/@claude-flow/guidance/dist/continue-gate.js +353 -0
  174. package/src/@claude-flow/guidance/dist/crypto-utils.d.ts +17 -0
  175. package/src/@claude-flow/guidance/dist/crypto-utils.js +24 -0
  176. package/src/@claude-flow/guidance/dist/evolution.d.ts +282 -0
  177. package/src/@claude-flow/guidance/dist/evolution.js +500 -0
  178. package/src/@claude-flow/guidance/dist/gates.d.ts +79 -0
  179. package/src/@claude-flow/guidance/dist/gates.js +302 -0
  180. package/src/@claude-flow/guidance/dist/gateway.d.ts +206 -0
  181. package/src/@claude-flow/guidance/dist/gateway.js +452 -0
  182. package/src/@claude-flow/guidance/dist/generators.d.ts +153 -0
  183. package/src/@claude-flow/guidance/dist/generators.js +682 -0
  184. package/src/@claude-flow/guidance/dist/headless.d.ts +177 -0
  185. package/src/@claude-flow/guidance/dist/headless.js +342 -0
  186. package/src/@claude-flow/guidance/dist/hooks.d.ts +109 -0
  187. package/src/@claude-flow/guidance/dist/hooks.js +347 -0
  188. package/src/@claude-flow/guidance/dist/index.d.ts +205 -0
  189. package/src/@claude-flow/guidance/dist/index.js +321 -0
  190. package/src/@claude-flow/guidance/dist/ledger.d.ts +162 -0
  191. package/src/@claude-flow/guidance/dist/ledger.js +375 -0
  192. package/src/@claude-flow/guidance/dist/manifest-validator.d.ts +289 -0
  193. package/src/@claude-flow/guidance/dist/manifest-validator.js +838 -0
  194. package/src/@claude-flow/guidance/dist/memory-gate.d.ts +222 -0
  195. package/src/@claude-flow/guidance/dist/memory-gate.js +382 -0
  196. package/src/@claude-flow/guidance/dist/meta-governance.d.ts +265 -0
  197. package/src/@claude-flow/guidance/dist/meta-governance.js +348 -0
  198. package/src/@claude-flow/guidance/dist/optimizer.d.ts +104 -0
  199. package/src/@claude-flow/guidance/dist/optimizer.js +329 -0
  200. package/src/@claude-flow/guidance/dist/persistence.d.ts +189 -0
  201. package/src/@claude-flow/guidance/dist/persistence.js +464 -0
  202. package/src/@claude-flow/guidance/dist/proof.d.ts +185 -0
  203. package/src/@claude-flow/guidance/dist/proof.js +238 -0
  204. package/src/@claude-flow/guidance/dist/retriever.d.ts +116 -0
  205. package/src/@claude-flow/guidance/dist/retriever.js +394 -0
  206. package/src/@claude-flow/guidance/dist/ruvbot-integration.d.ts +370 -0
  207. package/src/@claude-flow/guidance/dist/ruvbot-integration.js +738 -0
  208. package/src/@claude-flow/guidance/dist/temporal.d.ts +426 -0
  209. package/src/@claude-flow/guidance/dist/temporal.js +658 -0
  210. package/src/@claude-flow/guidance/dist/trust.d.ts +283 -0
  211. package/src/@claude-flow/guidance/dist/trust.js +473 -0
  212. package/src/@claude-flow/guidance/dist/truth-anchors.d.ts +276 -0
  213. package/src/@claude-flow/guidance/dist/truth-anchors.js +488 -0
  214. package/src/@claude-flow/guidance/dist/types.d.ts +378 -0
  215. package/src/@claude-flow/guidance/dist/types.js +10 -0
  216. package/src/@claude-flow/guidance/dist/uncertainty.d.ts +372 -0
  217. package/src/@claude-flow/guidance/dist/uncertainty.js +619 -0
  218. package/src/@claude-flow/guidance/dist/wasm-kernel.d.ts +48 -0
  219. package/src/@claude-flow/guidance/dist/wasm-kernel.js +158 -0
  220. package/src/@claude-flow/guidance/package.json +198 -198
  221. package/src/@claude-flow/memory/README.md +587 -587
  222. package/src/@claude-flow/memory/package.json +44 -44
  223. package/src/@claude-flow/shared/README.md +323 -323
  224. package/src/README.md +493 -493
  225. package/.claude/settings.local.json +0 -18
  226. package/.claude/workflow-state.json +0 -9
  227. package/src/@claude-flow/cli/dist/src/services/container-worker-pool.d.ts +0 -197
  228. package/src/@claude-flow/cli/dist/src/services/container-worker-pool.js +0 -584
  229. package/src/@claude-flow/memory/dist/agent-memory-scope.d.ts +0 -131
  230. package/src/@claude-flow/memory/dist/agent-memory-scope.js +0 -223
  231. package/src/@claude-flow/memory/dist/agent-memory-scope.test.d.ts +0 -8
  232. package/src/@claude-flow/memory/dist/agent-memory-scope.test.js +0 -463
  233. package/src/@claude-flow/memory/dist/agentdb-adapter.d.ts +0 -165
  234. package/src/@claude-flow/memory/dist/agentdb-adapter.js +0 -806
  235. package/src/@claude-flow/memory/dist/agentdb-backend.d.ts +0 -214
  236. package/src/@claude-flow/memory/dist/agentdb-backend.js +0 -844
  237. package/src/@claude-flow/memory/dist/agentdb-backend.test.d.ts +0 -7
  238. package/src/@claude-flow/memory/dist/agentdb-backend.test.js +0 -258
  239. package/src/@claude-flow/memory/dist/application/commands/delete-memory.command.d.ts +0 -65
  240. package/src/@claude-flow/memory/dist/application/commands/delete-memory.command.js +0 -129
  241. package/src/@claude-flow/memory/dist/application/commands/store-memory.command.d.ts +0 -48
  242. package/src/@claude-flow/memory/dist/application/commands/store-memory.command.js +0 -72
  243. package/src/@claude-flow/memory/dist/application/index.d.ts +0 -12
  244. package/src/@claude-flow/memory/dist/application/index.js +0 -15
  245. package/src/@claude-flow/memory/dist/application/queries/search-memory.query.d.ts +0 -72
  246. package/src/@claude-flow/memory/dist/application/queries/search-memory.query.js +0 -143
  247. package/src/@claude-flow/memory/dist/application/services/memory-application-service.d.ts +0 -121
  248. package/src/@claude-flow/memory/dist/application/services/memory-application-service.js +0 -190
  249. package/src/@claude-flow/memory/dist/auto-memory-bridge.d.ts +0 -226
  250. package/src/@claude-flow/memory/dist/auto-memory-bridge.js +0 -709
  251. package/src/@claude-flow/memory/dist/auto-memory-bridge.test.d.ts +0 -8
  252. package/src/@claude-flow/memory/dist/auto-memory-bridge.test.js +0 -754
  253. package/src/@claude-flow/memory/dist/benchmark.test.d.ts +0 -2
  254. package/src/@claude-flow/memory/dist/benchmark.test.js +0 -277
  255. package/src/@claude-flow/memory/dist/cache-manager.d.ts +0 -134
  256. package/src/@claude-flow/memory/dist/cache-manager.js +0 -407
  257. package/src/@claude-flow/memory/dist/controller-registry.d.ts +0 -216
  258. package/src/@claude-flow/memory/dist/controller-registry.js +0 -893
  259. package/src/@claude-flow/memory/dist/controller-registry.test.d.ts +0 -14
  260. package/src/@claude-flow/memory/dist/controller-registry.test.js +0 -636
  261. package/src/@claude-flow/memory/dist/database-provider.d.ts +0 -87
  262. package/src/@claude-flow/memory/dist/database-provider.js +0 -375
  263. package/src/@claude-flow/memory/dist/database-provider.test.d.ts +0 -7
  264. package/src/@claude-flow/memory/dist/database-provider.test.js +0 -285
  265. package/src/@claude-flow/memory/dist/domain/entities/memory-entry.d.ts +0 -143
  266. package/src/@claude-flow/memory/dist/domain/entities/memory-entry.js +0 -226
  267. package/src/@claude-flow/memory/dist/domain/index.d.ts +0 -11
  268. package/src/@claude-flow/memory/dist/domain/index.js +0 -12
  269. package/src/@claude-flow/memory/dist/domain/repositories/memory-repository.interface.d.ts +0 -102
  270. package/src/@claude-flow/memory/dist/domain/repositories/memory-repository.interface.js +0 -11
  271. package/src/@claude-flow/memory/dist/domain/services/memory-domain-service.d.ts +0 -105
  272. package/src/@claude-flow/memory/dist/domain/services/memory-domain-service.js +0 -297
  273. package/src/@claude-flow/memory/dist/hnsw-index.d.ts +0 -111
  274. package/src/@claude-flow/memory/dist/hnsw-index.js +0 -781
  275. package/src/@claude-flow/memory/dist/hnsw-lite.d.ts +0 -23
  276. package/src/@claude-flow/memory/dist/hnsw-lite.js +0 -168
  277. package/src/@claude-flow/memory/dist/hybrid-backend.d.ts +0 -245
  278. package/src/@claude-flow/memory/dist/hybrid-backend.js +0 -569
  279. package/src/@claude-flow/memory/dist/hybrid-backend.test.d.ts +0 -8
  280. package/src/@claude-flow/memory/dist/hybrid-backend.test.js +0 -320
  281. package/src/@claude-flow/memory/dist/index.d.ts +0 -207
  282. package/src/@claude-flow/memory/dist/index.js +0 -361
  283. package/src/@claude-flow/memory/dist/infrastructure/index.d.ts +0 -17
  284. package/src/@claude-flow/memory/dist/infrastructure/index.js +0 -16
  285. package/src/@claude-flow/memory/dist/infrastructure/repositories/hybrid-memory-repository.d.ts +0 -66
  286. package/src/@claude-flow/memory/dist/infrastructure/repositories/hybrid-memory-repository.js +0 -409
  287. package/src/@claude-flow/memory/dist/learning-bridge.d.ts +0 -137
  288. package/src/@claude-flow/memory/dist/learning-bridge.js +0 -335
  289. package/src/@claude-flow/memory/dist/learning-bridge.test.d.ts +0 -8
  290. package/src/@claude-flow/memory/dist/learning-bridge.test.js +0 -578
  291. package/src/@claude-flow/memory/dist/memory-graph.d.ts +0 -100
  292. package/src/@claude-flow/memory/dist/memory-graph.js +0 -333
  293. package/src/@claude-flow/memory/dist/memory-graph.test.d.ts +0 -8
  294. package/src/@claude-flow/memory/dist/memory-graph.test.js +0 -609
  295. package/src/@claude-flow/memory/dist/migration.d.ts +0 -68
  296. package/src/@claude-flow/memory/dist/migration.js +0 -513
  297. package/src/@claude-flow/memory/dist/persistent-sona.d.ts +0 -144
  298. package/src/@claude-flow/memory/dist/persistent-sona.js +0 -332
  299. package/src/@claude-flow/memory/dist/query-builder.d.ts +0 -211
  300. package/src/@claude-flow/memory/dist/query-builder.js +0 -438
  301. package/src/@claude-flow/memory/dist/rvf-backend.d.ts +0 -51
  302. package/src/@claude-flow/memory/dist/rvf-backend.js +0 -481
  303. package/src/@claude-flow/memory/dist/rvf-learning-store.d.ts +0 -139
  304. package/src/@claude-flow/memory/dist/rvf-learning-store.js +0 -295
  305. package/src/@claude-flow/memory/dist/rvf-migration.d.ts +0 -45
  306. package/src/@claude-flow/memory/dist/rvf-migration.js +0 -234
  307. package/src/@claude-flow/memory/dist/sqlite-backend.d.ts +0 -121
  308. package/src/@claude-flow/memory/dist/sqlite-backend.js +0 -572
  309. package/src/@claude-flow/memory/dist/sqljs-backend.d.ts +0 -128
  310. package/src/@claude-flow/memory/dist/sqljs-backend.js +0 -601
  311. package/src/@claude-flow/memory/dist/types.d.ts +0 -484
  312. package/src/@claude-flow/memory/dist/types.js +0 -58
  313. package/src/@claude-flow/shared/dist/core/config/defaults.d.ts +0 -41
  314. package/src/@claude-flow/shared/dist/core/config/defaults.js +0 -186
  315. package/src/@claude-flow/shared/dist/core/config/index.d.ts +0 -8
  316. package/src/@claude-flow/shared/dist/core/config/index.js +0 -12
  317. package/src/@claude-flow/shared/dist/core/config/loader.d.ts +0 -45
  318. package/src/@claude-flow/shared/dist/core/config/loader.js +0 -222
  319. package/src/@claude-flow/shared/dist/core/config/schema.d.ts +0 -1134
  320. package/src/@claude-flow/shared/dist/core/config/schema.js +0 -158
  321. package/src/@claude-flow/shared/dist/core/config/validator.d.ts +0 -92
  322. package/src/@claude-flow/shared/dist/core/config/validator.js +0 -147
  323. package/src/@claude-flow/shared/dist/core/event-bus.d.ts +0 -31
  324. package/src/@claude-flow/shared/dist/core/event-bus.js +0 -197
  325. package/src/@claude-flow/shared/dist/core/index.d.ts +0 -15
  326. package/src/@claude-flow/shared/dist/core/index.js +0 -19
  327. package/src/@claude-flow/shared/dist/core/interfaces/agent.interface.d.ts +0 -200
  328. package/src/@claude-flow/shared/dist/core/interfaces/agent.interface.js +0 -6
  329. package/src/@claude-flow/shared/dist/core/interfaces/coordinator.interface.d.ts +0 -310
  330. package/src/@claude-flow/shared/dist/core/interfaces/coordinator.interface.js +0 -7
  331. package/src/@claude-flow/shared/dist/core/interfaces/event.interface.d.ts +0 -224
  332. package/src/@claude-flow/shared/dist/core/interfaces/event.interface.js +0 -46
  333. package/src/@claude-flow/shared/dist/core/interfaces/index.d.ts +0 -10
  334. package/src/@claude-flow/shared/dist/core/interfaces/index.js +0 -15
  335. package/src/@claude-flow/shared/dist/core/interfaces/memory.interface.d.ts +0 -298
  336. package/src/@claude-flow/shared/dist/core/interfaces/memory.interface.js +0 -7
  337. package/src/@claude-flow/shared/dist/core/interfaces/task.interface.d.ts +0 -185
  338. package/src/@claude-flow/shared/dist/core/interfaces/task.interface.js +0 -6
  339. package/src/@claude-flow/shared/dist/core/orchestrator/event-coordinator.d.ts +0 -35
  340. package/src/@claude-flow/shared/dist/core/orchestrator/event-coordinator.js +0 -101
  341. package/src/@claude-flow/shared/dist/core/orchestrator/health-monitor.d.ts +0 -60
  342. package/src/@claude-flow/shared/dist/core/orchestrator/health-monitor.js +0 -166
  343. package/src/@claude-flow/shared/dist/core/orchestrator/index.d.ts +0 -46
  344. package/src/@claude-flow/shared/dist/core/orchestrator/index.js +0 -64
  345. package/src/@claude-flow/shared/dist/core/orchestrator/lifecycle-manager.d.ts +0 -56
  346. package/src/@claude-flow/shared/dist/core/orchestrator/lifecycle-manager.js +0 -195
  347. package/src/@claude-flow/shared/dist/core/orchestrator/session-manager.d.ts +0 -83
  348. package/src/@claude-flow/shared/dist/core/orchestrator/session-manager.js +0 -193
  349. package/src/@claude-flow/shared/dist/core/orchestrator/task-manager.d.ts +0 -49
  350. package/src/@claude-flow/shared/dist/core/orchestrator/task-manager.js +0 -253
  351. package/src/@claude-flow/shared/dist/events/domain-events.d.ts +0 -282
  352. package/src/@claude-flow/shared/dist/events/domain-events.js +0 -165
  353. package/src/@claude-flow/shared/dist/events/event-store.d.ts +0 -126
  354. package/src/@claude-flow/shared/dist/events/event-store.js +0 -416
  355. package/src/@claude-flow/shared/dist/events/event-store.test.d.ts +0 -8
  356. package/src/@claude-flow/shared/dist/events/event-store.test.js +0 -293
  357. package/src/@claude-flow/shared/dist/events/example-usage.d.ts +0 -10
  358. package/src/@claude-flow/shared/dist/events/example-usage.js +0 -193
  359. package/src/@claude-flow/shared/dist/events/index.d.ts +0 -21
  360. package/src/@claude-flow/shared/dist/events/index.js +0 -22
  361. package/src/@claude-flow/shared/dist/events/projections.d.ts +0 -177
  362. package/src/@claude-flow/shared/dist/events/projections.js +0 -421
  363. package/src/@claude-flow/shared/dist/events/rvf-event-log.d.ts +0 -82
  364. package/src/@claude-flow/shared/dist/events/rvf-event-log.js +0 -340
  365. package/src/@claude-flow/shared/dist/events/state-reconstructor.d.ts +0 -101
  366. package/src/@claude-flow/shared/dist/events/state-reconstructor.js +0 -263
  367. package/src/@claude-flow/shared/dist/events.d.ts +0 -80
  368. package/src/@claude-flow/shared/dist/events.js +0 -249
  369. package/src/@claude-flow/shared/dist/hooks/example-usage.d.ts +0 -42
  370. package/src/@claude-flow/shared/dist/hooks/example-usage.js +0 -351
  371. package/src/@claude-flow/shared/dist/hooks/executor.d.ts +0 -100
  372. package/src/@claude-flow/shared/dist/hooks/executor.js +0 -264
  373. package/src/@claude-flow/shared/dist/hooks/hooks.test.d.ts +0 -9
  374. package/src/@claude-flow/shared/dist/hooks/hooks.test.js +0 -322
  375. package/src/@claude-flow/shared/dist/hooks/index.d.ts +0 -52
  376. package/src/@claude-flow/shared/dist/hooks/index.js +0 -51
  377. package/src/@claude-flow/shared/dist/hooks/registry.d.ts +0 -133
  378. package/src/@claude-flow/shared/dist/hooks/registry.js +0 -277
  379. package/src/@claude-flow/shared/dist/hooks/safety/bash-safety.d.ts +0 -105
  380. package/src/@claude-flow/shared/dist/hooks/safety/bash-safety.js +0 -481
  381. package/src/@claude-flow/shared/dist/hooks/safety/file-organization.d.ts +0 -144
  382. package/src/@claude-flow/shared/dist/hooks/safety/file-organization.js +0 -328
  383. package/src/@claude-flow/shared/dist/hooks/safety/git-commit.d.ts +0 -158
  384. package/src/@claude-flow/shared/dist/hooks/safety/git-commit.js +0 -450
  385. package/src/@claude-flow/shared/dist/hooks/safety/index.d.ts +0 -17
  386. package/src/@claude-flow/shared/dist/hooks/safety/index.js +0 -17
  387. package/src/@claude-flow/shared/dist/hooks/session-hooks.d.ts +0 -234
  388. package/src/@claude-flow/shared/dist/hooks/session-hooks.js +0 -334
  389. package/src/@claude-flow/shared/dist/hooks/task-hooks.d.ts +0 -163
  390. package/src/@claude-flow/shared/dist/hooks/task-hooks.js +0 -326
  391. package/src/@claude-flow/shared/dist/hooks/types.d.ts +0 -267
  392. package/src/@claude-flow/shared/dist/hooks/types.js +0 -62
  393. package/src/@claude-flow/shared/dist/hooks/verify-exports.test.d.ts +0 -9
  394. package/src/@claude-flow/shared/dist/hooks/verify-exports.test.js +0 -93
  395. package/src/@claude-flow/shared/dist/index.d.ts +0 -20
  396. package/src/@claude-flow/shared/dist/index.js +0 -50
  397. package/src/@claude-flow/shared/dist/mcp/connection-pool.d.ts +0 -98
  398. package/src/@claude-flow/shared/dist/mcp/connection-pool.js +0 -364
  399. package/src/@claude-flow/shared/dist/mcp/index.d.ts +0 -69
  400. package/src/@claude-flow/shared/dist/mcp/index.js +0 -84
  401. package/src/@claude-flow/shared/dist/mcp/server.d.ts +0 -166
  402. package/src/@claude-flow/shared/dist/mcp/server.js +0 -593
  403. package/src/@claude-flow/shared/dist/mcp/session-manager.d.ts +0 -136
  404. package/src/@claude-flow/shared/dist/mcp/session-manager.js +0 -335
  405. package/src/@claude-flow/shared/dist/mcp/tool-registry.d.ts +0 -178
  406. package/src/@claude-flow/shared/dist/mcp/tool-registry.js +0 -439
  407. package/src/@claude-flow/shared/dist/mcp/transport/http.d.ts +0 -104
  408. package/src/@claude-flow/shared/dist/mcp/transport/http.js +0 -476
  409. package/src/@claude-flow/shared/dist/mcp/transport/index.d.ts +0 -102
  410. package/src/@claude-flow/shared/dist/mcp/transport/index.js +0 -238
  411. package/src/@claude-flow/shared/dist/mcp/transport/stdio.d.ts +0 -104
  412. package/src/@claude-flow/shared/dist/mcp/transport/stdio.js +0 -263
  413. package/src/@claude-flow/shared/dist/mcp/transport/websocket.d.ts +0 -133
  414. package/src/@claude-flow/shared/dist/mcp/transport/websocket.js +0 -396
  415. package/src/@claude-flow/shared/dist/mcp/types.d.ts +0 -438
  416. package/src/@claude-flow/shared/dist/mcp/types.js +0 -54
  417. package/src/@claude-flow/shared/dist/plugin-interface.d.ts +0 -544
  418. package/src/@claude-flow/shared/dist/plugin-interface.js +0 -23
  419. package/src/@claude-flow/shared/dist/plugin-loader.d.ts +0 -139
  420. package/src/@claude-flow/shared/dist/plugin-loader.js +0 -434
  421. package/src/@claude-flow/shared/dist/plugin-registry.d.ts +0 -183
  422. package/src/@claude-flow/shared/dist/plugin-registry.js +0 -457
  423. package/src/@claude-flow/shared/dist/plugins/index.d.ts +0 -10
  424. package/src/@claude-flow/shared/dist/plugins/index.js +0 -10
  425. package/src/@claude-flow/shared/dist/plugins/official/hive-mind-plugin.d.ts +0 -106
  426. package/src/@claude-flow/shared/dist/plugins/official/hive-mind-plugin.js +0 -241
  427. package/src/@claude-flow/shared/dist/plugins/official/index.d.ts +0 -10
  428. package/src/@claude-flow/shared/dist/plugins/official/index.js +0 -10
  429. package/src/@claude-flow/shared/dist/plugins/official/maestro-plugin.d.ts +0 -121
  430. package/src/@claude-flow/shared/dist/plugins/official/maestro-plugin.js +0 -355
  431. package/src/@claude-flow/shared/dist/plugins/types.d.ts +0 -93
  432. package/src/@claude-flow/shared/dist/plugins/types.js +0 -9
  433. package/src/@claude-flow/shared/dist/resilience/bulkhead.d.ts +0 -105
  434. package/src/@claude-flow/shared/dist/resilience/bulkhead.js +0 -206
  435. package/src/@claude-flow/shared/dist/resilience/circuit-breaker.d.ts +0 -132
  436. package/src/@claude-flow/shared/dist/resilience/circuit-breaker.js +0 -233
  437. package/src/@claude-flow/shared/dist/resilience/index.d.ts +0 -19
  438. package/src/@claude-flow/shared/dist/resilience/index.js +0 -19
  439. package/src/@claude-flow/shared/dist/resilience/rate-limiter.d.ts +0 -168
  440. package/src/@claude-flow/shared/dist/resilience/rate-limiter.js +0 -314
  441. package/src/@claude-flow/shared/dist/resilience/retry.d.ts +0 -91
  442. package/src/@claude-flow/shared/dist/resilience/retry.js +0 -159
  443. package/src/@claude-flow/shared/dist/security/index.d.ts +0 -10
  444. package/src/@claude-flow/shared/dist/security/index.js +0 -12
  445. package/src/@claude-flow/shared/dist/security/input-validation.d.ts +0 -73
  446. package/src/@claude-flow/shared/dist/security/input-validation.js +0 -201
  447. package/src/@claude-flow/shared/dist/security/secure-random.d.ts +0 -92
  448. package/src/@claude-flow/shared/dist/security/secure-random.js +0 -142
  449. package/src/@claude-flow/shared/dist/services/index.d.ts +0 -7
  450. package/src/@claude-flow/shared/dist/services/index.js +0 -7
  451. package/src/@claude-flow/shared/dist/services/v3-progress.service.d.ts +0 -124
  452. package/src/@claude-flow/shared/dist/services/v3-progress.service.js +0 -402
  453. package/src/@claude-flow/shared/dist/types/agent.types.d.ts +0 -137
  454. package/src/@claude-flow/shared/dist/types/agent.types.js +0 -6
  455. package/src/@claude-flow/shared/dist/types/index.d.ts +0 -11
  456. package/src/@claude-flow/shared/dist/types/index.js +0 -17
  457. package/src/@claude-flow/shared/dist/types/mcp.types.d.ts +0 -266
  458. package/src/@claude-flow/shared/dist/types/mcp.types.js +0 -7
  459. package/src/@claude-flow/shared/dist/types/memory.types.d.ts +0 -236
  460. package/src/@claude-flow/shared/dist/types/memory.types.js +0 -7
  461. package/src/@claude-flow/shared/dist/types/swarm.types.d.ts +0 -186
  462. package/src/@claude-flow/shared/dist/types/swarm.types.js +0 -65
  463. package/src/@claude-flow/shared/dist/types/task.types.d.ts +0 -178
  464. package/src/@claude-flow/shared/dist/types/task.types.js +0 -32
  465. package/src/@claude-flow/shared/dist/types.d.ts +0 -197
  466. package/src/@claude-flow/shared/dist/types.js +0 -21
  467. package/src/@claude-flow/shared/dist/utils/secure-logger.d.ts +0 -69
  468. package/src/@claude-flow/shared/dist/utils/secure-logger.js +0 -208
@@ -0,0 +1,347 @@
1
+ /**
2
+ * Guidance Hook Integration Layer
3
+ *
4
+ * Wires the EnforcementGates and ShardRetriever into the Claude Flow V3
5
+ * hook lifecycle. Each guidance concern is registered as a hook that
6
+ * participates in the standard HookRegistry event flow.
7
+ *
8
+ * Hook mappings:
9
+ * PreCommand -> EnforcementGates.evaluateCommand() (destructive ops + secrets)
10
+ * PreToolUse -> EnforcementGates.evaluateToolUse() (tool allowlist + secrets)
11
+ * PreEdit -> EnforcementGates.evaluateEdit() (diff size + secrets)
12
+ * PreTask -> ShardRetriever.retrieve() (inject relevant shards)
13
+ * PostTask -> RunLedger.finalizeEvent() (record run completion)
14
+ *
15
+ * @module @claude-flow/guidance/hooks
16
+ */
17
+ import { HookEvent, HookPriority, } from '@claude-flow/hooks';
18
+ // ============================================================================
19
+ // Gate-Result -> Hook-Result Mapping
20
+ // ============================================================================
21
+ /**
22
+ * Convert an array of GateResults into a single HookResult.
23
+ *
24
+ * Severity ordering: block > require-confirmation > warn > allow.
25
+ * The most restrictive decision drives the hook outcome.
26
+ */
27
+ function gateResultsToHookResult(gateResults) {
28
+ if (gateResults.length === 0) {
29
+ return { success: true };
30
+ }
31
+ const severityOrder = {
32
+ block: 3,
33
+ 'require-confirmation': 2,
34
+ warn: 1,
35
+ allow: 0,
36
+ };
37
+ // Sort by severity descending to find the most restrictive
38
+ const sorted = [...gateResults].sort((a, b) => severityOrder[b.decision] - severityOrder[a.decision]);
39
+ const worst = sorted[0];
40
+ // Collect all warnings and reasons
41
+ const allWarnings = [];
42
+ const allReasons = [];
43
+ for (const result of gateResults) {
44
+ allReasons.push(`[${result.gateName}] ${result.reason}`);
45
+ if (result.remediation) {
46
+ allWarnings.push(`[${result.gateName}] ${result.remediation}`);
47
+ }
48
+ }
49
+ switch (worst.decision) {
50
+ case 'block':
51
+ return {
52
+ success: false,
53
+ abort: true,
54
+ error: allReasons.join(' | '),
55
+ message: allReasons.join('\n'),
56
+ warnings: allWarnings.length > 0 ? allWarnings : undefined,
57
+ data: {
58
+ gateDecision: 'block',
59
+ gateResults: gateResults.map(r => ({
60
+ gate: r.gateName,
61
+ decision: r.decision,
62
+ reason: r.reason,
63
+ })),
64
+ },
65
+ };
66
+ case 'require-confirmation':
67
+ return {
68
+ success: false,
69
+ abort: true,
70
+ message: allReasons.join('\n'),
71
+ warnings: allWarnings.length > 0 ? allWarnings : undefined,
72
+ data: {
73
+ gateDecision: 'require-confirmation',
74
+ gateResults: gateResults.map(r => ({
75
+ gate: r.gateName,
76
+ decision: r.decision,
77
+ reason: r.reason,
78
+ })),
79
+ },
80
+ };
81
+ case 'warn':
82
+ return {
83
+ success: true,
84
+ message: allReasons.join('\n'),
85
+ warnings: allWarnings.length > 0 ? allWarnings : allReasons,
86
+ data: {
87
+ gateDecision: 'warn',
88
+ gateResults: gateResults.map(r => ({
89
+ gate: r.gateName,
90
+ decision: r.decision,
91
+ reason: r.reason,
92
+ })),
93
+ },
94
+ };
95
+ default:
96
+ return { success: true };
97
+ }
98
+ }
99
+ // ============================================================================
100
+ // Guidance Hook Provider
101
+ // ============================================================================
102
+ /**
103
+ * Provides guidance enforcement hooks for the V3 hook system.
104
+ *
105
+ * Registers hooks on a HookRegistry that wire each lifecycle event
106
+ * (PreCommand, PreToolUse, PreEdit, PreTask, PostTask) to the
107
+ * appropriate guidance subsystem (gates, retriever, ledger).
108
+ */
109
+ export class GuidanceHookProvider {
110
+ gates;
111
+ retriever;
112
+ ledger;
113
+ /** IDs of hooks registered by this provider, for cleanup */
114
+ hookIds = [];
115
+ /** Active run events keyed by task ID, for PostTask finalization */
116
+ activeRuns = new Map();
117
+ constructor(gates, retriever, ledger) {
118
+ this.gates = gates;
119
+ this.retriever = retriever;
120
+ this.ledger = ledger;
121
+ }
122
+ /**
123
+ * Register all guidance hooks on the given registry.
124
+ *
125
+ * Returns the array of generated hook IDs for tracking.
126
+ */
127
+ registerAll(registry) {
128
+ this.hookIds = [];
129
+ // 1. PreCommand -> gate enforcement (Critical priority)
130
+ this.hookIds.push(registry.register(HookEvent.PreCommand, (ctx) => this.handlePreCommand(ctx), HookPriority.Critical, {
131
+ name: 'guidance-gate-pre-command',
132
+ description: 'Evaluates commands for destructive ops and secrets',
133
+ }));
134
+ // 2. PreToolUse -> gate enforcement (Critical priority)
135
+ this.hookIds.push(registry.register(HookEvent.PreToolUse, (ctx) => this.handlePreToolUse(ctx), HookPriority.Critical, {
136
+ name: 'guidance-gate-pre-tool-use',
137
+ description: 'Evaluates tool usage against allowlist and checks for secrets',
138
+ }));
139
+ // 3. PreEdit -> gate enforcement (High priority)
140
+ this.hookIds.push(registry.register(HookEvent.PreEdit, (ctx) => this.handlePreEdit(ctx), HookPriority.High, {
141
+ name: 'guidance-gate-pre-edit',
142
+ description: 'Evaluates file edits for diff size and secrets',
143
+ }));
144
+ // 4. PreTask -> shard retrieval (Normal priority)
145
+ this.hookIds.push(registry.register(HookEvent.PreTask, (ctx) => this.handlePreTask(ctx), HookPriority.Normal, {
146
+ name: 'guidance-retriever-pre-task',
147
+ description: 'Retrieves relevant guidance shards at task start',
148
+ }));
149
+ // 5. PostTask -> ledger finalization (Normal priority)
150
+ this.hookIds.push(registry.register(HookEvent.PostTask, (ctx) => this.handlePostTask(ctx), HookPriority.Normal, {
151
+ name: 'guidance-ledger-post-task',
152
+ description: 'Finalizes the run event in the ledger on task completion',
153
+ }));
154
+ return [...this.hookIds];
155
+ }
156
+ /**
157
+ * Unregister all hooks previously registered by this provider.
158
+ */
159
+ unregisterAll(registry) {
160
+ for (const id of this.hookIds) {
161
+ registry.unregister(id);
162
+ }
163
+ this.hookIds = [];
164
+ }
165
+ /**
166
+ * Get the IDs of all registered hooks.
167
+ */
168
+ getHookIds() {
169
+ return [...this.hookIds];
170
+ }
171
+ /**
172
+ * Get the active run event for a given task ID (if any).
173
+ */
174
+ getActiveRun(taskId) {
175
+ return this.activeRuns.get(taskId);
176
+ }
177
+ // ==========================================================================
178
+ // Hook Handlers
179
+ // ==========================================================================
180
+ /**
181
+ * PreCommand handler: evaluate command through destructive ops and secrets gates.
182
+ */
183
+ handlePreCommand(ctx) {
184
+ const command = ctx.command?.raw;
185
+ if (!command) {
186
+ return { success: true };
187
+ }
188
+ const gateResults = this.gates.evaluateCommand(command);
189
+ return gateResultsToHookResult(gateResults);
190
+ }
191
+ /**
192
+ * PreToolUse handler: evaluate tool usage against allowlist and check params for secrets.
193
+ */
194
+ handlePreToolUse(ctx) {
195
+ const toolName = ctx.tool?.name;
196
+ if (!toolName) {
197
+ return { success: true };
198
+ }
199
+ const params = ctx.tool?.parameters ?? {};
200
+ const gateResults = this.gates.evaluateToolUse(toolName, params);
201
+ return gateResultsToHookResult(gateResults);
202
+ }
203
+ /**
204
+ * PreEdit handler: evaluate file edit for diff size and secrets.
205
+ *
206
+ * Extracts the file path from context. The content to scan comes from
207
+ * metadata.content or is synthesized from available context. The diff
208
+ * line count defaults to metadata.diffLines or 0.
209
+ */
210
+ handlePreEdit(ctx) {
211
+ const filePath = ctx.file?.path;
212
+ if (!filePath) {
213
+ return { success: true };
214
+ }
215
+ const content = ctx.metadata?.content ?? '';
216
+ const diffLines = ctx.metadata?.diffLines ?? 0;
217
+ const gateResults = this.gates.evaluateEdit(filePath, content, diffLines);
218
+ return gateResultsToHookResult(gateResults);
219
+ }
220
+ /**
221
+ * PreTask handler: classify intent and retrieve relevant guidance shards.
222
+ *
223
+ * Creates a new RunEvent in the active runs map for PostTask finalization.
224
+ * Returns the retrieved policy text and shards as hook data.
225
+ */
226
+ async handlePreTask(ctx) {
227
+ const taskId = ctx.task?.id;
228
+ const taskDescription = ctx.task?.description;
229
+ if (!taskId || !taskDescription) {
230
+ return { success: true };
231
+ }
232
+ try {
233
+ // Classify intent
234
+ const { intent, confidence } = this.retriever.classifyIntent(taskDescription);
235
+ // Retrieve relevant shards
236
+ let retrievalResult = null;
237
+ try {
238
+ retrievalResult = await this.retriever.retrieve({
239
+ taskDescription,
240
+ intent,
241
+ });
242
+ }
243
+ catch {
244
+ // Retriever may not have a loaded bundle -- degrade gracefully
245
+ }
246
+ // Create a run event for ledger tracking
247
+ const guidanceHash = retrievalResult?.constitution?.hash ?? 'unknown';
248
+ const runEvent = this.ledger.createEvent(taskId, intent, guidanceHash);
249
+ if (retrievalResult) {
250
+ runEvent.retrievedRuleIds = retrievalResult.shards.map(s => s.shard.rule.id);
251
+ }
252
+ this.activeRuns.set(taskId, runEvent);
253
+ return {
254
+ success: true,
255
+ message: retrievalResult
256
+ ? `Retrieved ${retrievalResult.shards.length} guidance shard(s) for intent "${intent}" (confidence: ${(confidence * 100).toFixed(0)}%)`
257
+ : `Classified intent as "${intent}" (confidence: ${(confidence * 100).toFixed(0)}%). No policy bundle loaded.`,
258
+ data: {
259
+ intent,
260
+ confidence,
261
+ policyText: retrievalResult?.policyText ?? null,
262
+ shardCount: retrievalResult?.shards.length ?? 0,
263
+ contradictionsResolved: retrievalResult?.contradictionsResolved ?? 0,
264
+ retrievalLatencyMs: retrievalResult?.latencyMs ?? 0,
265
+ },
266
+ };
267
+ }
268
+ catch (error) {
269
+ return {
270
+ success: false,
271
+ error: error instanceof Error ? error.message : String(error),
272
+ message: 'Failed to retrieve guidance shards for task',
273
+ };
274
+ }
275
+ }
276
+ /**
277
+ * PostTask handler: finalize the run event in the ledger.
278
+ *
279
+ * Looks up the active run by task ID, populates completion metadata,
280
+ * and calls ledger.finalizeEvent().
281
+ */
282
+ handlePostTask(ctx) {
283
+ const taskId = ctx.task?.id;
284
+ if (!taskId) {
285
+ return { success: true };
286
+ }
287
+ const runEvent = this.activeRuns.get(taskId);
288
+ if (!runEvent) {
289
+ return {
290
+ success: true,
291
+ message: `No active run event found for task "${taskId}". Skipping finalization.`,
292
+ };
293
+ }
294
+ try {
295
+ // Populate additional metadata from context if available
296
+ if (ctx.task?.status) {
297
+ runEvent.outcomeAccepted = ctx.task.status === 'completed';
298
+ }
299
+ if (ctx.metadata?.toolsUsed && Array.isArray(ctx.metadata.toolsUsed)) {
300
+ runEvent.toolsUsed = ctx.metadata.toolsUsed;
301
+ }
302
+ if (ctx.metadata?.filesTouched && Array.isArray(ctx.metadata.filesTouched)) {
303
+ runEvent.filesTouched = ctx.metadata.filesTouched;
304
+ }
305
+ // Finalize the event in the ledger
306
+ this.ledger.finalizeEvent(runEvent);
307
+ this.activeRuns.delete(taskId);
308
+ return {
309
+ success: true,
310
+ message: `Run event finalized for task "${taskId}" (duration: ${runEvent.durationMs}ms)`,
311
+ data: {
312
+ eventId: runEvent.eventId,
313
+ taskId: runEvent.taskId,
314
+ intent: runEvent.intent,
315
+ durationMs: runEvent.durationMs,
316
+ violationCount: runEvent.violations.length,
317
+ },
318
+ };
319
+ }
320
+ catch (error) {
321
+ return {
322
+ success: false,
323
+ error: error instanceof Error ? error.message : String(error),
324
+ message: `Failed to finalize run event for task "${taskId}"`,
325
+ };
326
+ }
327
+ }
328
+ }
329
+ // ============================================================================
330
+ // Factory
331
+ // ============================================================================
332
+ /**
333
+ * Create a GuidanceHookProvider and optionally register it on a registry.
334
+ *
335
+ * @param gates - The enforcement gates instance
336
+ * @param retriever - The shard retriever instance
337
+ * @param ledger - The run ledger instance
338
+ * @param registry - Optional registry to auto-register on
339
+ * @returns The provider and (if registry was given) the hook IDs
340
+ */
341
+ export function createGuidanceHooks(gates, retriever, ledger, registry) {
342
+ const provider = new GuidanceHookProvider(gates, retriever, ledger);
343
+ const hookIds = registry ? provider.registerAll(registry) : [];
344
+ return { provider, hookIds };
345
+ }
346
+ export { gateResultsToHookResult };
347
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1,205 @@
1
+ /**
2
+ * @claude-flow/guidance - Guidance Control Plane
3
+ *
4
+ * Sits beside Claude Code (not inside it) to:
5
+ * 1. Compile CLAUDE.md into constitution + shards + manifest
6
+ * 2. Retrieve task-relevant shards at runtime via intent classification
7
+ * 3. Enforce non-negotiables through hook gates
8
+ * 4. Log every run to a ledger with evaluators
9
+ * 5. Evolve the rule set through an optimizer loop
10
+ *
11
+ * Architecture:
12
+ * - Root CLAUDE.md → Repo constitution (rare changes)
13
+ * - CLAUDE.local.md → Overlay / experiment sandbox (frequent changes)
14
+ * - Optimizer → Promotes winning local rules to root
15
+ *
16
+ * Integration with Claude Code:
17
+ * - Headless mode (claude -p --output-format json) for automated testing
18
+ * - Hook system for enforcement gates
19
+ * - RuVector/HNSW for semantic shard retrieval
20
+ *
21
+ * @module @claude-flow/guidance
22
+ */
23
+ import { RunLedger } from './ledger.js';
24
+ import { OptimizerLoop } from './optimizer.js';
25
+ import { HeadlessRunner } from './headless.js';
26
+ export type { RiskClass, ToolClass, TaskIntent, GuidanceRule, RuleShard, Constitution, RuleManifest, PolicyBundle, RetrievalRequest, RetrievalResult, GateDecision, GateResult, GateConfig, RunEvent, Violation, EvaluatorResult, ViolationRanking, RuleChange, ABTestResult, OptimizationMetrics, RuleADR, GuidanceControlPlaneConfig, ControlPlaneStatus, } from './types.js';
27
+ export { GuidanceCompiler, createCompiler } from './compiler.js';
28
+ export type { CompilerConfig } from './compiler.js';
29
+ export { ShardRetriever, createRetriever, HashEmbeddingProvider } from './retriever.js';
30
+ export type { IEmbeddingProvider } from './retriever.js';
31
+ export { EnforcementGates, createGates } from './gates.js';
32
+ export { GuidanceHookProvider, createGuidanceHooks, gateResultsToHookResult, } from './hooks.js';
33
+ export { RunLedger, createLedger, TestsPassEvaluator, ForbiddenCommandEvaluator, ForbiddenDependencyEvaluator, ViolationRateEvaluator, DiffQualityEvaluator, } from './ledger.js';
34
+ export type { IEvaluator } from './ledger.js';
35
+ export { OptimizerLoop, createOptimizer } from './optimizer.js';
36
+ export type { OptimizerConfig } from './optimizer.js';
37
+ export { PersistentLedger, EventStore, createPersistentLedger, createEventStore, } from './persistence.js';
38
+ export type { PersistenceConfig, StorageStats } from './persistence.js';
39
+ export { HeadlessRunner, createHeadlessRunner, ProcessExecutor, createComplianceSuite, } from './headless.js';
40
+ export type { TestTask, TaskAssertion, TaskRunResult, HeadlessOutput, SuiteRunSummary, ICommandExecutor, } from './headless.js';
41
+ export { DeterministicToolGateway, createToolGateway } from './gateway.js';
42
+ export type { ToolSchema, Budget, IdempotencyRecord, GatewayDecision, ToolGatewayConfig, } from './gateway.js';
43
+ export { ArtifactLedger, createArtifactLedger } from './artifacts.js';
44
+ export type { ArtifactKind, Artifact, ArtifactLineage, ArtifactVerification, ArtifactSearchQuery, ArtifactStats, ArtifactLedgerConfig, RecordArtifactParams, SerializedArtifactLedger, } from './artifacts.js';
45
+ export { EvolutionPipeline, createEvolutionPipeline } from './evolution.js';
46
+ export type { ChangeProposalKind, ProposalStatus, RiskAssessment, ChangeProposal, DecisionDiff, SimulationResult, RolloutStage, StagedRollout, EvolutionHistoryEntry, TraceEvaluator, EvolutionPipelineConfig, } from './evolution.js';
47
+ export { ManifestValidator, ConformanceSuite, createManifestValidator, createConformanceSuite, } from './manifest-validator.js';
48
+ export type { AgentCellManifest, ValidationResult, ValidationError, ValidationWarning, GoldenTrace, GoldenTraceEvent, ConformanceResult, } from './manifest-validator.js';
49
+ export { ProofChain, createProofChain } from './proof.js';
50
+ export type { ToolCallRecord, MemoryOperation, MemoryLineageEntry, ProofEnvelopeMetadata, ProofEnvelope, SerializedProofChain, } from './proof.js';
51
+ export { MemoryWriteGate, createMemoryWriteGate, createMemoryEntry, } from './memory-gate.js';
52
+ export type { MemoryAuthority, MemoryEntry, WriteDecision, MemoryWriteGateConfig, } from './memory-gate.js';
53
+ export { CoherenceScheduler, EconomicGovernor, createCoherenceScheduler, createEconomicGovernor, } from './coherence.js';
54
+ export type { CoherenceScore, CoherenceThresholds, PrivilegeLevel, BudgetUsage, CoherenceSchedulerConfig, EconomicGovernorConfig, } from './coherence.js';
55
+ export { CapabilityAlgebra, createCapabilityAlgebra } from './capabilities.js';
56
+ export type { CapabilityScope, CapabilityConstraint, Attestation, Capability, CapabilityCheckResult, } from './capabilities.js';
57
+ export { SimulatedRuntime, MemoryClerkCell, ConformanceRunner, createMemoryClerkCell, createConformanceRunner, } from './conformance-kit.js';
58
+ export type { TraceEvent as CellTraceEvent, CellRunResult, CellRuntime, AgentCell, SimulatedRuntimeConfig, ConformanceTestResult, ReplayTestResult, } from './conformance-kit.js';
59
+ export { RuvBotGuidanceBridge, AIDefenceGate, RuvBotMemoryAdapter, createRuvBotBridge, createAIDefenceGate, createRuvBotMemoryAdapter, } from './ruvbot-integration.js';
60
+ export type { RuvBotInstance, RuvBotAIDefenceGuard, RuvBotMemory, AIDefenceThreat, AIDefenceResult, AIDefenceGateConfig, RuvBotBridgeConfig, RuvBotEvent, } from './ruvbot-integration.js';
61
+ export { MetaGovernor, createMetaGovernor } from './meta-governance.js';
62
+ export type { InvariantCheckResult, GovernanceState, ConstitutionalInvariant, AmendmentChange, Amendment, OptimizerConstraint, OptimizerAction, OptimizerValidation, InvariantReport, MetaGovernanceConfig, } from './meta-governance.js';
63
+ export { ThreatDetector, CollusionDetector, MemoryQuorum, createThreatDetector, createCollusionDetector, createMemoryQuorum, } from './adversarial.js';
64
+ export type { ThreatCategory, ThreatSignal, DetectionPattern, CollusionReport, MemoryProposal, QuorumResult, ThreatDetectorConfig, CollusionDetectorConfig, MemoryQuorumConfig, } from './adversarial.js';
65
+ export { ContinueGate, createContinueGate } from './continue-gate.js';
66
+ export type { ContinueGateConfig, StepContext, ContinueDecision, } from './continue-gate.js';
67
+ export { getKernel, isWasmAvailable, resetKernel, } from './wasm-kernel.js';
68
+ export type { WasmKernel, BatchOp, BatchResult, } from './wasm-kernel.js';
69
+ export { generateClaudeMd, generateClaudeLocalMd, generateSkillMd, generateAgentMd, generateAgentIndex, scaffold, } from './generators.js';
70
+ export type { ProjectProfile, LocalProfile, SkillDefinition, AgentDefinition, ScaffoldOptions, ScaffoldResult, } from './generators.js';
71
+ export { analyze, benchmark, autoOptimize, optimizeForSize, headlessBenchmark, validateEffect, abBenchmark, getDefaultABTasks, formatReport, formatBenchmark, } from './analyzer.js';
72
+ export type { AnalysisResult, AnalysisMetrics, DimensionScore, Suggestion, BenchmarkResult, ContextSize, OptimizeOptions, HeadlessBenchmarkResult, HeadlessTaskResult, IHeadlessExecutor, IContentAwareExecutor, ValidationAssertion, ValidationTask, ValidationTaskResult, ValidationRun, CorrelationResult, ValidationReport, ABTaskClass, ABTask, ABGatePattern, ABTaskResult, ABMetrics, ABReport, } from './analyzer.js';
73
+ export { TrustAccumulator, TrustLedger as TrustScoreLedger, TrustSystem, getTrustBasedRateLimit, createTrustAccumulator, createTrustSystem, } from './trust.js';
74
+ export type { TrustTier, GateOutcome, TrustConfig, TrustRecord, TrustSnapshot, } from './trust.js';
75
+ export { TruthAnchorStore, TruthResolver, createTruthAnchorStore, createTruthResolver, } from './truth-anchors.js';
76
+ export type { TruthSourceKind, TruthAnchor, TruthAnchorConfig, AnchorParams, TruthAnchorQuery, VerifyAllResult, ConflictResolution, } from './truth-anchors.js';
77
+ export { UncertaintyLedger, UncertaintyAggregator, createUncertaintyLedger, createUncertaintyAggregator, } from './uncertainty.js';
78
+ export type { BeliefStatus, ConfidenceInterval, Belief, UncertaintyConfig, } from './uncertainty.js';
79
+ export { TemporalStore, TemporalReasoner, createTemporalStore, createTemporalReasoner, } from './temporal.js';
80
+ export type { TemporalStatus, ValidityWindow, TemporalAssertion, TemporalTimeline, TemporalChange, TemporalConfig, } from './temporal.js';
81
+ export { AuthorityGate, IrreversibilityClassifier, createAuthorityGate, createIrreversibilityClassifier, isHigherAuthority, getAuthorityHierarchy, } from './authority.js';
82
+ export type { AuthorityLevel, IrreversibilityClass, ProofLevel, AuthorityScope, HumanIntervention, AuthorityCheckResult, IrreversibilityResult, AuthorityGateConfig, IrreversibilityClassifierConfig, } from './authority.js';
83
+ import type { PolicyBundle, GuidanceControlPlaneConfig, ControlPlaneStatus, RetrievalRequest, RetrievalResult, GateResult, RunEvent, EvaluatorResult, TaskIntent, Violation } from './types.js';
84
+ /**
85
+ * The main Guidance Control Plane
86
+ *
87
+ * Orchestrates all components:
88
+ * - Compiler: CLAUDE.md → PolicyBundle
89
+ * - Retriever: PolicyBundle → task-relevant shards
90
+ * - Gates: enforcement hooks
91
+ * - Ledger: run logging + evaluation
92
+ * - Optimizer: rule evolution
93
+ * - Headless: automated testing
94
+ */
95
+ export declare class GuidanceControlPlane {
96
+ private config;
97
+ private compiler;
98
+ private retriever;
99
+ private gates;
100
+ private ledger;
101
+ private optimizer;
102
+ private headless;
103
+ private bundle;
104
+ private initialized;
105
+ constructor(config?: Partial<GuidanceControlPlaneConfig>);
106
+ /**
107
+ * Initialize the control plane
108
+ *
109
+ * 1. Read and compile guidance files
110
+ * 2. Load shards into retriever
111
+ * 3. Configure gates
112
+ * 4. Set up headless runner if enabled
113
+ */
114
+ initialize(): Promise<void>;
115
+ /**
116
+ * Compile guidance files (can be called independently)
117
+ */
118
+ compile(rootContent: string, localContent?: string): Promise<PolicyBundle>;
119
+ /**
120
+ * Retrieve relevant guidance for a task
121
+ *
122
+ * This is the main entry point called at task start.
123
+ * Returns the constitution + relevant shards.
124
+ */
125
+ retrieveForTask(request: RetrievalRequest): Promise<RetrievalResult>;
126
+ /**
127
+ * Evaluate a command through enforcement gates
128
+ */
129
+ evaluateCommand(command: string): GateResult[];
130
+ /**
131
+ * Evaluate a tool use through enforcement gates
132
+ */
133
+ evaluateToolUse(toolName: string, params: Record<string, unknown>): GateResult[];
134
+ /**
135
+ * Evaluate a file edit through enforcement gates
136
+ */
137
+ evaluateEdit(filePath: string, content: string, diffLines: number): GateResult[];
138
+ /**
139
+ * Start a run event for tracking
140
+ */
141
+ startRun(taskId: string, intent: TaskIntent): RunEvent;
142
+ /**
143
+ * Record a violation during a run
144
+ */
145
+ recordViolation(event: RunEvent, violation: Violation): void;
146
+ /**
147
+ * Finalize a run and evaluate it
148
+ */
149
+ finalizeRun(event: RunEvent): Promise<EvaluatorResult[]>;
150
+ /**
151
+ * Run the optimization cycle
152
+ */
153
+ optimize(): Promise<{
154
+ promoted: string[];
155
+ demoted: string[];
156
+ adrsCreated: number;
157
+ }>;
158
+ /**
159
+ * Get control plane status
160
+ */
161
+ getStatus(): ControlPlaneStatus;
162
+ /**
163
+ * Get the current policy bundle
164
+ */
165
+ getBundle(): PolicyBundle | null;
166
+ /**
167
+ * Get the run ledger
168
+ */
169
+ getLedger(): RunLedger;
170
+ /**
171
+ * Get the optimizer
172
+ */
173
+ getOptimizer(): OptimizerLoop;
174
+ /**
175
+ * Get the headless runner
176
+ */
177
+ getHeadlessRunner(): HeadlessRunner | null;
178
+ /**
179
+ * Get metrics for benefit tracking
180
+ */
181
+ getMetrics(): {
182
+ violationRatePer10Tasks: number;
183
+ selfCorrectionRate: number;
184
+ reworkLinesAvg: number;
185
+ clarifyingQuestionsAvg: number;
186
+ taskCount: number;
187
+ topViolations: Array<{
188
+ ruleId: string;
189
+ frequency: number;
190
+ cost: number;
191
+ }>;
192
+ };
193
+ private readGuidanceFile;
194
+ private ensureInitialized;
195
+ }
196
+ /**
197
+ * Create a guidance control plane instance
198
+ */
199
+ export declare function createGuidanceControlPlane(config?: Partial<GuidanceControlPlaneConfig>): GuidanceControlPlane;
200
+ /**
201
+ * Quick setup: create and initialize the control plane
202
+ */
203
+ export declare function initializeGuidanceControlPlane(config?: Partial<GuidanceControlPlaneConfig>): Promise<GuidanceControlPlane>;
204
+ export default GuidanceControlPlane;
205
+ //# sourceMappingURL=index.d.ts.map