@sparkleideas/cli 3.1.0-alpha.19 → 3.1.0-alpha.21

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 (682) hide show
  1. package/dist/src/appliance/gguf-engine.d.ts +91 -0
  2. package/dist/src/appliance/gguf-engine.d.ts.map +1 -0
  3. package/dist/src/appliance/gguf-engine.js +425 -0
  4. package/dist/src/appliance/gguf-engine.js.map +1 -0
  5. package/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
  6. package/dist/src/appliance/ruvllm-bridge.d.ts.map +1 -0
  7. package/dist/src/appliance/ruvllm-bridge.js +292 -0
  8. package/dist/src/appliance/ruvllm-bridge.js.map +1 -0
  9. package/dist/src/appliance/rvfa-builder.d.ts +44 -0
  10. package/dist/src/appliance/rvfa-builder.d.ts.map +1 -0
  11. package/dist/src/appliance/rvfa-builder.js +329 -0
  12. package/dist/src/appliance/rvfa-builder.js.map +1 -0
  13. package/dist/src/appliance/rvfa-distribution.d.ts +97 -0
  14. package/dist/src/appliance/rvfa-distribution.d.ts.map +1 -0
  15. package/dist/src/appliance/rvfa-distribution.js +370 -0
  16. package/dist/src/appliance/rvfa-distribution.js.map +1 -0
  17. package/dist/src/appliance/rvfa-format.d.ts +111 -0
  18. package/dist/src/appliance/rvfa-format.d.ts.map +1 -0
  19. package/dist/src/appliance/rvfa-format.js +393 -0
  20. package/dist/src/appliance/rvfa-format.js.map +1 -0
  21. package/dist/src/appliance/rvfa-runner.d.ts +69 -0
  22. package/dist/src/appliance/rvfa-runner.d.ts.map +1 -0
  23. package/dist/src/appliance/rvfa-runner.js +237 -0
  24. package/dist/src/appliance/rvfa-runner.js.map +1 -0
  25. package/dist/src/appliance/rvfa-signing.d.ts +123 -0
  26. package/dist/src/appliance/rvfa-signing.d.ts.map +1 -0
  27. package/dist/src/appliance/rvfa-signing.js +347 -0
  28. package/dist/src/appliance/rvfa-signing.js.map +1 -0
  29. package/dist/src/benchmarks/pretrain/index.d.ts +58 -0
  30. package/dist/src/benchmarks/pretrain/index.d.ts.map +1 -0
  31. package/dist/src/benchmarks/pretrain/index.js +404 -0
  32. package/dist/src/benchmarks/pretrain/index.js.map +1 -0
  33. package/dist/src/commands/agent.d.ts +8 -0
  34. package/dist/src/commands/agent.d.ts.map +1 -0
  35. package/dist/src/commands/agent.js +819 -0
  36. package/dist/src/commands/agent.js.map +1 -0
  37. package/dist/src/commands/analyze.d.ts +19 -0
  38. package/dist/src/commands/analyze.d.ts.map +1 -0
  39. package/dist/src/commands/analyze.js +1823 -0
  40. package/dist/src/commands/analyze.js.map +1 -0
  41. package/dist/src/commands/appliance-advanced.d.ts +9 -0
  42. package/dist/src/commands/appliance-advanced.d.ts.map +1 -0
  43. package/dist/src/commands/appliance-advanced.js +215 -0
  44. package/dist/src/commands/appliance-advanced.js.map +1 -0
  45. package/dist/src/commands/appliance.d.ts +8 -0
  46. package/dist/src/commands/appliance.d.ts.map +1 -0
  47. package/dist/src/commands/appliance.js +406 -0
  48. package/dist/src/commands/appliance.js.map +1 -0
  49. package/dist/src/commands/benchmark.d.ts +10 -0
  50. package/dist/src/commands/benchmark.d.ts.map +1 -0
  51. package/dist/src/commands/benchmark.js +459 -0
  52. package/dist/src/commands/benchmark.js.map +1 -0
  53. package/dist/src/commands/categories.d.ts +75 -0
  54. package/dist/src/commands/categories.d.ts.map +1 -0
  55. package/dist/src/commands/categories.js +178 -0
  56. package/dist/src/commands/categories.js.map +1 -0
  57. package/dist/src/commands/claims.d.ts +10 -0
  58. package/dist/src/commands/claims.d.ts.map +1 -0
  59. package/dist/src/commands/claims.js +373 -0
  60. package/dist/src/commands/claims.js.map +1 -0
  61. package/dist/src/commands/completions.d.ts +10 -0
  62. package/dist/src/commands/completions.d.ts.map +1 -0
  63. package/dist/src/commands/completions.js +539 -0
  64. package/dist/src/commands/completions.js.map +1 -0
  65. package/dist/src/commands/config.d.ts +8 -0
  66. package/dist/src/commands/config.d.ts.map +1 -0
  67. package/dist/src/commands/config.js +406 -0
  68. package/dist/src/commands/config.js.map +1 -0
  69. package/dist/src/commands/daemon.d.ts +8 -0
  70. package/dist/src/commands/daemon.d.ts.map +1 -0
  71. package/dist/src/commands/daemon.js +609 -0
  72. package/dist/src/commands/daemon.js.map +1 -0
  73. package/dist/src/commands/deployment.d.ts +10 -0
  74. package/dist/src/commands/deployment.d.ts.map +1 -0
  75. package/dist/src/commands/deployment.js +289 -0
  76. package/dist/src/commands/deployment.js.map +1 -0
  77. package/dist/src/commands/doctor.d.ts +10 -0
  78. package/dist/src/commands/doctor.d.ts.map +1 -0
  79. package/dist/src/commands/doctor.js +602 -0
  80. package/dist/src/commands/doctor.js.map +1 -0
  81. package/dist/src/commands/embeddings.d.ts +18 -0
  82. package/dist/src/commands/embeddings.d.ts.map +1 -0
  83. package/dist/src/commands/embeddings.js +1576 -0
  84. package/dist/src/commands/embeddings.js.map +1 -0
  85. package/dist/src/commands/guidance.d.ts +8 -0
  86. package/dist/src/commands/guidance.d.ts.map +1 -0
  87. package/dist/src/commands/guidance.js +560 -0
  88. package/dist/src/commands/guidance.js.map +1 -0
  89. package/dist/src/commands/hive-mind.d.ts +11 -0
  90. package/dist/src/commands/hive-mind.d.ts.map +1 -0
  91. package/dist/src/commands/hive-mind.js +1230 -0
  92. package/dist/src/commands/hive-mind.js.map +1 -0
  93. package/dist/src/commands/hooks.d.ts +8 -0
  94. package/dist/src/commands/hooks.d.ts.map +1 -0
  95. package/dist/src/commands/hooks.js +3759 -0
  96. package/dist/src/commands/hooks.js.map +1 -0
  97. package/dist/src/commands/index.d.ts +113 -0
  98. package/dist/src/commands/index.d.ts.map +1 -0
  99. package/dist/src/commands/index.js +368 -0
  100. package/dist/src/commands/index.js.map +1 -0
  101. package/dist/src/commands/init.d.ts +8 -0
  102. package/dist/src/commands/init.d.ts.map +1 -0
  103. package/dist/src/commands/init.js +965 -0
  104. package/dist/src/commands/init.js.map +1 -0
  105. package/dist/src/commands/issues.d.ts +21 -0
  106. package/dist/src/commands/issues.d.ts.map +1 -0
  107. package/dist/src/commands/issues.js +567 -0
  108. package/dist/src/commands/issues.js.map +1 -0
  109. package/dist/src/commands/mcp.d.ts +11 -0
  110. package/dist/src/commands/mcp.d.ts.map +1 -0
  111. package/dist/src/commands/mcp.js +715 -0
  112. package/dist/src/commands/mcp.js.map +1 -0
  113. package/dist/src/commands/memory.d.ts +8 -0
  114. package/dist/src/commands/memory.d.ts.map +1 -0
  115. package/dist/src/commands/memory.js +1292 -0
  116. package/dist/src/commands/memory.js.map +1 -0
  117. package/dist/src/commands/migrate.d.ts +8 -0
  118. package/dist/src/commands/migrate.d.ts.map +1 -0
  119. package/dist/src/commands/migrate.js +410 -0
  120. package/dist/src/commands/migrate.js.map +1 -0
  121. package/dist/src/commands/neural.d.ts +10 -0
  122. package/dist/src/commands/neural.d.ts.map +1 -0
  123. package/dist/src/commands/neural.js +1448 -0
  124. package/dist/src/commands/neural.js.map +1 -0
  125. package/dist/src/commands/performance.d.ts +10 -0
  126. package/dist/src/commands/performance.d.ts.map +1 -0
  127. package/dist/src/commands/performance.js +579 -0
  128. package/dist/src/commands/performance.js.map +1 -0
  129. package/dist/src/commands/plugins.d.ts +11 -0
  130. package/dist/src/commands/plugins.d.ts.map +1 -0
  131. package/dist/src/commands/plugins.js +820 -0
  132. package/dist/src/commands/plugins.js.map +1 -0
  133. package/dist/src/commands/process.d.ts +10 -0
  134. package/dist/src/commands/process.d.ts.map +1 -0
  135. package/dist/src/commands/process.js +641 -0
  136. package/dist/src/commands/process.js.map +1 -0
  137. package/dist/src/commands/progress.d.ts +11 -0
  138. package/dist/src/commands/progress.d.ts.map +1 -0
  139. package/dist/src/commands/progress.js +259 -0
  140. package/dist/src/commands/progress.js.map +1 -0
  141. package/dist/src/commands/providers.d.ts +10 -0
  142. package/dist/src/commands/providers.d.ts.map +1 -0
  143. package/dist/src/commands/providers.js +232 -0
  144. package/dist/src/commands/providers.js.map +1 -0
  145. package/dist/src/commands/route.d.ts +16 -0
  146. package/dist/src/commands/route.d.ts.map +1 -0
  147. package/dist/src/commands/route.js +813 -0
  148. package/dist/src/commands/route.js.map +1 -0
  149. package/dist/src/commands/ruvector/backup.d.ts +11 -0
  150. package/dist/src/commands/ruvector/backup.d.ts.map +1 -0
  151. package/dist/src/commands/ruvector/backup.js +746 -0
  152. package/dist/src/commands/ruvector/backup.js.map +1 -0
  153. package/dist/src/commands/ruvector/benchmark.d.ts +11 -0
  154. package/dist/src/commands/ruvector/benchmark.d.ts.map +1 -0
  155. package/dist/src/commands/ruvector/benchmark.js +480 -0
  156. package/dist/src/commands/ruvector/benchmark.js.map +1 -0
  157. package/dist/src/commands/ruvector/import.d.ts +18 -0
  158. package/dist/src/commands/ruvector/import.d.ts.map +1 -0
  159. package/dist/src/commands/ruvector/import.js +349 -0
  160. package/dist/src/commands/ruvector/import.js.map +1 -0
  161. package/dist/src/commands/ruvector/index.d.ts +29 -0
  162. package/dist/src/commands/ruvector/index.d.ts.map +1 -0
  163. package/dist/src/commands/ruvector/index.js +129 -0
  164. package/dist/src/commands/ruvector/index.js.map +1 -0
  165. package/dist/src/commands/ruvector/init.d.ts +11 -0
  166. package/dist/src/commands/ruvector/init.d.ts.map +1 -0
  167. package/dist/src/commands/ruvector/init.js +431 -0
  168. package/dist/src/commands/ruvector/init.js.map +1 -0
  169. package/dist/src/commands/ruvector/migrate.d.ts +11 -0
  170. package/dist/src/commands/ruvector/migrate.d.ts.map +1 -0
  171. package/dist/src/commands/ruvector/migrate.js +481 -0
  172. package/dist/src/commands/ruvector/migrate.js.map +1 -0
  173. package/dist/src/commands/ruvector/optimize.d.ts +11 -0
  174. package/dist/src/commands/ruvector/optimize.d.ts.map +1 -0
  175. package/dist/src/commands/ruvector/optimize.js +503 -0
  176. package/dist/src/commands/ruvector/optimize.js.map +1 -0
  177. package/dist/src/commands/ruvector/setup.d.ts +18 -0
  178. package/dist/src/commands/ruvector/setup.d.ts.map +1 -0
  179. package/dist/src/commands/ruvector/setup.js +765 -0
  180. package/dist/src/commands/ruvector/setup.js.map +1 -0
  181. package/dist/src/commands/ruvector/status.d.ts +11 -0
  182. package/dist/src/commands/ruvector/status.d.ts.map +1 -0
  183. package/dist/src/commands/ruvector/status.js +456 -0
  184. package/dist/src/commands/ruvector/status.js.map +1 -0
  185. package/dist/src/commands/security.d.ts +10 -0
  186. package/dist/src/commands/security.d.ts.map +1 -0
  187. package/dist/src/commands/security.js +575 -0
  188. package/dist/src/commands/security.js.map +1 -0
  189. package/dist/src/commands/session.d.ts +8 -0
  190. package/dist/src/commands/session.d.ts.map +1 -0
  191. package/dist/src/commands/session.js +750 -0
  192. package/dist/src/commands/session.js.map +1 -0
  193. package/dist/src/commands/start.d.ts +8 -0
  194. package/dist/src/commands/start.d.ts.map +1 -0
  195. package/dist/src/commands/start.js +418 -0
  196. package/dist/src/commands/start.js.map +1 -0
  197. package/dist/src/commands/status.d.ts +8 -0
  198. package/dist/src/commands/status.d.ts.map +1 -0
  199. package/dist/src/commands/status.js +591 -0
  200. package/dist/src/commands/status.js.map +1 -0
  201. package/dist/src/commands/swarm.d.ts +8 -0
  202. package/dist/src/commands/swarm.d.ts.map +1 -0
  203. package/dist/src/commands/swarm.js +748 -0
  204. package/dist/src/commands/swarm.js.map +1 -0
  205. package/dist/src/commands/task.d.ts +8 -0
  206. package/dist/src/commands/task.d.ts.map +1 -0
  207. package/dist/src/commands/task.js +671 -0
  208. package/dist/src/commands/task.js.map +1 -0
  209. package/dist/src/commands/transfer-store.d.ts +13 -0
  210. package/dist/src/commands/transfer-store.d.ts.map +1 -0
  211. package/dist/src/commands/transfer-store.js +428 -0
  212. package/dist/src/commands/transfer-store.js.map +1 -0
  213. package/dist/src/commands/update.d.ts +8 -0
  214. package/dist/src/commands/update.d.ts.map +1 -0
  215. package/dist/src/commands/update.js +276 -0
  216. package/dist/src/commands/update.js.map +1 -0
  217. package/dist/src/commands/workflow.d.ts +8 -0
  218. package/dist/src/commands/workflow.d.ts.map +1 -0
  219. package/dist/src/commands/workflow.js +617 -0
  220. package/dist/src/commands/workflow.js.map +1 -0
  221. package/dist/src/config-adapter.d.ts +15 -0
  222. package/dist/src/config-adapter.d.ts.map +1 -0
  223. package/dist/src/config-adapter.js +186 -0
  224. package/dist/src/config-adapter.js.map +1 -0
  225. package/dist/src/index.d.ts +76 -0
  226. package/dist/src/index.d.ts.map +1 -0
  227. package/dist/src/index.js +470 -0
  228. package/dist/src/index.js.map +1 -0
  229. package/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
  230. package/dist/src/infrastructure/in-memory-repositories.d.ts.map +1 -0
  231. package/dist/src/infrastructure/in-memory-repositories.js +264 -0
  232. package/dist/src/infrastructure/in-memory-repositories.js.map +1 -0
  233. package/dist/src/init/claudemd-generator.d.ts +25 -0
  234. package/dist/src/init/claudemd-generator.d.ts.map +1 -0
  235. package/dist/src/init/claudemd-generator.js +486 -0
  236. package/dist/src/init/claudemd-generator.js.map +1 -0
  237. package/dist/src/init/executor.d.ts +41 -0
  238. package/dist/src/init/executor.d.ts.map +1 -0
  239. package/dist/src/init/executor.js +1741 -0
  240. package/dist/src/init/executor.js.map +1 -0
  241. package/dist/src/init/helpers-generator.d.ts +60 -0
  242. package/dist/src/init/helpers-generator.d.ts.map +1 -0
  243. package/dist/src/init/helpers-generator.js +1166 -0
  244. package/dist/src/init/helpers-generator.js.map +1 -0
  245. package/dist/src/init/index.d.ts +13 -0
  246. package/dist/src/init/index.d.ts.map +1 -0
  247. package/dist/src/init/index.js +15 -0
  248. package/dist/src/init/index.js.map +1 -0
  249. package/dist/src/init/mcp-generator.d.ts +26 -0
  250. package/dist/src/init/mcp-generator.d.ts.map +1 -0
  251. package/dist/src/init/mcp-generator.js +116 -0
  252. package/dist/src/init/mcp-generator.js.map +1 -0
  253. package/dist/src/init/settings-generator.d.ts +14 -0
  254. package/dist/src/init/settings-generator.d.ts.map +1 -0
  255. package/dist/src/init/settings-generator.js +399 -0
  256. package/dist/src/init/settings-generator.js.map +1 -0
  257. package/dist/src/init/statusline-generator.d.ts +28 -0
  258. package/dist/src/init/statusline-generator.d.ts.map +1 -0
  259. package/dist/src/init/statusline-generator.js +817 -0
  260. package/dist/src/init/statusline-generator.js.map +1 -0
  261. package/dist/src/init/types.d.ts +287 -0
  262. package/dist/src/init/types.d.ts.map +1 -0
  263. package/dist/src/init/types.js +259 -0
  264. package/dist/src/init/types.js.map +1 -0
  265. package/dist/src/mcp-client.d.ts +92 -0
  266. package/dist/src/mcp-client.d.ts.map +1 -0
  267. package/dist/src/mcp-client.js +237 -0
  268. package/dist/src/mcp-client.js.map +1 -0
  269. package/dist/src/mcp-server.d.ts +161 -0
  270. package/dist/src/mcp-server.d.ts.map +1 -0
  271. package/dist/src/mcp-server.js +627 -0
  272. package/dist/src/mcp-server.js.map +1 -0
  273. package/dist/src/mcp-tools/agent-tools.d.ts +9 -0
  274. package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -0
  275. package/dist/src/mcp-tools/agent-tools.js +549 -0
  276. package/dist/src/mcp-tools/agent-tools.js.map +1 -0
  277. package/dist/src/mcp-tools/agentdb-tools.d.ts +30 -0
  278. package/dist/src/mcp-tools/agentdb-tools.d.ts.map +1 -0
  279. package/dist/src/mcp-tools/agentdb-tools.js +557 -0
  280. package/dist/src/mcp-tools/agentdb-tools.js.map +1 -0
  281. package/dist/src/mcp-tools/analyze-tools.d.ts +38 -0
  282. package/dist/src/mcp-tools/analyze-tools.d.ts.map +1 -0
  283. package/dist/src/mcp-tools/analyze-tools.js +317 -0
  284. package/dist/src/mcp-tools/analyze-tools.js.map +1 -0
  285. package/dist/src/mcp-tools/auto-install.d.ts +83 -0
  286. package/dist/src/mcp-tools/auto-install.d.ts.map +1 -0
  287. package/dist/src/mcp-tools/auto-install.js +131 -0
  288. package/dist/src/mcp-tools/auto-install.js.map +1 -0
  289. package/dist/src/mcp-tools/browser-tools.d.ts +13 -0
  290. package/dist/src/mcp-tools/browser-tools.d.ts.map +1 -0
  291. package/dist/src/mcp-tools/browser-tools.js +550 -0
  292. package/dist/src/mcp-tools/browser-tools.js.map +1 -0
  293. package/dist/src/mcp-tools/claims-tools.d.ts +12 -0
  294. package/dist/src/mcp-tools/claims-tools.d.ts.map +1 -0
  295. package/dist/src/mcp-tools/claims-tools.js +732 -0
  296. package/dist/src/mcp-tools/claims-tools.js.map +1 -0
  297. package/dist/src/mcp-tools/config-tools.d.ts +8 -0
  298. package/dist/src/mcp-tools/config-tools.d.ts.map +1 -0
  299. package/dist/src/mcp-tools/config-tools.js +343 -0
  300. package/dist/src/mcp-tools/config-tools.js.map +1 -0
  301. package/dist/src/mcp-tools/coordination-tools.d.ts +13 -0
  302. package/dist/src/mcp-tools/coordination-tools.d.ts.map +1 -0
  303. package/dist/src/mcp-tools/coordination-tools.js +486 -0
  304. package/dist/src/mcp-tools/coordination-tools.js.map +1 -0
  305. package/dist/src/mcp-tools/daa-tools.d.ts +13 -0
  306. package/dist/src/mcp-tools/daa-tools.d.ts.map +1 -0
  307. package/dist/src/mcp-tools/daa-tools.js +426 -0
  308. package/dist/src/mcp-tools/daa-tools.js.map +1 -0
  309. package/dist/src/mcp-tools/embeddings-tools.d.ts +9 -0
  310. package/dist/src/mcp-tools/embeddings-tools.d.ts.map +1 -0
  311. package/dist/src/mcp-tools/embeddings-tools.js +782 -0
  312. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -0
  313. package/dist/src/mcp-tools/github-tools.d.ts +13 -0
  314. package/dist/src/mcp-tools/github-tools.d.ts.map +1 -0
  315. package/dist/src/mcp-tools/github-tools.js +373 -0
  316. package/dist/src/mcp-tools/github-tools.js.map +1 -0
  317. package/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -0
  318. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -0
  319. package/dist/src/mcp-tools/hive-mind-tools.js +583 -0
  320. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -0
  321. package/dist/src/mcp-tools/hooks-tools.d.ts +44 -0
  322. package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -0
  323. package/dist/src/mcp-tools/hooks-tools.js +2969 -0
  324. package/dist/src/mcp-tools/hooks-tools.js.map +1 -0
  325. package/dist/src/mcp-tools/index.d.ts +23 -0
  326. package/dist/src/mcp-tools/index.d.ts.map +1 -0
  327. package/dist/src/mcp-tools/index.js +22 -0
  328. package/dist/src/mcp-tools/index.js.map +1 -0
  329. package/dist/src/mcp-tools/memory-tools.d.ts +14 -0
  330. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -0
  331. package/dist/src/mcp-tools/memory-tools.js +499 -0
  332. package/dist/src/mcp-tools/memory-tools.js.map +1 -0
  333. package/dist/src/mcp-tools/neural-tools.d.ts +16 -0
  334. package/dist/src/mcp-tools/neural-tools.d.ts.map +1 -0
  335. package/dist/src/mcp-tools/neural-tools.js +461 -0
  336. package/dist/src/mcp-tools/neural-tools.js.map +1 -0
  337. package/dist/src/mcp-tools/performance-tools.d.ts +16 -0
  338. package/dist/src/mcp-tools/performance-tools.d.ts.map +1 -0
  339. package/dist/src/mcp-tools/performance-tools.js +534 -0
  340. package/dist/src/mcp-tools/performance-tools.js.map +1 -0
  341. package/dist/src/mcp-tools/progress-tools.d.ts +14 -0
  342. package/dist/src/mcp-tools/progress-tools.d.ts.map +1 -0
  343. package/dist/src/mcp-tools/progress-tools.js +348 -0
  344. package/dist/src/mcp-tools/progress-tools.js.map +1 -0
  345. package/dist/src/mcp-tools/security-tools.d.ts +18 -0
  346. package/dist/src/mcp-tools/security-tools.d.ts.map +1 -0
  347. package/dist/src/mcp-tools/security-tools.js +434 -0
  348. package/dist/src/mcp-tools/security-tools.js.map +1 -0
  349. package/dist/src/mcp-tools/session-tools.d.ts +8 -0
  350. package/dist/src/mcp-tools/session-tools.d.ts.map +1 -0
  351. package/dist/src/mcp-tools/session-tools.js +315 -0
  352. package/dist/src/mcp-tools/session-tools.js.map +1 -0
  353. package/dist/src/mcp-tools/swarm-tools.d.ts +8 -0
  354. package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -0
  355. package/dist/src/mcp-tools/swarm-tools.js +102 -0
  356. package/dist/src/mcp-tools/swarm-tools.js.map +1 -0
  357. package/dist/src/mcp-tools/system-tools.d.ts +13 -0
  358. package/dist/src/mcp-tools/system-tools.d.ts.map +1 -0
  359. package/dist/src/mcp-tools/system-tools.js +417 -0
  360. package/dist/src/mcp-tools/system-tools.js.map +1 -0
  361. package/dist/src/mcp-tools/task-tools.d.ts +8 -0
  362. package/dist/src/mcp-tools/task-tools.d.ts.map +1 -0
  363. package/dist/src/mcp-tools/task-tools.js +338 -0
  364. package/dist/src/mcp-tools/task-tools.js.map +1 -0
  365. package/dist/src/mcp-tools/terminal-tools.d.ts +13 -0
  366. package/dist/src/mcp-tools/terminal-tools.d.ts.map +1 -0
  367. package/dist/src/mcp-tools/terminal-tools.js +246 -0
  368. package/dist/src/mcp-tools/terminal-tools.js.map +1 -0
  369. package/dist/src/mcp-tools/transfer-tools.d.ts +14 -0
  370. package/dist/src/mcp-tools/transfer-tools.d.ts.map +1 -0
  371. package/dist/src/mcp-tools/transfer-tools.js +396 -0
  372. package/dist/src/mcp-tools/transfer-tools.js.map +1 -0
  373. package/dist/src/mcp-tools/types.d.ts +31 -0
  374. package/dist/src/mcp-tools/types.d.ts.map +1 -0
  375. package/dist/src/mcp-tools/types.js +7 -0
  376. package/dist/src/mcp-tools/types.js.map +1 -0
  377. package/dist/src/mcp-tools/workflow-tools.d.ts +8 -0
  378. package/dist/src/mcp-tools/workflow-tools.d.ts.map +1 -0
  379. package/dist/src/mcp-tools/workflow-tools.js +572 -0
  380. package/dist/src/mcp-tools/workflow-tools.js.map +1 -0
  381. package/dist/src/memory/ewc-consolidation.d.ts +271 -0
  382. package/dist/src/memory/ewc-consolidation.d.ts.map +1 -0
  383. package/dist/src/memory/ewc-consolidation.js +542 -0
  384. package/dist/src/memory/ewc-consolidation.js.map +1 -0
  385. package/dist/src/memory/intelligence.d.ts +285 -0
  386. package/dist/src/memory/intelligence.d.ts.map +1 -0
  387. package/dist/src/memory/intelligence.js +794 -0
  388. package/dist/src/memory/intelligence.js.map +1 -0
  389. package/dist/src/memory/memory-bridge.d.ts +407 -0
  390. package/dist/src/memory/memory-bridge.d.ts.map +1 -0
  391. package/dist/src/memory/memory-bridge.js +1494 -0
  392. package/dist/src/memory/memory-bridge.js.map +1 -0
  393. package/dist/src/memory/memory-initializer.d.ts +405 -0
  394. package/dist/src/memory/memory-initializer.d.ts.map +1 -0
  395. package/dist/src/memory/memory-initializer.js +2105 -0
  396. package/dist/src/memory/memory-initializer.js.map +1 -0
  397. package/dist/src/memory/sona-optimizer.d.ts +227 -0
  398. package/dist/src/memory/sona-optimizer.d.ts.map +1 -0
  399. package/dist/src/memory/sona-optimizer.js +633 -0
  400. package/dist/src/memory/sona-optimizer.js.map +1 -0
  401. package/dist/src/output.d.ts +133 -0
  402. package/dist/src/output.d.ts.map +1 -0
  403. package/dist/src/output.js +514 -0
  404. package/dist/src/output.js.map +1 -0
  405. package/dist/src/parser.d.ts +41 -0
  406. package/dist/src/parser.d.ts.map +1 -0
  407. package/dist/src/parser.js +377 -0
  408. package/dist/src/parser.js.map +1 -0
  409. package/dist/src/plugins/manager.d.ts +133 -0
  410. package/dist/src/plugins/manager.d.ts.map +1 -0
  411. package/dist/src/plugins/manager.js +400 -0
  412. package/dist/src/plugins/manager.js.map +1 -0
  413. package/dist/src/plugins/store/discovery.d.ts +88 -0
  414. package/dist/src/plugins/store/discovery.d.ts.map +1 -0
  415. package/dist/src/plugins/store/discovery.js +1147 -0
  416. package/dist/src/plugins/store/discovery.js.map +1 -0
  417. package/dist/src/plugins/store/index.d.ts +76 -0
  418. package/dist/src/plugins/store/index.d.ts.map +1 -0
  419. package/dist/src/plugins/store/index.js +141 -0
  420. package/dist/src/plugins/store/index.js.map +1 -0
  421. package/dist/src/plugins/store/search.d.ts +46 -0
  422. package/dist/src/plugins/store/search.d.ts.map +1 -0
  423. package/dist/src/plugins/store/search.js +230 -0
  424. package/dist/src/plugins/store/search.js.map +1 -0
  425. package/dist/src/plugins/store/types.d.ts +274 -0
  426. package/dist/src/plugins/store/types.d.ts.map +1 -0
  427. package/dist/src/plugins/store/types.js +7 -0
  428. package/dist/src/plugins/store/types.js.map +1 -0
  429. package/dist/src/plugins/tests/demo-plugin-store.d.ts +7 -0
  430. package/dist/src/plugins/tests/demo-plugin-store.d.ts.map +1 -0
  431. package/dist/src/plugins/tests/demo-plugin-store.js +126 -0
  432. package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -0
  433. package/dist/src/plugins/tests/standalone-test.d.ts +12 -0
  434. package/dist/src/plugins/tests/standalone-test.d.ts.map +1 -0
  435. package/dist/src/plugins/tests/standalone-test.js +188 -0
  436. package/dist/src/plugins/tests/standalone-test.js.map +1 -0
  437. package/dist/src/plugins/tests/test-plugin-store.d.ts +7 -0
  438. package/dist/src/plugins/tests/test-plugin-store.d.ts.map +1 -0
  439. package/dist/src/plugins/tests/test-plugin-store.js +206 -0
  440. package/dist/src/plugins/tests/test-plugin-store.js.map +1 -0
  441. package/dist/src/production/circuit-breaker.d.ts +101 -0
  442. package/dist/src/production/circuit-breaker.d.ts.map +1 -0
  443. package/dist/src/production/circuit-breaker.js +241 -0
  444. package/dist/src/production/circuit-breaker.js.map +1 -0
  445. package/dist/src/production/error-handler.d.ts +92 -0
  446. package/dist/src/production/error-handler.d.ts.map +1 -0
  447. package/dist/src/production/error-handler.js +299 -0
  448. package/dist/src/production/error-handler.js.map +1 -0
  449. package/dist/src/production/index.d.ts +23 -0
  450. package/dist/src/production/index.d.ts.map +1 -0
  451. package/dist/src/production/index.js +18 -0
  452. package/dist/src/production/index.js.map +1 -0
  453. package/dist/src/production/monitoring.d.ts +161 -0
  454. package/dist/src/production/monitoring.d.ts.map +1 -0
  455. package/dist/src/production/monitoring.js +356 -0
  456. package/dist/src/production/monitoring.js.map +1 -0
  457. package/dist/src/production/rate-limiter.d.ts +80 -0
  458. package/dist/src/production/rate-limiter.d.ts.map +1 -0
  459. package/dist/src/production/rate-limiter.js +201 -0
  460. package/dist/src/production/rate-limiter.js.map +1 -0
  461. package/dist/src/production/retry.d.ts +48 -0
  462. package/dist/src/production/retry.d.ts.map +1 -0
  463. package/dist/src/production/retry.js +179 -0
  464. package/dist/src/production/retry.js.map +1 -0
  465. package/dist/src/prompt.d.ts +44 -0
  466. package/dist/src/prompt.d.ts.map +1 -0
  467. package/dist/src/prompt.js +501 -0
  468. package/dist/src/prompt.js.map +1 -0
  469. package/dist/src/runtime/headless.d.ts +60 -0
  470. package/dist/src/runtime/headless.d.ts.map +1 -0
  471. package/dist/src/runtime/headless.js +284 -0
  472. package/dist/src/runtime/headless.js.map +1 -0
  473. package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
  474. package/dist/src/ruvector/ast-analyzer.d.ts.map +1 -0
  475. package/dist/src/ruvector/ast-analyzer.js +277 -0
  476. package/dist/src/ruvector/ast-analyzer.js.map +1 -0
  477. package/dist/src/ruvector/coverage-router.d.ts +160 -0
  478. package/dist/src/ruvector/coverage-router.d.ts.map +1 -0
  479. package/dist/src/ruvector/coverage-router.js +529 -0
  480. package/dist/src/ruvector/coverage-router.js.map +1 -0
  481. package/dist/src/ruvector/coverage-tools.d.ts +33 -0
  482. package/dist/src/ruvector/coverage-tools.d.ts.map +1 -0
  483. package/dist/src/ruvector/coverage-tools.js +157 -0
  484. package/dist/src/ruvector/coverage-tools.js.map +1 -0
  485. package/dist/src/ruvector/diff-classifier.d.ts +175 -0
  486. package/dist/src/ruvector/diff-classifier.d.ts.map +1 -0
  487. package/dist/src/ruvector/diff-classifier.js +698 -0
  488. package/dist/src/ruvector/diff-classifier.js.map +1 -0
  489. package/dist/src/ruvector/enhanced-model-router.d.ts +146 -0
  490. package/dist/src/ruvector/enhanced-model-router.d.ts.map +1 -0
  491. package/dist/src/ruvector/enhanced-model-router.js +529 -0
  492. package/dist/src/ruvector/enhanced-model-router.js.map +1 -0
  493. package/dist/src/ruvector/flash-attention.d.ts +195 -0
  494. package/dist/src/ruvector/flash-attention.d.ts.map +1 -0
  495. package/dist/src/ruvector/flash-attention.js +643 -0
  496. package/dist/src/ruvector/flash-attention.js.map +1 -0
  497. package/dist/src/ruvector/graph-analyzer.d.ts +187 -0
  498. package/dist/src/ruvector/graph-analyzer.d.ts.map +1 -0
  499. package/dist/src/ruvector/graph-analyzer.js +929 -0
  500. package/dist/src/ruvector/graph-analyzer.js.map +1 -0
  501. package/dist/src/ruvector/index.d.ts +34 -0
  502. package/dist/src/ruvector/index.d.ts.map +1 -0
  503. package/dist/src/ruvector/index.js +60 -0
  504. package/dist/src/ruvector/index.js.map +1 -0
  505. package/dist/src/ruvector/lora-adapter.d.ts +218 -0
  506. package/dist/src/ruvector/lora-adapter.d.ts.map +1 -0
  507. package/dist/src/ruvector/lora-adapter.js +455 -0
  508. package/dist/src/ruvector/lora-adapter.js.map +1 -0
  509. package/dist/src/ruvector/model-router.d.ts +220 -0
  510. package/dist/src/ruvector/model-router.d.ts.map +1 -0
  511. package/dist/src/ruvector/model-router.js +488 -0
  512. package/dist/src/ruvector/model-router.js.map +1 -0
  513. package/dist/src/ruvector/moe-router.d.ts +206 -0
  514. package/dist/src/ruvector/moe-router.d.ts.map +1 -0
  515. package/dist/src/ruvector/moe-router.js +626 -0
  516. package/dist/src/ruvector/moe-router.js.map +1 -0
  517. package/dist/src/ruvector/q-learning-router.d.ts +211 -0
  518. package/dist/src/ruvector/q-learning-router.d.ts.map +1 -0
  519. package/dist/src/ruvector/q-learning-router.js +681 -0
  520. package/dist/src/ruvector/q-learning-router.js.map +1 -0
  521. package/dist/src/ruvector/semantic-router.d.ts +77 -0
  522. package/dist/src/ruvector/semantic-router.d.ts.map +1 -0
  523. package/dist/src/ruvector/semantic-router.js +178 -0
  524. package/dist/src/ruvector/semantic-router.js.map +1 -0
  525. package/dist/src/ruvector/vector-db.d.ts +69 -0
  526. package/dist/src/ruvector/vector-db.d.ts.map +1 -0
  527. package/dist/src/ruvector/vector-db.js +243 -0
  528. package/dist/src/ruvector/vector-db.js.map +1 -0
  529. package/dist/src/services/agentic-flow-bridge.d.ts +50 -0
  530. package/dist/src/services/agentic-flow-bridge.d.ts.map +1 -0
  531. package/dist/src/services/agentic-flow-bridge.js +95 -0
  532. package/dist/src/services/agentic-flow-bridge.js.map +1 -0
  533. package/dist/src/services/claim-service.d.ts +204 -0
  534. package/dist/src/services/claim-service.d.ts.map +1 -0
  535. package/dist/src/services/claim-service.js +818 -0
  536. package/dist/src/services/claim-service.js.map +1 -0
  537. package/dist/src/services/container-worker-pool.d.ts +197 -0
  538. package/dist/src/services/container-worker-pool.d.ts.map +1 -0
  539. package/dist/src/services/container-worker-pool.js +583 -0
  540. package/dist/src/services/container-worker-pool.js.map +1 -0
  541. package/dist/src/services/headless-worker-executor.d.ts +304 -0
  542. package/dist/src/services/headless-worker-executor.d.ts.map +1 -0
  543. package/dist/src/services/headless-worker-executor.js +999 -0
  544. package/dist/src/services/headless-worker-executor.js.map +1 -0
  545. package/dist/src/services/index.d.ts +13 -0
  546. package/dist/src/services/index.d.ts.map +1 -0
  547. package/dist/src/services/index.js +11 -0
  548. package/dist/src/services/index.js.map +1 -0
  549. package/dist/src/services/registry-api.d.ts +58 -0
  550. package/dist/src/services/registry-api.d.ts.map +1 -0
  551. package/dist/src/services/registry-api.js +146 -0
  552. package/dist/src/services/registry-api.js.map +1 -0
  553. package/dist/src/services/ruvector-training.d.ts +214 -0
  554. package/dist/src/services/ruvector-training.d.ts.map +1 -0
  555. package/dist/src/services/ruvector-training.js +497 -0
  556. package/dist/src/services/ruvector-training.js.map +1 -0
  557. package/dist/src/services/worker-daemon.d.ts +203 -0
  558. package/dist/src/services/worker-daemon.d.ts.map +1 -0
  559. package/dist/src/services/worker-daemon.js +756 -0
  560. package/dist/src/services/worker-daemon.js.map +1 -0
  561. package/dist/src/services/worker-queue.d.ts +194 -0
  562. package/dist/src/services/worker-queue.d.ts.map +1 -0
  563. package/dist/src/services/worker-queue.js +513 -0
  564. package/dist/src/services/worker-queue.js.map +1 -0
  565. package/dist/src/suggest.d.ts +53 -0
  566. package/dist/src/suggest.d.ts.map +1 -0
  567. package/dist/src/suggest.js +200 -0
  568. package/dist/src/suggest.js.map +1 -0
  569. package/dist/src/tests/ruvector-integration-benchmark.d.ts +6 -0
  570. package/dist/src/tests/ruvector-integration-benchmark.d.ts.map +1 -0
  571. package/dist/src/tests/ruvector-integration-benchmark.js +385 -0
  572. package/dist/src/tests/ruvector-integration-benchmark.js.map +1 -0
  573. package/dist/src/transfer/anonymization/index.d.ts +25 -0
  574. package/dist/src/transfer/anonymization/index.d.ts.map +1 -0
  575. package/dist/src/transfer/anonymization/index.js +175 -0
  576. package/dist/src/transfer/anonymization/index.js.map +1 -0
  577. package/dist/src/transfer/deploy-seraphine.d.ts +13 -0
  578. package/dist/src/transfer/deploy-seraphine.d.ts.map +1 -0
  579. package/dist/src/transfer/deploy-seraphine.js +205 -0
  580. package/dist/src/transfer/deploy-seraphine.js.map +1 -0
  581. package/dist/src/transfer/export.d.ts +25 -0
  582. package/dist/src/transfer/export.d.ts.map +1 -0
  583. package/dist/src/transfer/export.js +113 -0
  584. package/dist/src/transfer/export.js.map +1 -0
  585. package/dist/src/transfer/index.d.ts +12 -0
  586. package/dist/src/transfer/index.d.ts.map +1 -0
  587. package/dist/src/transfer/index.js +31 -0
  588. package/dist/src/transfer/index.js.map +1 -0
  589. package/dist/src/transfer/ipfs/client.d.ts +109 -0
  590. package/dist/src/transfer/ipfs/client.d.ts.map +1 -0
  591. package/dist/src/transfer/ipfs/client.js +307 -0
  592. package/dist/src/transfer/ipfs/client.js.map +1 -0
  593. package/dist/src/transfer/ipfs/upload.d.ts +95 -0
  594. package/dist/src/transfer/ipfs/upload.d.ts.map +1 -0
  595. package/dist/src/transfer/ipfs/upload.js +411 -0
  596. package/dist/src/transfer/ipfs/upload.js.map +1 -0
  597. package/dist/src/transfer/models/seraphine.d.ts +72 -0
  598. package/dist/src/transfer/models/seraphine.d.ts.map +1 -0
  599. package/dist/src/transfer/models/seraphine.js +373 -0
  600. package/dist/src/transfer/models/seraphine.js.map +1 -0
  601. package/dist/src/transfer/serialization/cfp.d.ts +49 -0
  602. package/dist/src/transfer/serialization/cfp.d.ts.map +1 -0
  603. package/dist/src/transfer/serialization/cfp.js +183 -0
  604. package/dist/src/transfer/serialization/cfp.js.map +1 -0
  605. package/dist/src/transfer/storage/gcs.d.ts +82 -0
  606. package/dist/src/transfer/storage/gcs.d.ts.map +1 -0
  607. package/dist/src/transfer/storage/gcs.js +256 -0
  608. package/dist/src/transfer/storage/gcs.js.map +1 -0
  609. package/dist/src/transfer/storage/index.d.ts +6 -0
  610. package/dist/src/transfer/storage/index.d.ts.map +1 -0
  611. package/dist/src/transfer/storage/index.js +6 -0
  612. package/dist/src/transfer/storage/index.js.map +1 -0
  613. package/dist/src/transfer/store/discovery.d.ts +84 -0
  614. package/dist/src/transfer/store/discovery.d.ts.map +1 -0
  615. package/dist/src/transfer/store/discovery.js +382 -0
  616. package/dist/src/transfer/store/discovery.js.map +1 -0
  617. package/dist/src/transfer/store/download.d.ts +70 -0
  618. package/dist/src/transfer/store/download.d.ts.map +1 -0
  619. package/dist/src/transfer/store/download.js +334 -0
  620. package/dist/src/transfer/store/download.js.map +1 -0
  621. package/dist/src/transfer/store/index.d.ts +84 -0
  622. package/dist/src/transfer/store/index.d.ts.map +1 -0
  623. package/dist/src/transfer/store/index.js +153 -0
  624. package/dist/src/transfer/store/index.js.map +1 -0
  625. package/dist/src/transfer/store/publish.d.ts +76 -0
  626. package/dist/src/transfer/store/publish.d.ts.map +1 -0
  627. package/dist/src/transfer/store/publish.js +294 -0
  628. package/dist/src/transfer/store/publish.js.map +1 -0
  629. package/dist/src/transfer/store/registry.d.ts +58 -0
  630. package/dist/src/transfer/store/registry.d.ts.map +1 -0
  631. package/dist/src/transfer/store/registry.js +285 -0
  632. package/dist/src/transfer/store/registry.js.map +1 -0
  633. package/dist/src/transfer/store/search.d.ts +54 -0
  634. package/dist/src/transfer/store/search.d.ts.map +1 -0
  635. package/dist/src/transfer/store/search.js +232 -0
  636. package/dist/src/transfer/store/search.js.map +1 -0
  637. package/dist/src/transfer/store/tests/standalone-test.d.ts +12 -0
  638. package/dist/src/transfer/store/tests/standalone-test.d.ts.map +1 -0
  639. package/dist/src/transfer/store/tests/standalone-test.js +190 -0
  640. package/dist/src/transfer/store/tests/standalone-test.js.map +1 -0
  641. package/dist/src/transfer/store/types.d.ts +193 -0
  642. package/dist/src/transfer/store/types.d.ts.map +1 -0
  643. package/dist/src/transfer/store/types.js +6 -0
  644. package/dist/src/transfer/store/types.js.map +1 -0
  645. package/dist/src/transfer/test-seraphine.d.ts +6 -0
  646. package/dist/src/transfer/test-seraphine.d.ts.map +1 -0
  647. package/dist/src/transfer/test-seraphine.js +105 -0
  648. package/dist/src/transfer/test-seraphine.js.map +1 -0
  649. package/dist/src/transfer/tests/test-store.d.ts +7 -0
  650. package/dist/src/transfer/tests/test-store.d.ts.map +1 -0
  651. package/dist/src/transfer/tests/test-store.js +214 -0
  652. package/dist/src/transfer/tests/test-store.js.map +1 -0
  653. package/dist/src/transfer/types.d.ts +245 -0
  654. package/dist/src/transfer/types.d.ts.map +1 -0
  655. package/dist/src/transfer/types.js +6 -0
  656. package/dist/src/transfer/types.js.map +1 -0
  657. package/dist/src/types.d.ts +198 -0
  658. package/dist/src/types.d.ts.map +1 -0
  659. package/dist/src/types.js +38 -0
  660. package/dist/src/types.js.map +1 -0
  661. package/dist/src/update/checker.d.ts +34 -0
  662. package/dist/src/update/checker.d.ts.map +1 -0
  663. package/dist/src/update/checker.js +190 -0
  664. package/dist/src/update/checker.js.map +1 -0
  665. package/dist/src/update/executor.d.ts +32 -0
  666. package/dist/src/update/executor.d.ts.map +1 -0
  667. package/dist/src/update/executor.js +181 -0
  668. package/dist/src/update/executor.js.map +1 -0
  669. package/dist/src/update/index.d.ts +33 -0
  670. package/dist/src/update/index.d.ts.map +1 -0
  671. package/dist/src/update/index.js +64 -0
  672. package/dist/src/update/index.js.map +1 -0
  673. package/dist/src/update/rate-limiter.d.ts +20 -0
  674. package/dist/src/update/rate-limiter.d.ts.map +1 -0
  675. package/dist/src/update/rate-limiter.js +96 -0
  676. package/dist/src/update/rate-limiter.js.map +1 -0
  677. package/dist/src/update/validator.d.ts +17 -0
  678. package/dist/src/update/validator.d.ts.map +1 -0
  679. package/dist/src/update/validator.js +123 -0
  680. package/dist/src/update/validator.js.map +1 -0
  681. package/dist/tsconfig.tsbuildinfo +1 -0
  682. package/package.json +2 -3
@@ -0,0 +1,965 @@
1
+ /**
2
+ * V3 CLI Init Command
3
+ * Comprehensive initialization for Claude Flow with Claude Code integration
4
+ */
5
+ import { output } from '../output.js';
6
+ import { confirm, select, multiSelect, input } from '../prompt.js';
7
+ import * as fs from 'fs';
8
+ import * as path from 'path';
9
+ import { executeInit, executeUpgrade, executeUpgradeWithMissing, DEFAULT_INIT_OPTIONS, MINIMAL_INIT_OPTIONS, FULL_INIT_OPTIONS, } from '../init/index.js';
10
+ // Codex initialization action
11
+ async function initCodexAction(ctx, options) {
12
+ const { force, minimal, full, dualMode } = options;
13
+ output.writeln();
14
+ output.writeln(output.bold('Initializing RuFlo V3 for OpenAI Codex'));
15
+ output.writeln();
16
+ // Determine template
17
+ const template = minimal ? 'minimal' : full ? 'full' : 'default';
18
+ const spinner = output.createSpinner({ text: 'Initializing Codex project...' });
19
+ spinner.start();
20
+ try {
21
+ // Dynamic import of the Codex initializer with lazy loading fallback
22
+ let CodexInitializer;
23
+ // Try multiple resolution strategies for the @sparkleideas/codex package
24
+ const resolutionStrategies = [
25
+ // Strategy 1: Direct import (works if installed as CLI dependency)
26
+ async () => (await import('@sparkleideas/codex')).CodexInitializer,
27
+ // Strategy 2: Project node_modules (works if installed in user's project)
28
+ async () => {
29
+ const projectPath = path.join(ctx.cwd, 'node_modules', '@claude-flow', 'codex', 'dist', 'index.js');
30
+ if (fs.existsSync(projectPath)) {
31
+ const mod = await import(`file://${projectPath}`);
32
+ return mod.CodexInitializer;
33
+ }
34
+ throw new Error('Not found in project');
35
+ },
36
+ // Strategy 3: Global node_modules
37
+ async () => {
38
+ const { execSync } = await import('child_process');
39
+ const globalPath = execSync('npm root -g', { encoding: 'utf-8' }).trim();
40
+ const codexPath = path.join(globalPath, '@claude-flow', 'codex', 'dist', 'index.js');
41
+ if (fs.existsSync(codexPath)) {
42
+ const mod = await import(`file://${codexPath}`);
43
+ return mod.CodexInitializer;
44
+ }
45
+ throw new Error('Not found globally');
46
+ },
47
+ ];
48
+ for (const strategy of resolutionStrategies) {
49
+ try {
50
+ CodexInitializer = await strategy();
51
+ if (CodexInitializer)
52
+ break;
53
+ }
54
+ catch {
55
+ // Try next strategy
56
+ }
57
+ }
58
+ if (!CodexInitializer) {
59
+ throw new Error('Cannot find module @sparkleideas/codex');
60
+ }
61
+ const initializer = new CodexInitializer();
62
+ const result = await initializer.initialize({
63
+ projectPath: ctx.cwd,
64
+ template: template,
65
+ force,
66
+ dual: dualMode,
67
+ });
68
+ if (!result.success) {
69
+ spinner.fail('Codex initialization failed');
70
+ if (result.errors) {
71
+ for (const error of result.errors) {
72
+ output.printError(error);
73
+ }
74
+ }
75
+ return { success: false, exitCode: 1 };
76
+ }
77
+ spinner.succeed('Codex project initialized successfully!');
78
+ output.writeln();
79
+ // Display summary
80
+ const summary = [];
81
+ summary.push(`Files: ${result.filesCreated.length} created`);
82
+ summary.push(`Skills: ${result.skillsGenerated.length} installed`);
83
+ output.printBox(summary.join('\n'), 'Summary');
84
+ output.writeln();
85
+ // Show what was created
86
+ output.printBox([
87
+ `AGENTS.md: Main project instructions`,
88
+ `.agents/config.toml: Project configuration`,
89
+ `.agents/skills/: ${result.skillsGenerated.length} skills`,
90
+ `.codex/: Local overrides (gitignored)`,
91
+ dualMode ? `CLAUDE.md: Claude Code compatibility` : '',
92
+ ].filter(Boolean).join('\n'), 'OpenAI Codex Integration');
93
+ output.writeln();
94
+ // Warnings
95
+ if (result.warnings && result.warnings.length > 0) {
96
+ output.printWarning('Warnings:');
97
+ for (const warning of result.warnings.slice(0, 5)) {
98
+ output.printInfo(` • ${warning}`);
99
+ }
100
+ if (result.warnings.length > 5) {
101
+ output.printInfo(` ... and ${result.warnings.length - 5} more`);
102
+ }
103
+ output.writeln();
104
+ }
105
+ // Next steps
106
+ output.writeln(output.bold('Next steps:'));
107
+ output.printList([
108
+ `Review ${output.highlight('AGENTS.md')} for project instructions`,
109
+ `Add skills with ${output.highlight('$skill-name')} syntax`,
110
+ `Configure ${output.highlight('.agents/config.toml')} for your project`,
111
+ dualMode ? `Claude Code users can use ${output.highlight('CLAUDE.md')}` : '',
112
+ ].filter(Boolean));
113
+ return { success: true, data: result };
114
+ }
115
+ catch (error) {
116
+ spinner.fail('Codex initialization failed');
117
+ const errorMessage = error instanceof Error ? error.message : String(error);
118
+ // Handle module not found error gracefully
119
+ if (errorMessage.includes('Cannot find module') || errorMessage.includes('@sparkleideas/codex')) {
120
+ output.printError('The @sparkleideas/codex package is not installed.');
121
+ output.printInfo('Install it with: npm install @sparkleideas/codex');
122
+ output.writeln();
123
+ output.printInfo('Alternatively, copy skills manually from .claude/skills/ to .agents/skills/');
124
+ }
125
+ else {
126
+ output.printError(`Failed to initialize: ${errorMessage}`);
127
+ }
128
+ return { success: false, exitCode: 1 };
129
+ }
130
+ }
131
+ // Check if project is already initialized
132
+ function isInitialized(cwd) {
133
+ const claudePath = path.join(cwd, '.claude', 'settings.json');
134
+ const claudeFlowPath = path.join(cwd, '.claude-flow', 'config.yaml');
135
+ return {
136
+ claude: fs.existsSync(claudePath),
137
+ claudeFlow: fs.existsSync(claudeFlowPath),
138
+ };
139
+ }
140
+ // Init subcommand (default)
141
+ const initAction = async (ctx) => {
142
+ const force = ctx.flags.force;
143
+ const minimal = ctx.flags.minimal;
144
+ const full = ctx.flags.full;
145
+ const skipClaude = ctx.flags['skip-claude'];
146
+ const onlyClaude = ctx.flags['only-claude'];
147
+ const codexMode = ctx.flags.codex;
148
+ const dualMode = ctx.flags.dual;
149
+ const cwd = ctx.cwd;
150
+ // If codex mode, use the Codex initializer
151
+ if (codexMode || dualMode) {
152
+ return initCodexAction(ctx, { codexMode, dualMode, force, minimal, full });
153
+ }
154
+ // Check if already initialized
155
+ const initialized = isInitialized(cwd);
156
+ const hasExisting = initialized.claude || initialized.claudeFlow;
157
+ if (hasExisting && !force) {
158
+ output.printWarning('RuFlo appears to be already initialized');
159
+ if (initialized.claude)
160
+ output.printInfo(' Found: .claude/settings.json');
161
+ if (initialized.claudeFlow)
162
+ output.printInfo(' Found: .claude-flow/config.yaml');
163
+ output.printInfo('Use --force to reinitialize');
164
+ if (ctx.interactive) {
165
+ const proceed = await confirm({
166
+ message: 'Do you want to reinitialize? This will overwrite existing configuration.',
167
+ default: false,
168
+ });
169
+ if (!proceed) {
170
+ return { success: true, message: 'Initialization cancelled' };
171
+ }
172
+ }
173
+ else {
174
+ return { success: false, exitCode: 1, message: 'Already initialized' };
175
+ }
176
+ }
177
+ output.writeln();
178
+ output.writeln(output.bold('Initializing RuFlo V3'));
179
+ output.writeln();
180
+ // Build init options based on flags
181
+ let options;
182
+ if (minimal) {
183
+ options = { ...MINIMAL_INIT_OPTIONS, targetDir: cwd, force };
184
+ }
185
+ else if (full) {
186
+ options = { ...FULL_INIT_OPTIONS, targetDir: cwd, force };
187
+ }
188
+ else {
189
+ options = { ...DEFAULT_INIT_OPTIONS, targetDir: cwd, force };
190
+ }
191
+ // Handle --skip-claude and --only-claude flags
192
+ if (skipClaude) {
193
+ options.components.settings = false;
194
+ options.components.skills = false;
195
+ options.components.commands = false;
196
+ options.components.agents = false;
197
+ options.components.helpers = false;
198
+ options.components.statusline = false;
199
+ options.components.mcp = false;
200
+ options.components.claudeMd = false;
201
+ }
202
+ if (onlyClaude) {
203
+ options.components.runtime = false;
204
+ }
205
+ // Create spinner
206
+ const spinner = output.createSpinner({ text: 'Initializing...' });
207
+ spinner.start();
208
+ try {
209
+ // Execute initialization
210
+ const result = await executeInit(options);
211
+ if (!result.success) {
212
+ spinner.fail('Initialization failed');
213
+ for (const error of result.errors) {
214
+ output.printError(error);
215
+ }
216
+ return { success: false, exitCode: 1 };
217
+ }
218
+ spinner.succeed('RuFlo V3 initialized successfully!');
219
+ output.writeln();
220
+ // Display summary
221
+ const summary = [];
222
+ if (result.created.directories.length > 0) {
223
+ summary.push(`Directories: ${result.created.directories.length} created`);
224
+ }
225
+ if (result.created.files.length > 0) {
226
+ summary.push(`Files: ${result.created.files.length} created`);
227
+ }
228
+ if (result.skipped.length > 0) {
229
+ summary.push(`Skipped: ${result.skipped.length} (already exist)`);
230
+ }
231
+ output.printBox(summary.join('\n'), 'Summary');
232
+ output.writeln();
233
+ // Show what was created
234
+ if (options.components.claudeMd || options.components.settings || options.components.skills || options.components.commands || options.components.agents) {
235
+ output.printBox([
236
+ options.components.claudeMd ? `CLAUDE.md: Swarm guidance & configuration` : '',
237
+ options.components.settings ? `Settings: .claude/settings.json` : '',
238
+ options.components.skills ? `Skills: .claude/skills/ (${result.summary.skillsCount} skills)` : '',
239
+ options.components.commands ? `Commands: .claude/commands/ (${result.summary.commandsCount} commands)` : '',
240
+ options.components.agents ? `Agents: .claude/agents/ (${result.summary.agentsCount} agents)` : '',
241
+ options.components.helpers ? `Helpers: .claude/helpers/` : '',
242
+ options.components.mcp ? `MCP: .mcp.json` : '',
243
+ ].filter(Boolean).join('\n'), 'Claude Code Integration');
244
+ output.writeln();
245
+ }
246
+ if (options.components.runtime) {
247
+ output.printBox([
248
+ `Config: .claude-flow/config.yaml`,
249
+ `Data: .claude-flow/data/`,
250
+ `Logs: .claude-flow/logs/`,
251
+ `Sessions: .claude-flow/sessions/`,
252
+ ].join('\n'), 'V3 Runtime');
253
+ output.writeln();
254
+ }
255
+ // Hooks summary
256
+ if (result.summary.hooksEnabled > 0) {
257
+ output.printInfo(`Hooks: ${result.summary.hooksEnabled} hook types enabled in settings.json`);
258
+ output.writeln();
259
+ }
260
+ // Handle --start-all or --start-daemon
261
+ const startAll = ctx.flags['start-all'] || ctx.flags.startAll;
262
+ const startDaemon = ctx.flags['start-daemon'] || ctx.flags.startDaemon || startAll;
263
+ if (startDaemon || startAll) {
264
+ output.writeln();
265
+ output.printInfo('Starting services...');
266
+ const { execSync } = await import('child_process');
267
+ // Initialize memory database
268
+ if (startAll) {
269
+ try {
270
+ output.writeln(output.dim(' Initializing memory database...'));
271
+ execSync('npx @sparkleideas/cli@latest memory init 2>/dev/null', {
272
+ stdio: 'pipe',
273
+ cwd: ctx.cwd,
274
+ timeout: 30000
275
+ });
276
+ output.writeln(output.success(' ✓ Memory initialized'));
277
+ }
278
+ catch {
279
+ output.writeln(output.dim(' Memory database already exists'));
280
+ }
281
+ }
282
+ // Start daemon
283
+ if (startDaemon) {
284
+ try {
285
+ output.writeln(output.dim(' Starting daemon...'));
286
+ execSync('npx @sparkleideas/cli@latest daemon start 2>/dev/null &', {
287
+ stdio: 'pipe',
288
+ cwd: ctx.cwd,
289
+ timeout: 10000
290
+ });
291
+ output.writeln(output.success(' ✓ Daemon started'));
292
+ }
293
+ catch {
294
+ output.writeln(output.warning(' Daemon may already be running'));
295
+ }
296
+ }
297
+ // Initialize swarm
298
+ if (startAll) {
299
+ try {
300
+ output.writeln(output.dim(' Initializing swarm...'));
301
+ execSync('npx @sparkleideas/cli@latest swarm init --topology hierarchical 2>/dev/null', {
302
+ stdio: 'pipe',
303
+ cwd: ctx.cwd,
304
+ timeout: 30000
305
+ });
306
+ output.writeln(output.success(' ✓ Swarm initialized'));
307
+ }
308
+ catch {
309
+ output.writeln(output.dim(' Swarm initialization skipped'));
310
+ }
311
+ }
312
+ output.writeln();
313
+ output.printSuccess('All services started');
314
+ }
315
+ // Handle --with-embeddings
316
+ const withEmbeddings = ctx.flags['with-embeddings'] || ctx.flags.withEmbeddings;
317
+ const embeddingModel = (ctx.flags['embedding-model'] || ctx.flags.embeddingModel || 'all-MiniLM-L6-v2');
318
+ if (withEmbeddings) {
319
+ output.writeln();
320
+ output.printInfo('Initializing ONNX embedding subsystem...');
321
+ const { execSync } = await import('child_process');
322
+ try {
323
+ output.writeln(output.dim(` Model: ${embeddingModel}`));
324
+ output.writeln(output.dim(' Hyperbolic: Enabled (Poincaré ball)'));
325
+ execSync(`npx @sparkleideas/cli@latest embeddings init --model ${embeddingModel} --no-download --force 2>/dev/null`, {
326
+ stdio: 'pipe',
327
+ cwd: ctx.cwd,
328
+ timeout: 30000
329
+ });
330
+ output.writeln(output.success(' ✓ Embeddings initialized'));
331
+ output.writeln(output.dim(' Run "embeddings init --download" to download model'));
332
+ }
333
+ catch (err) {
334
+ output.writeln(output.warning(' Embedding initialization skipped (run manually)'));
335
+ }
336
+ }
337
+ if (!startDaemon && !startAll) {
338
+ // Next steps (only if not auto-starting)
339
+ output.writeln(output.bold('Next steps:'));
340
+ output.printList([
341
+ `Run ${output.highlight('@sparkleideas/claude-flow daemon start')} to start background workers`,
342
+ `Run ${output.highlight('@sparkleideas/claude-flow memory init')} to initialize memory database`,
343
+ `Run ${output.highlight('@sparkleideas/claude-flow swarm init')} to initialize a swarm`,
344
+ `Or use ${output.highlight('@sparkleideas/claude-flow init --start-all')} to do all of the above`,
345
+ options.components.settings ? `Review ${output.highlight('.claude/settings.json')} for hook configurations` : '',
346
+ ].filter(Boolean));
347
+ }
348
+ if (ctx.flags.format === 'json') {
349
+ output.printJson(result);
350
+ }
351
+ return { success: true, data: result };
352
+ }
353
+ catch (error) {
354
+ spinner.fail('Initialization failed');
355
+ output.printError(`Failed to initialize: ${error instanceof Error ? error.message : String(error)}`);
356
+ return { success: false, exitCode: 1 };
357
+ }
358
+ };
359
+ // Wizard subcommand for interactive setup
360
+ const wizardCommand = {
361
+ name: 'wizard',
362
+ description: 'Interactive setup wizard for comprehensive configuration',
363
+ action: async (ctx) => {
364
+ output.writeln();
365
+ output.writeln(output.bold('RuFlo V3 Setup Wizard'));
366
+ output.writeln(output.dim('Answer questions to configure your project'));
367
+ output.writeln();
368
+ try {
369
+ // Start with base options
370
+ const options = { ...DEFAULT_INIT_OPTIONS, targetDir: ctx.cwd };
371
+ // Configuration preset
372
+ const preset = await select({
373
+ message: 'Select configuration preset:',
374
+ options: [
375
+ { value: 'default', label: 'Default', hint: 'Recommended settings for most projects' },
376
+ { value: 'minimal', label: 'Minimal', hint: 'Core features only' },
377
+ { value: 'full', label: 'Full', hint: 'All features enabled' },
378
+ { value: 'custom', label: 'Custom', hint: 'Choose each component' },
379
+ ],
380
+ });
381
+ if (preset === 'minimal') {
382
+ Object.assign(options, MINIMAL_INIT_OPTIONS);
383
+ options.targetDir = ctx.cwd;
384
+ }
385
+ else if (preset === 'full') {
386
+ Object.assign(options, FULL_INIT_OPTIONS);
387
+ options.targetDir = ctx.cwd;
388
+ }
389
+ else if (preset === 'custom') {
390
+ // Component selection
391
+ const components = await multiSelect({
392
+ message: 'Select components to initialize:',
393
+ options: [
394
+ { value: 'claudeMd', label: 'CLAUDE.md', hint: 'Swarm guidance and project configuration', selected: true },
395
+ { value: 'settings', label: 'settings.json', hint: 'Claude Code hooks configuration', selected: true },
396
+ { value: 'skills', label: 'Skills', hint: 'Claude Code skills in .claude/skills/', selected: true },
397
+ { value: 'commands', label: 'Commands', hint: 'Claude Code commands in .claude/commands/', selected: true },
398
+ { value: 'agents', label: 'Agents', hint: 'Agent definitions in .claude/agents/', selected: true },
399
+ { value: 'helpers', label: 'Helpers', hint: 'Utility scripts in .claude/helpers/', selected: true },
400
+ { value: 'statusline', label: 'Statusline', hint: 'Shell statusline integration', selected: false },
401
+ { value: 'mcp', label: 'MCP', hint: '.mcp.json for MCP server configuration', selected: true },
402
+ { value: 'runtime', label: 'Runtime', hint: '.claude-flow/ directory for V3 runtime', selected: true },
403
+ ],
404
+ });
405
+ options.components.claudeMd = components.includes('claudeMd');
406
+ options.components.settings = components.includes('settings');
407
+ options.components.skills = components.includes('skills');
408
+ options.components.commands = components.includes('commands');
409
+ options.components.agents = components.includes('agents');
410
+ options.components.helpers = components.includes('helpers');
411
+ options.components.statusline = components.includes('statusline');
412
+ options.components.mcp = components.includes('mcp');
413
+ options.components.runtime = components.includes('runtime');
414
+ // Skills selection
415
+ if (options.components.skills) {
416
+ const skillSets = await multiSelect({
417
+ message: 'Select skill sets:',
418
+ options: [
419
+ { value: 'core', label: 'Core', hint: 'Swarm, memory, SPARC skills', selected: true },
420
+ { value: '@sparkleideas/agentdb', label: 'AgentDB', hint: 'Vector database skills', selected: true },
421
+ { value: 'github', label: 'GitHub', hint: 'GitHub integration skills', selected: true },
422
+ { value: 'flowNexus', label: 'Flow Nexus', hint: 'Cloud platform skills', selected: false },
423
+ { value: 'v3', label: 'V3', hint: 'V3 implementation skills', selected: true },
424
+ ],
425
+ });
426
+ options.skills.core = skillSets.includes('core');
427
+ options.skills.agentdb = skillSets.includes('@sparkleideas/agentdb');
428
+ options.skills.github = skillSets.includes('github');
429
+ options.skills.flowNexus = skillSets.includes('flowNexus');
430
+ options.skills.v3 = skillSets.includes('v3');
431
+ }
432
+ // Hooks selection
433
+ if (options.components.settings) {
434
+ const hooks = await multiSelect({
435
+ message: 'Select hooks to enable:',
436
+ options: [
437
+ { value: 'preToolUse', label: 'PreToolUse', hint: 'Before tool execution', selected: true },
438
+ { value: 'postToolUse', label: 'PostToolUse', hint: 'After tool execution', selected: true },
439
+ { value: 'userPromptSubmit', label: 'UserPromptSubmit', hint: 'Task routing', selected: true },
440
+ { value: 'sessionStart', label: 'SessionStart', hint: 'Session initialization', selected: true },
441
+ { value: 'stop', label: 'Stop', hint: 'Task completion evaluation', selected: true },
442
+ { value: 'notification', label: 'Notification', hint: 'Swarm notifications', selected: true },
443
+ { value: 'permissionRequest', label: 'PermissionRequest', hint: 'Auto-allow @sparkleideas/claude-flow tools', selected: true },
444
+ ],
445
+ });
446
+ options.hooks.preToolUse = hooks.includes('preToolUse');
447
+ options.hooks.postToolUse = hooks.includes('postToolUse');
448
+ options.hooks.userPromptSubmit = hooks.includes('userPromptSubmit');
449
+ options.hooks.sessionStart = hooks.includes('sessionStart');
450
+ options.hooks.stop = hooks.includes('stop');
451
+ options.hooks.notification = hooks.includes('notification');
452
+ }
453
+ }
454
+ // Swarm topology (for all presets)
455
+ const topology = await select({
456
+ message: 'Select swarm topology:',
457
+ options: [
458
+ { value: 'hierarchical-mesh', label: 'Hierarchical Mesh', hint: 'Best for complex projects (recommended)' },
459
+ { value: 'mesh', label: 'Mesh', hint: 'Peer-to-peer coordination' },
460
+ { value: 'hierarchical', label: 'Hierarchical', hint: 'Tree-based coordination' },
461
+ { value: 'adaptive', label: 'Adaptive', hint: 'Dynamic topology switching' },
462
+ ],
463
+ });
464
+ options.runtime.topology = topology;
465
+ // Max agents
466
+ const maxAgents = await input({
467
+ message: 'Maximum concurrent agents:',
468
+ default: String(options.runtime.maxAgents),
469
+ validate: (v) => {
470
+ const n = parseInt(v);
471
+ return (!isNaN(n) && n > 0 && n <= 50) || 'Enter a number between 1 and 50';
472
+ },
473
+ });
474
+ options.runtime.maxAgents = parseInt(maxAgents);
475
+ // Memory backend
476
+ const memoryBackend = await select({
477
+ message: 'Select memory backend:',
478
+ options: [
479
+ { value: 'hybrid', label: 'Hybrid', hint: 'SQLite + AgentDB (recommended)' },
480
+ { value: '@sparkleideas/agentdb', label: 'AgentDB', hint: '150x faster vector search' },
481
+ { value: 'sqlite', label: 'SQLite', hint: 'Standard SQL storage' },
482
+ { value: 'memory', label: 'In-Memory', hint: 'Fast but non-persistent' },
483
+ ],
484
+ });
485
+ options.runtime.memoryBackend = memoryBackend;
486
+ // HNSW indexing
487
+ if (memoryBackend === '@sparkleideas/agentdb' || memoryBackend === 'hybrid') {
488
+ const enableHNSW = await confirm({
489
+ message: 'Enable HNSW indexing for faster vector search?',
490
+ default: true,
491
+ });
492
+ options.runtime.enableHNSW = enableHNSW;
493
+ }
494
+ // Neural learning
495
+ const enableNeural = await confirm({
496
+ message: 'Enable neural pattern learning?',
497
+ default: options.runtime.enableNeural,
498
+ });
499
+ options.runtime.enableNeural = enableNeural;
500
+ // ADR-049: Self-Learning Memory capabilities
501
+ if (memoryBackend === '@sparkleideas/agentdb' || memoryBackend === 'hybrid') {
502
+ const enableSelfLearning = await confirm({
503
+ message: 'Enable self-learning memory? (LearningBridge + Knowledge Graph + Agent Scopes)',
504
+ default: true,
505
+ });
506
+ options.runtime.enableLearningBridge = enableSelfLearning && enableNeural;
507
+ options.runtime.enableMemoryGraph = enableSelfLearning;
508
+ options.runtime.enableAgentScopes = enableSelfLearning;
509
+ }
510
+ else {
511
+ options.runtime.enableLearningBridge = false;
512
+ options.runtime.enableMemoryGraph = false;
513
+ options.runtime.enableAgentScopes = false;
514
+ }
515
+ // Embeddings configuration
516
+ const enableEmbeddings = await confirm({
517
+ message: 'Enable ONNX embedding system with hyperbolic support?',
518
+ default: true,
519
+ });
520
+ let embeddingModel = 'all-MiniLM-L6-v2';
521
+ if (enableEmbeddings) {
522
+ embeddingModel = await select({
523
+ message: 'Select embedding model:',
524
+ options: [
525
+ { value: 'all-MiniLM-L6-v2', label: 'MiniLM L6 (384d)', hint: 'Fast, good quality (recommended)' },
526
+ { value: 'all-mpnet-base-v2', label: 'MPNet Base (768d)', hint: 'Higher quality, more memory' },
527
+ ],
528
+ });
529
+ }
530
+ // Execute initialization
531
+ output.writeln();
532
+ const spinner = output.createSpinner({ text: 'Initializing...' });
533
+ spinner.start();
534
+ const result = await executeInit(options);
535
+ if (!result.success) {
536
+ spinner.fail('Initialization failed');
537
+ for (const error of result.errors) {
538
+ output.printError(error);
539
+ }
540
+ return { success: false, exitCode: 1 };
541
+ }
542
+ spinner.succeed('Setup complete!');
543
+ // Initialize embeddings if enabled
544
+ let embeddingsInitialized = false;
545
+ if (enableEmbeddings) {
546
+ output.writeln();
547
+ output.printInfo('Initializing ONNX embedding subsystem...');
548
+ const { execSync } = await import('child_process');
549
+ try {
550
+ execSync(`npx @sparkleideas/cli@latest embeddings init --model ${embeddingModel} --no-download --force 2>/dev/null`, {
551
+ stdio: 'pipe',
552
+ cwd: ctx.cwd,
553
+ timeout: 30000
554
+ });
555
+ output.writeln(output.success(' ✓ Embeddings configured'));
556
+ embeddingsInitialized = true;
557
+ }
558
+ catch {
559
+ output.writeln(output.dim(' Embeddings will be configured on first use'));
560
+ }
561
+ }
562
+ output.writeln();
563
+ // Summary table
564
+ output.printTable({
565
+ columns: [
566
+ { key: 'setting', header: 'Setting', width: 20 },
567
+ { key: 'value', header: 'Value', width: 40 },
568
+ ],
569
+ data: [
570
+ { setting: 'Preset', value: preset },
571
+ { setting: 'Topology', value: options.runtime.topology },
572
+ { setting: 'Max Agents', value: String(options.runtime.maxAgents) },
573
+ { setting: 'Memory Backend', value: options.runtime.memoryBackend },
574
+ { setting: 'HNSW Indexing', value: options.runtime.enableHNSW ? 'Enabled' : 'Disabled' },
575
+ { setting: 'Neural Learning', value: options.runtime.enableNeural ? 'Enabled' : 'Disabled' },
576
+ { setting: 'Self-Learning', value: options.runtime.enableLearningBridge ? 'LearningBridge + Graph + Scopes' : 'Disabled' },
577
+ { setting: 'Embeddings', value: enableEmbeddings ? `${embeddingModel} (hyperbolic)` : 'Disabled' },
578
+ { setting: 'Skills', value: `${result.summary.skillsCount} installed` },
579
+ { setting: 'Commands', value: `${result.summary.commandsCount} installed` },
580
+ { setting: 'Agents', value: `${result.summary.agentsCount} installed` },
581
+ { setting: 'Hooks', value: `${result.summary.hooksEnabled} enabled` },
582
+ ],
583
+ });
584
+ return { success: true, data: result };
585
+ }
586
+ catch (error) {
587
+ if (error instanceof Error && error.message === 'User cancelled') {
588
+ output.printInfo('Setup cancelled');
589
+ return { success: true };
590
+ }
591
+ throw error;
592
+ }
593
+ },
594
+ };
595
+ // Check subcommand
596
+ const checkCommand = {
597
+ name: 'check',
598
+ description: 'Check if RuFlo is initialized',
599
+ action: async (ctx) => {
600
+ const initialized = isInitialized(ctx.cwd);
601
+ const result = {
602
+ initialized: initialized.claude || initialized.claudeFlow,
603
+ claude: initialized.claude,
604
+ claudeFlow: initialized.claudeFlow,
605
+ paths: {
606
+ claudeSettings: initialized.claude ? path.join(ctx.cwd, '.claude', 'settings.json') : null,
607
+ claudeFlowConfig: initialized.claudeFlow ? path.join(ctx.cwd, '.claude-flow', 'config.yaml') : null,
608
+ },
609
+ };
610
+ if (ctx.flags.format === 'json') {
611
+ output.printJson(result);
612
+ return { success: true, data: result };
613
+ }
614
+ if (result.initialized) {
615
+ output.printSuccess('RuFlo is initialized');
616
+ if (initialized.claude) {
617
+ output.printInfo(` Claude Code: .claude/settings.json`);
618
+ }
619
+ if (initialized.claudeFlow) {
620
+ output.printInfo(` V3 Runtime: .claude-flow/config.yaml`);
621
+ }
622
+ }
623
+ else {
624
+ output.printWarning('RuFlo is not initialized in this directory');
625
+ output.printInfo('Run "@sparkleideas/ruflo init" to initialize');
626
+ }
627
+ return { success: true, data: result };
628
+ },
629
+ };
630
+ // Skills subcommand
631
+ const skillsCommand = {
632
+ name: 'skills',
633
+ description: 'Initialize only skills',
634
+ options: [
635
+ { name: 'all', description: 'Install all skills', type: 'boolean', default: false },
636
+ { name: 'core', description: 'Install core skills', type: 'boolean', default: true },
637
+ { name: '@sparkleideas/agentdb', description: 'Install AgentDB skills', type: 'boolean', default: false },
638
+ { name: 'github', description: 'Install GitHub skills', type: 'boolean', default: false },
639
+ { name: 'v3', description: 'Install V3 skills', type: 'boolean', default: false },
640
+ ],
641
+ action: async (ctx) => {
642
+ const options = {
643
+ ...MINIMAL_INIT_OPTIONS,
644
+ targetDir: ctx.cwd,
645
+ force: ctx.flags.force,
646
+ components: {
647
+ settings: false,
648
+ skills: true,
649
+ commands: false,
650
+ agents: false,
651
+ helpers: false,
652
+ statusline: false,
653
+ mcp: false,
654
+ runtime: false,
655
+ claudeMd: false,
656
+ },
657
+ skills: {
658
+ all: ctx.flags.all,
659
+ core: ctx.flags.core,
660
+ @sparkleideas/agentdb: ctx.flags.agentdb,
661
+ github: ctx.flags.github,
662
+ flowNexus: false,
663
+ browser: false,
664
+ v3: ctx.flags.v3,
665
+ dualMode: false,
666
+ },
667
+ };
668
+ const spinner = output.createSpinner({ text: 'Installing skills...' });
669
+ spinner.start();
670
+ const result = await executeInit(options);
671
+ if (result.success) {
672
+ spinner.succeed(`Installed ${result.summary.skillsCount} skills`);
673
+ }
674
+ else {
675
+ spinner.fail('Failed to install skills');
676
+ for (const error of result.errors) {
677
+ output.printError(error);
678
+ }
679
+ }
680
+ return { success: result.success, data: result };
681
+ },
682
+ };
683
+ // Hooks subcommand
684
+ const hooksCommand = {
685
+ name: 'hooks',
686
+ description: 'Initialize only hooks configuration',
687
+ options: [
688
+ { name: 'all', description: 'Enable all hooks', type: 'boolean', default: true },
689
+ { name: 'minimal', description: 'Enable only essential hooks', type: 'boolean', default: false },
690
+ ],
691
+ action: async (ctx) => {
692
+ const minimal = ctx.flags.minimal;
693
+ const options = {
694
+ ...DEFAULT_INIT_OPTIONS,
695
+ targetDir: ctx.cwd,
696
+ force: ctx.flags.force,
697
+ components: {
698
+ settings: true,
699
+ skills: false,
700
+ commands: false,
701
+ agents: false,
702
+ helpers: false,
703
+ statusline: false,
704
+ mcp: false,
705
+ runtime: false,
706
+ claudeMd: false,
707
+ },
708
+ hooks: minimal
709
+ ? {
710
+ preToolUse: true,
711
+ postToolUse: true,
712
+ userPromptSubmit: false,
713
+ sessionStart: false,
714
+ stop: false,
715
+ preCompact: false,
716
+ notification: false,
717
+ timeout: 5000,
718
+ continueOnError: true,
719
+ }
720
+ : DEFAULT_INIT_OPTIONS.hooks,
721
+ };
722
+ const spinner = output.createSpinner({ text: 'Creating hooks configuration...' });
723
+ spinner.start();
724
+ const result = await executeInit(options);
725
+ if (result.success) {
726
+ spinner.succeed(`Created settings.json with ${result.summary.hooksEnabled} hooks enabled`);
727
+ }
728
+ else {
729
+ spinner.fail('Failed to create hooks configuration');
730
+ for (const error of result.errors) {
731
+ output.printError(error);
732
+ }
733
+ }
734
+ return { success: result.success, data: result };
735
+ },
736
+ };
737
+ // Upgrade subcommand - updates helpers without losing user data
738
+ const upgradeCommand = {
739
+ name: 'upgrade',
740
+ description: 'Update statusline and helpers while preserving existing data',
741
+ options: [
742
+ {
743
+ name: 'verbose',
744
+ short: 'v',
745
+ description: 'Show detailed output',
746
+ type: 'boolean',
747
+ default: false,
748
+ },
749
+ {
750
+ name: 'add-missing',
751
+ short: 'a',
752
+ description: 'Add any new skills, agents, and commands that are missing',
753
+ type: 'boolean',
754
+ default: false,
755
+ },
756
+ {
757
+ name: 'settings',
758
+ short: 's',
759
+ description: 'Merge new settings (Agent Teams, hooks) into existing settings.json',
760
+ type: 'boolean',
761
+ default: false,
762
+ },
763
+ ],
764
+ action: async (ctx) => {
765
+ const addMissing = (ctx.flags['add-missing'] || ctx.flags.addMissing);
766
+ const upgradeSettings = (ctx.flags.settings);
767
+ output.writeln();
768
+ output.writeln(output.bold('Upgrading RuFlo'));
769
+ if (addMissing && upgradeSettings) {
770
+ output.writeln(output.dim('Updates helpers, settings, and adds any missing skills/agents/commands'));
771
+ }
772
+ else if (addMissing) {
773
+ output.writeln(output.dim('Updates helpers and adds any missing skills/agents/commands'));
774
+ }
775
+ else if (upgradeSettings) {
776
+ output.writeln(output.dim('Updates helpers and merges new settings (Agent Teams, hooks)'));
777
+ }
778
+ else {
779
+ output.writeln(output.dim('Updates helpers while preserving your existing data'));
780
+ }
781
+ output.writeln();
782
+ const spinnerText = upgradeSettings
783
+ ? 'Upgrading helpers and settings...'
784
+ : (addMissing ? 'Upgrading and adding missing assets...' : 'Upgrading...');
785
+ const spinner = output.createSpinner({ text: spinnerText });
786
+ spinner.start();
787
+ try {
788
+ const result = addMissing
789
+ ? await executeUpgradeWithMissing(ctx.cwd, upgradeSettings)
790
+ : await executeUpgrade(ctx.cwd, upgradeSettings);
791
+ if (!result.success) {
792
+ spinner.fail('Upgrade failed');
793
+ for (const error of result.errors) {
794
+ output.printError(error);
795
+ }
796
+ return { success: false, exitCode: 1 };
797
+ }
798
+ spinner.succeed('Upgrade complete!');
799
+ output.writeln();
800
+ // Show what was updated
801
+ if (result.updated.length > 0) {
802
+ output.printBox(result.updated.map(f => `✓ ${f}`).join('\n'), 'Updated (latest version)');
803
+ output.writeln();
804
+ }
805
+ // Show what was created
806
+ if (result.created.length > 0) {
807
+ output.printBox(result.created.map(f => `+ ${f}`).join('\n'), 'Created (new files)');
808
+ output.writeln();
809
+ }
810
+ // Show what was preserved
811
+ if (result.preserved.length > 0 && ctx.flags.verbose) {
812
+ output.printBox(result.preserved.map(f => `• ${f}`).join('\n'), 'Preserved (existing data kept)');
813
+ output.writeln();
814
+ }
815
+ else if (result.preserved.length > 0) {
816
+ output.printInfo(`Preserved ${result.preserved.length} existing data files`);
817
+ output.writeln();
818
+ }
819
+ // Show added assets (when --add-missing flag is used)
820
+ if (result.addedSkills && result.addedSkills.length > 0) {
821
+ output.printBox(result.addedSkills.map(s => `+ ${s}`).join('\n'), `Added Skills (${result.addedSkills.length} new)`);
822
+ output.writeln();
823
+ }
824
+ if (result.addedAgents && result.addedAgents.length > 0) {
825
+ output.printBox(result.addedAgents.map(a => `+ ${a}`).join('\n'), `Added Agents (${result.addedAgents.length} new)`);
826
+ output.writeln();
827
+ }
828
+ if (result.addedCommands && result.addedCommands.length > 0) {
829
+ output.printBox(result.addedCommands.map(c => `+ ${c}`).join('\n'), `Added Commands (${result.addedCommands.length} new)`);
830
+ output.writeln();
831
+ }
832
+ // Show settings updates
833
+ if (result.settingsUpdated && result.settingsUpdated.length > 0) {
834
+ output.printBox(result.settingsUpdated.map(s => `+ ${s}`).join('\n'), 'Settings Updated');
835
+ output.writeln();
836
+ }
837
+ output.printSuccess('Your statusline helper has been updated to the latest version');
838
+ output.printInfo('Existing metrics and learning data were preserved');
839
+ // Show settings summary
840
+ if (upgradeSettings && result.settingsUpdated && result.settingsUpdated.length > 0) {
841
+ output.printSuccess('Settings.json updated with new Agent Teams configuration');
842
+ }
843
+ // Show summary for --add-missing
844
+ if (addMissing) {
845
+ const totalAdded = (result.addedSkills?.length || 0) + (result.addedAgents?.length || 0) + (result.addedCommands?.length || 0);
846
+ if (totalAdded > 0) {
847
+ output.printSuccess(`Added ${totalAdded} missing assets to your project`);
848
+ }
849
+ else {
850
+ output.printInfo('All skills, agents, and commands are already up to date');
851
+ }
852
+ }
853
+ if (ctx.flags.format === 'json') {
854
+ output.printJson(result);
855
+ }
856
+ return { success: true, data: result };
857
+ }
858
+ catch (error) {
859
+ spinner.fail('Upgrade failed');
860
+ output.printError(`Failed to upgrade: ${error instanceof Error ? error.message : String(error)}`);
861
+ return { success: false, exitCode: 1 };
862
+ }
863
+ },
864
+ };
865
+ // Main init command
866
+ export const initCommand = {
867
+ name: 'init',
868
+ description: 'Initialize RuFlo in the current directory',
869
+ subcommands: [wizardCommand, checkCommand, skillsCommand, hooksCommand, upgradeCommand],
870
+ options: [
871
+ {
872
+ name: 'force',
873
+ short: 'f',
874
+ description: 'Overwrite existing configuration',
875
+ type: 'boolean',
876
+ default: false,
877
+ },
878
+ {
879
+ name: 'minimal',
880
+ short: 'm',
881
+ description: 'Create minimal configuration',
882
+ type: 'boolean',
883
+ default: false,
884
+ },
885
+ {
886
+ name: 'full',
887
+ description: 'Create full configuration with all components',
888
+ type: 'boolean',
889
+ default: false,
890
+ },
891
+ {
892
+ name: 'skip-claude',
893
+ description: 'Skip .claude/ directory creation (runtime only)',
894
+ type: 'boolean',
895
+ default: false,
896
+ },
897
+ {
898
+ name: 'only-claude',
899
+ description: 'Only create .claude/ directory (skip runtime)',
900
+ type: 'boolean',
901
+ default: false,
902
+ },
903
+ {
904
+ name: 'start-all',
905
+ description: 'Auto-start daemon, memory, and swarm after init',
906
+ type: 'boolean',
907
+ default: false,
908
+ },
909
+ {
910
+ name: 'start-daemon',
911
+ description: 'Auto-start daemon after init',
912
+ type: 'boolean',
913
+ default: false,
914
+ },
915
+ {
916
+ name: 'with-embeddings',
917
+ description: 'Initialize ONNX embedding subsystem with hyperbolic support',
918
+ type: 'boolean',
919
+ default: false,
920
+ },
921
+ {
922
+ name: 'embedding-model',
923
+ description: 'ONNX embedding model to use',
924
+ type: 'string',
925
+ default: 'all-MiniLM-L6-v2',
926
+ choices: ['all-MiniLM-L6-v2', 'all-mpnet-base-v2'],
927
+ },
928
+ {
929
+ name: 'codex',
930
+ description: 'Initialize for OpenAI Codex CLI (creates AGENTS.md, .agents/)',
931
+ type: 'boolean',
932
+ default: false,
933
+ },
934
+ {
935
+ name: 'dual',
936
+ description: 'Initialize for both Claude Code and OpenAI Codex',
937
+ type: 'boolean',
938
+ default: false,
939
+ },
940
+ ],
941
+ examples: [
942
+ { command: '@sparkleideas/claude-flow init', description: 'Initialize with default configuration' },
943
+ { command: '@sparkleideas/claude-flow init --start-all', description: 'Initialize and start daemon, memory, swarm' },
944
+ { command: '@sparkleideas/claude-flow init --start-daemon', description: 'Initialize and start daemon only' },
945
+ { command: '@sparkleideas/claude-flow init --minimal', description: 'Initialize with minimal configuration' },
946
+ { command: '@sparkleideas/claude-flow init --full', description: 'Initialize with all components' },
947
+ { command: '@sparkleideas/claude-flow init --force', description: 'Reinitialize and overwrite existing config' },
948
+ { command: '@sparkleideas/claude-flow init --only-claude', description: 'Only create Claude Code integration' },
949
+ { command: '@sparkleideas/claude-flow init --skip-claude', description: 'Only create V3 runtime' },
950
+ { command: '@sparkleideas/claude-flow init wizard', description: 'Interactive setup wizard' },
951
+ { command: '@sparkleideas/claude-flow init --with-embeddings', description: 'Initialize with ONNX embeddings' },
952
+ { command: '@sparkleideas/claude-flow init --with-embeddings --embedding-model all-mpnet-base-v2', description: 'Use larger embedding model' },
953
+ { command: '@sparkleideas/claude-flow init skills --all', description: 'Install all available skills' },
954
+ { command: '@sparkleideas/claude-flow init hooks --minimal', description: 'Create minimal hooks configuration' },
955
+ { command: '@sparkleideas/claude-flow init upgrade', description: 'Update helpers while preserving data' },
956
+ { command: '@sparkleideas/claude-flow init upgrade --settings', description: 'Update helpers and merge new settings (Agent Teams)' },
957
+ { command: '@sparkleideas/claude-flow init upgrade --verbose', description: 'Show detailed upgrade info' },
958
+ { command: '@sparkleideas/claude-flow init --codex', description: 'Initialize for OpenAI Codex (AGENTS.md)' },
959
+ { command: '@sparkleideas/claude-flow init --codex --full', description: 'Codex init with all 137+ skills' },
960
+ { command: '@sparkleideas/claude-flow init --dual', description: 'Initialize for both Claude Code and Codex' },
961
+ ],
962
+ action: initAction,
963
+ };
964
+ export default initCommand;
965
+ //# sourceMappingURL=init.js.map