odd-flow 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (730) hide show
  1. package/.claude/agents/MIGRATION_SUMMARY.md +222 -0
  2. package/.claude/agents/analysis/analyze-code-quality.md +58 -0
  3. package/.claude/agents/analysis/code-analyzer.md +189 -0
  4. package/.claude/agents/analysis/code-review/analyze-code-quality.md +58 -0
  5. package/.claude/agents/architecture/system-design/arch-system-design.md +36 -0
  6. package/.claude/agents/base-template-generator.md +41 -0
  7. package/.claude/agents/consensus/byzantine-coordinator.md +43 -0
  8. package/.claude/agents/consensus/crdt-synchronizer.md +977 -0
  9. package/.claude/agents/consensus/gossip-coordinator.md +43 -0
  10. package/.claude/agents/consensus/performance-benchmarker.md +831 -0
  11. package/.claude/agents/consensus/quorum-manager.md +803 -0
  12. package/.claude/agents/consensus/raft-manager.md +43 -0
  13. package/.claude/agents/consensus/security-manager.md +602 -0
  14. package/.claude/agents/core/coder.md +244 -0
  15. package/.claude/agents/core/planner.md +152 -0
  16. package/.claude/agents/core/researcher.md +174 -0
  17. package/.claude/agents/core/reviewer.md +309 -0
  18. package/.claude/agents/core/tester.md +300 -0
  19. package/.claude/agents/custom/test-long-runner.md +43 -0
  20. package/.claude/agents/data/ml/data-ml-model.md +76 -0
  21. package/.claude/agents/database-specialist.md +9 -0
  22. package/.claude/agents/development/backend/dev-backend-api.md +29 -0
  23. package/.claude/agents/development/dev-backend-api.md +178 -0
  24. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +52 -0
  25. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +63 -0
  26. package/.claude/agents/dual-mode/codex-coordinator.md +201 -0
  27. package/.claude/agents/dual-mode/codex-worker.md +183 -0
  28. package/.claude/agents/dual-mode/dual-orchestrator.md +253 -0
  29. package/.claude/agents/flow-nexus/app-store.md +88 -0
  30. package/.claude/agents/flow-nexus/authentication.md +69 -0
  31. package/.claude/agents/flow-nexus/challenges.md +81 -0
  32. package/.claude/agents/flow-nexus/neural-network.md +88 -0
  33. package/.claude/agents/flow-nexus/payments.md +83 -0
  34. package/.claude/agents/flow-nexus/sandbox.md +76 -0
  35. package/.claude/agents/flow-nexus/swarm.md +76 -0
  36. package/.claude/agents/flow-nexus/user-tools.md +96 -0
  37. package/.claude/agents/flow-nexus/workflow.md +84 -0
  38. package/.claude/agents/github/code-review-swarm.md +521 -0
  39. package/.claude/agents/github/github-modes.md +154 -0
  40. package/.claude/agents/github/issue-tracker.md +299 -0
  41. package/.claude/agents/github/multi-repo-swarm.md +525 -0
  42. package/.claude/agents/github/pr-manager.md +163 -0
  43. package/.claude/agents/github/project-board-sync.md +478 -0
  44. package/.claude/agents/github/release-manager.md +336 -0
  45. package/.claude/agents/github/release-swarm.md +551 -0
  46. package/.claude/agents/github/repo-architect.md +365 -0
  47. package/.claude/agents/github/swarm-issue.md +548 -0
  48. package/.claude/agents/github/swarm-pr.md +399 -0
  49. package/.claude/agents/github/sync-coordinator.md +423 -0
  50. package/.claude/agents/github/workflow-automation.md +605 -0
  51. package/.claude/agents/goal/agent.md +817 -0
  52. package/.claude/agents/goal/code-goal-planner.md +445 -0
  53. package/.claude/agents/goal/goal-planner.md +168 -0
  54. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +129 -0
  55. package/.claude/agents/hive-mind/queen-coordinator.md +202 -0
  56. package/.claude/agents/hive-mind/scout-explorer.md +241 -0
  57. package/.claude/agents/hive-mind/swarm-memory-manager.md +192 -0
  58. package/.claude/agents/hive-mind/worker-specialist.md +216 -0
  59. package/.claude/agents/neural/safla-neural.md +74 -0
  60. package/.claude/agents/optimization/benchmark-suite.md +663 -0
  61. package/.claude/agents/optimization/load-balancer.md +429 -0
  62. package/.claude/agents/optimization/performance-monitor.md +670 -0
  63. package/.claude/agents/optimization/resource-allocator.md +672 -0
  64. package/.claude/agents/optimization/topology-optimizer.md +806 -0
  65. package/.claude/agents/payments/agentic-payments.md +126 -0
  66. package/.claude/agents/project-coordinator.md +8 -0
  67. package/.claude/agents/python-specialist.md +9 -0
  68. package/.claude/agents/reasoning/agent.md +817 -0
  69. package/.claude/agents/reasoning/goal-planner.md +73 -0
  70. package/.claude/agents/security-auditor.md +9 -0
  71. package/.claude/agents/sona/sona-learning-optimizer.md +65 -0
  72. package/.claude/agents/sparc/architecture.md +453 -0
  73. package/.claude/agents/sparc/pseudocode.md +299 -0
  74. package/.claude/agents/sparc/refinement.md +504 -0
  75. package/.claude/agents/sparc/specification.md +258 -0
  76. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +88 -0
  77. package/.claude/agents/sublinear/consensus-coordinator.md +338 -0
  78. package/.claude/agents/sublinear/matrix-optimizer.md +185 -0
  79. package/.claude/agents/sublinear/pagerank-analyzer.md +299 -0
  80. package/.claude/agents/sublinear/performance-optimizer.md +368 -0
  81. package/.claude/agents/sublinear/trading-predictor.md +246 -0
  82. package/.claude/agents/swarm/adaptive-coordinator.md +364 -0
  83. package/.claude/agents/swarm/hierarchical-coordinator.md +300 -0
  84. package/.claude/agents/swarm/mesh-coordinator.md +363 -0
  85. package/.claude/agents/templates/automation-smart-agent.md +185 -0
  86. package/.claude/agents/templates/coordinator-swarm-init.md +83 -0
  87. package/.claude/agents/templates/github-pr-manager.md +155 -0
  88. package/.claude/agents/templates/implementer-sparc-coder.md +231 -0
  89. package/.claude/agents/templates/memory-coordinator.md +163 -0
  90. package/.claude/agents/templates/migration-plan.md +724 -0
  91. package/.claude/agents/templates/orchestrator-task.md +120 -0
  92. package/.claude/agents/templates/performance-analyzer.md +179 -0
  93. package/.claude/agents/templates/sparc-coordinator.md +163 -0
  94. package/.claude/agents/testing/production-validator.md +373 -0
  95. package/.claude/agents/testing/tdd-london-swarm.md +222 -0
  96. package/.claude/agents/testing/unit/tdd-london-swarm.md +222 -0
  97. package/.claude/agents/testing/validation/production-validator.md +373 -0
  98. package/.claude/agents/typescript-specialist.md +9 -0
  99. package/.claude/agents/v3/database-specialist.md +9 -0
  100. package/.claude/agents/v3/project-coordinator.md +8 -0
  101. package/.claude/agents/v3/python-specialist.md +9 -0
  102. package/.claude/agents/v3/test-architect.md +9 -0
  103. package/.claude/agents/v3/typescript-specialist.md +9 -0
  104. package/.claude/agents/v3/v3-integration-architect.md +312 -0
  105. package/.claude/agents/v3/v3-memory-specialist.md +281 -0
  106. package/.claude/agents/v3/v3-performance-engineer.md +363 -0
  107. package/.claude/agents/v3/v3-queen-coordinator.md +63 -0
  108. package/.claude/agents/v3/v3-security-architect.md +140 -0
  109. package/.claude/checkpoints/1767754460.json +8 -0
  110. package/.claude/commands/agents/README.md +10 -0
  111. package/.claude/commands/agents/agent-capabilities.md +21 -0
  112. package/.claude/commands/agents/agent-coordination.md +28 -0
  113. package/.claude/commands/agents/agent-spawning.md +28 -0
  114. package/.claude/commands/agents/agent-types.md +26 -0
  115. package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +54 -0
  116. package/.claude/commands/analysis/README.md +9 -0
  117. package/.claude/commands/analysis/bottleneck-detect.md +162 -0
  118. package/.claude/commands/analysis/performance-bottlenecks.md +59 -0
  119. package/.claude/commands/analysis/performance-report.md +25 -0
  120. package/.claude/commands/analysis/token-efficiency.md +45 -0
  121. package/.claude/commands/analysis/token-usage.md +25 -0
  122. package/.claude/commands/automation/README.md +9 -0
  123. package/.claude/commands/automation/auto-agent.md +122 -0
  124. package/.claude/commands/automation/self-healing.md +106 -0
  125. package/.claude/commands/automation/session-memory.md +90 -0
  126. package/.claude/commands/automation/smart-agents.md +73 -0
  127. package/.claude/commands/automation/smart-spawn.md +25 -0
  128. package/.claude/commands/automation/workflow-select.md +25 -0
  129. package/.claude/commands/claude-flow-help.md +103 -0
  130. package/.claude/commands/claude-flow-memory.md +107 -0
  131. package/.claude/commands/claude-flow-swarm.md +205 -0
  132. package/.claude/commands/coordination/README.md +9 -0
  133. package/.claude/commands/coordination/agent-spawn.md +25 -0
  134. package/.claude/commands/coordination/init.md +44 -0
  135. package/.claude/commands/coordination/orchestrate.md +43 -0
  136. package/.claude/commands/coordination/spawn.md +45 -0
  137. package/.claude/commands/coordination/swarm-init.md +85 -0
  138. package/.claude/commands/coordination/task-orchestrate.md +25 -0
  139. package/.claude/commands/flow-nexus/app-store.md +124 -0
  140. package/.claude/commands/flow-nexus/challenges.md +120 -0
  141. package/.claude/commands/flow-nexus/login-registration.md +65 -0
  142. package/.claude/commands/flow-nexus/neural-network.md +134 -0
  143. package/.claude/commands/flow-nexus/payments.md +116 -0
  144. package/.claude/commands/flow-nexus/sandbox.md +83 -0
  145. package/.claude/commands/flow-nexus/swarm.md +87 -0
  146. package/.claude/commands/flow-nexus/user-tools.md +152 -0
  147. package/.claude/commands/flow-nexus/workflow.md +115 -0
  148. package/.claude/commands/github/README.md +11 -0
  149. package/.claude/commands/github/code-review-swarm.md +514 -0
  150. package/.claude/commands/github/code-review.md +25 -0
  151. package/.claude/commands/github/github-modes.md +147 -0
  152. package/.claude/commands/github/github-swarm.md +121 -0
  153. package/.claude/commands/github/issue-tracker.md +292 -0
  154. package/.claude/commands/github/issue-triage.md +25 -0
  155. package/.claude/commands/github/multi-repo-swarm.md +519 -0
  156. package/.claude/commands/github/pr-enhance.md +26 -0
  157. package/.claude/commands/github/pr-manager.md +170 -0
  158. package/.claude/commands/github/project-board-sync.md +471 -0
  159. package/.claude/commands/github/release-manager.md +338 -0
  160. package/.claude/commands/github/release-swarm.md +544 -0
  161. package/.claude/commands/github/repo-analyze.md +25 -0
  162. package/.claude/commands/github/repo-architect.md +367 -0
  163. package/.claude/commands/github/swarm-issue.md +482 -0
  164. package/.claude/commands/github/swarm-pr.md +285 -0
  165. package/.claude/commands/github/sync-coordinator.md +301 -0
  166. package/.claude/commands/github/workflow-automation.md +442 -0
  167. package/.claude/commands/hive-mind/README.md +17 -0
  168. package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -0
  169. package/.claude/commands/hive-mind/hive-mind-init.md +18 -0
  170. package/.claude/commands/hive-mind/hive-mind-memory.md +8 -0
  171. package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -0
  172. package/.claude/commands/hive-mind/hive-mind-resume.md +8 -0
  173. package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -0
  174. package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -0
  175. package/.claude/commands/hive-mind/hive-mind-status.md +8 -0
  176. package/.claude/commands/hive-mind/hive-mind-stop.md +8 -0
  177. package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -0
  178. package/.claude/commands/hive-mind/hive-mind.md +27 -0
  179. package/.claude/commands/hooks/README.md +11 -0
  180. package/.claude/commands/hooks/overview.md +58 -0
  181. package/.claude/commands/hooks/post-edit.md +117 -0
  182. package/.claude/commands/hooks/post-task.md +112 -0
  183. package/.claude/commands/hooks/pre-edit.md +113 -0
  184. package/.claude/commands/hooks/pre-task.md +111 -0
  185. package/.claude/commands/hooks/session-end.md +118 -0
  186. package/.claude/commands/hooks/setup.md +103 -0
  187. package/.claude/commands/memory/README.md +9 -0
  188. package/.claude/commands/memory/memory-persist.md +25 -0
  189. package/.claude/commands/memory/memory-search.md +25 -0
  190. package/.claude/commands/memory/memory-usage.md +25 -0
  191. package/.claude/commands/memory/neural.md +47 -0
  192. package/.claude/commands/monitoring/README.md +9 -0
  193. package/.claude/commands/monitoring/agent-metrics.md +25 -0
  194. package/.claude/commands/monitoring/agents.md +44 -0
  195. package/.claude/commands/monitoring/real-time-view.md +25 -0
  196. package/.claude/commands/monitoring/status.md +46 -0
  197. package/.claude/commands/monitoring/swarm-monitor.md +25 -0
  198. package/.claude/commands/optimization/README.md +9 -0
  199. package/.claude/commands/optimization/auto-topology.md +62 -0
  200. package/.claude/commands/optimization/cache-manage.md +25 -0
  201. package/.claude/commands/optimization/parallel-execute.md +25 -0
  202. package/.claude/commands/optimization/parallel-execution.md +50 -0
  203. package/.claude/commands/optimization/topology-optimize.md +25 -0
  204. package/.claude/commands/pair/README.md +261 -0
  205. package/.claude/commands/pair/commands.md +546 -0
  206. package/.claude/commands/pair/config.md +510 -0
  207. package/.claude/commands/pair/examples.md +512 -0
  208. package/.claude/commands/pair/modes.md +348 -0
  209. package/.claude/commands/pair/session.md +407 -0
  210. package/.claude/commands/pair/start.md +209 -0
  211. package/.claude/commands/sparc/analyzer.md +52 -0
  212. package/.claude/commands/sparc/architect.md +53 -0
  213. package/.claude/commands/sparc/ask.md +97 -0
  214. package/.claude/commands/sparc/batch-executor.md +54 -0
  215. package/.claude/commands/sparc/code.md +89 -0
  216. package/.claude/commands/sparc/coder.md +54 -0
  217. package/.claude/commands/sparc/debug.md +83 -0
  218. package/.claude/commands/sparc/debugger.md +54 -0
  219. package/.claude/commands/sparc/designer.md +53 -0
  220. package/.claude/commands/sparc/devops.md +109 -0
  221. package/.claude/commands/sparc/docs-writer.md +80 -0
  222. package/.claude/commands/sparc/documenter.md +54 -0
  223. package/.claude/commands/sparc/innovator.md +54 -0
  224. package/.claude/commands/sparc/integration.md +83 -0
  225. package/.claude/commands/sparc/mcp.md +117 -0
  226. package/.claude/commands/sparc/memory-manager.md +54 -0
  227. package/.claude/commands/sparc/optimizer.md +54 -0
  228. package/.claude/commands/sparc/orchestrator.md +132 -0
  229. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -0
  230. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -0
  231. package/.claude/commands/sparc/researcher.md +54 -0
  232. package/.claude/commands/sparc/reviewer.md +54 -0
  233. package/.claude/commands/sparc/security-review.md +80 -0
  234. package/.claude/commands/sparc/sparc-modes.md +174 -0
  235. package/.claude/commands/sparc/sparc.md +111 -0
  236. package/.claude/commands/sparc/spec-pseudocode.md +80 -0
  237. package/.claude/commands/sparc/supabase-admin.md +348 -0
  238. package/.claude/commands/sparc/swarm-coordinator.md +54 -0
  239. package/.claude/commands/sparc/tdd.md +54 -0
  240. package/.claude/commands/sparc/tester.md +54 -0
  241. package/.claude/commands/sparc/tutorial.md +79 -0
  242. package/.claude/commands/sparc/workflow-manager.md +54 -0
  243. package/.claude/commands/sparc.md +166 -0
  244. package/.claude/commands/stream-chain/pipeline.md +121 -0
  245. package/.claude/commands/stream-chain/run.md +70 -0
  246. package/.claude/commands/swarm/README.md +15 -0
  247. package/.claude/commands/swarm/analysis.md +95 -0
  248. package/.claude/commands/swarm/development.md +96 -0
  249. package/.claude/commands/swarm/examples.md +168 -0
  250. package/.claude/commands/swarm/maintenance.md +102 -0
  251. package/.claude/commands/swarm/optimization.md +117 -0
  252. package/.claude/commands/swarm/research.md +136 -0
  253. package/.claude/commands/swarm/swarm-analysis.md +8 -0
  254. package/.claude/commands/swarm/swarm-background.md +8 -0
  255. package/.claude/commands/swarm/swarm-init.md +19 -0
  256. package/.claude/commands/swarm/swarm-modes.md +8 -0
  257. package/.claude/commands/swarm/swarm-monitor.md +8 -0
  258. package/.claude/commands/swarm/swarm-spawn.md +19 -0
  259. package/.claude/commands/swarm/swarm-status.md +8 -0
  260. package/.claude/commands/swarm/swarm-strategies.md +8 -0
  261. package/.claude/commands/swarm/swarm.md +27 -0
  262. package/.claude/commands/swarm/testing.md +131 -0
  263. package/.claude/commands/training/README.md +9 -0
  264. package/.claude/commands/training/model-update.md +25 -0
  265. package/.claude/commands/training/neural-patterns.md +74 -0
  266. package/.claude/commands/training/neural-train.md +25 -0
  267. package/.claude/commands/training/pattern-learn.md +25 -0
  268. package/.claude/commands/training/specialization.md +63 -0
  269. package/.claude/commands/truth/start.md +143 -0
  270. package/.claude/commands/verify/check.md +50 -0
  271. package/.claude/commands/verify/start.md +128 -0
  272. package/.claude/commands/workflows/README.md +9 -0
  273. package/.claude/commands/workflows/development.md +78 -0
  274. package/.claude/commands/workflows/research.md +63 -0
  275. package/.claude/commands/workflows/workflow-create.md +25 -0
  276. package/.claude/commands/workflows/workflow-execute.md +25 -0
  277. package/.claude/commands/workflows/workflow-export.md +25 -0
  278. package/.claude/config/v3-dependency-optimization.json +266 -0
  279. package/.claude/config/v3-performance-targets.json +251 -0
  280. package/.claude/helpers/README.md +97 -0
  281. package/.claude/helpers/adr-compliance.sh +186 -0
  282. package/.claude/helpers/aggressive-microcompact.mjs +36 -0
  283. package/.claude/helpers/auto-commit.sh +178 -0
  284. package/.claude/helpers/auto-memory-hook.mjs +369 -0
  285. package/.claude/helpers/checkpoint-manager.sh +251 -0
  286. package/.claude/helpers/context-persistence-hook.mjs +1979 -0
  287. package/.claude/helpers/daemon-manager.sh +252 -0
  288. package/.claude/helpers/ddd-tracker.sh +144 -0
  289. package/.claude/helpers/github-safe.js +106 -0
  290. package/.claude/helpers/github-setup.sh +28 -0
  291. package/.claude/helpers/guidance-hook.sh +13 -0
  292. package/.claude/helpers/guidance-hooks.sh +102 -0
  293. package/.claude/helpers/health-monitor.sh +108 -0
  294. package/.claude/helpers/hook-handler.cjs +234 -0
  295. package/.claude/helpers/intelligence.cjs +207 -0
  296. package/.claude/helpers/learning-hooks.sh +329 -0
  297. package/.claude/helpers/learning-optimizer.sh +127 -0
  298. package/.claude/helpers/learning-service.mjs +1144 -0
  299. package/.claude/helpers/memory.cjs +84 -0
  300. package/.claude/helpers/metrics-db.mjs +488 -0
  301. package/.claude/helpers/pattern-consolidator.sh +86 -0
  302. package/.claude/helpers/perf-worker.sh +160 -0
  303. package/.claude/helpers/quick-start.sh +19 -0
  304. package/.claude/helpers/router.cjs +62 -0
  305. package/.claude/helpers/security-scanner.sh +127 -0
  306. package/.claude/helpers/session.cjs +125 -0
  307. package/.claude/helpers/setup-mcp.sh +18 -0
  308. package/.claude/helpers/standard-checkpoint-hooks.sh +189 -0
  309. package/.claude/helpers/statusline.cjs +770 -0
  310. package/.claude/helpers/swarm-comms.sh +353 -0
  311. package/.claude/helpers/swarm-hooks.sh +761 -0
  312. package/.claude/helpers/swarm-monitor.sh +211 -0
  313. package/.claude/helpers/sync-v3-metrics.sh +245 -0
  314. package/.claude/helpers/update-v3-progress.sh +166 -0
  315. package/.claude/helpers/v3-quick-status.sh +58 -0
  316. package/.claude/helpers/v3.sh +111 -0
  317. package/.claude/helpers/validate-v3-config.sh +216 -0
  318. package/.claude/helpers/worker-manager.sh +170 -0
  319. package/.claude/mcp.json +13 -0
  320. package/.claude/settings copy.json +526 -0
  321. package/.claude/settings.json +305 -0
  322. package/.claude/skills/agentdb-advanced/SKILL.md +550 -0
  323. package/.claude/skills/agentdb-learning/SKILL.md +545 -0
  324. package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -0
  325. package/.claude/skills/agentdb-optimization/SKILL.md +509 -0
  326. package/.claude/skills/agentdb-vector-search/SKILL.md +339 -0
  327. package/.claude/skills/agentic-jujutsu/SKILL.md +645 -0
  328. package/.claude/skills/dual-mode/README.md +71 -0
  329. package/.claude/skills/dual-mode/dual-collect.md +103 -0
  330. package/.claude/skills/dual-mode/dual-coordinate.md +85 -0
  331. package/.claude/skills/dual-mode/dual-spawn.md +81 -0
  332. package/.claude/skills/flow-nexus-neural/SKILL.md +727 -0
  333. package/.claude/skills/flow-nexus-platform/SKILL.md +1154 -0
  334. package/.claude/skills/flow-nexus-swarm/SKILL.md +604 -0
  335. package/.claude/skills/github-code-review/SKILL.md +1125 -0
  336. package/.claude/skills/github-multi-repo/SKILL.md +862 -0
  337. package/.claude/skills/github-project-management/SKILL.md +1250 -0
  338. package/.claude/skills/github-release-management/SKILL.md +1064 -0
  339. package/.claude/skills/github-workflow-automation/SKILL.md +1047 -0
  340. package/.claude/skills/hive-mind-advanced/SKILL.md +709 -0
  341. package/.claude/skills/hooks-automation/SKILL.md +1201 -0
  342. package/.claude/skills/pair-programming/SKILL.md +1202 -0
  343. package/.claude/skills/performance-analysis/SKILL.md +560 -0
  344. package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -0
  345. package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -0
  346. package/.claude/skills/skill-builder/SKILL.md +910 -0
  347. package/.claude/skills/sparc-methodology/SKILL.md +1106 -0
  348. package/.claude/skills/stream-chain/SKILL.md +560 -0
  349. package/.claude/skills/swarm-advanced/SKILL.md +970 -0
  350. package/.claude/skills/swarm-orchestration/SKILL.md +179 -0
  351. package/.claude/skills/v3-cli-modernization/SKILL.md +872 -0
  352. package/.claude/skills/v3-core-implementation/SKILL.md +797 -0
  353. package/.claude/skills/v3-ddd-architecture/SKILL.md +442 -0
  354. package/.claude/skills/v3-integration-deep/SKILL.md +241 -0
  355. package/.claude/skills/v3-mcp-optimization/SKILL.md +777 -0
  356. package/.claude/skills/v3-memory-unification/SKILL.md +174 -0
  357. package/.claude/skills/v3-performance-optimization/SKILL.md +390 -0
  358. package/.claude/skills/v3-security-overhaul/SKILL.md +82 -0
  359. package/.claude/skills/v3-swarm-coordination/SKILL.md +340 -0
  360. package/.claude/skills/verification-quality/SKILL.md +647 -0
  361. package/.claude/skills/worker-benchmarks/SKILL.md +129 -0
  362. package/.claude/skills/worker-integration/SKILL.md +147 -0
  363. package/.claude/statusline-command.sh +176 -0
  364. package/.claude/statusline.mjs +109 -0
  365. package/.claude/statusline.sh +431 -0
  366. package/.claude-plugin/README.md +720 -0
  367. package/.claude-plugin/docs/INSTALLATION.md +261 -0
  368. package/.claude-plugin/docs/PLUGIN_SUMMARY.md +361 -0
  369. package/.claude-plugin/docs/QUICKSTART.md +361 -0
  370. package/.claude-plugin/docs/STRUCTURE.md +128 -0
  371. package/.claude-plugin/hooks/hooks.json +74 -0
  372. package/.claude-plugin/marketplace.json +96 -0
  373. package/.claude-plugin/plugin.json +71 -0
  374. package/.claude-plugin/scripts/install.sh +234 -0
  375. package/.claude-plugin/scripts/uninstall.sh +36 -0
  376. package/.claude-plugin/scripts/verify.sh +108 -0
  377. package/LICENSE +21 -0
  378. package/README.md +7541 -0
  379. package/bin/cli.js +11 -0
  380. package/bin/npx-repair.js +7 -0
  381. package/bin/npx-safe-launch.js +9 -0
  382. package/package.json +84 -0
  383. package/v3/@claude-flow/cli/README.md +192 -0
  384. package/v3/@claude-flow/cli/bin/cli.js +156 -0
  385. package/v3/@claude-flow/cli/bin/mcp-server.js +189 -0
  386. package/v3/@claude-flow/cli/bin/preinstall.cjs +2 -0
  387. package/v3/@claude-flow/cli/dist/src/appliance/gguf-engine.d.ts +91 -0
  388. package/v3/@claude-flow/cli/dist/src/appliance/gguf-engine.js +425 -0
  389. package/v3/@claude-flow/cli/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
  390. package/v3/@claude-flow/cli/dist/src/appliance/ruvllm-bridge.js +292 -0
  391. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-builder.d.ts +44 -0
  392. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-builder.js +329 -0
  393. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-distribution.d.ts +97 -0
  394. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-distribution.js +370 -0
  395. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-format.d.ts +111 -0
  396. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-format.js +393 -0
  397. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-runner.d.ts +69 -0
  398. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-runner.js +237 -0
  399. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-signing.d.ts +123 -0
  400. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-signing.js +347 -0
  401. package/v3/@claude-flow/cli/dist/src/autopilot-state.d.ts +77 -0
  402. package/v3/@claude-flow/cli/dist/src/autopilot-state.js +279 -0
  403. package/v3/@claude-flow/cli/dist/src/benchmarks/pretrain/index.d.ts +58 -0
  404. package/v3/@claude-flow/cli/dist/src/benchmarks/pretrain/index.js +404 -0
  405. package/v3/@claude-flow/cli/dist/src/commands/agent-wasm.d.ts +14 -0
  406. package/v3/@claude-flow/cli/dist/src/commands/agent-wasm.js +333 -0
  407. package/v3/@claude-flow/cli/dist/src/commands/agent.d.ts +8 -0
  408. package/v3/@claude-flow/cli/dist/src/commands/agent.js +927 -0
  409. package/v3/@claude-flow/cli/dist/src/commands/analyze.d.ts +17 -0
  410. package/v3/@claude-flow/cli/dist/src/commands/analyze.js +1821 -0
  411. package/v3/@claude-flow/cli/dist/src/commands/appliance-advanced.d.ts +9 -0
  412. package/v3/@claude-flow/cli/dist/src/commands/appliance-advanced.js +215 -0
  413. package/v3/@claude-flow/cli/dist/src/commands/appliance.d.ts +8 -0
  414. package/v3/@claude-flow/cli/dist/src/commands/appliance.js +406 -0
  415. package/v3/@claude-flow/cli/dist/src/commands/autopilot.d.ts +15 -0
  416. package/v3/@claude-flow/cli/dist/src/commands/autopilot.js +362 -0
  417. package/v3/@claude-flow/cli/dist/src/commands/benchmark.d.ts +10 -0
  418. package/v3/@claude-flow/cli/dist/src/commands/benchmark.js +459 -0
  419. package/v3/@claude-flow/cli/dist/src/commands/claims.d.ts +8 -0
  420. package/v3/@claude-flow/cli/dist/src/commands/claims.js +621 -0
  421. package/v3/@claude-flow/cli/dist/src/commands/cleanup.d.ts +11 -0
  422. package/v3/@claude-flow/cli/dist/src/commands/cleanup.js +216 -0
  423. package/v3/@claude-flow/cli/dist/src/commands/completions.d.ts +8 -0
  424. package/v3/@claude-flow/cli/dist/src/commands/completions.js +537 -0
  425. package/v3/@claude-flow/cli/dist/src/commands/config.d.ts +8 -0
  426. package/v3/@claude-flow/cli/dist/src/commands/config.js +356 -0
  427. package/v3/@claude-flow/cli/dist/src/commands/daemon.d.ts +8 -0
  428. package/v3/@claude-flow/cli/dist/src/commands/daemon.js +669 -0
  429. package/v3/@claude-flow/cli/dist/src/commands/deployment.d.ts +8 -0
  430. package/v3/@claude-flow/cli/dist/src/commands/deployment.js +669 -0
  431. package/v3/@claude-flow/cli/dist/src/commands/doctor.d.ts +8 -0
  432. package/v3/@claude-flow/cli/dist/src/commands/doctor.js +617 -0
  433. package/v3/@claude-flow/cli/dist/src/commands/embeddings.d.ts +16 -0
  434. package/v3/@claude-flow/cli/dist/src/commands/embeddings.js +1573 -0
  435. package/v3/@claude-flow/cli/dist/src/commands/guidance.d.ts +8 -0
  436. package/v3/@claude-flow/cli/dist/src/commands/guidance.js +560 -0
  437. package/v3/@claude-flow/cli/dist/src/commands/hive-mind.d.ts +11 -0
  438. package/v3/@claude-flow/cli/dist/src/commands/hive-mind.js +1237 -0
  439. package/v3/@claude-flow/cli/dist/src/commands/hooks.d.ts +8 -0
  440. package/v3/@claude-flow/cli/dist/src/commands/hooks.js +4441 -0
  441. package/v3/@claude-flow/cli/dist/src/commands/index.d.ts +117 -0
  442. package/v3/@claude-flow/cli/dist/src/commands/index.js +384 -0
  443. package/v3/@claude-flow/cli/dist/src/commands/init.d.ts +8 -0
  444. package/v3/@claude-flow/cli/dist/src/commands/init.js +969 -0
  445. package/v3/@claude-flow/cli/dist/src/commands/issues.d.ts +21 -0
  446. package/v3/@claude-flow/cli/dist/src/commands/issues.js +567 -0
  447. package/v3/@claude-flow/cli/dist/src/commands/mcp.d.ts +11 -0
  448. package/v3/@claude-flow/cli/dist/src/commands/mcp.js +718 -0
  449. package/v3/@claude-flow/cli/dist/src/commands/memory.d.ts +8 -0
  450. package/v3/@claude-flow/cli/dist/src/commands/memory.js +1299 -0
  451. package/v3/@claude-flow/cli/dist/src/commands/migrate.d.ts +8 -0
  452. package/v3/@claude-flow/cli/dist/src/commands/migrate.js +742 -0
  453. package/v3/@claude-flow/cli/dist/src/commands/neural.d.ts +8 -0
  454. package/v3/@claude-flow/cli/dist/src/commands/neural.js +1451 -0
  455. package/v3/@claude-flow/cli/dist/src/commands/performance.d.ts +8 -0
  456. package/v3/@claude-flow/cli/dist/src/commands/performance.js +576 -0
  457. package/v3/@claude-flow/cli/dist/src/commands/plugins.d.ts +9 -0
  458. package/v3/@claude-flow/cli/dist/src/commands/plugins.js +817 -0
  459. package/v3/@claude-flow/cli/dist/src/commands/process.d.ts +10 -0
  460. package/v3/@claude-flow/cli/dist/src/commands/process.js +641 -0
  461. package/v3/@claude-flow/cli/dist/src/commands/progress.d.ts +11 -0
  462. package/v3/@claude-flow/cli/dist/src/commands/progress.js +259 -0
  463. package/v3/@claude-flow/cli/dist/src/commands/providers.d.ts +8 -0
  464. package/v3/@claude-flow/cli/dist/src/commands/providers.js +355 -0
  465. package/v3/@claude-flow/cli/dist/src/commands/route.d.ts +14 -0
  466. package/v3/@claude-flow/cli/dist/src/commands/route.js +811 -0
  467. package/v3/@claude-flow/cli/dist/src/commands/ruvector/backup.d.ts +11 -0
  468. package/v3/@claude-flow/cli/dist/src/commands/ruvector/backup.js +746 -0
  469. package/v3/@claude-flow/cli/dist/src/commands/ruvector/benchmark.d.ts +11 -0
  470. package/v3/@claude-flow/cli/dist/src/commands/ruvector/benchmark.js +480 -0
  471. package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.d.ts +16 -0
  472. package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.js +347 -0
  473. package/v3/@claude-flow/cli/dist/src/commands/ruvector/index.d.ts +27 -0
  474. package/v3/@claude-flow/cli/dist/src/commands/ruvector/index.js +127 -0
  475. package/v3/@claude-flow/cli/dist/src/commands/ruvector/init.d.ts +11 -0
  476. package/v3/@claude-flow/cli/dist/src/commands/ruvector/init.js +431 -0
  477. package/v3/@claude-flow/cli/dist/src/commands/ruvector/migrate.d.ts +11 -0
  478. package/v3/@claude-flow/cli/dist/src/commands/ruvector/migrate.js +481 -0
  479. package/v3/@claude-flow/cli/dist/src/commands/ruvector/optimize.d.ts +11 -0
  480. package/v3/@claude-flow/cli/dist/src/commands/ruvector/optimize.js +503 -0
  481. package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.d.ts +16 -0
  482. package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.js +763 -0
  483. package/v3/@claude-flow/cli/dist/src/commands/ruvector/status.d.ts +11 -0
  484. package/v3/@claude-flow/cli/dist/src/commands/ruvector/status.js +456 -0
  485. package/v3/@claude-flow/cli/dist/src/commands/security.d.ts +8 -0
  486. package/v3/@claude-flow/cli/dist/src/commands/security.js +614 -0
  487. package/v3/@claude-flow/cli/dist/src/commands/session.d.ts +8 -0
  488. package/v3/@claude-flow/cli/dist/src/commands/session.js +750 -0
  489. package/v3/@claude-flow/cli/dist/src/commands/start.d.ts +8 -0
  490. package/v3/@claude-flow/cli/dist/src/commands/start.js +418 -0
  491. package/v3/@claude-flow/cli/dist/src/commands/status.d.ts +8 -0
  492. package/v3/@claude-flow/cli/dist/src/commands/status.js +591 -0
  493. package/v3/@claude-flow/cli/dist/src/commands/swarm.d.ts +8 -0
  494. package/v3/@claude-flow/cli/dist/src/commands/swarm.js +802 -0
  495. package/v3/@claude-flow/cli/dist/src/commands/task.d.ts +8 -0
  496. package/v3/@claude-flow/cli/dist/src/commands/task.js +671 -0
  497. package/v3/@claude-flow/cli/dist/src/commands/transfer-store.d.ts +13 -0
  498. package/v3/@claude-flow/cli/dist/src/commands/transfer-store.js +428 -0
  499. package/v3/@claude-flow/cli/dist/src/commands/update.d.ts +8 -0
  500. package/v3/@claude-flow/cli/dist/src/commands/update.js +276 -0
  501. package/v3/@claude-flow/cli/dist/src/commands/workflow.d.ts +8 -0
  502. package/v3/@claude-flow/cli/dist/src/commands/workflow.js +617 -0
  503. package/v3/@claude-flow/cli/dist/src/config-adapter.d.ts +15 -0
  504. package/v3/@claude-flow/cli/dist/src/config-adapter.js +186 -0
  505. package/v3/@claude-flow/cli/dist/src/index.d.ts +74 -0
  506. package/v3/@claude-flow/cli/dist/src/index.js +469 -0
  507. package/v3/@claude-flow/cli/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
  508. package/v3/@claude-flow/cli/dist/src/infrastructure/in-memory-repositories.js +264 -0
  509. package/v3/@claude-flow/cli/dist/src/init/claudemd-generator.d.ts +25 -0
  510. package/v3/@claude-flow/cli/dist/src/init/claudemd-generator.js +486 -0
  511. package/v3/@claude-flow/cli/dist/src/init/executor.d.ts +41 -0
  512. package/v3/@claude-flow/cli/dist/src/init/executor.js +1776 -0
  513. package/v3/@claude-flow/cli/dist/src/init/helpers-generator.d.ts +60 -0
  514. package/v3/@claude-flow/cli/dist/src/init/helpers-generator.js +1181 -0
  515. package/v3/@claude-flow/cli/dist/src/init/index.d.ts +13 -0
  516. package/v3/@claude-flow/cli/dist/src/init/index.js +15 -0
  517. package/v3/@claude-flow/cli/dist/src/init/mcp-generator.d.ts +26 -0
  518. package/v3/@claude-flow/cli/dist/src/init/mcp-generator.js +101 -0
  519. package/v3/@claude-flow/cli/dist/src/init/settings-generator.d.ts +14 -0
  520. package/v3/@claude-flow/cli/dist/src/init/settings-generator.js +392 -0
  521. package/v3/@claude-flow/cli/dist/src/init/statusline-generator.d.ts +28 -0
  522. package/v3/@claude-flow/cli/dist/src/init/statusline-generator.js +833 -0
  523. package/v3/@claude-flow/cli/dist/src/init/types.d.ts +295 -0
  524. package/v3/@claude-flow/cli/dist/src/init/types.js +263 -0
  525. package/v3/@claude-flow/cli/dist/src/mcp-client.d.ts +92 -0
  526. package/v3/@claude-flow/cli/dist/src/mcp-client.js +227 -0
  527. package/v3/@claude-flow/cli/dist/src/mcp-server.d.ts +163 -0
  528. package/v3/@claude-flow/cli/dist/src/mcp-server.js +654 -0
  529. package/v3/@claude-flow/cli/dist/src/mcp-tools/agent-tools.d.ts +9 -0
  530. package/v3/@claude-flow/cli/dist/src/mcp-tools/agent-tools.js +550 -0
  531. package/v3/@claude-flow/cli/dist/src/mcp-tools/agentdb-tools.d.ts +30 -0
  532. package/v3/@claude-flow/cli/dist/src/mcp-tools/agentdb-tools.js +557 -0
  533. package/v3/@claude-flow/cli/dist/src/mcp-tools/analyze-tools.d.ts +38 -0
  534. package/v3/@claude-flow/cli/dist/src/mcp-tools/analyze-tools.js +317 -0
  535. package/v3/@claude-flow/cli/dist/src/mcp-tools/claims-tools.d.ts +12 -0
  536. package/v3/@claude-flow/cli/dist/src/mcp-tools/claims-tools.js +732 -0
  537. package/v3/@claude-flow/cli/dist/src/mcp-tools/config-tools.d.ts +8 -0
  538. package/v3/@claude-flow/cli/dist/src/mcp-tools/config-tools.js +357 -0
  539. package/v3/@claude-flow/cli/dist/src/mcp-tools/coordination-tools.d.ts +13 -0
  540. package/v3/@claude-flow/cli/dist/src/mcp-tools/coordination-tools.js +665 -0
  541. package/v3/@claude-flow/cli/dist/src/mcp-tools/embeddings-tools.d.ts +9 -0
  542. package/v3/@claude-flow/cli/dist/src/mcp-tools/embeddings-tools.js +782 -0
  543. package/v3/@claude-flow/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -0
  544. package/v3/@claude-flow/cli/dist/src/mcp-tools/hive-mind-tools.js +811 -0
  545. package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.d.ts +44 -0
  546. package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.js +3120 -0
  547. package/v3/@claude-flow/cli/dist/src/mcp-tools/index.d.ts +22 -0
  548. package/v3/@claude-flow/cli/dist/src/mcp-tools/index.js +21 -0
  549. package/v3/@claude-flow/cli/dist/src/mcp-tools/memory-tools.d.ts +14 -0
  550. package/v3/@claude-flow/cli/dist/src/mcp-tools/memory-tools.js +512 -0
  551. package/v3/@claude-flow/cli/dist/src/mcp-tools/neural-tools.d.ts +16 -0
  552. package/v3/@claude-flow/cli/dist/src/mcp-tools/neural-tools.js +461 -0
  553. package/v3/@claude-flow/cli/dist/src/mcp-tools/performance-tools.d.ts +16 -0
  554. package/v3/@claude-flow/cli/dist/src/mcp-tools/performance-tools.js +534 -0
  555. package/v3/@claude-flow/cli/dist/src/mcp-tools/progress-tools.d.ts +14 -0
  556. package/v3/@claude-flow/cli/dist/src/mcp-tools/progress-tools.js +348 -0
  557. package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.d.ts +16 -0
  558. package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.js +404 -0
  559. package/v3/@claude-flow/cli/dist/src/mcp-tools/session-tools.d.ts +8 -0
  560. package/v3/@claude-flow/cli/dist/src/mcp-tools/session-tools.js +315 -0
  561. package/v3/@claude-flow/cli/dist/src/mcp-tools/swarm-tools.d.ts +9 -0
  562. package/v3/@claude-flow/cli/dist/src/mcp-tools/swarm-tools.js +288 -0
  563. package/v3/@claude-flow/cli/dist/src/mcp-tools/system-tools.d.ts +13 -0
  564. package/v3/@claude-flow/cli/dist/src/mcp-tools/system-tools.js +408 -0
  565. package/v3/@claude-flow/cli/dist/src/mcp-tools/task-tools.d.ts +8 -0
  566. package/v3/@claude-flow/cli/dist/src/mcp-tools/task-tools.js +405 -0
  567. package/v3/@claude-flow/cli/dist/src/mcp-tools/types.d.ts +31 -0
  568. package/v3/@claude-flow/cli/dist/src/mcp-tools/types.js +7 -0
  569. package/v3/@claude-flow/cli/dist/src/mcp-tools/workflow-tools.d.ts +8 -0
  570. package/v3/@claude-flow/cli/dist/src/mcp-tools/workflow-tools.js +572 -0
  571. package/v3/@claude-flow/cli/dist/src/memory/ewc-consolidation.d.ts +295 -0
  572. package/v3/@claude-flow/cli/dist/src/memory/ewc-consolidation.js +601 -0
  573. package/v3/@claude-flow/cli/dist/src/memory/intelligence.d.ts +338 -0
  574. package/v3/@claude-flow/cli/dist/src/memory/intelligence.js +1023 -0
  575. package/v3/@claude-flow/cli/dist/src/memory/memory-bridge.d.ts +407 -0
  576. package/v3/@claude-flow/cli/dist/src/memory/memory-bridge.js +1499 -0
  577. package/v3/@claude-flow/cli/dist/src/memory/memory-initializer.d.ts +412 -0
  578. package/v3/@claude-flow/cli/dist/src/memory/memory-initializer.js +2222 -0
  579. package/v3/@claude-flow/cli/dist/src/memory/sona-optimizer.d.ts +227 -0
  580. package/v3/@claude-flow/cli/dist/src/memory/sona-optimizer.js +633 -0
  581. package/v3/@claude-flow/cli/dist/src/output.d.ts +133 -0
  582. package/v3/@claude-flow/cli/dist/src/output.js +514 -0
  583. package/v3/@claude-flow/cli/dist/src/parser.d.ts +51 -0
  584. package/v3/@claude-flow/cli/dist/src/parser.js +425 -0
  585. package/v3/@claude-flow/cli/dist/src/plugins/manager.d.ts +133 -0
  586. package/v3/@claude-flow/cli/dist/src/plugins/manager.js +400 -0
  587. package/v3/@claude-flow/cli/dist/src/plugins/store/discovery.d.ts +88 -0
  588. package/v3/@claude-flow/cli/dist/src/plugins/store/discovery.js +1147 -0
  589. package/v3/@claude-flow/cli/dist/src/plugins/store/index.d.ts +76 -0
  590. package/v3/@claude-flow/cli/dist/src/plugins/store/index.js +141 -0
  591. package/v3/@claude-flow/cli/dist/src/plugins/store/search.d.ts +46 -0
  592. package/v3/@claude-flow/cli/dist/src/plugins/store/search.js +230 -0
  593. package/v3/@claude-flow/cli/dist/src/plugins/store/types.d.ts +274 -0
  594. package/v3/@claude-flow/cli/dist/src/plugins/store/types.js +7 -0
  595. package/v3/@claude-flow/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +7 -0
  596. package/v3/@claude-flow/cli/dist/src/plugins/tests/demo-plugin-store.js +126 -0
  597. package/v3/@claude-flow/cli/dist/src/plugins/tests/standalone-test.d.ts +12 -0
  598. package/v3/@claude-flow/cli/dist/src/plugins/tests/standalone-test.js +188 -0
  599. package/v3/@claude-flow/cli/dist/src/plugins/tests/test-plugin-store.d.ts +7 -0
  600. package/v3/@claude-flow/cli/dist/src/plugins/tests/test-plugin-store.js +206 -0
  601. package/v3/@claude-flow/cli/dist/src/production/circuit-breaker.d.ts +101 -0
  602. package/v3/@claude-flow/cli/dist/src/production/circuit-breaker.js +241 -0
  603. package/v3/@claude-flow/cli/dist/src/production/error-handler.d.ts +92 -0
  604. package/v3/@claude-flow/cli/dist/src/production/error-handler.js +299 -0
  605. package/v3/@claude-flow/cli/dist/src/production/index.d.ts +23 -0
  606. package/v3/@claude-flow/cli/dist/src/production/index.js +18 -0
  607. package/v3/@claude-flow/cli/dist/src/production/monitoring.d.ts +161 -0
  608. package/v3/@claude-flow/cli/dist/src/production/monitoring.js +356 -0
  609. package/v3/@claude-flow/cli/dist/src/production/rate-limiter.d.ts +80 -0
  610. package/v3/@claude-flow/cli/dist/src/production/rate-limiter.js +201 -0
  611. package/v3/@claude-flow/cli/dist/src/production/retry.d.ts +48 -0
  612. package/v3/@claude-flow/cli/dist/src/production/retry.js +179 -0
  613. package/v3/@claude-flow/cli/dist/src/prompt.d.ts +44 -0
  614. package/v3/@claude-flow/cli/dist/src/prompt.js +501 -0
  615. package/v3/@claude-flow/cli/dist/src/runtime/headless.d.ts +60 -0
  616. package/v3/@claude-flow/cli/dist/src/runtime/headless.js +284 -0
  617. package/v3/@claude-flow/cli/dist/src/ruvector/agent-wasm.d.ts +182 -0
  618. package/v3/@claude-flow/cli/dist/src/ruvector/agent-wasm.js +316 -0
  619. package/v3/@claude-flow/cli/dist/src/ruvector/ast-analyzer.d.ts +67 -0
  620. package/v3/@claude-flow/cli/dist/src/ruvector/ast-analyzer.js +277 -0
  621. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-router.d.ts +160 -0
  622. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-router.js +529 -0
  623. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-tools.d.ts +33 -0
  624. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-tools.js +157 -0
  625. package/v3/@claude-flow/cli/dist/src/ruvector/diff-classifier.d.ts +175 -0
  626. package/v3/@claude-flow/cli/dist/src/ruvector/diff-classifier.js +698 -0
  627. package/v3/@claude-flow/cli/dist/src/ruvector/enhanced-model-router.d.ts +146 -0
  628. package/v3/@claude-flow/cli/dist/src/ruvector/enhanced-model-router.js +513 -0
  629. package/v3/@claude-flow/cli/dist/src/ruvector/flash-attention.d.ts +193 -0
  630. package/v3/@claude-flow/cli/dist/src/ruvector/flash-attention.js +641 -0
  631. package/v3/@claude-flow/cli/dist/src/ruvector/graph-analyzer.d.ts +187 -0
  632. package/v3/@claude-flow/cli/dist/src/ruvector/graph-analyzer.js +929 -0
  633. package/v3/@claude-flow/cli/dist/src/ruvector/index.d.ts +40 -0
  634. package/v3/@claude-flow/cli/dist/src/ruvector/index.js +76 -0
  635. package/v3/@claude-flow/cli/dist/src/ruvector/lora-adapter.d.ts +218 -0
  636. package/v3/@claude-flow/cli/dist/src/ruvector/lora-adapter.js +455 -0
  637. package/v3/@claude-flow/cli/dist/src/ruvector/model-router.d.ts +220 -0
  638. package/v3/@claude-flow/cli/dist/src/ruvector/model-router.js +488 -0
  639. package/v3/@claude-flow/cli/dist/src/ruvector/moe-router.d.ts +206 -0
  640. package/v3/@claude-flow/cli/dist/src/ruvector/moe-router.js +626 -0
  641. package/v3/@claude-flow/cli/dist/src/ruvector/q-learning-router.d.ts +211 -0
  642. package/v3/@claude-flow/cli/dist/src/ruvector/q-learning-router.js +681 -0
  643. package/v3/@claude-flow/cli/dist/src/ruvector/ruvllm-wasm.d.ts +179 -0
  644. package/v3/@claude-flow/cli/dist/src/ruvector/ruvllm-wasm.js +363 -0
  645. package/v3/@claude-flow/cli/dist/src/ruvector/semantic-router.d.ts +77 -0
  646. package/v3/@claude-flow/cli/dist/src/ruvector/semantic-router.js +178 -0
  647. package/v3/@claude-flow/cli/dist/src/ruvector/vector-db.d.ts +67 -0
  648. package/v3/@claude-flow/cli/dist/src/ruvector/vector-db.js +241 -0
  649. package/v3/@claude-flow/cli/dist/src/services/agentic-flow-bridge.d.ts +50 -0
  650. package/v3/@claude-flow/cli/dist/src/services/agentic-flow-bridge.js +95 -0
  651. package/v3/@claude-flow/cli/dist/src/services/claim-service.d.ts +204 -0
  652. package/v3/@claude-flow/cli/dist/src/services/claim-service.js +818 -0
  653. package/v3/@claude-flow/cli/dist/src/services/config-file-manager.d.ts +37 -0
  654. package/v3/@claude-flow/cli/dist/src/services/config-file-manager.js +224 -0
  655. package/v3/@claude-flow/cli/dist/src/services/container-worker-pool.d.ts +197 -0
  656. package/v3/@claude-flow/cli/dist/src/services/container-worker-pool.js +583 -0
  657. package/v3/@claude-flow/cli/dist/src/services/headless-worker-executor.d.ts +304 -0
  658. package/v3/@claude-flow/cli/dist/src/services/headless-worker-executor.js +1024 -0
  659. package/v3/@claude-flow/cli/dist/src/services/index.d.ts +13 -0
  660. package/v3/@claude-flow/cli/dist/src/services/index.js +11 -0
  661. package/v3/@claude-flow/cli/dist/src/services/registry-api.d.ts +58 -0
  662. package/v3/@claude-flow/cli/dist/src/services/registry-api.js +146 -0
  663. package/v3/@claude-flow/cli/dist/src/services/ruvector-training.d.ts +220 -0
  664. package/v3/@claude-flow/cli/dist/src/services/ruvector-training.js +686 -0
  665. package/v3/@claude-flow/cli/dist/src/services/worker-daemon.d.ts +245 -0
  666. package/v3/@claude-flow/cli/dist/src/services/worker-daemon.js +960 -0
  667. package/v3/@claude-flow/cli/dist/src/services/worker-queue.d.ts +194 -0
  668. package/v3/@claude-flow/cli/dist/src/services/worker-queue.js +513 -0
  669. package/v3/@claude-flow/cli/dist/src/suggest.d.ts +51 -0
  670. package/v3/@claude-flow/cli/dist/src/suggest.js +198 -0
  671. package/v3/@claude-flow/cli/dist/src/transfer/anonymization/index.d.ts +25 -0
  672. package/v3/@claude-flow/cli/dist/src/transfer/anonymization/index.js +175 -0
  673. package/v3/@claude-flow/cli/dist/src/transfer/deploy-seraphine.d.ts +13 -0
  674. package/v3/@claude-flow/cli/dist/src/transfer/deploy-seraphine.js +205 -0
  675. package/v3/@claude-flow/cli/dist/src/transfer/export.d.ts +25 -0
  676. package/v3/@claude-flow/cli/dist/src/transfer/export.js +113 -0
  677. package/v3/@claude-flow/cli/dist/src/transfer/index.d.ts +12 -0
  678. package/v3/@claude-flow/cli/dist/src/transfer/index.js +31 -0
  679. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/client.d.ts +109 -0
  680. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/client.js +307 -0
  681. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/upload.d.ts +95 -0
  682. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/upload.js +411 -0
  683. package/v3/@claude-flow/cli/dist/src/transfer/models/seraphine.d.ts +72 -0
  684. package/v3/@claude-flow/cli/dist/src/transfer/models/seraphine.js +373 -0
  685. package/v3/@claude-flow/cli/dist/src/transfer/serialization/cfp.d.ts +49 -0
  686. package/v3/@claude-flow/cli/dist/src/transfer/serialization/cfp.js +183 -0
  687. package/v3/@claude-flow/cli/dist/src/transfer/storage/gcs.d.ts +82 -0
  688. package/v3/@claude-flow/cli/dist/src/transfer/storage/gcs.js +272 -0
  689. package/v3/@claude-flow/cli/dist/src/transfer/storage/index.d.ts +6 -0
  690. package/v3/@claude-flow/cli/dist/src/transfer/storage/index.js +6 -0
  691. package/v3/@claude-flow/cli/dist/src/transfer/store/discovery.d.ts +84 -0
  692. package/v3/@claude-flow/cli/dist/src/transfer/store/discovery.js +382 -0
  693. package/v3/@claude-flow/cli/dist/src/transfer/store/download.d.ts +70 -0
  694. package/v3/@claude-flow/cli/dist/src/transfer/store/download.js +334 -0
  695. package/v3/@claude-flow/cli/dist/src/transfer/store/index.d.ts +84 -0
  696. package/v3/@claude-flow/cli/dist/src/transfer/store/index.js +153 -0
  697. package/v3/@claude-flow/cli/dist/src/transfer/store/publish.d.ts +76 -0
  698. package/v3/@claude-flow/cli/dist/src/transfer/store/publish.js +294 -0
  699. package/v3/@claude-flow/cli/dist/src/transfer/store/registry.d.ts +58 -0
  700. package/v3/@claude-flow/cli/dist/src/transfer/store/registry.js +285 -0
  701. package/v3/@claude-flow/cli/dist/src/transfer/store/search.d.ts +54 -0
  702. package/v3/@claude-flow/cli/dist/src/transfer/store/search.js +232 -0
  703. package/v3/@claude-flow/cli/dist/src/transfer/store/tests/standalone-test.d.ts +12 -0
  704. package/v3/@claude-flow/cli/dist/src/transfer/store/tests/standalone-test.js +190 -0
  705. package/v3/@claude-flow/cli/dist/src/transfer/store/types.d.ts +193 -0
  706. package/v3/@claude-flow/cli/dist/src/transfer/store/types.js +6 -0
  707. package/v3/@claude-flow/cli/dist/src/transfer/test-seraphine.d.ts +6 -0
  708. package/v3/@claude-flow/cli/dist/src/transfer/test-seraphine.js +105 -0
  709. package/v3/@claude-flow/cli/dist/src/transfer/tests/test-store.d.ts +7 -0
  710. package/v3/@claude-flow/cli/dist/src/transfer/tests/test-store.js +214 -0
  711. package/v3/@claude-flow/cli/dist/src/transfer/types.d.ts +245 -0
  712. package/v3/@claude-flow/cli/dist/src/transfer/types.js +6 -0
  713. package/v3/@claude-flow/cli/dist/src/types.d.ts +198 -0
  714. package/v3/@claude-flow/cli/dist/src/types.js +38 -0
  715. package/v3/@claude-flow/cli/dist/src/update/checker.d.ts +34 -0
  716. package/v3/@claude-flow/cli/dist/src/update/checker.js +190 -0
  717. package/v3/@claude-flow/cli/dist/src/update/executor.d.ts +32 -0
  718. package/v3/@claude-flow/cli/dist/src/update/executor.js +181 -0
  719. package/v3/@claude-flow/cli/dist/src/update/index.d.ts +33 -0
  720. package/v3/@claude-flow/cli/dist/src/update/index.js +64 -0
  721. package/v3/@claude-flow/cli/dist/src/update/rate-limiter.d.ts +20 -0
  722. package/v3/@claude-flow/cli/dist/src/update/rate-limiter.js +96 -0
  723. package/v3/@claude-flow/cli/dist/src/update/validator.d.ts +17 -0
  724. package/v3/@claude-flow/cli/dist/src/update/validator.js +123 -0
  725. package/v3/@claude-flow/cli/dist/src/utils/path-validation.d.ts +20 -0
  726. package/v3/@claude-flow/cli/dist/src/utils/path-validation.js +80 -0
  727. package/v3/@claude-flow/cli/package.json +75 -0
  728. package/v3/@claude-flow/shared/README.md +323 -0
  729. package/v3/@claude-flow/shared/package.json +42 -0
  730. package/v3/README.md +493 -0
@@ -0,0 +1,601 @@
1
+ /**
2
+ * EWC++ (Elastic Weight Consolidation) Implementation
3
+ * Prevents catastrophic forgetting of important patterns during continual learning
4
+ *
5
+ * Algorithm:
6
+ * L_total = L_new + (lambda/2) * sum_i(F_i * (theta_i - theta_old_i)^2)
7
+ *
8
+ * Where:
9
+ * - L_new is the loss on new data
10
+ * - lambda is the importance weight (ewcLambda)
11
+ * - F_i is the Fisher information for parameter i
12
+ * - theta_i is the current parameter value
13
+ * - theta_old_i is the previous parameter value
14
+ *
15
+ * Features:
16
+ * - Fisher Information Matrix computation from gradient history
17
+ * - Online EWC updates for streaming patterns
18
+ * - Selective consolidation based on pattern importance
19
+ * - Persistent storage in .swarm/ewc-fisher.json
20
+ *
21
+ * @module v3/cli/memory/ewc-consolidation
22
+ */
23
+ import * as fs from 'fs';
24
+ import * as path from 'path';
25
+ // ============================================================================
26
+ // Default Configuration
27
+ // ============================================================================
28
+ const DEFAULT_EWC_CONFIG = {
29
+ lambda: 0.4,
30
+ maxPatterns: 1000,
31
+ fisherDecayRate: 0.01,
32
+ importanceThreshold: 0.3,
33
+ storagePath: path.join(process.cwd(), '.swarm', 'ewc-fisher.json'),
34
+ onlineMode: true,
35
+ dimensions: 384
36
+ };
37
+ // ============================================================================
38
+ // EWC Consolidator Class
39
+ // ============================================================================
40
+ /**
41
+ * EWC++ Consolidator
42
+ * Implements Elastic Weight Consolidation with online updates
43
+ * for preventing catastrophic forgetting in continual learning
44
+ */
45
+ export class EWCConsolidator {
46
+ config;
47
+ patterns = new Map();
48
+ gradientHistory = [];
49
+ globalFisher = [];
50
+ consolidationHistory = [];
51
+ initialized = false;
52
+ constructor(config) {
53
+ this.config = { ...DEFAULT_EWC_CONFIG, ...config };
54
+ this.globalFisher = new Array(this.config.dimensions).fill(0);
55
+ }
56
+ /**
57
+ * Initialize the consolidator by loading persisted state
58
+ */
59
+ async initialize() {
60
+ if (this.initialized)
61
+ return true;
62
+ try {
63
+ await this.loadFromDisk();
64
+ this.initialized = true;
65
+ return true;
66
+ }
67
+ catch {
68
+ // Start fresh if no persisted state
69
+ this.initialized = true;
70
+ return true;
71
+ }
72
+ }
73
+ /**
74
+ * Compute Fisher Information Matrix from gradient history
75
+ * Uses diagonal approximation for efficiency: F_i = E[g_i^2]
76
+ *
77
+ * @param patterns - Array of patterns with their gradients/embeddings
78
+ * @returns Fisher information diagonal
79
+ */
80
+ computeFisherMatrix(patterns) {
81
+ const fisher = new Array(this.config.dimensions).fill(0);
82
+ let sampleCount = 0;
83
+ for (const pattern of patterns) {
84
+ if (!pattern.embedding || pattern.embedding.length === 0)
85
+ continue;
86
+ // Only use successful patterns for Fisher computation
87
+ // (we want to preserve what worked)
88
+ if (!pattern.success)
89
+ continue;
90
+ sampleCount++;
91
+ // Fisher diagonal is expectation of squared gradients
92
+ // For embeddings, we use the embedding values as proxy for gradients
93
+ const len = Math.min(pattern.embedding.length, this.config.dimensions);
94
+ for (let i = 0; i < len; i++) {
95
+ // Accumulate squared values (gradient proxy)
96
+ fisher[i] += pattern.embedding[i] * pattern.embedding[i];
97
+ }
98
+ }
99
+ // Normalize by sample count
100
+ if (sampleCount > 0) {
101
+ for (let i = 0; i < this.config.dimensions; i++) {
102
+ fisher[i] /= sampleCount;
103
+ }
104
+ }
105
+ // Update global Fisher with exponential moving average (EWC++)
106
+ if (this.config.onlineMode) {
107
+ const decay = this.config.fisherDecayRate;
108
+ for (let i = 0; i < this.config.dimensions; i++) {
109
+ this.globalFisher[i] = (1 - decay) * this.globalFisher[i] + decay * fisher[i];
110
+ }
111
+ }
112
+ return fisher;
113
+ }
114
+ /**
115
+ * Consolidate new patterns with old patterns without forgetting
116
+ * Applies EWC penalty to preserve important weights
117
+ *
118
+ * @param newPatterns - New patterns to incorporate
119
+ * @param oldPatterns - Existing patterns to preserve
120
+ * @returns Consolidated patterns with modified weights
121
+ */
122
+ consolidate(newPatterns, oldPatterns) {
123
+ const startTime = performance.now();
124
+ const result = {
125
+ success: false,
126
+ patternsConsolidated: 0,
127
+ totalPenalty: 0,
128
+ modifiedPatterns: [],
129
+ protectedPatterns: [],
130
+ duration: 0
131
+ };
132
+ try {
133
+ // Use stored patterns if no old patterns provided
134
+ const existingPatterns = oldPatterns || Array.from(this.patterns.values());
135
+ // Compute Fisher from successful existing patterns
136
+ const fisherInput = existingPatterns
137
+ .filter(p => p.successCount > p.failureCount)
138
+ .map(p => ({
139
+ id: p.id,
140
+ embedding: p.weights,
141
+ success: true
142
+ }));
143
+ const fisher = this.computeFisherMatrix(fisherInput);
144
+ // Process each new pattern
145
+ for (const newPattern of newPatterns) {
146
+ if (!newPattern.embedding || newPattern.embedding.length === 0)
147
+ continue;
148
+ const existingPattern = this.patterns.get(newPattern.id);
149
+ if (existingPattern) {
150
+ // Calculate EWC penalty for updating existing pattern
151
+ const penalty = this.getPenalty(existingPattern.weights, newPattern.embedding, fisher);
152
+ // Determine if update is allowed based on penalty
153
+ const importanceScore = this.calculateImportance(existingPattern);
154
+ if (importanceScore > this.config.importanceThreshold && penalty > this.config.lambda) {
155
+ // Protect high-importance patterns with high penalty
156
+ result.protectedPatterns.push(newPattern.id);
157
+ // Apply constrained update: blend old and new based on importance
158
+ const blendFactor = 1 - importanceScore;
159
+ const blendedWeights = this.blendWeights(existingPattern.weights, newPattern.embedding, blendFactor, fisher);
160
+ existingPattern.weights = blendedWeights;
161
+ existingPattern.lastUpdated = Date.now();
162
+ result.modifiedPatterns.push(newPattern.id);
163
+ }
164
+ else {
165
+ // Low importance or low penalty: allow full update
166
+ existingPattern.weights = newPattern.embedding.slice(0, this.config.dimensions);
167
+ existingPattern.lastUpdated = Date.now();
168
+ result.modifiedPatterns.push(newPattern.id);
169
+ }
170
+ // Update Fisher diagonal for this pattern
171
+ existingPattern.fisherDiagonal = fisher;
172
+ result.totalPenalty += penalty;
173
+ }
174
+ else {
175
+ // New pattern: add directly
176
+ const weights = {
177
+ id: newPattern.id,
178
+ weights: newPattern.embedding.slice(0, this.config.dimensions),
179
+ fisherDiagonal: fisher,
180
+ importance: 0.5,
181
+ successCount: 0,
182
+ failureCount: 0,
183
+ lastUpdated: Date.now(),
184
+ type: newPattern.type,
185
+ description: newPattern.description
186
+ };
187
+ this.patterns.set(newPattern.id, weights);
188
+ result.modifiedPatterns.push(newPattern.id);
189
+ }
190
+ result.patternsConsolidated++;
191
+ }
192
+ // Prune old patterns if exceeding limit
193
+ if (this.patterns.size > this.config.maxPatterns) {
194
+ this.pruneOldPatterns();
195
+ }
196
+ // Record consolidation
197
+ this.consolidationHistory.push({
198
+ timestamp: Date.now(),
199
+ penalty: result.totalPenalty,
200
+ patterns: result.patternsConsolidated
201
+ });
202
+ // Persist to disk
203
+ this.saveToDisk();
204
+ result.success = true;
205
+ result.duration = performance.now() - startTime;
206
+ return result;
207
+ }
208
+ catch (error) {
209
+ result.error = error instanceof Error ? error.message : String(error);
210
+ result.duration = performance.now() - startTime;
211
+ return result;
212
+ }
213
+ }
214
+ /**
215
+ * Calculate EWC regularization penalty
216
+ *
217
+ * L_ewc = (lambda/2) * sum_i(F_i * (theta_i - theta_old_i)^2)
218
+ *
219
+ * @param oldWeights - Previous weight values
220
+ * @param newWeights - New weight values
221
+ * @param fisher - Fisher information diagonal (optional, uses global if not provided)
222
+ * @returns Regularization penalty value
223
+ */
224
+ getPenalty(oldWeights, newWeights, fisher) {
225
+ const fisherDiag = fisher || this.globalFisher;
226
+ const len = Math.min(oldWeights.length, newWeights.length, fisherDiag.length);
227
+ let penalty = 0;
228
+ for (let i = 0; i < len; i++) {
229
+ const diff = newWeights[i] - oldWeights[i];
230
+ penalty += fisherDiag[i] * diff * diff;
231
+ }
232
+ return (this.config.lambda / 2) * penalty;
233
+ }
234
+ /**
235
+ * Get consolidation statistics
236
+ */
237
+ getConsolidationStats() {
238
+ let totalFisher = 0;
239
+ let maxFisher = 0;
240
+ let highImportance = 0;
241
+ for (let i = 0; i < this.globalFisher.length; i++) {
242
+ totalFisher += this.globalFisher[i];
243
+ if (this.globalFisher[i] > maxFisher) {
244
+ maxFisher = this.globalFisher[i];
245
+ }
246
+ }
247
+ for (const pattern of this.patterns.values()) {
248
+ if (this.calculateImportance(pattern) > this.config.importanceThreshold) {
249
+ highImportance++;
250
+ }
251
+ }
252
+ const totalPenalty = this.consolidationHistory.reduce((sum, h) => sum + h.penalty, 0);
253
+ const avgPenalty = this.consolidationHistory.length > 0
254
+ ? totalPenalty / this.consolidationHistory.length
255
+ : 0;
256
+ // Estimate storage size
257
+ let storageSizeBytes = 0;
258
+ try {
259
+ if (fs.existsSync(this.config.storagePath)) {
260
+ const stats = fs.statSync(this.config.storagePath);
261
+ storageSizeBytes = stats.size;
262
+ }
263
+ }
264
+ catch {
265
+ // Ignore stat errors
266
+ }
267
+ return {
268
+ totalPatterns: this.patterns.size,
269
+ highImportancePatterns: highImportance,
270
+ avgFisherValue: this.globalFisher.length > 0 ? totalFisher / this.globalFisher.length : 0,
271
+ maxFisherValue: maxFisher,
272
+ consolidationCount: this.consolidationHistory.length,
273
+ lastConsolidation: this.consolidationHistory.length > 0
274
+ ? this.consolidationHistory[this.consolidationHistory.length - 1].timestamp
275
+ : null,
276
+ avgPenalty,
277
+ storageSizeBytes
278
+ };
279
+ }
280
+ /**
281
+ * Record a gradient sample for Fisher computation
282
+ */
283
+ recordGradient(patternId, gradients, success) {
284
+ this.gradientHistory.push({
285
+ patternId,
286
+ gradients,
287
+ timestamp: Date.now(),
288
+ success
289
+ });
290
+ // Keep only recent gradients
291
+ const maxGradients = this.config.maxPatterns * 2;
292
+ if (this.gradientHistory.length > maxGradients) {
293
+ this.gradientHistory = this.gradientHistory.slice(-maxGradients);
294
+ }
295
+ // Update pattern success/failure counts
296
+ const pattern = this.patterns.get(patternId);
297
+ if (pattern) {
298
+ if (success) {
299
+ pattern.successCount++;
300
+ }
301
+ else {
302
+ pattern.failureCount++;
303
+ }
304
+ pattern.importance = this.calculateImportance(pattern);
305
+ }
306
+ // Online Fisher update from this gradient
307
+ if (this.config.onlineMode && success) {
308
+ const decay = this.config.fisherDecayRate;
309
+ const len = Math.min(gradients.length, this.config.dimensions);
310
+ for (let i = 0; i < len; i++) {
311
+ this.globalFisher[i] = (1 - decay) * this.globalFisher[i] + decay * gradients[i] * gradients[i];
312
+ }
313
+ }
314
+ }
315
+ /**
316
+ * Get pattern weights by ID
317
+ */
318
+ getPatternWeights(id) {
319
+ return this.patterns.get(id);
320
+ }
321
+ /**
322
+ * Get all stored patterns
323
+ */
324
+ getAllPatterns() {
325
+ return Array.from(this.patterns.values());
326
+ }
327
+ /**
328
+ * Update EWC lambda (regularization strength)
329
+ */
330
+ setLambda(lambda) {
331
+ this.config.lambda = lambda;
332
+ }
333
+ /**
334
+ * Get current lambda value
335
+ */
336
+ getLambda() {
337
+ return this.config.lambda;
338
+ }
339
+ /**
340
+ * Reset Fisher matrix (use with caution - allows forgetting)
341
+ */
342
+ resetFisher() {
343
+ this.globalFisher = new Array(this.config.dimensions).fill(0);
344
+ }
345
+ /**
346
+ * Update Fisher matrix from pattern confidence changes.
347
+ * Called by SONA after distillLearning to track which patterns
348
+ * are important and should be protected from forgetting.
349
+ *
350
+ * Uses online averaging: F_new = alpha * F_old + (1-alpha) * F_current
351
+ *
352
+ * @param confidenceChanges - Array of {id, embedding, oldConf, newConf}
353
+ */
354
+ updateFisherFromConfidences(confidenceChanges) {
355
+ if (confidenceChanges.length === 0)
356
+ return;
357
+ const alpha = this.config.fisherDecayRate;
358
+ const currentFisher = new Array(this.config.dimensions).fill(0);
359
+ let sampleCount = 0;
360
+ for (const change of confidenceChanges) {
361
+ if (!change.embedding || change.embedding.length === 0)
362
+ continue;
363
+ const confDelta = Math.abs(change.newConf - change.oldConf);
364
+ if (confDelta === 0)
365
+ continue;
366
+ sampleCount++;
367
+ const len = Math.min(change.embedding.length, this.config.dimensions);
368
+ // Squared gradient proxy: embedding scaled by confidence change magnitude
369
+ for (let i = 0; i < len; i++) {
370
+ const grad = change.embedding[i] * confDelta;
371
+ currentFisher[i] += grad * grad;
372
+ }
373
+ }
374
+ if (sampleCount > 0) {
375
+ for (let i = 0; i < this.config.dimensions; i++) {
376
+ currentFisher[i] /= sampleCount;
377
+ }
378
+ }
379
+ // Online EMA: F_new = alpha * F_old + (1-alpha) * F_current
380
+ for (let i = 0; i < this.config.dimensions; i++) {
381
+ this.globalFisher[i] = alpha * this.globalFisher[i] + (1 - alpha) * currentFisher[i];
382
+ }
383
+ this.saveToDisk();
384
+ }
385
+ /**
386
+ * Compute consolidation penalty for a proposed confidence update.
387
+ * Used by SONA to check whether a pattern update would cause forgetting.
388
+ *
389
+ * @param oldConfidence - Current confidence value
390
+ * @param newConfidence - Proposed new confidence value
391
+ * @returns Penalty value (higher = more forgetting risk)
392
+ */
393
+ computeConfidencePenalty(oldConfidence, newConfidence) {
394
+ // Use the global Fisher to estimate penalty for scalar confidence change
395
+ // Average Fisher value represents overall importance
396
+ let avgFisher = 0;
397
+ for (let i = 0; i < this.globalFisher.length; i++) {
398
+ avgFisher += this.globalFisher[i];
399
+ }
400
+ avgFisher = this.globalFisher.length > 0 ? avgFisher / this.globalFisher.length : 0;
401
+ const diff = newConfidence - oldConfidence;
402
+ return (this.config.lambda / 2) * avgFisher * diff * diff;
403
+ }
404
+ /**
405
+ * Clear all patterns and history (full reset)
406
+ */
407
+ clear() {
408
+ this.patterns.clear();
409
+ this.gradientHistory = [];
410
+ this.globalFisher = new Array(this.config.dimensions).fill(0);
411
+ this.consolidationHistory = [];
412
+ // Remove persisted file
413
+ try {
414
+ if (fs.existsSync(this.config.storagePath)) {
415
+ fs.unlinkSync(this.config.storagePath);
416
+ }
417
+ }
418
+ catch {
419
+ // Ignore deletion errors
420
+ }
421
+ }
422
+ // ============================================================================
423
+ // Private Methods
424
+ // ============================================================================
425
+ /**
426
+ * Calculate importance score for a pattern based on usage
427
+ */
428
+ calculateImportance(pattern) {
429
+ const total = pattern.successCount + pattern.failureCount;
430
+ if (total === 0)
431
+ return 0.5;
432
+ // Success rate with Laplace smoothing
433
+ const successRate = (pattern.successCount + 1) / (total + 2);
434
+ // Recency factor: recent patterns are more important
435
+ const hoursSinceUpdate = (Date.now() - pattern.lastUpdated) / (1000 * 60 * 60);
436
+ const recencyFactor = Math.exp(-hoursSinceUpdate / 168); // 1 week half-life
437
+ // Combine factors
438
+ return successRate * 0.7 + recencyFactor * 0.3;
439
+ }
440
+ /**
441
+ * Blend old and new weights using Fisher-weighted interpolation
442
+ */
443
+ blendWeights(oldWeights, newWeights, blendFactor, fisher) {
444
+ const len = Math.min(oldWeights.length, newWeights.length, this.config.dimensions);
445
+ const result = new Array(len);
446
+ // Normalize Fisher for per-weight blend factors
447
+ let maxF = 0;
448
+ for (let i = 0; i < len; i++) {
449
+ if (fisher[i] > maxF)
450
+ maxF = fisher[i];
451
+ }
452
+ const normFactor = maxF > 0 ? 1 / maxF : 1;
453
+ for (let i = 0; i < len; i++) {
454
+ // Higher Fisher = more weight on old value
455
+ const fisherWeight = fisher[i] * normFactor;
456
+ const adjustedBlend = blendFactor * (1 - fisherWeight * 0.5);
457
+ result[i] = oldWeights[i] * (1 - adjustedBlend) + newWeights[i] * adjustedBlend;
458
+ }
459
+ return result;
460
+ }
461
+ /**
462
+ * Prune old, low-importance patterns to stay within limit
463
+ */
464
+ pruneOldPatterns() {
465
+ if (this.patterns.size <= this.config.maxPatterns)
466
+ return;
467
+ // Sort by importance (ascending)
468
+ const sortedPatterns = Array.from(this.patterns.entries())
469
+ .map(([id, pattern]) => ({ id, importance: this.calculateImportance(pattern) }))
470
+ .sort((a, b) => a.importance - b.importance);
471
+ // Remove lowest importance patterns
472
+ const toRemove = this.patterns.size - this.config.maxPatterns;
473
+ for (let i = 0; i < toRemove; i++) {
474
+ this.patterns.delete(sortedPatterns[i].id);
475
+ }
476
+ }
477
+ /**
478
+ * Save state to disk
479
+ */
480
+ saveToDisk() {
481
+ try {
482
+ const dir = path.dirname(this.config.storagePath);
483
+ if (!fs.existsSync(dir)) {
484
+ fs.mkdirSync(dir, { recursive: true });
485
+ }
486
+ const state = {
487
+ version: '1.0.0',
488
+ config: {
489
+ lambda: this.config.lambda,
490
+ dimensions: this.config.dimensions,
491
+ fisherDecayRate: this.config.fisherDecayRate
492
+ },
493
+ globalFisher: this.globalFisher,
494
+ patterns: Array.from(this.patterns.entries()),
495
+ consolidationHistory: this.consolidationHistory.slice(-100),
496
+ savedAt: Date.now()
497
+ };
498
+ fs.writeFileSync(this.config.storagePath, JSON.stringify(state, null, 2));
499
+ }
500
+ catch {
501
+ // Silently fail - persistence is best-effort
502
+ }
503
+ }
504
+ /**
505
+ * Load state from disk
506
+ */
507
+ async loadFromDisk() {
508
+ if (!fs.existsSync(this.config.storagePath)) {
509
+ throw new Error('No persisted state found');
510
+ }
511
+ const content = fs.readFileSync(this.config.storagePath, 'utf-8');
512
+ const state = JSON.parse(content);
513
+ // Validate version
514
+ if (state.version !== '1.0.0') {
515
+ throw new Error(`Unsupported state version: ${state.version}`);
516
+ }
517
+ // Restore state
518
+ this.globalFisher = state.globalFisher || new Array(this.config.dimensions).fill(0);
519
+ // Restore patterns
520
+ this.patterns.clear();
521
+ if (state.patterns) {
522
+ for (const [id, pattern] of state.patterns) {
523
+ this.patterns.set(id, pattern);
524
+ }
525
+ }
526
+ // Restore history
527
+ this.consolidationHistory = state.consolidationHistory || [];
528
+ // Update config from persisted values
529
+ if (state.config) {
530
+ this.config.lambda = state.config.lambda ?? this.config.lambda;
531
+ }
532
+ }
533
+ }
534
+ // ============================================================================
535
+ // Singleton Instance
536
+ // ============================================================================
537
+ let ewcConsolidatorInstance = null;
538
+ /**
539
+ * Get the singleton EWC Consolidator instance
540
+ *
541
+ * @param config - Optional configuration overrides
542
+ * @returns EWC Consolidator instance
543
+ */
544
+ export async function getEWCConsolidator(config) {
545
+ if (!ewcConsolidatorInstance) {
546
+ ewcConsolidatorInstance = new EWCConsolidator(config);
547
+ await ewcConsolidatorInstance.initialize();
548
+ }
549
+ return ewcConsolidatorInstance;
550
+ }
551
+ /**
552
+ * Reset the singleton instance (for testing)
553
+ */
554
+ export function resetEWCConsolidator() {
555
+ if (ewcConsolidatorInstance) {
556
+ ewcConsolidatorInstance.clear();
557
+ ewcConsolidatorInstance = null;
558
+ }
559
+ }
560
+ // ============================================================================
561
+ // Utility Functions
562
+ // ============================================================================
563
+ /**
564
+ * Quick consolidation helper for common use case
565
+ * Consolidates new patterns with existing ones using EWC
566
+ *
567
+ * @param newPatterns - New patterns to add
568
+ * @returns Consolidation result
569
+ */
570
+ export async function consolidatePatterns(newPatterns) {
571
+ const consolidator = await getEWCConsolidator();
572
+ return consolidator.consolidate(newPatterns);
573
+ }
574
+ /**
575
+ * Record pattern usage outcome
576
+ * Updates Fisher information and pattern importance
577
+ *
578
+ * @param patternId - Pattern identifier
579
+ * @param embedding - Pattern embedding (used as gradient proxy)
580
+ * @param success - Whether the pattern was successful
581
+ */
582
+ export async function recordPatternOutcome(patternId, embedding, success) {
583
+ const consolidator = await getEWCConsolidator();
584
+ consolidator.recordGradient(patternId, embedding, success);
585
+ }
586
+ /**
587
+ * Get EWC statistics
588
+ */
589
+ export async function getEWCStats() {
590
+ const consolidator = await getEWCConsolidator();
591
+ return consolidator.getConsolidationStats();
592
+ }
593
+ export default {
594
+ EWCConsolidator,
595
+ getEWCConsolidator,
596
+ resetEWCConsolidator,
597
+ consolidatePatterns,
598
+ recordPatternOutcome,
599
+ getEWCStats
600
+ };
601
+ //# sourceMappingURL=ewc-consolidation.js.map