@claude-flow/cli 3.32.3 → 3.32.4

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 (683) hide show
  1. package/.claude/helpers/helpers.manifest.json +2 -2
  2. package/catalog-manifest.json +2 -2
  3. package/dist/src/agenticow/speculative-exploration.d.ts +148 -0
  4. package/dist/src/agenticow/speculative-exploration.js +218 -0
  5. package/dist/src/appliance/gguf-engine.d.ts +91 -0
  6. package/dist/src/appliance/gguf-engine.js +425 -0
  7. package/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
  8. package/dist/src/appliance/ruvllm-bridge.js +292 -0
  9. package/dist/src/appliance/rvfa-builder.d.ts +44 -0
  10. package/dist/src/appliance/rvfa-builder.js +329 -0
  11. package/dist/src/appliance/rvfa-distribution.d.ts +97 -0
  12. package/dist/src/appliance/rvfa-distribution.js +370 -0
  13. package/dist/src/appliance/rvfa-format.d.ts +111 -0
  14. package/dist/src/appliance/rvfa-format.js +393 -0
  15. package/dist/src/appliance/rvfa-runner.d.ts +69 -0
  16. package/dist/src/appliance/rvfa-runner.js +237 -0
  17. package/dist/src/appliance/rvfa-signing.d.ts +123 -0
  18. package/dist/src/appliance/rvfa-signing.js +347 -0
  19. package/dist/src/auth/client.d.ts +89 -0
  20. package/dist/src/auth/client.js +242 -0
  21. package/dist/src/auth/constants.d.ts +7 -0
  22. package/dist/src/auth/constants.js +7 -0
  23. package/dist/src/auth/scopes.d.ts +14 -0
  24. package/dist/src/auth/scopes.js +21 -0
  25. package/dist/src/auth/security-bridge.d.ts +36 -0
  26. package/dist/src/auth/security-bridge.js +42 -0
  27. package/dist/src/auth/session.d.ts +20 -0
  28. package/dist/src/auth/session.js +32 -0
  29. package/dist/src/auth/state.d.ts +19 -0
  30. package/dist/src/auth/state.js +53 -0
  31. package/dist/src/auth/types.d.ts +27 -0
  32. package/dist/src/auth/types.js +11 -0
  33. package/dist/src/autopilot-state.d.ts +77 -0
  34. package/dist/src/autopilot-state.js +271 -0
  35. package/dist/src/benchmarks/gaia-agent-planning.smoke.d.ts +18 -0
  36. package/dist/src/benchmarks/gaia-agent-planning.smoke.js +253 -0
  37. package/dist/src/benchmarks/gaia-agent.d.ts +198 -0
  38. package/dist/src/benchmarks/gaia-agent.js +651 -0
  39. package/dist/src/benchmarks/gaia-causal-memory.d.ts +133 -0
  40. package/dist/src/benchmarks/gaia-causal-memory.js +281 -0
  41. package/dist/src/benchmarks/gaia-causal-memory.smoke.d.ts +22 -0
  42. package/dist/src/benchmarks/gaia-causal-memory.smoke.js +300 -0
  43. package/dist/src/benchmarks/gaia-convergence.d.ts +138 -0
  44. package/dist/src/benchmarks/gaia-convergence.js +260 -0
  45. package/dist/src/benchmarks/gaia-convergence.smoke.d.ts +19 -0
  46. package/dist/src/benchmarks/gaia-convergence.smoke.js +246 -0
  47. package/dist/src/benchmarks/gaia-critic.d.ts +123 -0
  48. package/dist/src/benchmarks/gaia-critic.js +312 -0
  49. package/dist/src/benchmarks/gaia-critic.smoke.d.ts +21 -0
  50. package/dist/src/benchmarks/gaia-critic.smoke.js +327 -0
  51. package/dist/src/benchmarks/gaia-decomposer.d.ts +125 -0
  52. package/dist/src/benchmarks/gaia-decomposer.js +350 -0
  53. package/dist/src/benchmarks/gaia-decomposer.smoke.d.ts +21 -0
  54. package/dist/src/benchmarks/gaia-decomposer.smoke.js +228 -0
  55. package/dist/src/benchmarks/gaia-e2e-smoke.d.ts +27 -0
  56. package/dist/src/benchmarks/gaia-e2e-smoke.js +136 -0
  57. package/dist/src/benchmarks/gaia-extract.smoke.d.ts +45 -0
  58. package/dist/src/benchmarks/gaia-extract.smoke.js +242 -0
  59. package/dist/src/benchmarks/gaia-hardness/features.d.ts +46 -0
  60. package/dist/src/benchmarks/gaia-hardness/features.js +170 -0
  61. package/dist/src/benchmarks/gaia-hardness/predictor.d.ts +105 -0
  62. package/dist/src/benchmarks/gaia-hardness/predictor.js +260 -0
  63. package/dist/src/benchmarks/gaia-hardness/predictor.smoke.d.ts +20 -0
  64. package/dist/src/benchmarks/gaia-hardness/predictor.smoke.js +235 -0
  65. package/dist/src/benchmarks/gaia-hardness/train-data-loader.d.ts +51 -0
  66. package/dist/src/benchmarks/gaia-hardness/train-data-loader.js +179 -0
  67. package/dist/src/benchmarks/gaia-judge.d.ts +88 -0
  68. package/dist/src/benchmarks/gaia-judge.js +437 -0
  69. package/dist/src/benchmarks/gaia-loader.d.ts +87 -0
  70. package/dist/src/benchmarks/gaia-loader.js +326 -0
  71. package/dist/src/benchmarks/gaia-tools/file_read.d.ts +35 -0
  72. package/dist/src/benchmarks/gaia-tools/file_read.js +403 -0
  73. package/dist/src/benchmarks/gaia-tools/grounded_query.d.ts +126 -0
  74. package/dist/src/benchmarks/gaia-tools/grounded_query.js +225 -0
  75. package/dist/src/benchmarks/gaia-tools/index.d.ts +32 -0
  76. package/dist/src/benchmarks/gaia-tools/index.js +36 -0
  77. package/dist/src/benchmarks/gaia-tools/types.d.ts +62 -0
  78. package/dist/src/benchmarks/gaia-tools/types.js +12 -0
  79. package/dist/src/benchmarks/gaia-tools/web_search.d.ts +30 -0
  80. package/dist/src/benchmarks/gaia-tools/web_search.js +210 -0
  81. package/dist/src/benchmarks/gaia-voting.d.ts +88 -0
  82. package/dist/src/benchmarks/gaia-voting.js +297 -0
  83. package/dist/src/benchmarks/gaia-voting.smoke.d.ts +20 -0
  84. package/dist/src/benchmarks/gaia-voting.smoke.js +332 -0
  85. package/dist/src/benchmarks/pretrain/index.d.ts +58 -0
  86. package/dist/src/benchmarks/pretrain/index.js +404 -0
  87. package/dist/src/business-pods/bbs-budget-tracker.d.ts +139 -0
  88. package/dist/src/business-pods/bbs-budget-tracker.js +358 -0
  89. package/dist/src/business-pods/domain-affinity-policy.d.ts +47 -0
  90. package/dist/src/business-pods/domain-affinity-policy.js +65 -0
  91. package/dist/src/business-pods/pod-schema.d.ts +96 -0
  92. package/dist/src/business-pods/pod-schema.js +225 -0
  93. package/dist/src/commands/advisor.d.ts +15 -0
  94. package/dist/src/commands/advisor.js +94 -0
  95. package/dist/src/commands/agent-wasm.d.ts +14 -0
  96. package/dist/src/commands/agent-wasm.js +333 -0
  97. package/dist/src/commands/agent.d.ts +8 -0
  98. package/dist/src/commands/agent.js +927 -0
  99. package/dist/src/commands/analyze.d.ts +19 -0
  100. package/dist/src/commands/analyze.js +2047 -0
  101. package/dist/src/commands/announcements.d.ts +17 -0
  102. package/dist/src/commands/announcements.js +0 -0
  103. package/dist/src/commands/appliance-advanced.d.ts +9 -0
  104. package/dist/src/commands/appliance-advanced.js +215 -0
  105. package/dist/src/commands/appliance.d.ts +8 -0
  106. package/dist/src/commands/appliance.js +404 -0
  107. package/dist/src/commands/auth.d.ts +15 -0
  108. package/dist/src/commands/auth.js +244 -0
  109. package/dist/src/commands/autopilot.d.ts +15 -0
  110. package/dist/src/commands/autopilot.js +407 -0
  111. package/dist/src/commands/benchmark.d.ts +10 -0
  112. package/dist/src/commands/benchmark.js +460 -0
  113. package/dist/src/commands/claims.d.ts +10 -0
  114. package/dist/src/commands/claims.js +620 -0
  115. package/dist/src/commands/cleanup.d.ts +13 -0
  116. package/dist/src/commands/cleanup.js +250 -0
  117. package/dist/src/commands/completions.d.ts +10 -0
  118. package/dist/src/commands/completions.js +539 -0
  119. package/dist/src/commands/config.d.ts +8 -0
  120. package/dist/src/commands/config.js +428 -0
  121. package/dist/src/commands/daemon.d.ts +59 -0
  122. package/dist/src/commands/daemon.js +1733 -0
  123. package/dist/src/commands/deployment.d.ts +10 -0
  124. package/dist/src/commands/deployment.js +672 -0
  125. package/dist/src/commands/doctor.d.ts +10 -0
  126. package/dist/src/commands/doctor.js +1902 -0
  127. package/dist/src/commands/eject.d.ts +33 -0
  128. package/dist/src/commands/eject.js +195 -0
  129. package/dist/src/commands/embeddings.d.ts +18 -0
  130. package/dist/src/commands/embeddings.js +1623 -0
  131. package/dist/src/commands/funnel.d.ts +18 -0
  132. package/dist/src/commands/funnel.js +302 -0
  133. package/dist/src/commands/gaia-bench.d.ts +40 -0
  134. package/dist/src/commands/gaia-bench.js +597 -0
  135. package/dist/src/commands/guidance.d.ts +8 -0
  136. package/dist/src/commands/guidance.js +556 -0
  137. package/dist/src/commands/hive-mind.d.ts +11 -0
  138. package/dist/src/commands/hive-mind.js +1319 -0
  139. package/dist/src/commands/hooks.d.ts +8 -0
  140. package/dist/src/commands/hooks.js +4606 -0
  141. package/dist/src/commands/index.d.ts +118 -0
  142. package/dist/src/commands/index.js +366 -0
  143. package/dist/src/commands/init.d.ts +13 -0
  144. package/dist/src/commands/init.js +1297 -0
  145. package/dist/src/commands/issues.d.ts +21 -0
  146. package/dist/src/commands/issues.js +567 -0
  147. package/dist/src/commands/mcp.d.ts +11 -0
  148. package/dist/src/commands/mcp.js +732 -0
  149. package/dist/src/commands/memory-backup.d.ts +11 -0
  150. package/dist/src/commands/memory-backup.js +46 -0
  151. package/dist/src/commands/memory-distill.d.ts +27 -0
  152. package/dist/src/commands/memory-distill.js +374 -0
  153. package/dist/src/commands/memory.d.ts +8 -0
  154. package/dist/src/commands/memory.js +1596 -0
  155. package/dist/src/commands/metaharness.d.ts +39 -0
  156. package/dist/src/commands/metaharness.js +215 -0
  157. package/dist/src/commands/migrate.d.ts +8 -0
  158. package/dist/src/commands/migrate.js +742 -0
  159. package/dist/src/commands/neural.d.ts +10 -0
  160. package/dist/src/commands/neural.js +4331 -0
  161. package/dist/src/commands/performance.d.ts +10 -0
  162. package/dist/src/commands/performance.js +583 -0
  163. package/dist/src/commands/plugins.d.ts +11 -0
  164. package/dist/src/commands/plugins.js +826 -0
  165. package/dist/src/commands/process.d.ts +10 -0
  166. package/dist/src/commands/process.js +694 -0
  167. package/dist/src/commands/progress.d.ts +11 -0
  168. package/dist/src/commands/progress.js +259 -0
  169. package/dist/src/commands/providers.d.ts +10 -0
  170. package/dist/src/commands/providers.js +502 -0
  171. package/dist/src/commands/proxy-lifecycle.d.ts +12 -0
  172. package/dist/src/commands/proxy-lifecycle.js +232 -0
  173. package/dist/src/commands/proxy.d.ts +21 -0
  174. package/dist/src/commands/proxy.js +398 -0
  175. package/dist/src/commands/route.d.ts +16 -0
  176. package/dist/src/commands/route.js +822 -0
  177. package/dist/src/commands/ruvector/backup.d.ts +11 -0
  178. package/dist/src/commands/ruvector/backup.js +747 -0
  179. package/dist/src/commands/ruvector/benchmark.d.ts +11 -0
  180. package/dist/src/commands/ruvector/benchmark.js +490 -0
  181. package/dist/src/commands/ruvector/import.d.ts +18 -0
  182. package/dist/src/commands/ruvector/import.js +373 -0
  183. package/dist/src/commands/ruvector/index.d.ts +29 -0
  184. package/dist/src/commands/ruvector/index.js +129 -0
  185. package/dist/src/commands/ruvector/init.d.ts +11 -0
  186. package/dist/src/commands/ruvector/init.js +467 -0
  187. package/dist/src/commands/ruvector/migrate.d.ts +11 -0
  188. package/dist/src/commands/ruvector/migrate.js +498 -0
  189. package/dist/src/commands/ruvector/optimize.d.ts +11 -0
  190. package/dist/src/commands/ruvector/optimize.js +505 -0
  191. package/dist/src/commands/ruvector/pg-utils.d.ts +14 -0
  192. package/dist/src/commands/ruvector/pg-utils.js +41 -0
  193. package/dist/src/commands/ruvector/setup.d.ts +18 -0
  194. package/dist/src/commands/ruvector/setup.js +765 -0
  195. package/dist/src/commands/ruvector/status.d.ts +11 -0
  196. package/dist/src/commands/ruvector/status.js +479 -0
  197. package/dist/src/commands/security.d.ts +10 -0
  198. package/dist/src/commands/security.js +1012 -0
  199. package/dist/src/commands/session.d.ts +8 -0
  200. package/dist/src/commands/session.js +757 -0
  201. package/dist/src/commands/settings.d.ts +19 -0
  202. package/dist/src/commands/settings.js +180 -0
  203. package/dist/src/commands/spinner.d.ts +16 -0
  204. package/dist/src/commands/spinner.js +329 -0
  205. package/dist/src/commands/start.d.ts +8 -0
  206. package/dist/src/commands/start.js +418 -0
  207. package/dist/src/commands/status.d.ts +8 -0
  208. package/dist/src/commands/status.js +608 -0
  209. package/dist/src/commands/swarm.d.ts +8 -0
  210. package/dist/src/commands/swarm.js +891 -0
  211. package/dist/src/commands/task.d.ts +8 -0
  212. package/dist/src/commands/task.js +675 -0
  213. package/dist/src/commands/transfer-store.d.ts +13 -0
  214. package/dist/src/commands/transfer-store.js +428 -0
  215. package/dist/src/commands/update.d.ts +8 -0
  216. package/dist/src/commands/update.js +276 -0
  217. package/dist/src/commands/verify.d.ts +19 -0
  218. package/dist/src/commands/verify.js +261 -0
  219. package/dist/src/commands/version.d.ts +42 -0
  220. package/dist/src/commands/version.js +106 -0
  221. package/dist/src/commands/workflow.d.ts +8 -0
  222. package/dist/src/commands/workflow.js +617 -0
  223. package/dist/src/config/harness-feedback-applier.d.ts +50 -0
  224. package/dist/src/config/harness-feedback-applier.js +122 -0
  225. package/dist/src/config/proven-config-refresh.d.ts +39 -0
  226. package/dist/src/config/proven-config-refresh.js +154 -0
  227. package/dist/src/config/proven-config-rvfa.d.ts +23 -0
  228. package/dist/src/config/proven-config-rvfa.js +73 -0
  229. package/dist/src/config/proven-config.d.ts +86 -0
  230. package/dist/src/config/proven-config.js +176 -0
  231. package/dist/src/config-adapter.d.ts +15 -0
  232. package/dist/src/config-adapter.js +186 -0
  233. package/dist/src/encryption/vault.d.ts +94 -0
  234. package/dist/src/encryption/vault.js +172 -0
  235. package/dist/src/fs-secure.d.ts +86 -0
  236. package/dist/src/fs-secure.js +133 -0
  237. package/dist/src/funnel/advisor-tip.d.ts +58 -0
  238. package/dist/src/funnel/advisor-tip.js +92 -0
  239. package/dist/src/funnel/attribution.d.ts +37 -0
  240. package/dist/src/funnel/attribution.js +101 -0
  241. package/dist/src/funnel/consent.d.ts +22 -0
  242. package/dist/src/funnel/consent.js +58 -0
  243. package/dist/src/funnel/credit-errors.d.ts +31 -0
  244. package/dist/src/funnel/credit-errors.js +88 -0
  245. package/dist/src/funnel/credit-notifier.d.ts +44 -0
  246. package/dist/src/funnel/credit-notifier.js +74 -0
  247. package/dist/src/funnel/disclosure.d.ts +47 -0
  248. package/dist/src/funnel/disclosure.js +109 -0
  249. package/dist/src/funnel/enrollment.d.ts +36 -0
  250. package/dist/src/funnel/enrollment.js +64 -0
  251. package/dist/src/funnel/environment.d.ts +17 -0
  252. package/dist/src/funnel/environment.js +39 -0
  253. package/dist/src/funnel/event-transport.d.ts +51 -0
  254. package/dist/src/funnel/event-transport.js +199 -0
  255. package/dist/src/funnel/events.d.ts +42 -0
  256. package/dist/src/funnel/events.js +150 -0
  257. package/dist/src/funnel/index.d.ts +21 -0
  258. package/dist/src/funnel/index.js +21 -0
  259. package/dist/src/funnel/insights.d.ts +50 -0
  260. package/dist/src/funnel/insights.js +120 -0
  261. package/dist/src/funnel/local-signals.d.ts +20 -0
  262. package/dist/src/funnel/local-signals.js +77 -0
  263. package/dist/src/funnel/message-transport.d.ts +51 -0
  264. package/dist/src/funnel/message-transport.js +149 -0
  265. package/dist/src/funnel/messages.d.ts +55 -0
  266. package/dist/src/funnel/messages.js +160 -0
  267. package/dist/src/funnel/payout.d.ts +40 -0
  268. package/dist/src/funnel/payout.js +60 -0
  269. package/dist/src/funnel/power-saver-notifier.d.ts +44 -0
  270. package/dist/src/funnel/power-saver-notifier.js +92 -0
  271. package/dist/src/funnel/precedence.d.ts +16 -0
  272. package/dist/src/funnel/precedence.js +85 -0
  273. package/dist/src/funnel/promo.d.ts +41 -0
  274. package/dist/src/funnel/promo.js +144 -0
  275. package/dist/src/funnel/rate-limit-notifier.d.ts +55 -0
  276. package/dist/src/funnel/rate-limit-notifier.js +102 -0
  277. package/dist/src/funnel/rotation.d.ts +19 -0
  278. package/dist/src/funnel/rotation.js +70 -0
  279. package/dist/src/funnel/state.d.ts +13 -0
  280. package/dist/src/funnel/state.js +52 -0
  281. package/dist/src/funnel/toggle-cooldown.d.ts +17 -0
  282. package/dist/src/funnel/toggle-cooldown.js +32 -0
  283. package/dist/src/funnel/types.d.ts +98 -0
  284. package/dist/src/funnel/types.js +26 -0
  285. package/dist/src/index.d.ts +81 -0
  286. package/dist/src/index.js +609 -0
  287. package/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
  288. package/dist/src/infrastructure/in-memory-repositories.js +264 -0
  289. package/dist/src/init/claudemd-generator.d.ts +16 -0
  290. package/dist/src/init/claudemd-generator.js +368 -0
  291. package/dist/src/init/executor.d.ts +41 -0
  292. package/dist/src/init/executor.js +2142 -0
  293. package/dist/src/init/helper-refresh.d.ts +79 -0
  294. package/dist/src/init/helper-refresh.js +347 -0
  295. package/dist/src/init/helper-signing.d.ts +37 -0
  296. package/dist/src/init/helper-signing.js +67 -0
  297. package/dist/src/init/helpers-generator.d.ts +87 -0
  298. package/dist/src/init/helpers-generator.js +1456 -0
  299. package/dist/src/init/index.d.ts +13 -0
  300. package/dist/src/init/index.js +15 -0
  301. package/dist/src/init/mcp-generator.d.ts +26 -0
  302. package/dist/src/init/mcp-generator.js +126 -0
  303. package/dist/src/init/memory-package-resolver.d.ts +53 -0
  304. package/dist/src/init/memory-package-resolver.js +118 -0
  305. package/dist/src/init/settings-generator.d.ts +14 -0
  306. package/dist/src/init/settings-generator.js +462 -0
  307. package/dist/src/init/statusline-generator.d.ts +28 -0
  308. package/dist/src/init/statusline-generator.js +177 -0
  309. package/dist/src/init/types.d.ts +331 -0
  310. package/dist/src/init/types.js +276 -0
  311. package/dist/src/log-filters.d.ts +46 -0
  312. package/dist/src/log-filters.js +107 -0
  313. package/dist/src/mcp-client.d.ts +92 -0
  314. package/dist/src/mcp-client.js +397 -0
  315. package/dist/src/mcp-server.d.ts +163 -0
  316. package/dist/src/mcp-server.js +751 -0
  317. package/dist/src/mcp-tools/agent-execute-core.d.ts +115 -0
  318. package/dist/src/mcp-tools/agent-execute-core.js +587 -0
  319. package/dist/src/mcp-tools/agent-tools.d.ts +9 -0
  320. package/dist/src/mcp-tools/agent-tools.js +837 -0
  321. package/dist/src/mcp-tools/agentbbs-tools.d.ts +28 -0
  322. package/dist/src/mcp-tools/agentbbs-tools.js +394 -0
  323. package/dist/src/mcp-tools/agentdb-tools.d.ts +35 -0
  324. package/dist/src/mcp-tools/agentdb-tools.js +1473 -0
  325. package/dist/src/mcp-tools/agenticow-loader.d.ts +59 -0
  326. package/dist/src/mcp-tools/agenticow-loader.js +105 -0
  327. package/dist/src/mcp-tools/agenticow-speculate-tools.d.ts +24 -0
  328. package/dist/src/mcp-tools/agenticow-speculate-tools.js +209 -0
  329. package/dist/src/mcp-tools/agenticow-tools.d.ts +36 -0
  330. package/dist/src/mcp-tools/agenticow-tools.js +360 -0
  331. package/dist/src/mcp-tools/analyze-tools.d.ts +38 -0
  332. package/dist/src/mcp-tools/analyze-tools.js +346 -0
  333. package/dist/src/mcp-tools/auto-install.d.ts +83 -0
  334. package/dist/src/mcp-tools/auto-install.js +131 -0
  335. package/dist/src/mcp-tools/autopilot-tools.d.ts +12 -0
  336. package/dist/src/mcp-tools/autopilot-tools.js +231 -0
  337. package/dist/src/mcp-tools/browser-intent-tools.d.ts +162 -0
  338. package/dist/src/mcp-tools/browser-intent-tools.js +548 -0
  339. package/dist/src/mcp-tools/browser-session-tools.d.ts +27 -0
  340. package/dist/src/mcp-tools/browser-session-tools.js +398 -0
  341. package/dist/src/mcp-tools/browser-tools.d.ts +21 -0
  342. package/dist/src/mcp-tools/browser-tools.js +760 -0
  343. package/dist/src/mcp-tools/business-pod-tools.d.ts +20 -0
  344. package/dist/src/mcp-tools/business-pod-tools.js +169 -0
  345. package/dist/src/mcp-tools/claims-tools.d.ts +12 -0
  346. package/dist/src/mcp-tools/claims-tools.js +863 -0
  347. package/dist/src/mcp-tools/config-tools.d.ts +8 -0
  348. package/dist/src/mcp-tools/config-tools.js +411 -0
  349. package/dist/src/mcp-tools/coordination-tools.d.ts +13 -0
  350. package/dist/src/mcp-tools/coordination-tools.js +729 -0
  351. package/dist/src/mcp-tools/daa-tools.d.ts +13 -0
  352. package/dist/src/mcp-tools/daa-tools.js +534 -0
  353. package/dist/src/mcp-tools/embeddings-tools.d.ts +9 -0
  354. package/dist/src/mcp-tools/embeddings-tools.js +904 -0
  355. package/dist/src/mcp-tools/github-tools.d.ts +9 -0
  356. package/dist/src/mcp-tools/github-tools.js +659 -0
  357. package/dist/src/mcp-tools/guidance-tools.d.ts +15 -0
  358. package/dist/src/mcp-tools/guidance-tools.js +639 -0
  359. package/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -0
  360. package/dist/src/mcp-tools/hive-mind-tools.js +953 -0
  361. package/dist/src/mcp-tools/hooks-tools.d.ts +65 -0
  362. package/dist/src/mcp-tools/hooks-tools.js +4836 -0
  363. package/dist/src/mcp-tools/http-fetch-tools.d.ts +55 -0
  364. package/dist/src/mcp-tools/http-fetch-tools.js +329 -0
  365. package/dist/src/mcp-tools/index.d.ts +34 -0
  366. package/dist/src/mcp-tools/index.js +40 -0
  367. package/dist/src/mcp-tools/managed-agent-tools.d.ts +22 -0
  368. package/dist/src/mcp-tools/managed-agent-tools.js +357 -0
  369. package/dist/src/mcp-tools/memory-tools.d.ts +14 -0
  370. package/dist/src/mcp-tools/memory-tools.js +1330 -0
  371. package/dist/src/mcp-tools/metaharness-tools.d.ts +51 -0
  372. package/dist/src/mcp-tools/metaharness-tools.js +684 -0
  373. package/dist/src/mcp-tools/neural-tools.d.ts +54 -0
  374. package/dist/src/mcp-tools/neural-tools.js +1168 -0
  375. package/dist/src/mcp-tools/performance-tools.d.ts +16 -0
  376. package/dist/src/mcp-tools/performance-tools.js +675 -0
  377. package/dist/src/mcp-tools/progress-tools.d.ts +14 -0
  378. package/dist/src/mcp-tools/progress-tools.js +348 -0
  379. package/dist/src/mcp-tools/request-tracker.d.ts +17 -0
  380. package/dist/src/mcp-tools/request-tracker.js +27 -0
  381. package/dist/src/mcp-tools/ruvllm-tools.d.ts +9 -0
  382. package/dist/src/mcp-tools/ruvllm-tools.js +355 -0
  383. package/dist/src/mcp-tools/security-tools.d.ts +18 -0
  384. package/dist/src/mcp-tools/security-tools.js +556 -0
  385. package/dist/src/mcp-tools/session-tools.d.ts +8 -0
  386. package/dist/src/mcp-tools/session-tools.js +517 -0
  387. package/dist/src/mcp-tools/swarm-tools.d.ts +37 -0
  388. package/dist/src/mcp-tools/swarm-tools.js +390 -0
  389. package/dist/src/mcp-tools/system-tools.d.ts +13 -0
  390. package/dist/src/mcp-tools/system-tools.js +688 -0
  391. package/dist/src/mcp-tools/task-tools.d.ts +8 -0
  392. package/dist/src/mcp-tools/task-tools.js +487 -0
  393. package/dist/src/mcp-tools/terminal-tools.d.ts +8 -0
  394. package/dist/src/mcp-tools/terminal-tools.js +306 -0
  395. package/dist/src/mcp-tools/testgen-tools.d.ts +26 -0
  396. package/dist/src/mcp-tools/testgen-tools.js +168 -0
  397. package/dist/src/mcp-tools/tool-loop-guardrail.d.ts +31 -0
  398. package/dist/src/mcp-tools/tool-loop-guardrail.js +71 -0
  399. package/dist/src/mcp-tools/transfer-tools.d.ts +14 -0
  400. package/dist/src/mcp-tools/transfer-tools.js +447 -0
  401. package/dist/src/mcp-tools/types.d.ts +8 -0
  402. package/dist/src/mcp-tools/types.js +8 -0
  403. package/dist/src/mcp-tools/validate-input.d.ts +9 -0
  404. package/dist/src/mcp-tools/validate-input.js +9 -0
  405. package/dist/src/mcp-tools/wasm-agent-tools.d.ts +13 -0
  406. package/dist/src/mcp-tools/wasm-agent-tools.js +840 -0
  407. package/dist/src/mcp-tools/workflow-tools.d.ts +8 -0
  408. package/dist/src/mcp-tools/workflow-tools.js +884 -0
  409. package/dist/src/memory/bge-embedder.d.ts +25 -0
  410. package/dist/src/memory/bge-embedder.js +121 -0
  411. package/dist/src/memory/cross-encoder-rerank.d.ts +33 -0
  412. package/dist/src/memory/cross-encoder-rerank.js +123 -0
  413. package/dist/src/memory/embedding-policy.d.ts +21 -0
  414. package/dist/src/memory/embedding-policy.js +30 -0
  415. package/dist/src/memory/embedding-quantization.d.ts +62 -0
  416. package/dist/src/memory/embedding-quantization.js +156 -0
  417. package/dist/src/memory/ewc-consolidation.d.ts +305 -0
  418. package/dist/src/memory/ewc-consolidation.js +611 -0
  419. package/dist/src/memory/graph-edge-writer.d.ts +95 -0
  420. package/dist/src/memory/graph-edge-writer.js +217 -0
  421. package/dist/src/memory/hybrid-retrieval.d.ts +77 -0
  422. package/dist/src/memory/hybrid-retrieval.js +192 -0
  423. package/dist/src/memory/intelligence.d.ts +405 -0
  424. package/dist/src/memory/intelligence.js +1316 -0
  425. package/dist/src/memory/lucene-bm25.d.ts +19 -0
  426. package/dist/src/memory/lucene-bm25.js +308 -0
  427. package/dist/src/memory/memory-bridge.d.ts +537 -0
  428. package/dist/src/memory/memory-bridge.js +2460 -0
  429. package/dist/src/memory/memory-initializer.d.ts +556 -0
  430. package/dist/src/memory/memory-initializer.js +3021 -0
  431. package/dist/src/memory/neural-package-bridge.d.ts +48 -0
  432. package/dist/src/memory/neural-package-bridge.js +87 -0
  433. package/dist/src/memory/rabitq-index.d.ts +60 -0
  434. package/dist/src/memory/rabitq-index.js +242 -0
  435. package/dist/src/memory/sona-optimizer.d.ts +267 -0
  436. package/dist/src/memory/sona-optimizer.js +779 -0
  437. package/dist/src/memory/structured-distill.d.ts +48 -0
  438. package/dist/src/memory/structured-distill.js +125 -0
  439. package/dist/src/output.d.ts +9 -0
  440. package/dist/src/output.js +9 -0
  441. package/dist/src/parser.d.ts +89 -0
  442. package/dist/src/parser.js +516 -0
  443. package/dist/src/plugins/manager.d.ts +133 -0
  444. package/dist/src/plugins/manager.js +415 -0
  445. package/dist/src/plugins/store/discovery.d.ts +99 -0
  446. package/dist/src/plugins/store/discovery.js +1224 -0
  447. package/dist/src/plugins/store/index.d.ts +76 -0
  448. package/dist/src/plugins/store/index.js +141 -0
  449. package/dist/src/plugins/store/search.d.ts +46 -0
  450. package/dist/src/plugins/store/search.js +230 -0
  451. package/dist/src/plugins/store/types.d.ts +279 -0
  452. package/dist/src/plugins/store/types.js +7 -0
  453. package/dist/src/plugins/tests/demo-plugin-store.d.ts +7 -0
  454. package/dist/src/plugins/tests/demo-plugin-store.js +126 -0
  455. package/dist/src/plugins/tests/standalone-test.d.ts +12 -0
  456. package/dist/src/plugins/tests/standalone-test.js +188 -0
  457. package/dist/src/plugins/tests/test-plugin-store.d.ts +7 -0
  458. package/dist/src/plugins/tests/test-plugin-store.js +206 -0
  459. package/dist/src/production/circuit-breaker.d.ts +101 -0
  460. package/dist/src/production/circuit-breaker.js +241 -0
  461. package/dist/src/production/error-handler.d.ts +92 -0
  462. package/dist/src/production/error-handler.js +299 -0
  463. package/dist/src/production/index.d.ts +23 -0
  464. package/dist/src/production/index.js +18 -0
  465. package/dist/src/production/monitoring.d.ts +161 -0
  466. package/dist/src/production/monitoring.js +356 -0
  467. package/dist/src/production/rate-limiter.d.ts +80 -0
  468. package/dist/src/production/rate-limiter.js +201 -0
  469. package/dist/src/production/retry.d.ts +48 -0
  470. package/dist/src/production/retry.js +179 -0
  471. package/dist/src/prompt.d.ts +44 -0
  472. package/dist/src/prompt.js +501 -0
  473. package/dist/src/proxy/install.d.ts +29 -0
  474. package/dist/src/proxy/install.js +135 -0
  475. package/dist/src/proxy/lifecycle.d.ts +61 -0
  476. package/dist/src/proxy/lifecycle.js +249 -0
  477. package/dist/src/proxy/paths.d.ts +34 -0
  478. package/dist/src/proxy/paths.js +70 -0
  479. package/dist/src/proxy/release.d.ts +47 -0
  480. package/dist/src/proxy/release.js +138 -0
  481. package/dist/src/proxy/token-bridge.d.ts +5 -0
  482. package/dist/src/proxy/token-bridge.js +61 -0
  483. package/dist/src/proxy/verify.d.ts +44 -0
  484. package/dist/src/proxy/verify.js +68 -0
  485. package/dist/src/runtime/headless.d.ts +60 -0
  486. package/dist/src/runtime/headless.js +284 -0
  487. package/dist/src/runtime/parent-death-watchdog.d.ts +42 -0
  488. package/dist/src/runtime/parent-death-watchdog.js +70 -0
  489. package/dist/src/ruvector/agent-wasm.d.ts +228 -0
  490. package/dist/src/ruvector/agent-wasm.js +463 -0
  491. package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
  492. package/dist/src/ruvector/ast-analyzer.js +277 -0
  493. package/dist/src/ruvector/codemods/engine.d.ts +45 -0
  494. package/dist/src/ruvector/codemods/engine.js +291 -0
  495. package/dist/src/ruvector/codemods/scope-analysis.d.ts +29 -0
  496. package/dist/src/ruvector/codemods/scope-analysis.js +162 -0
  497. package/dist/src/ruvector/coverage-router.d.ts +160 -0
  498. package/dist/src/ruvector/coverage-router.js +531 -0
  499. package/dist/src/ruvector/coverage-tools.d.ts +33 -0
  500. package/dist/src/ruvector/coverage-tools.js +157 -0
  501. package/dist/src/ruvector/diff-classifier.d.ts +175 -0
  502. package/dist/src/ruvector/diff-classifier.js +699 -0
  503. package/dist/src/ruvector/diskann-backend.d.ts +78 -0
  504. package/dist/src/ruvector/diskann-backend.js +310 -0
  505. package/dist/src/ruvector/enhanced-model-router.d.ts +172 -0
  506. package/dist/src/ruvector/enhanced-model-router.js +577 -0
  507. package/dist/src/ruvector/graph-analyzer.d.ts +187 -0
  508. package/dist/src/ruvector/graph-analyzer.js +929 -0
  509. package/dist/src/ruvector/graph-backend.d.ts +79 -0
  510. package/dist/src/ruvector/graph-backend.js +220 -0
  511. package/dist/src/ruvector/index.d.ts +38 -0
  512. package/dist/src/ruvector/index.js +86 -0
  513. package/dist/src/ruvector/lora-adapter.d.ts +292 -0
  514. package/dist/src/ruvector/lora-adapter.js +710 -0
  515. package/dist/src/ruvector/model-prices.d.ts +50 -0
  516. package/dist/src/ruvector/model-prices.js +72 -0
  517. package/dist/src/ruvector/model-router.d.ts +408 -0
  518. package/dist/src/ruvector/model-router.js +1162 -0
  519. package/dist/src/ruvector/neural-router.d.ts +182 -0
  520. package/dist/src/ruvector/neural-router.js +825 -0
  521. package/dist/src/ruvector/output-verifier.d.ts +83 -0
  522. package/dist/src/ruvector/output-verifier.js +277 -0
  523. package/dist/src/ruvector/q-learning-router.d.ts +227 -0
  524. package/dist/src/ruvector/q-learning-router.js +721 -0
  525. package/dist/src/ruvector/router-calibrator.d.ts +65 -0
  526. package/dist/src/ruvector/router-calibrator.js +120 -0
  527. package/dist/src/ruvector/router-parallel-recorder.d.ts +127 -0
  528. package/dist/src/ruvector/router-parallel-recorder.js +183 -0
  529. package/dist/src/ruvector/router-trajectory.d.ts +194 -0
  530. package/dist/src/ruvector/router-trajectory.js +281 -0
  531. package/dist/src/ruvector/run-transcript-recorder.d.ts +154 -0
  532. package/dist/src/ruvector/run-transcript-recorder.js +209 -0
  533. package/dist/src/ruvector/ruvllm-wasm.d.ts +179 -0
  534. package/dist/src/ruvector/ruvllm-wasm.js +379 -0
  535. package/dist/src/ruvector/semantic-router.d.ts +77 -0
  536. package/dist/src/ruvector/semantic-router.js +178 -0
  537. package/dist/src/ruvector/task-embedder.d.ts +56 -0
  538. package/dist/src/ruvector/task-embedder.js +237 -0
  539. package/dist/src/ruvector/trajectory-tree.d.ts +113 -0
  540. package/dist/src/ruvector/trajectory-tree.js +237 -0
  541. package/dist/src/ruvector/vector-db.d.ts +73 -0
  542. package/dist/src/ruvector/vector-db.js +301 -0
  543. package/dist/src/ruvector/wasm-embedder.d.ts +13 -0
  544. package/dist/src/ruvector/wasm-embedder.js +143 -0
  545. package/dist/src/security/builtin-aidefence.d.ts +34 -0
  546. package/dist/src/security/builtin-aidefence.js +86 -0
  547. package/dist/src/services/agentic-flow-bridge.d.ts +50 -0
  548. package/dist/src/services/agentic-flow-bridge.js +95 -0
  549. package/dist/src/services/ai-job-dedup.d.ts +61 -0
  550. package/dist/src/services/ai-job-dedup.js +136 -0
  551. package/dist/src/services/checkpoint-gate.d.ts +140 -0
  552. package/dist/src/services/checkpoint-gate.js +223 -0
  553. package/dist/src/services/claim-service.d.ts +204 -0
  554. package/dist/src/services/claim-service.js +818 -0
  555. package/dist/src/services/config-file-manager.d.ts +37 -0
  556. package/dist/src/services/config-file-manager.js +224 -0
  557. package/dist/src/services/container-worker-pool.d.ts +204 -0
  558. package/dist/src/services/container-worker-pool.js +589 -0
  559. package/dist/src/services/daemon-autostart.d.ts +17 -0
  560. package/dist/src/services/daemon-autostart.js +102 -0
  561. package/dist/src/services/distill-oracle.d.ts +190 -0
  562. package/dist/src/services/distill-oracle.js +349 -0
  563. package/dist/src/services/distill-tuning.d.ts +111 -0
  564. package/dist/src/services/distill-tuning.js +510 -0
  565. package/dist/src/services/evolve-proof.d.ts +253 -0
  566. package/dist/src/services/evolve-proof.js +343 -0
  567. package/dist/src/services/fable-harness.d.ts +208 -0
  568. package/dist/src/services/fable-harness.js +388 -0
  569. package/dist/src/services/git-workspace-identity.d.ts +42 -0
  570. package/dist/src/services/git-workspace-identity.js +99 -0
  571. package/dist/src/services/global-ai-budget.d.ts +135 -0
  572. package/dist/src/services/global-ai-budget.js +415 -0
  573. package/dist/src/services/harness-benchmark.d.ts +68 -0
  574. package/dist/src/services/harness-benchmark.js +94 -0
  575. package/dist/src/services/harness-canary.d.ts +60 -0
  576. package/dist/src/services/harness-canary.js +69 -0
  577. package/dist/src/services/harness-corpus-harvester.d.ts +51 -0
  578. package/dist/src/services/harness-corpus-harvester.js +74 -0
  579. package/dist/src/services/harness-flywheel-generations.d.ts +115 -0
  580. package/dist/src/services/harness-flywheel-generations.js +360 -0
  581. package/dist/src/services/harness-flywheel-runtime.d.ts +25 -0
  582. package/dist/src/services/harness-flywheel-runtime.js +92 -0
  583. package/dist/src/services/harness-flywheel.d.ts +48 -0
  584. package/dist/src/services/harness-flywheel.js +207 -0
  585. package/dist/src/services/harness-frozen-eval.d.ts +22 -0
  586. package/dist/src/services/harness-frozen-eval.js +66 -0
  587. package/dist/src/services/harness-hosts.d.ts +40 -0
  588. package/dist/src/services/harness-hosts.js +88 -0
  589. package/dist/src/services/harness-improvement-ledger.d.ts +63 -0
  590. package/dist/src/services/harness-improvement-ledger.js +101 -0
  591. package/dist/src/services/harness-loop.d.ts +53 -0
  592. package/dist/src/services/harness-loop.js +85 -0
  593. package/dist/src/services/harness-qualification.d.ts +66 -0
  594. package/dist/src/services/harness-qualification.js +143 -0
  595. package/dist/src/services/harness-replay.d.ts +37 -0
  596. package/dist/src/services/harness-replay.js +92 -0
  597. package/dist/src/services/harness-verify.d.ts +33 -0
  598. package/dist/src/services/harness-verify.js +26 -0
  599. package/dist/src/services/harness-worker.d.ts +23 -0
  600. package/dist/src/services/harness-worker.js +66 -0
  601. package/dist/src/services/headless-worker-executor.d.ts +358 -0
  602. package/dist/src/services/headless-worker-executor.js +1269 -0
  603. package/dist/src/services/index.d.ts +13 -0
  604. package/dist/src/services/index.js +11 -0
  605. package/dist/src/services/memory-backup.d.ts +53 -0
  606. package/dist/src/services/memory-backup.js +198 -0
  607. package/dist/src/services/memory-distillation.d.ts +41 -0
  608. package/dist/src/services/memory-distillation.js +277 -0
  609. package/dist/src/services/native-training.d.ts +68 -0
  610. package/dist/src/services/native-training.js +141 -0
  611. package/dist/src/services/registry-api.d.ts +58 -0
  612. package/dist/src/services/registry-api.js +146 -0
  613. package/dist/src/services/repo-supervisor.d.ts +70 -0
  614. package/dist/src/services/repo-supervisor.js +228 -0
  615. package/dist/src/services/ruvector-training.d.ts +222 -0
  616. package/dist/src/services/ruvector-training.js +693 -0
  617. package/dist/src/services/swarm-memory-branches.d.ts +135 -0
  618. package/dist/src/services/swarm-memory-branches.js +213 -0
  619. package/dist/src/services/weight-eft.d.ts +305 -0
  620. package/dist/src/services/weight-eft.js +296 -0
  621. package/dist/src/services/worker-daemon.d.ts +439 -0
  622. package/dist/src/services/worker-daemon.js +1865 -0
  623. package/dist/src/services/worker-queue.d.ts +194 -0
  624. package/dist/src/services/worker-queue.js +513 -0
  625. package/dist/src/services/workspace-lease.d.ts +55 -0
  626. package/dist/src/services/workspace-lease.js +191 -0
  627. package/dist/src/suggest.d.ts +53 -0
  628. package/dist/src/suggest.js +200 -0
  629. package/dist/src/transfer/anonymization/index.d.ts +25 -0
  630. package/dist/src/transfer/anonymization/index.js +175 -0
  631. package/dist/src/transfer/deploy-seraphine.d.ts +13 -0
  632. package/dist/src/transfer/deploy-seraphine.js +205 -0
  633. package/dist/src/transfer/export.d.ts +25 -0
  634. package/dist/src/transfer/export.js +113 -0
  635. package/dist/src/transfer/index.d.ts +12 -0
  636. package/dist/src/transfer/index.js +31 -0
  637. package/dist/src/transfer/ipfs/client.d.ts +109 -0
  638. package/dist/src/transfer/ipfs/client.js +307 -0
  639. package/dist/src/transfer/ipfs/upload.d.ts +95 -0
  640. package/dist/src/transfer/ipfs/upload.js +413 -0
  641. package/dist/src/transfer/models/seraphine.d.ts +72 -0
  642. package/dist/src/transfer/models/seraphine.js +373 -0
  643. package/dist/src/transfer/serialization/cfp.d.ts +49 -0
  644. package/dist/src/transfer/serialization/cfp.js +183 -0
  645. package/dist/src/transfer/storage/gcs.d.ts +82 -0
  646. package/dist/src/transfer/storage/gcs.js +272 -0
  647. package/dist/src/transfer/storage/index.d.ts +6 -0
  648. package/dist/src/transfer/storage/index.js +6 -0
  649. package/dist/src/transfer/store/discovery.d.ts +84 -0
  650. package/dist/src/transfer/store/discovery.js +382 -0
  651. package/dist/src/transfer/store/download.d.ts +70 -0
  652. package/dist/src/transfer/store/download.js +334 -0
  653. package/dist/src/transfer/store/index.d.ts +84 -0
  654. package/dist/src/transfer/store/index.js +153 -0
  655. package/dist/src/transfer/store/publish.d.ts +76 -0
  656. package/dist/src/transfer/store/publish.js +294 -0
  657. package/dist/src/transfer/store/registry.d.ts +58 -0
  658. package/dist/src/transfer/store/registry.js +285 -0
  659. package/dist/src/transfer/store/search.d.ts +54 -0
  660. package/dist/src/transfer/store/search.js +232 -0
  661. package/dist/src/transfer/store/tests/standalone-test.d.ts +12 -0
  662. package/dist/src/transfer/store/tests/standalone-test.js +190 -0
  663. package/dist/src/transfer/store/types.d.ts +193 -0
  664. package/dist/src/transfer/store/types.js +6 -0
  665. package/dist/src/transfer/test-seraphine.d.ts +6 -0
  666. package/dist/src/transfer/test-seraphine.js +105 -0
  667. package/dist/src/transfer/tests/test-store.d.ts +7 -0
  668. package/dist/src/transfer/tests/test-store.js +214 -0
  669. package/dist/src/transfer/types.d.ts +245 -0
  670. package/dist/src/transfer/types.js +6 -0
  671. package/dist/src/types.d.ts +13 -0
  672. package/dist/src/types.js +13 -0
  673. package/dist/src/update/checker.d.ts +34 -0
  674. package/dist/src/update/checker.js +191 -0
  675. package/dist/src/update/executor.d.ts +33 -0
  676. package/dist/src/update/executor.js +217 -0
  677. package/dist/src/update/index.d.ts +33 -0
  678. package/dist/src/update/index.js +64 -0
  679. package/dist/src/update/rate-limiter.d.ts +20 -0
  680. package/dist/src/update/rate-limiter.js +96 -0
  681. package/dist/src/update/validator.d.ts +17 -0
  682. package/dist/src/update/validator.js +123 -0
  683. package/package.json +1 -1
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Pure JavaScript SemanticRouter implementation
3
+ *
4
+ * Provides intent routing using cosine similarity.
5
+ * This is a fallback implementation since @ruvector/router's native VectorDb has bugs.
6
+ *
7
+ * Performance: ~50,000 routes/sec with 100 intents (sufficient for agent routing)
8
+ */
9
+ export class SemanticRouter {
10
+ dimension;
11
+ metric;
12
+ intents = new Map();
13
+ totalVectors = 0;
14
+ constructor(config) {
15
+ if (!config || typeof config.dimension !== 'number') {
16
+ throw new Error('SemanticRouter requires a dimension in config');
17
+ }
18
+ this.dimension = config.dimension;
19
+ this.metric = config.metric ?? 'cosine';
20
+ }
21
+ /**
22
+ * Add an intent with pre-computed embeddings
23
+ */
24
+ addIntentWithEmbeddings(name, embeddings, metadata = {}) {
25
+ if (!name || !Array.isArray(embeddings)) {
26
+ throw new Error('Must provide name and embeddings array');
27
+ }
28
+ // Validate embeddings
29
+ for (const emb of embeddings) {
30
+ if (!(emb instanceof Float32Array) || emb.length !== this.dimension) {
31
+ throw new Error(`Embedding must be Float32Array of length ${this.dimension}`);
32
+ }
33
+ }
34
+ // Normalize embeddings for cosine similarity
35
+ const normalizedEmbeddings = embeddings.map(emb => this.normalize(emb));
36
+ this.intents.set(name, {
37
+ name,
38
+ embeddings: normalizedEmbeddings,
39
+ metadata,
40
+ });
41
+ this.totalVectors += embeddings.length;
42
+ }
43
+ /**
44
+ * Route a query using a pre-computed embedding
45
+ */
46
+ routeWithEmbedding(embedding, k = 5) {
47
+ if (!(embedding instanceof Float32Array) || embedding.length !== this.dimension) {
48
+ throw new Error(`Embedding must be Float32Array of length ${this.dimension}`);
49
+ }
50
+ const normalizedQuery = this.normalize(embedding);
51
+ const scores = [];
52
+ // Calculate best score for each intent
53
+ for (const [intentName, intent] of this.intents) {
54
+ let bestScore = -Infinity;
55
+ for (const storedEmb of intent.embeddings) {
56
+ const score = this.similarity(normalizedQuery, storedEmb);
57
+ if (score > bestScore) {
58
+ bestScore = score;
59
+ }
60
+ }
61
+ scores.push({
62
+ intent: intentName,
63
+ score: bestScore,
64
+ metadata: intent.metadata,
65
+ });
66
+ }
67
+ // Sort by score descending and take top k
68
+ return scores
69
+ .sort((a, b) => b.score - a.score)
70
+ .slice(0, k);
71
+ }
72
+ /**
73
+ * Remove an intent
74
+ */
75
+ removeIntent(name) {
76
+ const intent = this.intents.get(name);
77
+ if (!intent)
78
+ return false;
79
+ this.totalVectors -= intent.embeddings.length;
80
+ this.intents.delete(name);
81
+ return true;
82
+ }
83
+ /**
84
+ * Get all intent names
85
+ */
86
+ getIntents() {
87
+ return Array.from(this.intents.keys());
88
+ }
89
+ /**
90
+ * Get intent details
91
+ */
92
+ getIntent(name) {
93
+ const data = this.intents.get(name);
94
+ if (!data)
95
+ return null;
96
+ return {
97
+ name: data.name,
98
+ utterances: [], // We don't store utterances, only embeddings
99
+ metadata: data.metadata,
100
+ };
101
+ }
102
+ /**
103
+ * Clear all intents
104
+ */
105
+ clear() {
106
+ this.intents.clear();
107
+ this.totalVectors = 0;
108
+ }
109
+ /**
110
+ * Get total vector count
111
+ */
112
+ count() {
113
+ return this.totalVectors;
114
+ }
115
+ /**
116
+ * Get number of intents
117
+ */
118
+ intentCount() {
119
+ return this.intents.size;
120
+ }
121
+ /**
122
+ * Normalize a vector for cosine similarity
123
+ */
124
+ normalize(vec) {
125
+ let norm = 0;
126
+ for (let i = 0; i < vec.length; i++) {
127
+ norm += vec[i] * vec[i];
128
+ }
129
+ norm = Math.sqrt(norm);
130
+ if (norm === 0)
131
+ return vec;
132
+ const normalized = new Float32Array(vec.length);
133
+ for (let i = 0; i < vec.length; i++) {
134
+ normalized[i] = vec[i] / norm;
135
+ }
136
+ return normalized;
137
+ }
138
+ /**
139
+ * Calculate similarity between two normalized vectors
140
+ */
141
+ similarity(a, b) {
142
+ switch (this.metric) {
143
+ case 'cosine':
144
+ // For normalized vectors, cosine similarity = dot product
145
+ return this.dotProduct(a, b);
146
+ case 'dotProduct':
147
+ return this.dotProduct(a, b);
148
+ case 'euclidean':
149
+ // Convert Euclidean distance to similarity
150
+ return 1 / (1 + this.euclideanDistance(a, b));
151
+ default:
152
+ return this.dotProduct(a, b);
153
+ }
154
+ }
155
+ dotProduct(a, b) {
156
+ let sum = 0;
157
+ for (let i = 0; i < a.length; i++) {
158
+ sum += a[i] * b[i];
159
+ }
160
+ return sum;
161
+ }
162
+ euclideanDistance(a, b) {
163
+ let sum = 0;
164
+ for (let i = 0; i < a.length; i++) {
165
+ const diff = a[i] - b[i];
166
+ sum += diff * diff;
167
+ }
168
+ return Math.sqrt(sum);
169
+ }
170
+ }
171
+ /**
172
+ * Create a SemanticRouter with the given configuration
173
+ */
174
+ export function createSemanticRouter(config) {
175
+ return new SemanticRouter(config);
176
+ }
177
+ export default SemanticRouter;
178
+ //# sourceMappingURL=semantic-router.js.map
@@ -0,0 +1,56 @@
1
+ /**
2
+ * task-embedder.ts — Shared lazy task embedder + LRU cache (ADR-149 iter 9).
3
+ *
4
+ * The cost-optimal neural router (ADR-149) fires only when `route(task, embedding)`
5
+ * is called with a real embedding. Two call sites in the dispatcher chain need
6
+ * embeddings: `agent-tools.ts` (initial routing) and `agent-execute-core.ts`
7
+ * (the fallback chain on 429/5xx). Before this module they each loaded their
8
+ * own @xenova/transformers MiniLM pipeline and recomputed embeddings on every
9
+ * call — including for repeated prompts.
10
+ *
11
+ * This module:
12
+ * 1. Loads the pipeline once per process (`loadTaskEmbedder`).
13
+ * 2. Caches embeddings per task text via an LRU of configurable size
14
+ * (default 500 entries ≈ 1.5 MB at 384-dim).
15
+ * 3. Hashes by FNV-1a-32 + length to keep the key compact and collision-safe
16
+ * for typical prompt sizes.
17
+ * 4. Returns `undefined` on any failure so callers gracefully fall back to
18
+ * the heuristic+bandit path.
19
+ *
20
+ * @module task-embedder
21
+ */
22
+ /**
23
+ * Compute (or fetch from cache) the 384-dim MiniLM embedding for `task`.
24
+ * Returns `undefined` on any failure (missing @xenova/transformers, ONNX
25
+ * runtime error, etc.) so callers can gracefully fall back to the
26
+ * heuristic+bandit path. Best-effort and never throws.
27
+ *
28
+ * Cache hit-rate accumulates across the process lifetime and is observable
29
+ * via `embedderStats()` for diagnostics.
30
+ */
31
+ export declare function embedTaskWithCache(task: string): Promise<number[] | undefined>;
32
+ /**
33
+ * Batch counterpart to `embedTaskWithCache`. For each task, returns the
34
+ * cached embedding when present, else schedules a fresh inference. The
35
+ * fresh-inference set is computed in a SINGLE ONNX pass via
36
+ * @xenova/transformers' array-input mode, amortizing tensor setup +
37
+ * model-load overhead across the batch. Order of the output array
38
+ * matches the input order.
39
+ *
40
+ * Returns `undefined` for any task that failed to embed (missing dep,
41
+ * runtime error). Cache state updates as if each task had been called
42
+ * separately through embedTaskWithCache (hits/misses counters update
43
+ * accordingly).
44
+ */
45
+ export declare function embedTaskWithCacheBatch(tasks: string[]): Promise<Array<number[] | undefined>>;
46
+ /** Diagnostic surface — hit/miss counters + cache state. */
47
+ export declare function embedderStats(): {
48
+ size: number;
49
+ maxSize: number;
50
+ hits: number;
51
+ misses: number;
52
+ hitRate: number;
53
+ };
54
+ /** Test seam — clear LRU + counters so tests get a fresh baseline. */
55
+ export declare function __resetTaskEmbedderForTests(): void;
56
+ //# sourceMappingURL=task-embedder.d.ts.map
@@ -0,0 +1,237 @@
1
+ /**
2
+ * task-embedder.ts — Shared lazy task embedder + LRU cache (ADR-149 iter 9).
3
+ *
4
+ * The cost-optimal neural router (ADR-149) fires only when `route(task, embedding)`
5
+ * is called with a real embedding. Two call sites in the dispatcher chain need
6
+ * embeddings: `agent-tools.ts` (initial routing) and `agent-execute-core.ts`
7
+ * (the fallback chain on 429/5xx). Before this module they each loaded their
8
+ * own @xenova/transformers MiniLM pipeline and recomputed embeddings on every
9
+ * call — including for repeated prompts.
10
+ *
11
+ * This module:
12
+ * 1. Loads the pipeline once per process (`loadTaskEmbedder`).
13
+ * 2. Caches embeddings per task text via an LRU of configurable size
14
+ * (default 500 entries ≈ 1.5 MB at 384-dim).
15
+ * 3. Hashes by FNV-1a-32 + length to keep the key compact and collision-safe
16
+ * for typical prompt sizes.
17
+ * 4. Returns `undefined` on any failure so callers gracefully fall back to
18
+ * the heuristic+bandit path.
19
+ *
20
+ * @module task-embedder
21
+ */
22
+ // ============================================================================
23
+ // FNV-1a-32 hash (matches scripts/gen-seed-corpus.mjs + router-trajectory.ts)
24
+ // ============================================================================
25
+ function fnv1a32(s) {
26
+ let h = 0x811c9dc5 >>> 0;
27
+ for (let i = 0; i < s.length; i++) {
28
+ h ^= s.charCodeAt(i);
29
+ h = (h + ((h << 1) + (h << 4) + (h << 7) + (h << 8) + (h << 24))) >>> 0;
30
+ }
31
+ return h.toString(16).padStart(8, '0');
32
+ }
33
+ /** Compact cache key — hash + length so distinct prompts of similar shape collide rarely. */
34
+ function cacheKey(task) {
35
+ return `${fnv1a32(task)}:${task.length}`;
36
+ }
37
+ // Single shared extractor. Both single-text and array-input modes call this
38
+ // same function (xenova's pipeline returns a callable that accepts either),
39
+ // so we don't pay the ONNX model-load cost twice.
40
+ let _extractorPromise = null;
41
+ function loadExtractor() {
42
+ if (_extractorPromise !== null)
43
+ return _extractorPromise;
44
+ _extractorPromise = (async () => {
45
+ try {
46
+ const specifier = '@xenova/transformers';
47
+ const mod = await import(/* @vite-ignore */ specifier).catch(() => null);
48
+ if (!mod || typeof mod.pipeline !== 'function')
49
+ return null;
50
+ return await mod.pipeline('feature-extraction', 'Xenova/all-MiniLM-L6-v2', { quantized: true });
51
+ }
52
+ catch {
53
+ return null;
54
+ }
55
+ })();
56
+ return _extractorPromise;
57
+ }
58
+ async function loadEmbedder() {
59
+ const ex = await loadExtractor();
60
+ if (!ex)
61
+ return null;
62
+ return async (text) => {
63
+ const out = await ex(text, { pooling: 'mean', normalize: true });
64
+ return Array.from(out.data);
65
+ };
66
+ }
67
+ /**
68
+ * Array-input batch embedder — xenova's pipeline accepts `string[]` and
69
+ * returns a stacked tensor of shape `[N, dim]`. Shares the same loaded
70
+ * pipeline with `loadEmbedder` so cold-load cost is paid once across
71
+ * single + batch usage. Measured speedup: ~1.83× on 30-task batches
72
+ * against the same-pipeline single-call loop.
73
+ */
74
+ async function loadEmbedderBatch() {
75
+ const ex = await loadExtractor();
76
+ if (!ex)
77
+ return null;
78
+ return async (texts) => {
79
+ const out = await ex(texts, { pooling: 'mean', normalize: true });
80
+ const dims = out.dims ?? [texts.length, 384];
81
+ const N = dims[0] ?? texts.length;
82
+ const dim = dims[1] ?? Math.floor(out.data.length / N);
83
+ const data = out.data;
84
+ const result = new Array(N);
85
+ for (let i = 0; i < N; i++) {
86
+ result[i] = Array.from(data.subarray(i * dim, (i + 1) * dim));
87
+ }
88
+ return result;
89
+ };
90
+ }
91
+ // ============================================================================
92
+ // LRU cache — Map preserves insertion order, so delete+set on hit = O(1) LRU
93
+ // ============================================================================
94
+ const MAX_SIZE = (() => {
95
+ const v = parseInt(process.env.CLAUDE_FLOW_ROUTER_EMBED_CACHE_SIZE ?? '500', 10);
96
+ return Number.isFinite(v) && v >= 0 ? v : 500;
97
+ })();
98
+ const _cache = new Map();
99
+ let _hits = 0;
100
+ let _misses = 0;
101
+ function lruGet(key) {
102
+ const hit = _cache.get(key);
103
+ if (hit === undefined)
104
+ return undefined;
105
+ // Refresh recency: re-insert at the end.
106
+ _cache.delete(key);
107
+ _cache.set(key, hit);
108
+ return hit;
109
+ }
110
+ function lruSet(key, value) {
111
+ if (MAX_SIZE === 0)
112
+ return;
113
+ if (_cache.has(key))
114
+ _cache.delete(key);
115
+ _cache.set(key, value);
116
+ while (_cache.size > MAX_SIZE) {
117
+ const oldest = _cache.keys().next().value;
118
+ if (oldest === undefined)
119
+ break;
120
+ _cache.delete(oldest);
121
+ }
122
+ }
123
+ // ============================================================================
124
+ // Public API
125
+ // ============================================================================
126
+ /**
127
+ * Compute (or fetch from cache) the 384-dim MiniLM embedding for `task`.
128
+ * Returns `undefined` on any failure (missing @xenova/transformers, ONNX
129
+ * runtime error, etc.) so callers can gracefully fall back to the
130
+ * heuristic+bandit path. Best-effort and never throws.
131
+ *
132
+ * Cache hit-rate accumulates across the process lifetime and is observable
133
+ * via `embedderStats()` for diagnostics.
134
+ */
135
+ export async function embedTaskWithCache(task) {
136
+ if (typeof task !== 'string' || task.length === 0)
137
+ return undefined;
138
+ const key = cacheKey(task);
139
+ const cached = lruGet(key);
140
+ if (cached !== undefined) {
141
+ _hits++;
142
+ return cached;
143
+ }
144
+ try {
145
+ const embed = await loadEmbedder();
146
+ if (!embed)
147
+ return undefined;
148
+ const v = await embed(task);
149
+ lruSet(key, v);
150
+ _misses++;
151
+ return v;
152
+ }
153
+ catch {
154
+ return undefined;
155
+ }
156
+ }
157
+ /**
158
+ * Batch counterpart to `embedTaskWithCache`. For each task, returns the
159
+ * cached embedding when present, else schedules a fresh inference. The
160
+ * fresh-inference set is computed in a SINGLE ONNX pass via
161
+ * @xenova/transformers' array-input mode, amortizing tensor setup +
162
+ * model-load overhead across the batch. Order of the output array
163
+ * matches the input order.
164
+ *
165
+ * Returns `undefined` for any task that failed to embed (missing dep,
166
+ * runtime error). Cache state updates as if each task had been called
167
+ * separately through embedTaskWithCache (hits/misses counters update
168
+ * accordingly).
169
+ */
170
+ export async function embedTaskWithCacheBatch(tasks) {
171
+ const out = new Array(tasks.length).fill(undefined);
172
+ // Validate + split into (cached-hits) and (missing-needs-inference).
173
+ const missingIdx = [];
174
+ const missingTasks = [];
175
+ const missingKeys = [];
176
+ for (let i = 0; i < tasks.length; i++) {
177
+ const t = tasks[i];
178
+ if (typeof t !== 'string' || t.length === 0)
179
+ continue;
180
+ const key = cacheKey(t);
181
+ const hit = lruGet(key);
182
+ if (hit !== undefined) {
183
+ _hits++;
184
+ out[i] = hit;
185
+ }
186
+ else {
187
+ missingIdx.push(i);
188
+ missingTasks.push(t);
189
+ missingKeys.push(key);
190
+ }
191
+ }
192
+ if (missingTasks.length === 0)
193
+ return out;
194
+ try {
195
+ const embedBatch = await loadEmbedderBatch();
196
+ if (!embedBatch) {
197
+ for (let j = 0; j < missingIdx.length; j++)
198
+ _misses++;
199
+ return out;
200
+ }
201
+ // Real array-input batch: xenova returns one stacked tensor we slice
202
+ // back into N embeddings. Amortizes tensor setup + ONNX overhead
203
+ // across the batch (measured 1.83× speedup at N=30).
204
+ const fresh = await embedBatch(missingTasks);
205
+ for (let j = 0; j < missingIdx.length; j++) {
206
+ const v = fresh[j];
207
+ if (v) {
208
+ lruSet(missingKeys[j], v);
209
+ out[missingIdx[j]] = v;
210
+ }
211
+ _misses++;
212
+ }
213
+ }
214
+ catch {
215
+ // best-effort — leave undefined entries as is
216
+ }
217
+ return out;
218
+ }
219
+ /** Diagnostic surface — hit/miss counters + cache state. */
220
+ export function embedderStats() {
221
+ const total = _hits + _misses;
222
+ return {
223
+ size: _cache.size,
224
+ maxSize: MAX_SIZE,
225
+ hits: _hits,
226
+ misses: _misses,
227
+ hitRate: total > 0 ? _hits / total : 0,
228
+ };
229
+ }
230
+ /** Test seam — clear LRU + counters so tests get a fresh baseline. */
231
+ export function __resetTaskEmbedderForTests() {
232
+ _cache.clear();
233
+ _hits = 0;
234
+ _misses = 0;
235
+ _extractorPromise = null;
236
+ }
237
+ //# sourceMappingURL=task-embedder.js.map
@@ -0,0 +1,113 @@
1
+ /**
2
+ * trajectory-tree.ts — Execution-state-tree retrieval PROTOTYPE (MAGE-style).
3
+ *
4
+ * Research basis: MAGE (arXiv 2606.06090) observes that semantic-similarity
5
+ * retrieval fragments decision trajectories on long-horizon tasks; retrieving
6
+ * by POSITION in a hierarchical execution-state tree (the root→current path)
7
+ * preserves coherence. This module mirrors ruflo's existing trajectory
8
+ * recording (hooks_intelligence_trajectory-start/step/end) into such a tree
9
+ * and offers position-based recall — NO embedding search anywhere.
10
+ *
11
+ * Structure:
12
+ * session root ─ trajectory ─ step
13
+ * └ trajectory (nested: a start while another is open
14
+ * opens UNDER the open one) ─ step …
15
+ *
16
+ * - `trajectory-start` opens a node under the deepest open trajectory of the
17
+ * session (or the session root).
18
+ * - `trajectory-step` appends a step child; the step becomes the "current"
19
+ * position of the session.
20
+ * - `trajectory-end` closes the node; current returns to its parent.
21
+ * - `recallPath({sessionId, depth})` returns the root→current path (the
22
+ * MAGE-style working context) plus the most recent siblings of the current
23
+ * node.
24
+ *
25
+ * PROTOTYPE LIMITATIONS (deliberate — see the feature spec):
26
+ * - Persistence is a single best-effort JSON snapshot at
27
+ * `.claude-flow/intelligence/trajectory-tree.json`, written on every
28
+ * mutation. It sits ALONGSIDE the existing 'trajectories' memory-namespace
29
+ * persistence; nothing is migrated and the semantic path is untouched.
30
+ * - No concurrency control: two MCP server processes sharing a cwd will
31
+ * last-writer-win the snapshot.
32
+ * - No pruning/compaction: long-lived sessions grow the file unboundedly
33
+ * (labels are truncated to 200 chars to bound row size, not row count).
34
+ * - sessionId defaults to CLAUDE_FLOW_SESSION_ID or 'default'; hosts that
35
+ * never set it collapse into one tree.
36
+ * - Retrieval is position-only by design; hybrid position+semantic ranking
37
+ * is future work.
38
+ *
39
+ * @module ruvector/trajectory-tree
40
+ */
41
+ export type TreeNodeKind = 'session' | 'trajectory' | 'step';
42
+ export interface TreeNode {
43
+ id: string;
44
+ kind: TreeNodeKind;
45
+ /** Task text (trajectory), action text (step), or session id — ≤200 chars. */
46
+ label: string;
47
+ parentId: string | null;
48
+ childIds: string[];
49
+ status: 'open' | 'closed';
50
+ openedAt: string;
51
+ closedAt?: string;
52
+ meta?: Record<string, unknown>;
53
+ }
54
+ export interface RecallResult {
55
+ sessionId: string;
56
+ /** Root→current node path (the MAGE-style working context). */
57
+ path: TreeNode[];
58
+ /** Most recent siblings of the current node (excluding it), oldest→newest. */
59
+ siblings: TreeNode[];
60
+ /** Id of the current node (deepest position in the session). */
61
+ currentId: string | null;
62
+ strategy: 'state-tree';
63
+ }
64
+ export declare class TrajectoryTree {
65
+ private nodes;
66
+ /** sessionId → id of the deepest "current" node (step or open trajectory). */
67
+ private currentBySession;
68
+ /** trajectoryId → sessionId, so step/end calls can omit the session. */
69
+ private trajectorySession;
70
+ private readonly persistPath;
71
+ constructor(persistPath?: string);
72
+ private sessionRootId;
73
+ private ensureSession;
74
+ /** Deepest OPEN trajectory node on the current path of a session, if any. */
75
+ private deepestOpenTrajectory;
76
+ openTrajectory(args: {
77
+ sessionId: string;
78
+ trajectoryId: string;
79
+ task: string;
80
+ agent?: string;
81
+ }): TreeNode;
82
+ appendStep(args: {
83
+ trajectoryId: string;
84
+ stepId: string;
85
+ action: string;
86
+ quality?: number;
87
+ }): TreeNode | null;
88
+ closeTrajectory(args: {
89
+ trajectoryId: string;
90
+ success?: boolean;
91
+ }): TreeNode | null;
92
+ /**
93
+ * MAGE-style positional recall: the exact root→current path for a session,
94
+ * plus the most recent siblings of the current node for local context.
95
+ *
96
+ * @param depth Max number of path nodes returned, counted from the CURRENT
97
+ * node upward (deepest levels win). Default: full path.
98
+ * @param siblingWindow Max recent siblings of the current node. Default 3.
99
+ */
100
+ recallPath(args: {
101
+ sessionId: string;
102
+ depth?: number;
103
+ siblingWindow?: number;
104
+ }): RecallResult;
105
+ get size(): number;
106
+ private load;
107
+ private save;
108
+ }
109
+ export declare function getTrajectoryTree(persistPath?: string): TrajectoryTree;
110
+ /** Test/reset hook — drops the singleton so the next get() reloads from disk. */
111
+ export declare function resetTrajectoryTree(): void;
112
+ export default TrajectoryTree;
113
+ //# sourceMappingURL=trajectory-tree.d.ts.map