claude-flow 3.0.0-alpha.5 → 3.0.0-alpha.63

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 (429) hide show
  1. package/README.md +1573 -41
  2. package/bin/cli.js +140 -26
  3. package/bin/mcp-server.js +188 -0
  4. package/dist/src/commands/agent.d.ts +8 -0
  5. package/dist/src/commands/agent.d.ts.map +1 -0
  6. package/dist/src/commands/agent.js +819 -0
  7. package/dist/src/commands/agent.js.map +1 -0
  8. package/dist/src/commands/analyze.d.ts +19 -0
  9. package/dist/src/commands/analyze.d.ts.map +1 -0
  10. package/dist/src/commands/analyze.js +1823 -0
  11. package/dist/src/commands/analyze.js.map +1 -0
  12. package/dist/src/commands/claims.d.ts +10 -0
  13. package/dist/src/commands/claims.d.ts.map +1 -0
  14. package/dist/src/commands/claims.js +288 -0
  15. package/dist/src/commands/claims.js.map +1 -0
  16. package/dist/src/commands/completions.d.ts +10 -0
  17. package/dist/src/commands/completions.d.ts.map +1 -0
  18. package/dist/src/commands/completions.js +539 -0
  19. package/dist/src/commands/completions.js.map +1 -0
  20. package/dist/src/commands/config.d.ts +8 -0
  21. package/dist/src/commands/config.d.ts.map +1 -0
  22. package/dist/src/commands/config.js +406 -0
  23. package/dist/src/commands/config.js.map +1 -0
  24. package/dist/src/commands/daemon.d.ts +8 -0
  25. package/dist/src/commands/daemon.d.ts.map +1 -0
  26. package/dist/src/commands/daemon.js +593 -0
  27. package/dist/src/commands/daemon.js.map +1 -0
  28. package/dist/src/commands/deployment.d.ts +10 -0
  29. package/dist/src/commands/deployment.d.ts.map +1 -0
  30. package/dist/src/commands/deployment.js +289 -0
  31. package/dist/src/commands/deployment.js.map +1 -0
  32. package/dist/src/commands/doctor.d.ts +10 -0
  33. package/dist/src/commands/doctor.d.ts.map +1 -0
  34. package/dist/src/commands/doctor.js +448 -0
  35. package/dist/src/commands/doctor.js.map +1 -0
  36. package/dist/src/commands/embeddings.d.ts +18 -0
  37. package/dist/src/commands/embeddings.d.ts.map +1 -0
  38. package/dist/src/commands/embeddings.js +831 -0
  39. package/dist/src/commands/embeddings.js.map +1 -0
  40. package/dist/src/commands/hive-mind.d.ts +8 -0
  41. package/dist/src/commands/hive-mind.d.ts.map +1 -0
  42. package/dist/src/commands/hive-mind.js +844 -0
  43. package/dist/src/commands/hive-mind.js.map +1 -0
  44. package/dist/src/commands/hooks.d.ts +8 -0
  45. package/dist/src/commands/hooks.d.ts.map +1 -0
  46. package/dist/src/commands/hooks.js +2892 -0
  47. package/dist/src/commands/hooks.js.map +1 -0
  48. package/dist/src/commands/index.d.ts +89 -0
  49. package/dist/src/commands/index.d.ts.map +1 -0
  50. package/dist/src/commands/index.js +258 -0
  51. package/dist/src/commands/index.js.map +1 -0
  52. package/dist/src/commands/init.d.ts +8 -0
  53. package/dist/src/commands/init.d.ts.map +1 -0
  54. package/dist/src/commands/init.js +603 -0
  55. package/dist/src/commands/init.js.map +1 -0
  56. package/dist/src/commands/issues.d.ts +21 -0
  57. package/dist/src/commands/issues.d.ts.map +1 -0
  58. package/dist/src/commands/issues.js +567 -0
  59. package/dist/src/commands/issues.js.map +1 -0
  60. package/dist/src/commands/mcp.d.ts +11 -0
  61. package/dist/src/commands/mcp.d.ts.map +1 -0
  62. package/dist/src/commands/mcp.js +662 -0
  63. package/dist/src/commands/mcp.js.map +1 -0
  64. package/dist/src/commands/memory.d.ts +8 -0
  65. package/dist/src/commands/memory.d.ts.map +1 -0
  66. package/dist/src/commands/memory.js +1200 -0
  67. package/dist/src/commands/memory.js.map +1 -0
  68. package/dist/src/commands/migrate.d.ts +8 -0
  69. package/dist/src/commands/migrate.d.ts.map +1 -0
  70. package/dist/src/commands/migrate.js +398 -0
  71. package/dist/src/commands/migrate.js.map +1 -0
  72. package/dist/src/commands/neural.d.ts +10 -0
  73. package/dist/src/commands/neural.d.ts.map +1 -0
  74. package/dist/src/commands/neural.js +224 -0
  75. package/dist/src/commands/neural.js.map +1 -0
  76. package/dist/src/commands/performance.d.ts +10 -0
  77. package/dist/src/commands/performance.d.ts.map +1 -0
  78. package/dist/src/commands/performance.js +262 -0
  79. package/dist/src/commands/performance.js.map +1 -0
  80. package/dist/src/commands/plugins.d.ts +11 -0
  81. package/dist/src/commands/plugins.d.ts.map +1 -0
  82. package/dist/src/commands/plugins.js +630 -0
  83. package/dist/src/commands/plugins.js.map +1 -0
  84. package/dist/src/commands/process.d.ts +10 -0
  85. package/dist/src/commands/process.d.ts.map +1 -0
  86. package/dist/src/commands/process.js +641 -0
  87. package/dist/src/commands/process.js.map +1 -0
  88. package/dist/src/commands/progress.d.ts +11 -0
  89. package/dist/src/commands/progress.d.ts.map +1 -0
  90. package/dist/src/commands/progress.js +259 -0
  91. package/dist/src/commands/progress.js.map +1 -0
  92. package/dist/src/commands/providers.d.ts +10 -0
  93. package/dist/src/commands/providers.d.ts.map +1 -0
  94. package/dist/src/commands/providers.js +232 -0
  95. package/dist/src/commands/providers.js.map +1 -0
  96. package/dist/src/commands/route.d.ts +16 -0
  97. package/dist/src/commands/route.d.ts.map +1 -0
  98. package/dist/src/commands/route.js +813 -0
  99. package/dist/src/commands/route.js.map +1 -0
  100. package/dist/src/commands/security.d.ts +10 -0
  101. package/dist/src/commands/security.d.ts.map +1 -0
  102. package/dist/src/commands/security.js +261 -0
  103. package/dist/src/commands/security.js.map +1 -0
  104. package/dist/src/commands/session.d.ts +8 -0
  105. package/dist/src/commands/session.d.ts.map +1 -0
  106. package/dist/src/commands/session.js +750 -0
  107. package/dist/src/commands/session.js.map +1 -0
  108. package/dist/src/commands/start.d.ts +8 -0
  109. package/dist/src/commands/start.d.ts.map +1 -0
  110. package/dist/src/commands/start.js +418 -0
  111. package/dist/src/commands/start.js.map +1 -0
  112. package/dist/src/commands/status.d.ts +8 -0
  113. package/dist/src/commands/status.d.ts.map +1 -0
  114. package/dist/src/commands/status.js +584 -0
  115. package/dist/src/commands/status.js.map +1 -0
  116. package/dist/src/commands/swarm.d.ts +8 -0
  117. package/dist/src/commands/swarm.d.ts.map +1 -0
  118. package/dist/src/commands/swarm.js +726 -0
  119. package/dist/src/commands/swarm.js.map +1 -0
  120. package/dist/src/commands/task.d.ts +8 -0
  121. package/dist/src/commands/task.d.ts.map +1 -0
  122. package/dist/src/commands/task.js +671 -0
  123. package/dist/src/commands/task.js.map +1 -0
  124. package/dist/src/commands/transfer-store.d.ts +13 -0
  125. package/dist/src/commands/transfer-store.d.ts.map +1 -0
  126. package/dist/src/commands/transfer-store.js +428 -0
  127. package/dist/src/commands/transfer-store.js.map +1 -0
  128. package/dist/src/commands/workflow.d.ts +8 -0
  129. package/dist/src/commands/workflow.d.ts.map +1 -0
  130. package/dist/src/commands/workflow.js +617 -0
  131. package/dist/src/commands/workflow.js.map +1 -0
  132. package/dist/src/config-adapter.d.ts +15 -0
  133. package/dist/src/config-adapter.d.ts.map +1 -0
  134. package/dist/src/config-adapter.js +185 -0
  135. package/dist/src/config-adapter.js.map +1 -0
  136. package/dist/src/index.d.ts +57 -0
  137. package/dist/src/index.d.ts.map +1 -0
  138. package/dist/src/index.js +388 -0
  139. package/dist/src/index.js.map +1 -0
  140. package/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
  141. package/dist/src/infrastructure/in-memory-repositories.d.ts.map +1 -0
  142. package/dist/src/infrastructure/in-memory-repositories.js +264 -0
  143. package/dist/src/infrastructure/in-memory-repositories.js.map +1 -0
  144. package/dist/src/init/claudemd-generator.d.ts +15 -0
  145. package/dist/src/init/claudemd-generator.d.ts.map +1 -0
  146. package/dist/src/init/claudemd-generator.js +674 -0
  147. package/dist/src/init/claudemd-generator.js.map +1 -0
  148. package/dist/src/init/executor.d.ts +11 -0
  149. package/dist/src/init/executor.d.ts.map +1 -0
  150. package/dist/src/init/executor.js +763 -0
  151. package/dist/src/init/executor.js.map +1 -0
  152. package/dist/src/init/helpers-generator.d.ts +42 -0
  153. package/dist/src/init/helpers-generator.d.ts.map +1 -0
  154. package/dist/src/init/helpers-generator.js +613 -0
  155. package/dist/src/init/helpers-generator.js.map +1 -0
  156. package/dist/src/init/index.d.ts +12 -0
  157. package/dist/src/init/index.d.ts.map +1 -0
  158. package/dist/src/init/index.js +15 -0
  159. package/dist/src/init/index.js.map +1 -0
  160. package/dist/src/init/mcp-generator.d.ts +27 -0
  161. package/dist/src/init/mcp-generator.d.ts.map +1 -0
  162. package/dist/src/init/mcp-generator.js +100 -0
  163. package/dist/src/init/mcp-generator.js.map +1 -0
  164. package/dist/src/init/settings-generator.d.ts +14 -0
  165. package/dist/src/init/settings-generator.d.ts.map +1 -0
  166. package/dist/src/init/settings-generator.js +311 -0
  167. package/dist/src/init/settings-generator.js.map +1 -0
  168. package/dist/src/init/statusline-generator.d.ts +20 -0
  169. package/dist/src/init/statusline-generator.d.ts.map +1 -0
  170. package/dist/src/init/statusline-generator.js +369 -0
  171. package/dist/src/init/statusline-generator.js.map +1 -0
  172. package/dist/src/init/types.d.ts +246 -0
  173. package/dist/src/init/types.d.ts.map +1 -0
  174. package/dist/src/init/types.js +216 -0
  175. package/dist/src/init/types.js.map +1 -0
  176. package/dist/src/mcp-client.d.ts +92 -0
  177. package/dist/src/mcp-client.d.ts.map +1 -0
  178. package/dist/src/mcp-client.js +207 -0
  179. package/dist/src/mcp-client.js.map +1 -0
  180. package/dist/src/mcp-server.d.ts +158 -0
  181. package/dist/src/mcp-server.d.ts.map +1 -0
  182. package/dist/src/mcp-server.js +584 -0
  183. package/dist/src/mcp-server.js.map +1 -0
  184. package/dist/src/mcp-tools/agent-tools.d.ts +8 -0
  185. package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -0
  186. package/dist/src/mcp-tools/agent-tools.js +426 -0
  187. package/dist/src/mcp-tools/agent-tools.js.map +1 -0
  188. package/dist/src/mcp-tools/analyze-tools.d.ts +38 -0
  189. package/dist/src/mcp-tools/analyze-tools.d.ts.map +1 -0
  190. package/dist/src/mcp-tools/analyze-tools.js +317 -0
  191. package/dist/src/mcp-tools/analyze-tools.js.map +1 -0
  192. package/dist/src/mcp-tools/config-tools.d.ts +8 -0
  193. package/dist/src/mcp-tools/config-tools.d.ts.map +1 -0
  194. package/dist/src/mcp-tools/config-tools.js +333 -0
  195. package/dist/src/mcp-tools/config-tools.js.map +1 -0
  196. package/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -0
  197. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -0
  198. package/dist/src/mcp-tools/hive-mind-tools.js +447 -0
  199. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -0
  200. package/dist/src/mcp-tools/hooks-tools.d.ts +41 -0
  201. package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -0
  202. package/dist/src/mcp-tools/hooks-tools.js +1836 -0
  203. package/dist/src/mcp-tools/hooks-tools.js.map +1 -0
  204. package/dist/src/mcp-tools/index.d.ts +20 -0
  205. package/dist/src/mcp-tools/index.d.ts.map +1 -0
  206. package/dist/src/mcp-tools/index.js +19 -0
  207. package/dist/src/mcp-tools/index.js.map +1 -0
  208. package/dist/src/mcp-tools/memory-tools.d.ts +8 -0
  209. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -0
  210. package/dist/src/mcp-tools/memory-tools.js +235 -0
  211. package/dist/src/mcp-tools/memory-tools.js.map +1 -0
  212. package/dist/src/mcp-tools/progress-tools.d.ts +14 -0
  213. package/dist/src/mcp-tools/progress-tools.d.ts.map +1 -0
  214. package/dist/src/mcp-tools/progress-tools.js +343 -0
  215. package/dist/src/mcp-tools/progress-tools.js.map +1 -0
  216. package/dist/src/mcp-tools/session-tools.d.ts +8 -0
  217. package/dist/src/mcp-tools/session-tools.d.ts.map +1 -0
  218. package/dist/src/mcp-tools/session-tools.js +315 -0
  219. package/dist/src/mcp-tools/session-tools.js.map +1 -0
  220. package/dist/src/mcp-tools/swarm-tools.d.ts +8 -0
  221. package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -0
  222. package/dist/src/mcp-tools/swarm-tools.js +102 -0
  223. package/dist/src/mcp-tools/swarm-tools.js.map +1 -0
  224. package/dist/src/mcp-tools/task-tools.d.ts +8 -0
  225. package/dist/src/mcp-tools/task-tools.d.ts.map +1 -0
  226. package/dist/src/mcp-tools/task-tools.js +302 -0
  227. package/dist/src/mcp-tools/task-tools.js.map +1 -0
  228. package/dist/src/mcp-tools/transfer-tools.d.ts +14 -0
  229. package/dist/src/mcp-tools/transfer-tools.d.ts.map +1 -0
  230. package/dist/src/mcp-tools/transfer-tools.js +396 -0
  231. package/dist/src/mcp-tools/transfer-tools.js.map +1 -0
  232. package/dist/src/mcp-tools/types.d.ts +31 -0
  233. package/dist/src/mcp-tools/types.d.ts.map +1 -0
  234. package/dist/src/mcp-tools/types.js +7 -0
  235. package/dist/src/mcp-tools/types.js.map +1 -0
  236. package/dist/src/mcp-tools/workflow-tools.d.ts +8 -0
  237. package/dist/src/mcp-tools/workflow-tools.d.ts.map +1 -0
  238. package/dist/src/mcp-tools/workflow-tools.js +481 -0
  239. package/dist/src/mcp-tools/workflow-tools.js.map +1 -0
  240. package/dist/src/memory/memory-initializer.d.ts +229 -0
  241. package/dist/src/memory/memory-initializer.d.ts.map +1 -0
  242. package/dist/src/memory/memory-initializer.js +1248 -0
  243. package/dist/src/memory/memory-initializer.js.map +1 -0
  244. package/dist/src/output.d.ts +133 -0
  245. package/dist/src/output.d.ts.map +1 -0
  246. package/dist/src/output.js +513 -0
  247. package/dist/src/output.js.map +1 -0
  248. package/dist/src/parser.d.ts +41 -0
  249. package/dist/src/parser.d.ts.map +1 -0
  250. package/dist/src/parser.js +353 -0
  251. package/dist/src/parser.js.map +1 -0
  252. package/dist/src/plugins/store/discovery.d.ts +73 -0
  253. package/dist/src/plugins/store/discovery.d.ts.map +1 -0
  254. package/dist/src/plugins/store/discovery.js +568 -0
  255. package/dist/src/plugins/store/discovery.js.map +1 -0
  256. package/dist/src/plugins/store/index.d.ts +76 -0
  257. package/dist/src/plugins/store/index.d.ts.map +1 -0
  258. package/dist/src/plugins/store/index.js +141 -0
  259. package/dist/src/plugins/store/index.js.map +1 -0
  260. package/dist/src/plugins/store/search.d.ts +46 -0
  261. package/dist/src/plugins/store/search.d.ts.map +1 -0
  262. package/dist/src/plugins/store/search.js +230 -0
  263. package/dist/src/plugins/store/search.js.map +1 -0
  264. package/dist/src/plugins/store/types.d.ts +274 -0
  265. package/dist/src/plugins/store/types.d.ts.map +1 -0
  266. package/dist/src/plugins/store/types.js +7 -0
  267. package/dist/src/plugins/store/types.js.map +1 -0
  268. package/dist/src/plugins/tests/demo-plugin-store.d.ts +7 -0
  269. package/dist/src/plugins/tests/demo-plugin-store.d.ts.map +1 -0
  270. package/dist/src/plugins/tests/demo-plugin-store.js +126 -0
  271. package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -0
  272. package/dist/src/plugins/tests/standalone-test.d.ts +12 -0
  273. package/dist/src/plugins/tests/standalone-test.d.ts.map +1 -0
  274. package/dist/src/plugins/tests/standalone-test.js +188 -0
  275. package/dist/src/plugins/tests/standalone-test.js.map +1 -0
  276. package/dist/src/plugins/tests/test-plugin-store.d.ts +7 -0
  277. package/dist/src/plugins/tests/test-plugin-store.d.ts.map +1 -0
  278. package/dist/src/plugins/tests/test-plugin-store.js +206 -0
  279. package/dist/src/plugins/tests/test-plugin-store.js.map +1 -0
  280. package/dist/src/prompt.d.ts +44 -0
  281. package/dist/src/prompt.d.ts.map +1 -0
  282. package/dist/src/prompt.js +501 -0
  283. package/dist/src/prompt.js.map +1 -0
  284. package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
  285. package/dist/src/ruvector/ast-analyzer.d.ts.map +1 -0
  286. package/dist/src/ruvector/ast-analyzer.js +277 -0
  287. package/dist/src/ruvector/ast-analyzer.js.map +1 -0
  288. package/dist/src/ruvector/coverage-router.d.ts +160 -0
  289. package/dist/src/ruvector/coverage-router.d.ts.map +1 -0
  290. package/dist/src/ruvector/coverage-router.js +529 -0
  291. package/dist/src/ruvector/coverage-router.js.map +1 -0
  292. package/dist/src/ruvector/coverage-tools.d.ts +33 -0
  293. package/dist/src/ruvector/coverage-tools.d.ts.map +1 -0
  294. package/dist/src/ruvector/coverage-tools.js +157 -0
  295. package/dist/src/ruvector/coverage-tools.js.map +1 -0
  296. package/dist/src/ruvector/diff-classifier.d.ts +175 -0
  297. package/dist/src/ruvector/diff-classifier.d.ts.map +1 -0
  298. package/dist/src/ruvector/diff-classifier.js +698 -0
  299. package/dist/src/ruvector/diff-classifier.js.map +1 -0
  300. package/dist/src/ruvector/graph-analyzer.d.ts +187 -0
  301. package/dist/src/ruvector/graph-analyzer.d.ts.map +1 -0
  302. package/dist/src/ruvector/graph-analyzer.js +929 -0
  303. package/dist/src/ruvector/graph-analyzer.js.map +1 -0
  304. package/dist/src/ruvector/index.d.ts +27 -0
  305. package/dist/src/ruvector/index.d.ts.map +1 -0
  306. package/dist/src/ruvector/index.js +53 -0
  307. package/dist/src/ruvector/index.js.map +1 -0
  308. package/dist/src/ruvector/q-learning-router.d.ts +211 -0
  309. package/dist/src/ruvector/q-learning-router.d.ts.map +1 -0
  310. package/dist/src/ruvector/q-learning-router.js +681 -0
  311. package/dist/src/ruvector/q-learning-router.js.map +1 -0
  312. package/dist/src/ruvector/vector-db.d.ts +69 -0
  313. package/dist/src/ruvector/vector-db.d.ts.map +1 -0
  314. package/dist/src/ruvector/vector-db.js +243 -0
  315. package/dist/src/ruvector/vector-db.js.map +1 -0
  316. package/dist/src/services/claim-service.d.ts +204 -0
  317. package/dist/src/services/claim-service.d.ts.map +1 -0
  318. package/dist/src/services/claim-service.js +818 -0
  319. package/dist/src/services/claim-service.js.map +1 -0
  320. package/dist/src/services/container-worker-pool.d.ts +197 -0
  321. package/dist/src/services/container-worker-pool.d.ts.map +1 -0
  322. package/dist/src/services/container-worker-pool.js +581 -0
  323. package/dist/src/services/container-worker-pool.js.map +1 -0
  324. package/dist/src/services/headless-worker-executor.d.ts +304 -0
  325. package/dist/src/services/headless-worker-executor.d.ts.map +1 -0
  326. package/dist/src/services/headless-worker-executor.js +997 -0
  327. package/dist/src/services/headless-worker-executor.js.map +1 -0
  328. package/dist/src/services/index.d.ts +13 -0
  329. package/dist/src/services/index.d.ts.map +1 -0
  330. package/dist/src/services/index.js +11 -0
  331. package/dist/src/services/index.js.map +1 -0
  332. package/dist/src/services/worker-daemon.d.ts +203 -0
  333. package/dist/src/services/worker-daemon.d.ts.map +1 -0
  334. package/dist/src/services/worker-daemon.js +745 -0
  335. package/dist/src/services/worker-daemon.js.map +1 -0
  336. package/dist/src/services/worker-queue.d.ts +194 -0
  337. package/dist/src/services/worker-queue.d.ts.map +1 -0
  338. package/dist/src/services/worker-queue.js +511 -0
  339. package/dist/src/services/worker-queue.js.map +1 -0
  340. package/dist/src/suggest.d.ts +53 -0
  341. package/dist/src/suggest.d.ts.map +1 -0
  342. package/dist/src/suggest.js +200 -0
  343. package/dist/src/suggest.js.map +1 -0
  344. package/dist/src/transfer/anonymization/index.d.ts +25 -0
  345. package/dist/src/transfer/anonymization/index.d.ts.map +1 -0
  346. package/dist/src/transfer/anonymization/index.js +175 -0
  347. package/dist/src/transfer/anonymization/index.js.map +1 -0
  348. package/dist/src/transfer/deploy-seraphine.d.ts +13 -0
  349. package/dist/src/transfer/deploy-seraphine.d.ts.map +1 -0
  350. package/dist/src/transfer/deploy-seraphine.js +205 -0
  351. package/dist/src/transfer/deploy-seraphine.js.map +1 -0
  352. package/dist/src/transfer/export.d.ts +25 -0
  353. package/dist/src/transfer/export.d.ts.map +1 -0
  354. package/dist/src/transfer/export.js +113 -0
  355. package/dist/src/transfer/export.js.map +1 -0
  356. package/dist/src/transfer/index.d.ts +12 -0
  357. package/dist/src/transfer/index.d.ts.map +1 -0
  358. package/dist/src/transfer/index.js +31 -0
  359. package/dist/src/transfer/index.js.map +1 -0
  360. package/dist/src/transfer/ipfs/client.d.ts +31 -0
  361. package/dist/src/transfer/ipfs/client.d.ts.map +1 -0
  362. package/dist/src/transfer/ipfs/client.js +74 -0
  363. package/dist/src/transfer/ipfs/client.js.map +1 -0
  364. package/dist/src/transfer/ipfs/upload.d.ts +95 -0
  365. package/dist/src/transfer/ipfs/upload.d.ts.map +1 -0
  366. package/dist/src/transfer/ipfs/upload.js +410 -0
  367. package/dist/src/transfer/ipfs/upload.js.map +1 -0
  368. package/dist/src/transfer/models/seraphine.d.ts +72 -0
  369. package/dist/src/transfer/models/seraphine.d.ts.map +1 -0
  370. package/dist/src/transfer/models/seraphine.js +373 -0
  371. package/dist/src/transfer/models/seraphine.js.map +1 -0
  372. package/dist/src/transfer/serialization/cfp.d.ts +49 -0
  373. package/dist/src/transfer/serialization/cfp.d.ts.map +1 -0
  374. package/dist/src/transfer/serialization/cfp.js +180 -0
  375. package/dist/src/transfer/serialization/cfp.js.map +1 -0
  376. package/dist/src/transfer/store/discovery.d.ts +84 -0
  377. package/dist/src/transfer/store/discovery.d.ts.map +1 -0
  378. package/dist/src/transfer/store/discovery.js +275 -0
  379. package/dist/src/transfer/store/discovery.js.map +1 -0
  380. package/dist/src/transfer/store/download.d.ts +70 -0
  381. package/dist/src/transfer/store/download.d.ts.map +1 -0
  382. package/dist/src/transfer/store/download.js +295 -0
  383. package/dist/src/transfer/store/download.js.map +1 -0
  384. package/dist/src/transfer/store/index.d.ts +84 -0
  385. package/dist/src/transfer/store/index.d.ts.map +1 -0
  386. package/dist/src/transfer/store/index.js +153 -0
  387. package/dist/src/transfer/store/index.js.map +1 -0
  388. package/dist/src/transfer/store/publish.d.ts +76 -0
  389. package/dist/src/transfer/store/publish.d.ts.map +1 -0
  390. package/dist/src/transfer/store/publish.js +262 -0
  391. package/dist/src/transfer/store/publish.js.map +1 -0
  392. package/dist/src/transfer/store/registry.d.ts +58 -0
  393. package/dist/src/transfer/store/registry.d.ts.map +1 -0
  394. package/dist/src/transfer/store/registry.js +285 -0
  395. package/dist/src/transfer/store/registry.js.map +1 -0
  396. package/dist/src/transfer/store/search.d.ts +54 -0
  397. package/dist/src/transfer/store/search.d.ts.map +1 -0
  398. package/dist/src/transfer/store/search.js +232 -0
  399. package/dist/src/transfer/store/search.js.map +1 -0
  400. package/dist/src/transfer/store/tests/standalone-test.d.ts +12 -0
  401. package/dist/src/transfer/store/tests/standalone-test.d.ts.map +1 -0
  402. package/dist/src/transfer/store/tests/standalone-test.js +190 -0
  403. package/dist/src/transfer/store/tests/standalone-test.js.map +1 -0
  404. package/dist/src/transfer/store/types.d.ts +193 -0
  405. package/dist/src/transfer/store/types.d.ts.map +1 -0
  406. package/dist/src/transfer/store/types.js +6 -0
  407. package/dist/src/transfer/store/types.js.map +1 -0
  408. package/dist/src/transfer/test-seraphine.d.ts +6 -0
  409. package/dist/src/transfer/test-seraphine.d.ts.map +1 -0
  410. package/dist/src/transfer/test-seraphine.js +105 -0
  411. package/dist/src/transfer/test-seraphine.js.map +1 -0
  412. package/dist/src/transfer/tests/test-store.d.ts +7 -0
  413. package/dist/src/transfer/tests/test-store.d.ts.map +1 -0
  414. package/dist/src/transfer/tests/test-store.js +214 -0
  415. package/dist/src/transfer/tests/test-store.js.map +1 -0
  416. package/dist/src/transfer/types.d.ts +245 -0
  417. package/dist/src/transfer/types.d.ts.map +1 -0
  418. package/dist/src/transfer/types.js +6 -0
  419. package/dist/src/transfer/types.js.map +1 -0
  420. package/dist/src/types.d.ts +198 -0
  421. package/dist/src/types.d.ts.map +1 -0
  422. package/dist/src/types.js +38 -0
  423. package/dist/src/types.js.map +1 -0
  424. package/dist/tsconfig.tsbuildinfo +1 -0
  425. package/package.json +33 -47
  426. package/dist/index.d.ts +0 -30
  427. package/dist/index.d.ts.map +0 -1
  428. package/dist/index.js +0 -30
  429. package/dist/index.js.map +0 -1
@@ -0,0 +1,593 @@
1
+ /**
2
+ * V3 CLI Daemon Command
3
+ * Manages background worker daemon (Node.js-based, similar to shell helpers)
4
+ */
5
+ import { output } from '../output.js';
6
+ import { getDaemon, startDaemon, stopDaemon } from '../services/worker-daemon.js';
7
+ import { spawn } from 'child_process';
8
+ import { fileURLToPath } from 'url';
9
+ import { dirname, join, resolve } from 'path';
10
+ import * as fs from 'fs';
11
+ // Start daemon subcommand
12
+ const startCommand = {
13
+ name: 'start',
14
+ description: 'Start the worker daemon with all enabled background workers',
15
+ options: [
16
+ { name: 'workers', short: 'w', type: 'string', description: 'Comma-separated list of workers to enable (default: map,audit,optimize,consolidate,testgaps)' },
17
+ { name: 'quiet', short: 'q', type: 'boolean', description: 'Suppress output' },
18
+ { name: 'background', short: 'b', type: 'boolean', description: 'Run daemon in background (detached process)', default: true },
19
+ { name: 'foreground', short: 'f', type: 'boolean', description: 'Run daemon in foreground (blocks terminal)' },
20
+ { name: 'headless', type: 'boolean', description: 'Enable headless worker execution (E2B sandbox)' },
21
+ { name: 'sandbox', type: 'string', description: 'Default sandbox mode for headless workers', choices: ['strict', 'permissive', 'disabled'] },
22
+ ],
23
+ examples: [
24
+ { command: 'claude-flow daemon start', description: 'Start daemon in background (default)' },
25
+ { command: 'claude-flow daemon start --foreground', description: 'Start in foreground (blocks terminal)' },
26
+ { command: 'claude-flow daemon start -w map,audit,optimize', description: 'Start with specific workers' },
27
+ { command: 'claude-flow daemon start --headless --sandbox strict', description: 'Start with headless workers in strict sandbox' },
28
+ ],
29
+ action: async (ctx) => {
30
+ const quiet = ctx.flags.quiet;
31
+ const foreground = ctx.flags.foreground;
32
+ const projectRoot = process.cwd();
33
+ const isDaemonProcess = process.env.CLAUDE_FLOW_DAEMON === '1';
34
+ // Check if background daemon already running (skip if we ARE the daemon process)
35
+ if (!isDaemonProcess) {
36
+ const bgPid = getBackgroundDaemonPid(projectRoot);
37
+ if (bgPid && isProcessRunning(bgPid)) {
38
+ if (!quiet) {
39
+ output.printWarning(`Daemon already running in background (PID: ${bgPid})`);
40
+ }
41
+ return { success: true };
42
+ }
43
+ }
44
+ // Background mode (default): fork a detached process
45
+ if (!foreground) {
46
+ return startBackgroundDaemon(projectRoot, quiet);
47
+ }
48
+ // Foreground mode: run in current process (blocks terminal)
49
+ try {
50
+ const stateDir = join(projectRoot, '.claude-flow');
51
+ const pidFile = join(stateDir, 'daemon.pid');
52
+ // Ensure state directory exists
53
+ if (!fs.existsSync(stateDir)) {
54
+ fs.mkdirSync(stateDir, { recursive: true });
55
+ }
56
+ // Write PID file for foreground mode
57
+ fs.writeFileSync(pidFile, String(process.pid));
58
+ // Clean up PID file on exit
59
+ const cleanup = () => {
60
+ try {
61
+ if (fs.existsSync(pidFile)) {
62
+ fs.unlinkSync(pidFile);
63
+ }
64
+ }
65
+ catch { /* ignore */ }
66
+ };
67
+ process.on('exit', cleanup);
68
+ process.on('SIGINT', () => { cleanup(); process.exit(0); });
69
+ process.on('SIGTERM', () => { cleanup(); process.exit(0); });
70
+ if (!quiet) {
71
+ const spinner = output.createSpinner({ text: 'Starting worker daemon...', spinner: 'dots' });
72
+ spinner.start();
73
+ const daemon = await startDaemon(projectRoot);
74
+ const status = daemon.getStatus();
75
+ spinner.succeed('Worker daemon started (foreground mode)');
76
+ output.writeln();
77
+ output.printBox([
78
+ `PID: ${status.pid}`,
79
+ `Started: ${status.startedAt?.toISOString()}`,
80
+ `Workers: ${status.config.workers.filter(w => w.enabled).length} enabled`,
81
+ `Max Concurrent: ${status.config.maxConcurrent}`,
82
+ ].join('\n'), 'Daemon Status');
83
+ output.writeln();
84
+ output.writeln(output.bold('Scheduled Workers'));
85
+ output.printTable({
86
+ columns: [
87
+ { key: 'type', header: 'Worker', width: 15 },
88
+ { key: 'interval', header: 'Interval', width: 12 },
89
+ { key: 'priority', header: 'Priority', width: 10 },
90
+ { key: 'description', header: 'Description', width: 30 },
91
+ ],
92
+ data: status.config.workers
93
+ .filter(w => w.enabled)
94
+ .map(w => ({
95
+ type: output.highlight(w.type),
96
+ interval: `${Math.round(w.intervalMs / 60000)}min`,
97
+ priority: w.priority === 'critical' ? output.error(w.priority) :
98
+ w.priority === 'high' ? output.warning(w.priority) :
99
+ output.dim(w.priority),
100
+ description: w.description,
101
+ })),
102
+ });
103
+ output.writeln();
104
+ output.writeln(output.dim('Press Ctrl+C to stop daemon'));
105
+ // Listen for worker events
106
+ daemon.on('worker:start', ({ type }) => {
107
+ output.writeln(output.dim(`[daemon] Worker starting: ${type}`));
108
+ });
109
+ daemon.on('worker:complete', ({ type, durationMs }) => {
110
+ output.writeln(output.success(`[daemon] Worker completed: ${type} (${durationMs}ms)`));
111
+ });
112
+ daemon.on('worker:error', ({ type, error }) => {
113
+ output.writeln(output.error(`[daemon] Worker failed: ${type} - ${error}`));
114
+ });
115
+ // Keep process alive
116
+ await new Promise(() => { }); // Never resolves - daemon runs until killed
117
+ }
118
+ else {
119
+ await startDaemon(projectRoot);
120
+ await new Promise(() => { }); // Keep alive
121
+ }
122
+ return { success: true };
123
+ }
124
+ catch (error) {
125
+ output.printError(`Failed to start daemon: ${error instanceof Error ? error.message : String(error)}`);
126
+ return { success: false, exitCode: 1 };
127
+ }
128
+ },
129
+ };
130
+ /**
131
+ * Validate path for security - prevents path traversal and injection
132
+ */
133
+ function validatePath(path, label) {
134
+ // Must be absolute after resolution
135
+ const resolved = resolve(path);
136
+ // Check for null bytes (injection attack)
137
+ if (path.includes('\0')) {
138
+ throw new Error(`${label} contains null bytes`);
139
+ }
140
+ // Check for shell metacharacters in path components
141
+ if (/[;&|`$<>]/.test(path)) {
142
+ throw new Error(`${label} contains shell metacharacters`);
143
+ }
144
+ // Prevent path traversal outside expected directories
145
+ if (!resolved.includes('.claude-flow') && !resolved.includes('bin')) {
146
+ // Allow only paths within project structure
147
+ const cwd = process.cwd();
148
+ if (!resolved.startsWith(cwd)) {
149
+ throw new Error(`${label} escapes project directory`);
150
+ }
151
+ }
152
+ }
153
+ /**
154
+ * Start daemon as a detached background process
155
+ */
156
+ async function startBackgroundDaemon(projectRoot, quiet) {
157
+ // Validate and resolve project root
158
+ const resolvedRoot = resolve(projectRoot);
159
+ validatePath(resolvedRoot, 'Project root');
160
+ const stateDir = join(resolvedRoot, '.claude-flow');
161
+ const pidFile = join(stateDir, 'daemon.pid');
162
+ const logFile = join(stateDir, 'daemon.log');
163
+ // Validate all paths
164
+ validatePath(stateDir, 'State directory');
165
+ validatePath(pidFile, 'PID file');
166
+ validatePath(logFile, 'Log file');
167
+ // Ensure state directory exists
168
+ if (!fs.existsSync(stateDir)) {
169
+ fs.mkdirSync(stateDir, { recursive: true });
170
+ }
171
+ // Get path to CLI (from dist/src/commands/daemon.js -> bin/cli.js)
172
+ const __filename = fileURLToPath(import.meta.url);
173
+ const __dirname = dirname(__filename);
174
+ // dist/src/commands -> dist/src -> dist -> package root -> bin/cli.js
175
+ const cliPath = resolve(join(__dirname, '..', '..', '..', 'bin', 'cli.js'));
176
+ validatePath(cliPath, 'CLI path');
177
+ // Verify CLI path exists
178
+ if (!fs.existsSync(cliPath)) {
179
+ output.printError(`CLI not found at: ${cliPath}`);
180
+ return { success: false, exitCode: 1 };
181
+ }
182
+ // Use spawn with explicit arguments instead of shell string interpolation
183
+ // This prevents command injection via paths
184
+ const child = spawn(process.execPath, [
185
+ cliPath,
186
+ 'daemon', 'start', '--foreground', '--quiet'
187
+ ], {
188
+ cwd: resolvedRoot,
189
+ detached: true,
190
+ stdio: ['ignore', fs.openSync(logFile, 'a'), fs.openSync(logFile, 'a')],
191
+ env: { ...process.env, CLAUDE_FLOW_DAEMON: '1' },
192
+ });
193
+ // Get PID from spawned process directly (no shell echo needed)
194
+ const pid = child.pid;
195
+ if (!pid || pid <= 0) {
196
+ output.printError('Failed to get daemon PID');
197
+ return { success: false, exitCode: 1 };
198
+ }
199
+ // Save PID
200
+ fs.writeFileSync(pidFile, String(pid));
201
+ if (!quiet) {
202
+ output.printSuccess(`Daemon started in background (PID: ${pid})`);
203
+ output.printInfo(`Logs: ${logFile}`);
204
+ output.printInfo(`Stop with: claude-flow daemon stop`);
205
+ }
206
+ // Unref so parent can exit immediately
207
+ child.unref();
208
+ return { success: true };
209
+ }
210
+ // Stop daemon subcommand
211
+ const stopCommand = {
212
+ name: 'stop',
213
+ description: 'Stop the worker daemon and all background workers',
214
+ options: [
215
+ { name: 'quiet', short: 'q', type: 'boolean', description: 'Suppress output' },
216
+ ],
217
+ examples: [
218
+ { command: 'claude-flow daemon stop', description: 'Stop the daemon' },
219
+ ],
220
+ action: async (ctx) => {
221
+ const quiet = ctx.flags.quiet;
222
+ const projectRoot = process.cwd();
223
+ try {
224
+ if (!quiet) {
225
+ const spinner = output.createSpinner({ text: 'Stopping worker daemon...', spinner: 'dots' });
226
+ spinner.start();
227
+ // Try to stop in-process daemon first
228
+ await stopDaemon();
229
+ // Also kill any background daemon by PID
230
+ const killed = await killBackgroundDaemon(projectRoot);
231
+ spinner.succeed(killed ? 'Worker daemon stopped' : 'Worker daemon was not running');
232
+ }
233
+ else {
234
+ await stopDaemon();
235
+ await killBackgroundDaemon(projectRoot);
236
+ }
237
+ return { success: true };
238
+ }
239
+ catch (error) {
240
+ output.printError(`Failed to stop daemon: ${error instanceof Error ? error.message : String(error)}`);
241
+ return { success: false, exitCode: 1 };
242
+ }
243
+ },
244
+ };
245
+ /**
246
+ * Kill background daemon process using PID file
247
+ */
248
+ async function killBackgroundDaemon(projectRoot) {
249
+ const pidFile = join(projectRoot, '.claude-flow', 'daemon.pid');
250
+ if (!fs.existsSync(pidFile)) {
251
+ return false;
252
+ }
253
+ try {
254
+ const pid = parseInt(fs.readFileSync(pidFile, 'utf-8').trim(), 10);
255
+ if (isNaN(pid)) {
256
+ fs.unlinkSync(pidFile);
257
+ return false;
258
+ }
259
+ // Check if process is running
260
+ try {
261
+ process.kill(pid, 0); // Signal 0 = check if alive
262
+ }
263
+ catch {
264
+ // Process not running, clean up stale PID file
265
+ fs.unlinkSync(pidFile);
266
+ return false;
267
+ }
268
+ // Kill the process
269
+ process.kill(pid, 'SIGTERM');
270
+ // Wait a moment then force kill if needed
271
+ await new Promise(resolve => setTimeout(resolve, 1000));
272
+ try {
273
+ process.kill(pid, 0);
274
+ // Still alive, force kill
275
+ process.kill(pid, 'SIGKILL');
276
+ }
277
+ catch {
278
+ // Process terminated
279
+ }
280
+ // Clean up PID file
281
+ if (fs.existsSync(pidFile)) {
282
+ fs.unlinkSync(pidFile);
283
+ }
284
+ return true;
285
+ }
286
+ catch (error) {
287
+ // Clean up PID file on any error
288
+ if (fs.existsSync(pidFile)) {
289
+ fs.unlinkSync(pidFile);
290
+ }
291
+ return false;
292
+ }
293
+ }
294
+ /**
295
+ * Get PID of background daemon from PID file
296
+ */
297
+ function getBackgroundDaemonPid(projectRoot) {
298
+ const pidFile = join(projectRoot, '.claude-flow', 'daemon.pid');
299
+ if (!fs.existsSync(pidFile)) {
300
+ return null;
301
+ }
302
+ try {
303
+ const pid = parseInt(fs.readFileSync(pidFile, 'utf-8').trim(), 10);
304
+ return isNaN(pid) ? null : pid;
305
+ }
306
+ catch {
307
+ return null;
308
+ }
309
+ }
310
+ /**
311
+ * Check if a process is running
312
+ */
313
+ function isProcessRunning(pid) {
314
+ try {
315
+ process.kill(pid, 0); // Signal 0 = check if alive
316
+ return true;
317
+ }
318
+ catch {
319
+ return false;
320
+ }
321
+ }
322
+ // Status subcommand
323
+ const statusCommand = {
324
+ name: 'status',
325
+ description: 'Show daemon and worker status',
326
+ options: [
327
+ { name: 'verbose', short: 'v', type: 'boolean', description: 'Show detailed worker statistics' },
328
+ { name: 'show-modes', type: 'boolean', description: 'Show worker execution modes (local/headless) and sandbox settings' },
329
+ ],
330
+ examples: [
331
+ { command: 'claude-flow daemon status', description: 'Show daemon status' },
332
+ { command: 'claude-flow daemon status -v', description: 'Show detailed status' },
333
+ { command: 'claude-flow daemon status --show-modes', description: 'Show worker execution modes' },
334
+ ],
335
+ action: async (ctx) => {
336
+ const verbose = ctx.flags.verbose;
337
+ const showModes = ctx.flags['show-modes'];
338
+ const projectRoot = process.cwd();
339
+ try {
340
+ const daemon = getDaemon(projectRoot);
341
+ const status = daemon.getStatus();
342
+ // Also check for background daemon
343
+ const bgPid = getBackgroundDaemonPid(projectRoot);
344
+ const bgRunning = bgPid ? isProcessRunning(bgPid) : false;
345
+ const isRunning = status.running || bgRunning;
346
+ const displayPid = bgPid || status.pid;
347
+ output.writeln();
348
+ // Daemon status box
349
+ const statusIcon = isRunning ? output.success('●') : output.error('○');
350
+ const statusText = isRunning ? output.success('RUNNING') : output.error('STOPPED');
351
+ const mode = bgRunning ? output.dim(' (background)') : status.running ? output.dim(' (foreground)') : '';
352
+ output.printBox([
353
+ `Status: ${statusIcon} ${statusText}${mode}`,
354
+ `PID: ${displayPid}`,
355
+ status.startedAt ? `Started: ${status.startedAt.toISOString()}` : '',
356
+ `Workers Enabled: ${status.config.workers.filter(w => w.enabled).length}`,
357
+ `Max Concurrent: ${status.config.maxConcurrent}`,
358
+ ].filter(Boolean).join('\n'), 'Worker Daemon');
359
+ output.writeln();
360
+ output.writeln(output.bold('Worker Status'));
361
+ const workerData = status.config.workers.map(w => {
362
+ const state = status.workers.get(w.type);
363
+ // Check for headless mode from worker config or state
364
+ const isHeadless = w.headless || state?.headless || false;
365
+ const sandboxMode = w.sandbox || state?.sandbox || null;
366
+ return {
367
+ type: w.enabled ? output.highlight(w.type) : output.dim(w.type),
368
+ enabled: w.enabled ? output.success('✓') : output.dim('○'),
369
+ status: state?.isRunning ? output.warning('running') :
370
+ w.enabled ? output.success('idle') : output.dim('disabled'),
371
+ runs: state?.runCount ?? 0,
372
+ success: state ? `${Math.round((state.successCount / Math.max(state.runCount, 1)) * 100)}%` : '-',
373
+ lastRun: state?.lastRun ? formatTimeAgo(state.lastRun) : output.dim('never'),
374
+ nextRun: state?.nextRun && w.enabled ? formatTimeUntil(state.nextRun) : output.dim('-'),
375
+ mode: isHeadless ? output.highlight('headless') : output.dim('local'),
376
+ sandbox: isHeadless ? (sandboxMode || 'strict') : output.dim('-'),
377
+ };
378
+ });
379
+ // Build columns based on --show-modes flag
380
+ const baseColumns = [
381
+ { key: 'type', header: 'Worker', width: 12 },
382
+ { key: 'enabled', header: 'On', width: 4 },
383
+ { key: 'status', header: 'Status', width: 10 },
384
+ { key: 'runs', header: 'Runs', width: 6 },
385
+ { key: 'success', header: 'Success', width: 8 },
386
+ { key: 'lastRun', header: 'Last Run', width: 12 },
387
+ { key: 'nextRun', header: 'Next Run', width: 12 },
388
+ ];
389
+ const modeColumns = showModes ? [
390
+ { key: 'mode', header: 'Mode', width: 10 },
391
+ { key: 'sandbox', header: 'Sandbox', width: 12 },
392
+ ] : [];
393
+ output.printTable({
394
+ columns: [...baseColumns, ...modeColumns],
395
+ data: workerData,
396
+ });
397
+ if (verbose) {
398
+ output.writeln();
399
+ output.writeln(output.bold('Worker Configuration'));
400
+ output.printTable({
401
+ columns: [
402
+ { key: 'type', header: 'Worker', width: 12 },
403
+ { key: 'interval', header: 'Interval', width: 10 },
404
+ { key: 'priority', header: 'Priority', width: 10 },
405
+ { key: 'avgDuration', header: 'Avg Duration', width: 12 },
406
+ { key: 'description', header: 'Description', width: 30 },
407
+ ],
408
+ data: status.config.workers.map(w => {
409
+ const state = status.workers.get(w.type);
410
+ return {
411
+ type: w.type,
412
+ interval: `${Math.round(w.intervalMs / 60000)}min`,
413
+ priority: w.priority,
414
+ avgDuration: state?.averageDurationMs ? `${Math.round(state.averageDurationMs)}ms` : '-',
415
+ description: w.description,
416
+ };
417
+ }),
418
+ });
419
+ }
420
+ return { success: true, data: status };
421
+ }
422
+ catch (error) {
423
+ // Daemon not initialized
424
+ output.writeln();
425
+ output.printBox([
426
+ `Status: ${output.error('○')} ${output.error('NOT INITIALIZED')}`,
427
+ '',
428
+ 'Run "claude-flow daemon start" to start the daemon',
429
+ ].join('\n'), 'Worker Daemon');
430
+ return { success: true };
431
+ }
432
+ },
433
+ };
434
+ // Trigger subcommand - manually run a worker
435
+ const triggerCommand = {
436
+ name: 'trigger',
437
+ description: 'Manually trigger a specific worker',
438
+ options: [
439
+ { name: 'worker', short: 'w', type: 'string', description: 'Worker type to trigger', required: true },
440
+ { name: 'headless', type: 'boolean', description: 'Run triggered worker in headless mode (E2B sandbox)' },
441
+ ],
442
+ examples: [
443
+ { command: 'claude-flow daemon trigger -w map', description: 'Trigger the map worker' },
444
+ { command: 'claude-flow daemon trigger -w audit', description: 'Trigger security audit' },
445
+ { command: 'claude-flow daemon trigger -w audit --headless', description: 'Trigger audit in headless sandbox' },
446
+ ],
447
+ action: async (ctx) => {
448
+ const workerType = ctx.flags.worker;
449
+ if (!workerType) {
450
+ output.printError('Worker type is required. Use --worker or -w flag.');
451
+ output.writeln();
452
+ output.writeln('Available workers: map, audit, optimize, consolidate, testgaps, predict, document, ultralearn, refactor, benchmark, deepdive, preload');
453
+ return { success: false, exitCode: 1 };
454
+ }
455
+ try {
456
+ const daemon = getDaemon(process.cwd());
457
+ const spinner = output.createSpinner({ text: `Running ${workerType} worker...`, spinner: 'dots' });
458
+ spinner.start();
459
+ const result = await daemon.triggerWorker(workerType);
460
+ if (result.success) {
461
+ spinner.succeed(`Worker ${workerType} completed in ${result.durationMs}ms`);
462
+ if (result.output) {
463
+ output.writeln();
464
+ output.writeln(output.bold('Output'));
465
+ output.printJson(result.output);
466
+ }
467
+ }
468
+ else {
469
+ spinner.fail(`Worker ${workerType} failed: ${result.error}`);
470
+ }
471
+ return { success: result.success, data: result };
472
+ }
473
+ catch (error) {
474
+ output.printError(`Failed to trigger worker: ${error instanceof Error ? error.message : String(error)}`);
475
+ return { success: false, exitCode: 1 };
476
+ }
477
+ },
478
+ };
479
+ // Enable/disable worker subcommand
480
+ const enableCommand = {
481
+ name: 'enable',
482
+ description: 'Enable or disable a specific worker',
483
+ options: [
484
+ { name: 'worker', short: 'w', type: 'string', description: 'Worker type', required: true },
485
+ { name: 'disable', short: 'd', type: 'boolean', description: 'Disable instead of enable' },
486
+ ],
487
+ examples: [
488
+ { command: 'claude-flow daemon enable -w predict', description: 'Enable predict worker' },
489
+ { command: 'claude-flow daemon enable -w document --disable', description: 'Disable document worker' },
490
+ ],
491
+ action: async (ctx) => {
492
+ const workerType = ctx.flags.worker;
493
+ const disable = ctx.flags.disable;
494
+ if (!workerType) {
495
+ output.printError('Worker type is required. Use --worker or -w flag.');
496
+ return { success: false, exitCode: 1 };
497
+ }
498
+ try {
499
+ const daemon = getDaemon(process.cwd());
500
+ daemon.setWorkerEnabled(workerType, !disable);
501
+ output.printSuccess(`Worker ${workerType} ${disable ? 'disabled' : 'enabled'}`);
502
+ return { success: true };
503
+ }
504
+ catch (error) {
505
+ output.printError(`Failed to ${disable ? 'disable' : 'enable'} worker: ${error instanceof Error ? error.message : String(error)}`);
506
+ return { success: false, exitCode: 1 };
507
+ }
508
+ },
509
+ };
510
+ // Helper functions for time formatting
511
+ function formatTimeAgo(date) {
512
+ const seconds = Math.floor((Date.now() - date.getTime()) / 1000);
513
+ if (seconds < 60)
514
+ return `${seconds}s ago`;
515
+ if (seconds < 3600)
516
+ return `${Math.floor(seconds / 60)}m ago`;
517
+ if (seconds < 86400)
518
+ return `${Math.floor(seconds / 3600)}h ago`;
519
+ return `${Math.floor(seconds / 86400)}d ago`;
520
+ }
521
+ function formatTimeUntil(date) {
522
+ const seconds = Math.floor((date.getTime() - Date.now()) / 1000);
523
+ if (seconds < 0)
524
+ return 'now';
525
+ if (seconds < 60)
526
+ return `in ${seconds}s`;
527
+ if (seconds < 3600)
528
+ return `in ${Math.floor(seconds / 60)}m`;
529
+ if (seconds < 86400)
530
+ return `in ${Math.floor(seconds / 3600)}h`;
531
+ return `in ${Math.floor(seconds / 86400)}d`;
532
+ }
533
+ // Main daemon command
534
+ export const daemonCommand = {
535
+ name: 'daemon',
536
+ description: 'Manage background worker daemon (Node.js-based, auto-runs like shell helpers)',
537
+ subcommands: [
538
+ startCommand,
539
+ stopCommand,
540
+ statusCommand,
541
+ triggerCommand,
542
+ enableCommand,
543
+ ],
544
+ options: [],
545
+ examples: [
546
+ { command: 'claude-flow daemon start', description: 'Start the daemon' },
547
+ { command: 'claude-flow daemon start --headless', description: 'Start with headless workers (E2B sandbox)' },
548
+ { command: 'claude-flow daemon status', description: 'Check daemon status' },
549
+ { command: 'claude-flow daemon stop', description: 'Stop the daemon' },
550
+ { command: 'claude-flow daemon trigger -w audit', description: 'Run security audit' },
551
+ ],
552
+ action: async () => {
553
+ output.writeln();
554
+ output.writeln(output.bold('Worker Daemon - Background Task Management'));
555
+ output.writeln();
556
+ output.writeln('Node.js-based background worker system that auto-runs like shell daemons.');
557
+ output.writeln('Manages 12 specialized workers for continuous optimization and monitoring.');
558
+ output.writeln();
559
+ output.writeln(output.bold('Headless Mode'));
560
+ output.writeln('Workers can run in headless mode using E2B sandboxes for isolated execution.');
561
+ output.writeln('Use --headless flag with start/trigger commands. Sandbox modes: strict, permissive, disabled.');
562
+ output.writeln();
563
+ output.writeln(output.bold('Available Workers'));
564
+ output.printList([
565
+ `${output.highlight('map')} - Codebase mapping (5 min interval)`,
566
+ `${output.highlight('audit')} - Security analysis (10 min interval)`,
567
+ `${output.highlight('optimize')} - Performance optimization (15 min interval)`,
568
+ `${output.highlight('consolidate')} - Memory consolidation (30 min interval)`,
569
+ `${output.highlight('testgaps')} - Test coverage analysis (20 min interval)`,
570
+ `${output.highlight('predict')} - Predictive preloading (2 min, disabled by default)`,
571
+ `${output.highlight('document')} - Auto-documentation (60 min, disabled by default)`,
572
+ `${output.highlight('ultralearn')} - Deep knowledge acquisition (manual trigger)`,
573
+ `${output.highlight('refactor')} - Code refactoring suggestions (manual trigger)`,
574
+ `${output.highlight('benchmark')} - Performance benchmarking (manual trigger)`,
575
+ `${output.highlight('deepdive')} - Deep code analysis (manual trigger)`,
576
+ `${output.highlight('preload')} - Resource preloading (manual trigger)`,
577
+ ]);
578
+ output.writeln();
579
+ output.writeln(output.bold('Subcommands'));
580
+ output.printList([
581
+ `${output.highlight('start')} - Start the daemon`,
582
+ `${output.highlight('stop')} - Stop the daemon`,
583
+ `${output.highlight('status')} - Show daemon status`,
584
+ `${output.highlight('trigger')} - Manually run a worker`,
585
+ `${output.highlight('enable')} - Enable/disable a worker`,
586
+ ]);
587
+ output.writeln();
588
+ output.writeln('Run "claude-flow daemon <subcommand> --help" for details');
589
+ return { success: true };
590
+ },
591
+ };
592
+ export default daemonCommand;
593
+ //# sourceMappingURL=daemon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../../src/commands/daemon.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAgB,SAAS,EAAE,WAAW,EAAE,UAAU,EAAmB,MAAM,8BAA8B,CAAC;AACjH,OAAO,EAAE,KAAK,EAAY,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAc,MAAM,MAAM,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB,0BAA0B;AAC1B,MAAM,YAAY,GAAY;IAC5B,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,6DAA6D;IAC1E,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8FAA8F,EAAE;QAC5J,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE;QAC9E,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6CAA6C,EAAE,OAAO,EAAE,IAAI,EAAE;QAC9H,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4CAA4C,EAAE;QAC9G,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gDAAgD,EAAE;QACpG,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE;KAC7I;IACD,QAAQ,EAAE;QACR,EAAE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,sCAAsC,EAAE;QAC5F,EAAE,OAAO,EAAE,uCAAuC,EAAE,WAAW,EAAE,uCAAuC,EAAE;QAC1G,EAAE,OAAO,EAAE,gDAAgD,EAAE,WAAW,EAAE,6BAA6B,EAAE;QACzG,EAAE,OAAO,EAAE,sDAAsD,EAAE,WAAW,EAAE,+CAA+C,EAAE;KAClI;IACD,MAAM,EAAE,KAAK,EAAE,GAAmB,EAA0B,EAAE;QAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAgB,CAAC;QACzC,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,UAAqB,CAAC;QACnD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,GAAG,CAAC;QAE/D,iFAAiF;QACjF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAClD,IAAI,KAAK,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,CAAC,YAAY,CAAC,8CAA8C,KAAK,GAAG,CAAC,CAAC;gBAC9E,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,qDAAqD;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAqB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;QAED,4DAA4D;QAC5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAE7C,gCAAgC;YAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,CAAC;YAED,qCAAqC;YACrC,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAE/C,4BAA4B;YAC5B,MAAM,OAAO,GAAG,GAAG,EAAE;gBACnB,IAAI,CAAC;oBACH,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC3B,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;YAC1B,CAAC,CAAC;YACF,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE7D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC7F,OAAO,CAAC,KAAK,EAAE,CAAC;gBAEhB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,CAAC;gBAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;gBAElC,OAAO,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;gBAE3D,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,QAAQ,CACb;oBACE,QAAQ,MAAM,CAAC,GAAG,EAAE;oBACpB,YAAY,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE;oBAC7C,YAAY,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,UAAU;oBACzE,mBAAmB,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;iBACjD,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,eAAe,CAChB,CAAC;gBAEF,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBACjD,MAAM,CAAC,UAAU,CAAC;oBAChB,OAAO,EAAE;wBACP,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;wBAC5C,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;wBAClD,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;wBAClD,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;qBACzD;oBACD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;yBACxB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;yBACtB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACT,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC9B,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK;wBAClD,QAAQ,EAAE,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;4BACvD,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gCACpD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;wBAC/B,WAAW,EAAE,CAAC,CAAC,WAAW;qBAC3B,CAAC,CAAC;iBACN,CAAC,CAAC;gBAEH,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;gBAE1D,2BAA2B;gBAC3B,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;oBACvD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC,CAAC;gBAClE,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAwC,EAAE,EAAE;oBAC1F,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,8BAA8B,IAAI,KAAK,UAAU,KAAK,CAAC,CAAC,CAAC;gBACzF,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAmC,EAAE,EAAE;oBAC7E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC7E,CAAC,CAAC,CAAC;gBAEH,qBAAqB;gBACrB,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,4CAA4C;YAC3E,CAAC;iBAAM,CAAC;gBACN,MAAM,WAAW,CAAC,WAAW,CAAC,CAAC;gBAC/B,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,aAAa;YAC5C,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,CAAC,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzC,CAAC;IACH,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,oCAAoC;IACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B,0CAA0C;IAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sBAAsB,CAAC,CAAC;IAClD,CAAC;IAED,oDAAoD;IACpD,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,gCAAgC,CAAC,CAAC;IAC5D,CAAC;IAED,sDAAsD;IACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpE,4CAA4C;QAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,qBAAqB,CAAC,WAAmB,EAAE,KAAc;IACtE,oCAAoC;IACpC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1C,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAE7C,qBAAqB;IACrB,YAAY,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAC1C,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAClC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAElC,gCAAgC;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,mEAAmE;IACnE,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,sEAAsE;IACtE,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5E,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAElC,yBAAyB;IACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,UAAU,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzC,CAAC;IAED,0EAA0E;IAC1E,4CAA4C;IAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;QACpC,OAAO;QACP,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS;KAC7C,EAAE;QACD,GAAG,EAAE,YAAY;QACjB,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACvE,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE;KACjD,CAAC,CAAC;IAEH,+DAA+D;IAC/D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;IAEtB,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC;QAC9C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzC,CAAC;IAED,WAAW;IACX,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IAEvC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,CAAC,YAAY,CAAC,sCAAsC,GAAG,GAAG,CAAC,CAAC;QAClE,MAAM,CAAC,SAAS,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;QACrC,MAAM,CAAC,SAAS,CAAC,oCAAoC,CAAC,CAAC;IACzD,CAAC;IAED,uCAAuC;IACvC,KAAK,CAAC,KAAK,EAAE,CAAC;IAEd,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,yBAAyB;AACzB,MAAM,WAAW,GAAY;IAC3B,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,mDAAmD;IAChE,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE;KAC/E;IACD,QAAQ,EAAE;QACR,EAAE,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,iBAAiB,EAAE;KACvE;IACD,MAAM,EAAE,KAAK,EAAE,GAAmB,EAA0B,EAAE;QAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAgB,CAAC;QACzC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC7F,OAAO,CAAC,KAAK,EAAE,CAAC;gBAEhB,sCAAsC;gBACtC,MAAM,UAAU,EAAE,CAAC;gBAEnB,yCAAyC;gBACzC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAEvD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,EAAE,CAAC;gBACnB,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,CAAC,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACtG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzC,CAAC;IACH,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,WAAmB;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IAEhE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAEnE,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACf,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,8BAA8B;QAC9B,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,4BAA4B;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;YAC/C,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,mBAAmB;QACnB,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAE7B,0CAA0C;QAC1C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAExD,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACrB,0BAA0B;YAC1B,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;QAED,oBAAoB;QACpB,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,iCAAiC;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,WAAmB;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IAEhE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACnE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,4BAA4B;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,oBAAoB;AACpB,MAAM,aAAa,GAAY;IAC7B,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,+BAA+B;IAC5C,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iCAAiC,EAAE;QAChG,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mEAAmE,EAAE;KAC1H;IACD,QAAQ,EAAE;QACR,EAAE,OAAO,EAAE,2BAA2B,EAAE,WAAW,EAAE,oBAAoB,EAAE;QAC3E,EAAE,OAAO,EAAE,8BAA8B,EAAE,WAAW,EAAE,sBAAsB,EAAE;QAChF,EAAE,OAAO,EAAE,wCAAwC,EAAE,WAAW,EAAE,6BAA6B,EAAE;KAClG;IACD,MAAM,EAAE,KAAK,EAAE,GAAmB,EAA0B,EAAE;QAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,OAAkB,CAAC;QAC7C,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAY,CAAC;QACrD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;YAElC,mCAAmC;YACnC,MAAM,KAAK,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE1D,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;YAC9C,MAAM,UAAU,GAAG,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC;YAEvC,MAAM,CAAC,OAAO,EAAE,CAAC;YAEjB,oBAAoB;YACpB,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvE,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACnF,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAEzG,MAAM,CAAC,QAAQ,CACb;gBACE,WAAW,UAAU,IAAI,UAAU,GAAG,IAAI,EAAE;gBAC5C,QAAQ,UAAU,EAAE;gBACpB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;gBACpE,oBAAoB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;gBACzE,mBAAmB,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;aACjD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAC5B,eAAe,CAChB,CAAC;YAEF,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YAE7C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACzC,sDAAsD;gBACtD,MAAM,UAAU,GAAI,CAAS,CAAC,QAAQ,IAAK,KAAa,EAAE,QAAQ,IAAI,KAAK,CAAC;gBAC5E,MAAM,WAAW,GAAI,CAAS,CAAC,OAAO,IAAK,KAAa,EAAE,OAAO,IAAI,IAAI,CAAC;gBAC1E,OAAO;oBACL,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC/D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;oBAC1D,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC9C,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;oBACnE,IAAI,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC;oBAC1B,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;oBACjG,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;oBAC5E,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;oBACvF,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;oBACrE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;iBAClE,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,2CAA2C;YAC3C,MAAM,WAAW,GAAG;gBAClB,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC5C,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;gBAC1C,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC9C,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE;gBACzC,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE;gBAC/C,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;gBACjD,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;aAClD,CAAC;YAEF,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC;gBAC9B,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC1C,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE;aACjD,CAAC,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,CAAC,UAAU,CAAC;gBAChB,OAAO,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,CAAC;gBACzC,IAAI,EAAE,UAAU;aACjB,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,UAAU,CAAC;oBAChB,OAAO,EAAE;wBACP,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;wBAC5C,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;wBAClD,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;wBAClD,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE;wBACzD,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;qBACzD;oBACD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBAClC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBACzC,OAAO;4BACL,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK;4BAClD,QAAQ,EAAE,CAAC,CAAC,QAAQ;4BACpB,WAAW,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;4BACxF,WAAW,EAAE,CAAC,CAAC,WAAW;yBAC3B,CAAC;oBACJ,CAAC,CAAC;iBACH,CAAC,CAAC;YACL,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yBAAyB;YACzB,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,QAAQ,CACb;gBACE,WAAW,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE;gBACjE,EAAE;gBACF,oDAAoD;aACrD,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,eAAe,CAChB,CAAC;YAEF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;CACF,CAAC;AAEF,6CAA6C;AAC7C,MAAM,cAAc,GAAY;IAC9B,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,oCAAoC;IACjD,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,IAAI,EAAE;QACrG,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,qDAAqD,EAAE;KAC1G;IACD,QAAQ,EAAE;QACR,EAAE,OAAO,EAAE,mCAAmC,EAAE,WAAW,EAAE,wBAAwB,EAAE;QACvF,EAAE,OAAO,EAAE,qCAAqC,EAAE,WAAW,EAAE,wBAAwB,EAAE;QACzF,EAAE,OAAO,EAAE,gDAAgD,EAAE,WAAW,EAAE,mCAAmC,EAAE;KAChH;IACD,MAAM,EAAE,KAAK,EAAE,GAAmB,EAA0B,EAAE;QAC5D,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,MAAoB,CAAC;QAElD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,UAAU,CAAC,mDAAmD,CAAC,CAAC;YACvE,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,uIAAuI,CAAC,CAAC;YACxJ,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAExC,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,UAAU,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACnG,OAAO,CAAC,KAAK,EAAE,CAAC;YAEhB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAEtD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,OAAO,CAAC,UAAU,UAAU,iBAAiB,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;gBAE5E,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACtC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,UAAU,UAAU,YAAY,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,CAAC,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACzG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzC,CAAC;IACH,CAAC;CACF,CAAC;AAEF,mCAAmC;AACnC,MAAM,aAAa,GAAY;IAC7B,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,qCAAqC;IAClD,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC1F,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,2BAA2B,EAAE;KAC3F;IACD,QAAQ,EAAE;QACR,EAAE,OAAO,EAAE,sCAAsC,EAAE,WAAW,EAAE,uBAAuB,EAAE;QACzF,EAAE,OAAO,EAAE,iDAAiD,EAAE,WAAW,EAAE,yBAAyB,EAAE;KACvG;IACD,MAAM,EAAE,KAAK,EAAE,GAAmB,EAA0B,EAAE;QAC5D,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,MAAoB,CAAC;QAClD,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,OAAkB,CAAC;QAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,UAAU,CAAC,mDAAmD,CAAC,CAAC;YACvE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YACxC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC;YAE9C,MAAM,CAAC,YAAY,CAAC,UAAU,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;YAEhF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnI,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzC,CAAC;IACH,CAAC;CACF,CAAC;AAEF,uCAAuC;AACvC,SAAS,aAAa,CAAC,IAAU;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjE,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,GAAG,OAAO,OAAO,CAAC;IAC3C,IAAI,OAAO,GAAG,IAAI;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;IAC9D,IAAI,OAAO,GAAG,KAAK;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACjE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAC/C,CAAC;AAED,SAAS,eAAe,CAAC,IAAU;IACjC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjE,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9B,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,MAAM,OAAO,GAAG,CAAC;IAC1C,IAAI,OAAO,GAAG,IAAI;QAAE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC;IAC7D,IAAI,OAAO,GAAG,KAAK;QAAE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;IAChE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC;AAC9C,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,MAAM,aAAa,GAAY;IACpC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,+EAA+E;IAC5F,WAAW,EAAE;QACX,YAAY;QACZ,WAAW;QACX,aAAa;QACb,cAAc;QACd,aAAa;KACd;IACD,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE;QACR,EAAE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,kBAAkB,EAAE;QACxE,EAAE,OAAO,EAAE,qCAAqC,EAAE,WAAW,EAAE,2CAA2C,EAAE;QAC5G,EAAE,OAAO,EAAE,2BAA2B,EAAE,WAAW,EAAE,qBAAqB,EAAE;QAC5E,EAAE,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,iBAAiB,EAAE;QACtE,EAAE,OAAO,EAAE,qCAAqC,EAAE,WAAW,EAAE,oBAAoB,EAAE;KACtF;IACD,MAAM,EAAE,KAAK,IAA4B,EAAE;QACzC,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,CAAC,OAAO,CAAC,4EAA4E,CAAC,CAAC;QAC7F,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,8EAA8E,CAAC,CAAC;QAC/F,MAAM,CAAC,OAAO,CAAC,+FAA+F,CAAC,CAAC;QAChH,MAAM,CAAC,OAAO,EAAE,CAAC;QAEjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,SAAS,CAAC;YACf,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,8CAA8C;YACxE,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,8CAA8C;YAC1E,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,kDAAkD;YACjF,GAAG,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,2CAA2C;YAC7E,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,gDAAgD;YAC/E,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,2DAA2D;YACzF,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,wDAAwD;YACvF,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,iDAAiD;YAClF,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,qDAAqD;YACpF,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,gDAAgD;YAChF,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,2CAA2C;YAC1E,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,6CAA6C;SAC5E,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,SAAS,CAAC;YACf,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,uBAAuB;YACnD,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAuB;YAClD,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,wBAAwB;YACrD,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,0BAA0B;YACxD,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,6BAA6B;SAC3D,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,0DAA0D,CAAC,CAAC;QAE3E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * V3 CLI Deployment Command
3
+ * Deployment management, environments, rollbacks
4
+ *
5
+ * Created with ❤️ by ruv.io
6
+ */
7
+ import type { Command } from '../types.js';
8
+ export declare const deploymentCommand: Command;
9
+ export default deploymentCommand;
10
+ //# sourceMappingURL=deployment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/commands/deployment.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAqR1E,eAAO,MAAM,iBAAiB,EAAE,OAoC/B,CAAC;AAEF,eAAe,iBAAiB,CAAC"}