atena-cli 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +210 -0
  3. package/dist/agent.d.ts +44 -0
  4. package/dist/agent.d.ts.map +1 -0
  5. package/dist/agent.js +731 -0
  6. package/dist/agent.js.map +1 -0
  7. package/dist/agents.d.ts +33 -0
  8. package/dist/agents.d.ts.map +1 -0
  9. package/dist/agents.js +162 -0
  10. package/dist/agents.js.map +1 -0
  11. package/dist/autocomplete.d.ts +4 -0
  12. package/dist/autocomplete.d.ts.map +1 -0
  13. package/dist/autocomplete.js +96 -0
  14. package/dist/autocomplete.js.map +1 -0
  15. package/dist/cli/commands/connect.d.ts +3 -0
  16. package/dist/cli/commands/connect.d.ts.map +1 -0
  17. package/dist/cli/commands/connect.js +31 -0
  18. package/dist/cli/commands/connect.js.map +1 -0
  19. package/dist/cli/commands/deploy.d.ts +3 -0
  20. package/dist/cli/commands/deploy.d.ts.map +1 -0
  21. package/dist/cli/commands/deploy.js +26 -0
  22. package/dist/cli/commands/deploy.js.map +1 -0
  23. package/dist/cli/commands/login.d.ts +3 -0
  24. package/dist/cli/commands/login.d.ts.map +1 -0
  25. package/dist/cli/commands/login.js +46 -0
  26. package/dist/cli/commands/login.js.map +1 -0
  27. package/dist/cli/commands/vault.d.ts +3 -0
  28. package/dist/cli/commands/vault.d.ts.map +1 -0
  29. package/dist/cli/commands/vault.js +73 -0
  30. package/dist/cli/commands/vault.js.map +1 -0
  31. package/dist/cli/index.d.ts +3 -0
  32. package/dist/cli/index.d.ts.map +1 -0
  33. package/dist/cli/index.js +309 -0
  34. package/dist/cli/index.js.map +1 -0
  35. package/dist/cli/init/setup.d.ts +3 -0
  36. package/dist/cli/init/setup.d.ts.map +1 -0
  37. package/dist/cli/init/setup.js +74 -0
  38. package/dist/cli/init/setup.js.map +1 -0
  39. package/dist/cli/menus.d.ts +2 -0
  40. package/dist/cli/menus.d.ts.map +1 -0
  41. package/dist/cli/menus.js +111 -0
  42. package/dist/cli/menus.js.map +1 -0
  43. package/dist/cli/postinstall.d.ts +9 -0
  44. package/dist/cli/postinstall.d.ts.map +1 -0
  45. package/dist/cli/postinstall.js +81 -0
  46. package/dist/cli/postinstall.js.map +1 -0
  47. package/dist/cli/realtime-input.d.ts +4 -0
  48. package/dist/cli/realtime-input.d.ts.map +1 -0
  49. package/dist/cli/realtime-input.js +268 -0
  50. package/dist/cli/realtime-input.js.map +1 -0
  51. package/dist/cli/setup.d.ts +26 -0
  52. package/dist/cli/setup.d.ts.map +1 -0
  53. package/dist/cli/setup.js +202 -0
  54. package/dist/cli/setup.js.map +1 -0
  55. package/dist/cli/themes.d.ts +30 -0
  56. package/dist/cli/themes.d.ts.map +1 -0
  57. package/dist/cli/themes.js +225 -0
  58. package/dist/cli/themes.js.map +1 -0
  59. package/dist/cli/ui.d.ts +70 -0
  60. package/dist/cli/ui.d.ts.map +1 -0
  61. package/dist/cli/ui.js +455 -0
  62. package/dist/cli/ui.js.map +1 -0
  63. package/dist/commands.d.ts +16 -0
  64. package/dist/commands.d.ts.map +1 -0
  65. package/dist/commands.js +230 -0
  66. package/dist/commands.js.map +1 -0
  67. package/dist/config.d.ts +42 -0
  68. package/dist/config.d.ts.map +1 -0
  69. package/dist/config.js +140 -0
  70. package/dist/config.js.map +1 -0
  71. package/dist/context.d.ts +23 -0
  72. package/dist/context.d.ts.map +1 -0
  73. package/dist/context.js +80 -0
  74. package/dist/context.js.map +1 -0
  75. package/dist/core/agent.d.ts +94 -0
  76. package/dist/core/agent.d.ts.map +1 -0
  77. package/dist/core/agent.js +1280 -0
  78. package/dist/core/agent.js.map +1 -0
  79. package/dist/core/agents/enterprise/backend.d.ts +3 -0
  80. package/dist/core/agents/enterprise/backend.d.ts.map +1 -0
  81. package/dist/core/agents/enterprise/backend.js +35 -0
  82. package/dist/core/agents/enterprise/backend.js.map +1 -0
  83. package/dist/core/agents/enterprise/cloud.d.ts +3 -0
  84. package/dist/core/agents/enterprise/cloud.d.ts.map +1 -0
  85. package/dist/core/agents/enterprise/cloud.js +35 -0
  86. package/dist/core/agents/enterprise/cloud.js.map +1 -0
  87. package/dist/core/agents/enterprise/datascience.d.ts +3 -0
  88. package/dist/core/agents/enterprise/datascience.d.ts.map +1 -0
  89. package/dist/core/agents/enterprise/datascience.js +35 -0
  90. package/dist/core/agents/enterprise/datascience.js.map +1 -0
  91. package/dist/core/agents/enterprise/design.d.ts +3 -0
  92. package/dist/core/agents/enterprise/design.d.ts.map +1 -0
  93. package/dist/core/agents/enterprise/design.js +35 -0
  94. package/dist/core/agents/enterprise/design.js.map +1 -0
  95. package/dist/core/agents/enterprise/devops.d.ts +3 -0
  96. package/dist/core/agents/enterprise/devops.d.ts.map +1 -0
  97. package/dist/core/agents/enterprise/devops.js +35 -0
  98. package/dist/core/agents/enterprise/devops.js.map +1 -0
  99. package/dist/core/agents/enterprise/finance.d.ts +3 -0
  100. package/dist/core/agents/enterprise/finance.d.ts.map +1 -0
  101. package/dist/core/agents/enterprise/finance.js +35 -0
  102. package/dist/core/agents/enterprise/finance.js.map +1 -0
  103. package/dist/core/agents/enterprise/frontend.d.ts +3 -0
  104. package/dist/core/agents/enterprise/frontend.d.ts.map +1 -0
  105. package/dist/core/agents/enterprise/frontend.js +35 -0
  106. package/dist/core/agents/enterprise/frontend.js.map +1 -0
  107. package/dist/core/agents/enterprise/hr.d.ts +3 -0
  108. package/dist/core/agents/enterprise/hr.d.ts.map +1 -0
  109. package/dist/core/agents/enterprise/hr.js +35 -0
  110. package/dist/core/agents/enterprise/hr.js.map +1 -0
  111. package/dist/core/agents/enterprise/index.d.ts +4 -0
  112. package/dist/core/agents/enterprise/index.d.ts.map +1 -0
  113. package/dist/core/agents/enterprise/index.js +44 -0
  114. package/dist/core/agents/enterprise/index.js.map +1 -0
  115. package/dist/core/agents/enterprise/legal.d.ts +3 -0
  116. package/dist/core/agents/enterprise/legal.d.ts.map +1 -0
  117. package/dist/core/agents/enterprise/legal.js +35 -0
  118. package/dist/core/agents/enterprise/legal.js.map +1 -0
  119. package/dist/core/agents/enterprise/marketing.d.ts +3 -0
  120. package/dist/core/agents/enterprise/marketing.d.ts.map +1 -0
  121. package/dist/core/agents/enterprise/marketing.js +35 -0
  122. package/dist/core/agents/enterprise/marketing.js.map +1 -0
  123. package/dist/core/agents/enterprise/pm.d.ts +3 -0
  124. package/dist/core/agents/enterprise/pm.d.ts.map +1 -0
  125. package/dist/core/agents/enterprise/pm.js +35 -0
  126. package/dist/core/agents/enterprise/pm.js.map +1 -0
  127. package/dist/core/agents/enterprise/product.d.ts +3 -0
  128. package/dist/core/agents/enterprise/product.d.ts.map +1 -0
  129. package/dist/core/agents/enterprise/product.js +35 -0
  130. package/dist/core/agents/enterprise/product.js.map +1 -0
  131. package/dist/core/agents/enterprise/qa.d.ts +3 -0
  132. package/dist/core/agents/enterprise/qa.d.ts.map +1 -0
  133. package/dist/core/agents/enterprise/qa.js +35 -0
  134. package/dist/core/agents/enterprise/qa.js.map +1 -0
  135. package/dist/core/agents/enterprise/sales.d.ts +3 -0
  136. package/dist/core/agents/enterprise/sales.d.ts.map +1 -0
  137. package/dist/core/agents/enterprise/sales.js +35 -0
  138. package/dist/core/agents/enterprise/sales.js.map +1 -0
  139. package/dist/core/agents/enterprise/security.d.ts +3 -0
  140. package/dist/core/agents/enterprise/security.d.ts.map +1 -0
  141. package/dist/core/agents/enterprise/security.js +36 -0
  142. package/dist/core/agents/enterprise/security.js.map +1 -0
  143. package/dist/core/agents/enterprise/support.d.ts +3 -0
  144. package/dist/core/agents/enterprise/support.d.ts.map +1 -0
  145. package/dist/core/agents/enterprise/support.js +35 -0
  146. package/dist/core/agents/enterprise/support.js.map +1 -0
  147. package/dist/core/agents.d.ts +84 -0
  148. package/dist/core/agents.d.ts.map +1 -0
  149. package/dist/core/agents.js +266 -0
  150. package/dist/core/agents.js.map +1 -0
  151. package/dist/core/analytics.d.ts +21 -0
  152. package/dist/core/analytics.d.ts.map +1 -0
  153. package/dist/core/analytics.js +57 -0
  154. package/dist/core/analytics.js.map +1 -0
  155. package/dist/core/auth.d.ts +43 -0
  156. package/dist/core/auth.d.ts.map +1 -0
  157. package/dist/core/auth.js +110 -0
  158. package/dist/core/auth.js.map +1 -0
  159. package/dist/core/code_indexer.d.ts +14 -0
  160. package/dist/core/code_indexer.d.ts.map +1 -0
  161. package/dist/core/code_indexer.js +52 -0
  162. package/dist/core/code_indexer.js.map +1 -0
  163. package/dist/core/commands.d.ts +16 -0
  164. package/dist/core/commands.d.ts.map +1 -0
  165. package/dist/core/commands.js +285 -0
  166. package/dist/core/commands.js.map +1 -0
  167. package/dist/core/consensus.d.ts +25 -0
  168. package/dist/core/consensus.d.ts.map +1 -0
  169. package/dist/core/consensus.js +49 -0
  170. package/dist/core/consensus.js.map +1 -0
  171. package/dist/core/context.d.ts +23 -0
  172. package/dist/core/context.d.ts.map +1 -0
  173. package/dist/core/context.js +82 -0
  174. package/dist/core/context.js.map +1 -0
  175. package/dist/core/eden-ai-sdk.d.ts +11 -0
  176. package/dist/core/eden-ai-sdk.d.ts.map +1 -0
  177. package/dist/core/eden-ai-sdk.js +158 -0
  178. package/dist/core/eden-ai-sdk.js.map +1 -0
  179. package/dist/core/events.d.ts +64 -0
  180. package/dist/core/events.d.ts.map +1 -0
  181. package/dist/core/events.js +18 -0
  182. package/dist/core/events.js.map +1 -0
  183. package/dist/core/groq-client.d.ts +7 -0
  184. package/dist/core/groq-client.d.ts.map +1 -0
  185. package/dist/core/groq-client.js +112 -0
  186. package/dist/core/groq-client.js.map +1 -0
  187. package/dist/core/mcp.d.ts +51 -0
  188. package/dist/core/mcp.d.ts.map +1 -0
  189. package/dist/core/mcp.js +201 -0
  190. package/dist/core/mcp.js.map +1 -0
  191. package/dist/core/memory.d.ts +20 -0
  192. package/dist/core/memory.d.ts.map +1 -0
  193. package/dist/core/memory.js +61 -0
  194. package/dist/core/memory.js.map +1 -0
  195. package/dist/core/model-profiles.d.ts +62 -0
  196. package/dist/core/model-profiles.d.ts.map +1 -0
  197. package/dist/core/model-profiles.js +841 -0
  198. package/dist/core/model-profiles.js.map +1 -0
  199. package/dist/core/moonshot-client.d.ts +7 -0
  200. package/dist/core/moonshot-client.d.ts.map +1 -0
  201. package/dist/core/moonshot-client.js +102 -0
  202. package/dist/core/moonshot-client.js.map +1 -0
  203. package/dist/core/nexus.d.ts +16 -0
  204. package/dist/core/nexus.d.ts.map +1 -0
  205. package/dist/core/nexus.js +31 -0
  206. package/dist/core/nexus.js.map +1 -0
  207. package/dist/core/notifications.d.ts +16 -0
  208. package/dist/core/notifications.d.ts.map +1 -0
  209. package/dist/core/notifications.js +26 -0
  210. package/dist/core/notifications.js.map +1 -0
  211. package/dist/core/ollama-client.d.ts +16 -0
  212. package/dist/core/ollama-client.d.ts.map +1 -0
  213. package/dist/core/ollama-client.js +138 -0
  214. package/dist/core/ollama-client.js.map +1 -0
  215. package/dist/core/orchestrator.d.ts +96 -0
  216. package/dist/core/orchestrator.d.ts.map +1 -0
  217. package/dist/core/orchestrator.js +801 -0
  218. package/dist/core/orchestrator.js.map +1 -0
  219. package/dist/core/permissions.d.ts +34 -0
  220. package/dist/core/permissions.d.ts.map +1 -0
  221. package/dist/core/permissions.js +224 -0
  222. package/dist/core/permissions.js.map +1 -0
  223. package/dist/core/providers.d.ts +22 -0
  224. package/dist/core/providers.d.ts.map +1 -0
  225. package/dist/core/providers.js +81 -0
  226. package/dist/core/providers.js.map +1 -0
  227. package/dist/core/researcher.d.ts +24 -0
  228. package/dist/core/researcher.d.ts.map +1 -0
  229. package/dist/core/researcher.js +97 -0
  230. package/dist/core/researcher.js.map +1 -0
  231. package/dist/core/sandbox.d.ts +22 -0
  232. package/dist/core/sandbox.d.ts.map +1 -0
  233. package/dist/core/sandbox.js +79 -0
  234. package/dist/core/sandbox.js.map +1 -0
  235. package/dist/core/scavenger.d.ts +5 -0
  236. package/dist/core/scavenger.d.ts.map +1 -0
  237. package/dist/core/scavenger.js +51 -0
  238. package/dist/core/scavenger.js.map +1 -0
  239. package/dist/core/server.d.ts +21 -0
  240. package/dist/core/server.d.ts.map +1 -0
  241. package/dist/core/server.js +776 -0
  242. package/dist/core/server.js.map +1 -0
  243. package/dist/core/sessions.d.ts +54 -0
  244. package/dist/core/sessions.d.ts.map +1 -0
  245. package/dist/core/sessions.js +182 -0
  246. package/dist/core/sessions.js.map +1 -0
  247. package/dist/core/setup.d.ts +12 -0
  248. package/dist/core/setup.d.ts.map +1 -0
  249. package/dist/core/setup.js +70 -0
  250. package/dist/core/setup.js.map +1 -0
  251. package/dist/core/skills.d.ts +17 -0
  252. package/dist/core/skills.d.ts.map +1 -0
  253. package/dist/core/skills.js +123 -0
  254. package/dist/core/skills.js.map +1 -0
  255. package/dist/core/stats.d.ts +54 -0
  256. package/dist/core/stats.d.ts.map +1 -0
  257. package/dist/core/stats.js +221 -0
  258. package/dist/core/stats.js.map +1 -0
  259. package/dist/core/swarm_manager.d.ts +20 -0
  260. package/dist/core/swarm_manager.d.ts.map +1 -0
  261. package/dist/core/swarm_manager.js +48 -0
  262. package/dist/core/swarm_manager.js.map +1 -0
  263. package/dist/core/system.d.ts +39 -0
  264. package/dist/core/system.d.ts.map +1 -0
  265. package/dist/core/system.js +129 -0
  266. package/dist/core/system.js.map +1 -0
  267. package/dist/core/tasks.d.ts +24 -0
  268. package/dist/core/tasks.d.ts.map +1 -0
  269. package/dist/core/tasks.js +66 -0
  270. package/dist/core/tasks.js.map +1 -0
  271. package/dist/core/telegram.d.ts +9 -0
  272. package/dist/core/telegram.d.ts.map +1 -0
  273. package/dist/core/telegram.js +49 -0
  274. package/dist/core/telegram.js.map +1 -0
  275. package/dist/core/tools/acquire_skill.d.ts +3 -0
  276. package/dist/core/tools/acquire_skill.d.ts.map +1 -0
  277. package/dist/core/tools/acquire_skill.js +30 -0
  278. package/dist/core/tools/acquire_skill.js.map +1 -0
  279. package/dist/core/tools/agent_tools.d.ts +4 -0
  280. package/dist/core/tools/agent_tools.d.ts.map +1 -0
  281. package/dist/core/tools/agent_tools.js +117 -0
  282. package/dist/core/tools/agent_tools.js.map +1 -0
  283. package/dist/core/tools/code_search.d.ts +3 -0
  284. package/dist/core/tools/code_search.d.ts.map +1 -0
  285. package/dist/core/tools/code_search.js +43 -0
  286. package/dist/core/tools/code_search.js.map +1 -0
  287. package/dist/core/tools/craft_tool.d.ts +3 -0
  288. package/dist/core/tools/craft_tool.d.ts.map +1 -0
  289. package/dist/core/tools/craft_tool.js +32 -0
  290. package/dist/core/tools/craft_tool.js.map +1 -0
  291. package/dist/core/tools/discord.d.ts +3 -0
  292. package/dist/core/tools/discord.d.ts.map +1 -0
  293. package/dist/core/tools/discord.js +206 -0
  294. package/dist/core/tools/discord.js.map +1 -0
  295. package/dist/core/tools/dynamic/registry.d.ts +15 -0
  296. package/dist/core/tools/dynamic/registry.d.ts.map +1 -0
  297. package/dist/core/tools/dynamic/registry.js +59 -0
  298. package/dist/core/tools/dynamic/registry.js.map +1 -0
  299. package/dist/core/tools/github.d.ts +3 -0
  300. package/dist/core/tools/github.d.ts.map +1 -0
  301. package/dist/core/tools/github.js +357 -0
  302. package/dist/core/tools/github.js.map +1 -0
  303. package/dist/core/tools/google.d.ts +3 -0
  304. package/dist/core/tools/google.d.ts.map +1 -0
  305. package/dist/core/tools/google.js +409 -0
  306. package/dist/core/tools/google.js.map +1 -0
  307. package/dist/core/tools/index.d.ts +4 -0
  308. package/dist/core/tools/index.d.ts.map +1 -0
  309. package/dist/core/tools/index.js +2338 -0
  310. package/dist/core/tools/index.js.map +1 -0
  311. package/dist/core/tools/optimize_prompt.d.ts +3 -0
  312. package/dist/core/tools/optimize_prompt.d.ts.map +1 -0
  313. package/dist/core/tools/optimize_prompt.js +43 -0
  314. package/dist/core/tools/optimize_prompt.js.map +1 -0
  315. package/dist/core/tools/predict_healing.d.ts +3 -0
  316. package/dist/core/tools/predict_healing.d.ts.map +1 -0
  317. package/dist/core/tools/predict_healing.js +34 -0
  318. package/dist/core/tools/predict_healing.js.map +1 -0
  319. package/dist/core/tools/sage_memory.d.ts +3 -0
  320. package/dist/core/tools/sage_memory.d.ts.map +1 -0
  321. package/dist/core/tools/sage_memory.js +29 -0
  322. package/dist/core/tools/sage_memory.js.map +1 -0
  323. package/dist/core/tools/self_heal.d.ts +3 -0
  324. package/dist/core/tools/self_heal.d.ts.map +1 -0
  325. package/dist/core/tools/self_heal.js +46 -0
  326. package/dist/core/tools/self_heal.js.map +1 -0
  327. package/dist/core/tools/send_briefing.d.ts +3 -0
  328. package/dist/core/tools/send_briefing.d.ts.map +1 -0
  329. package/dist/core/tools/send_briefing.js +31 -0
  330. package/dist/core/tools/send_briefing.js.map +1 -0
  331. package/dist/core/tools/slack.d.ts +3 -0
  332. package/dist/core/tools/slack.d.ts.map +1 -0
  333. package/dist/core/tools/slack.js +256 -0
  334. package/dist/core/tools/slack.js.map +1 -0
  335. package/dist/core/tools/telegram.d.ts +3 -0
  336. package/dist/core/tools/telegram.d.ts.map +1 -0
  337. package/dist/core/tools/telegram.js +211 -0
  338. package/dist/core/tools/telegram.js.map +1 -0
  339. package/dist/core/tools/vox.d.ts +3 -0
  340. package/dist/core/tools/vox.d.ts.map +1 -0
  341. package/dist/core/tools/vox.js +29 -0
  342. package/dist/core/tools/vox.js.map +1 -0
  343. package/dist/core/types/index.d.ts +164 -0
  344. package/dist/core/types/index.d.ts.map +1 -0
  345. package/dist/core/types/index.js +3 -0
  346. package/dist/core/types/index.js.map +1 -0
  347. package/dist/core/vault.d.ts +20 -0
  348. package/dist/core/vault.d.ts.map +1 -0
  349. package/dist/core/vault.js +91 -0
  350. package/dist/core/vault.js.map +1 -0
  351. package/dist/core/verify_v3.d.ts +2 -0
  352. package/dist/core/verify_v3.d.ts.map +1 -0
  353. package/dist/core/verify_v3.js +38 -0
  354. package/dist/core/verify_v3.js.map +1 -0
  355. package/dist/core/verify_v3_5.d.ts +2 -0
  356. package/dist/core/verify_v3_5.d.ts.map +1 -0
  357. package/dist/core/verify_v3_5.js +56 -0
  358. package/dist/core/verify_v3_5.js.map +1 -0
  359. package/dist/core/verify_v4.d.ts +2 -0
  360. package/dist/core/verify_v4.d.ts.map +1 -0
  361. package/dist/core/verify_v4.js +42 -0
  362. package/dist/core/verify_v4.js.map +1 -0
  363. package/dist/core/verify_v5.d.ts +2 -0
  364. package/dist/core/verify_v5.d.ts.map +1 -0
  365. package/dist/core/verify_v5.js +53 -0
  366. package/dist/core/verify_v5.js.map +1 -0
  367. package/dist/core/verify_v6.d.ts +2 -0
  368. package/dist/core/verify_v6.d.ts.map +1 -0
  369. package/dist/core/verify_v6.js +42 -0
  370. package/dist/core/verify_v6.js.map +1 -0
  371. package/dist/core/verify_v7.d.ts +2 -0
  372. package/dist/core/verify_v7.d.ts.map +1 -0
  373. package/dist/core/verify_v7.js +29 -0
  374. package/dist/core/verify_v7.js.map +1 -0
  375. package/dist/core/verify_v8.d.ts +2 -0
  376. package/dist/core/verify_v8.d.ts.map +1 -0
  377. package/dist/core/verify_v8.js +32 -0
  378. package/dist/core/verify_v8.js.map +1 -0
  379. package/dist/core/workflows.d.ts +24 -0
  380. package/dist/core/workflows.d.ts.map +1 -0
  381. package/dist/core/workflows.js +47 -0
  382. package/dist/core/workflows.js.map +1 -0
  383. package/dist/core/workspaces.d.ts +13 -0
  384. package/dist/core/workspaces.d.ts.map +1 -0
  385. package/dist/core/workspaces.js +45 -0
  386. package/dist/core/workspaces.js.map +1 -0
  387. package/dist/enquirer-input.d.ts +3 -0
  388. package/dist/enquirer-input.d.ts.map +1 -0
  389. package/dist/enquirer-input.js +112 -0
  390. package/dist/enquirer-input.js.map +1 -0
  391. package/dist/index.d.ts +3 -0
  392. package/dist/index.d.ts.map +1 -0
  393. package/dist/index.js +241 -0
  394. package/dist/index.js.map +1 -0
  395. package/dist/mcp.d.ts +51 -0
  396. package/dist/mcp.d.ts.map +1 -0
  397. package/dist/mcp.js +201 -0
  398. package/dist/mcp.js.map +1 -0
  399. package/dist/ollama-client.d.ts +15 -0
  400. package/dist/ollama-client.d.ts.map +1 -0
  401. package/dist/ollama-client.js +95 -0
  402. package/dist/ollama-client.js.map +1 -0
  403. package/dist/permissions.d.ts +34 -0
  404. package/dist/permissions.d.ts.map +1 -0
  405. package/dist/permissions.js +224 -0
  406. package/dist/permissions.js.map +1 -0
  407. package/dist/realtime-input.d.ts +2 -0
  408. package/dist/realtime-input.d.ts.map +1 -0
  409. package/dist/realtime-input.js +308 -0
  410. package/dist/realtime-input.js.map +1 -0
  411. package/dist/server.d.ts +20 -0
  412. package/dist/server.d.ts.map +1 -0
  413. package/dist/server.js +203 -0
  414. package/dist/server.js.map +1 -0
  415. package/dist/sessions.d.ts +50 -0
  416. package/dist/sessions.d.ts.map +1 -0
  417. package/dist/sessions.js +181 -0
  418. package/dist/sessions.js.map +1 -0
  419. package/dist/simple-input.d.ts +2 -0
  420. package/dist/simple-input.d.ts.map +1 -0
  421. package/dist/simple-input.js +83 -0
  422. package/dist/simple-input.js.map +1 -0
  423. package/dist/skills.d.ts +17 -0
  424. package/dist/skills.d.ts.map +1 -0
  425. package/dist/skills.js +194 -0
  426. package/dist/skills.js.map +1 -0
  427. package/dist/stats.d.ts +54 -0
  428. package/dist/stats.d.ts.map +1 -0
  429. package/dist/stats.js +220 -0
  430. package/dist/stats.js.map +1 -0
  431. package/dist/tools/discord.d.ts +3 -0
  432. package/dist/tools/discord.d.ts.map +1 -0
  433. package/dist/tools/discord.js +206 -0
  434. package/dist/tools/discord.js.map +1 -0
  435. package/dist/tools/github.d.ts +3 -0
  436. package/dist/tools/github.d.ts.map +1 -0
  437. package/dist/tools/github.js +357 -0
  438. package/dist/tools/github.js.map +1 -0
  439. package/dist/tools/google.d.ts +3 -0
  440. package/dist/tools/google.d.ts.map +1 -0
  441. package/dist/tools/google.js +409 -0
  442. package/dist/tools/google.js.map +1 -0
  443. package/dist/tools/index.d.ts +4 -0
  444. package/dist/tools/index.d.ts.map +1 -0
  445. package/dist/tools/index.js +2139 -0
  446. package/dist/tools/index.js.map +1 -0
  447. package/dist/tools/slack.d.ts +3 -0
  448. package/dist/tools/slack.d.ts.map +1 -0
  449. package/dist/tools/slack.js +256 -0
  450. package/dist/tools/slack.js.map +1 -0
  451. package/dist/tools/telegram.d.ts +3 -0
  452. package/dist/tools/telegram.d.ts.map +1 -0
  453. package/dist/tools/telegram.js +211 -0
  454. package/dist/tools/telegram.js.map +1 -0
  455. package/dist/types/index.d.ts +152 -0
  456. package/dist/types/index.d.ts.map +1 -0
  457. package/dist/types/index.js +3 -0
  458. package/dist/types/index.js.map +1 -0
  459. package/dist/ui.d.ts +101 -0
  460. package/dist/ui.d.ts.map +1 -0
  461. package/dist/ui.js +317 -0
  462. package/dist/ui.js.map +1 -0
  463. package/dist/web/src/lib/utils.d.ts +3 -0
  464. package/dist/web/src/lib/utils.d.ts.map +1 -0
  465. package/dist/web/src/lib/utils.js +6 -0
  466. package/dist/web/src/lib/utils.js.map +1 -0
  467. package/dist/web/src/main.d.ts +2 -0
  468. package/dist/web/src/main.d.ts.map +1 -0
  469. package/dist/web/src/main.js +5 -0
  470. package/dist/web/src/main.js.map +1 -0
  471. package/dist/web/vite.config.d.ts +3 -0
  472. package/dist/web/vite.config.d.ts.map +1 -0
  473. package/dist/web/vite.config.js +12 -0
  474. package/dist/web/vite.config.js.map +1 -0
  475. package/package.json +83 -0
@@ -0,0 +1,4 @@
1
+ export declare function realtimeInput(prompt: string, options?: {
2
+ secret?: boolean;
3
+ }): Promise<string>;
4
+ //# sourceMappingURL=realtime-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime-input.d.ts","sourceRoot":"","sources":["../../src/cli/realtime-input.ts"],"names":[],"mappings":"AAuDA,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAgPvG"}
@@ -0,0 +1,268 @@
1
+ import pc from 'picocolors';
2
+ import { colors } from './ui.js';
3
+ import fs from 'node:fs';
4
+ import path from 'node:path';
5
+ const stripAnsi = (str) => str.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-m]/g, '');
6
+ let isInputLocked = false;
7
+ // ── Command Registry ──────────────────────────────────────────────
8
+ const SLASH_COMMANDS = [
9
+ { name: '/help', desc: 'Muestra los comandos disponibles' },
10
+ { name: '/theme', desc: 'Cambia el tema de colores' },
11
+ { name: '/clear', desc: 'Limpia la pantalla' },
12
+ { name: '/sessions', desc: 'Lista sesiones guardadas' },
13
+ { name: '/model', desc: 'Cambia el modelo de IA' },
14
+ { name: '/status', desc: 'Info del sistema y conexión' },
15
+ { name: '/exit', desc: 'Salir de Eden' },
16
+ ];
17
+ // ── File Scanner ──────────────────────────────────────────────────
18
+ function scanFiles(cwd, filter) {
19
+ const ignore = new Set(['node_modules', '.git', 'dist', '.next', '.cache', '__pycache__', '.eden']);
20
+ const results = [];
21
+ const maxResults = 20;
22
+ function walk(dir, prefix) {
23
+ if (results.length >= maxResults)
24
+ return;
25
+ try {
26
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
27
+ for (const entry of entries) {
28
+ if (results.length >= maxResults)
29
+ return;
30
+ if (ignore.has(entry.name) || entry.name.startsWith('.'))
31
+ continue;
32
+ const rel = prefix ? `${prefix}/${entry.name}` : entry.name;
33
+ if (entry.isDirectory()) {
34
+ results.push(rel + '/');
35
+ walk(path.join(dir, entry.name), rel);
36
+ }
37
+ else {
38
+ results.push(rel);
39
+ }
40
+ }
41
+ }
42
+ catch { /* permission errors, etc */ }
43
+ }
44
+ walk(cwd, '');
45
+ if (filter) {
46
+ const lower = filter.toLowerCase();
47
+ return results.filter(f => f.toLowerCase().includes(lower)).slice(0, 20);
48
+ }
49
+ return results.slice(0, 20);
50
+ }
51
+ // ── Main Input Function ───────────────────────────────────────────
52
+ export async function realtimeInput(prompt, options = {}) {
53
+ return new Promise((resolve) => {
54
+ const stdin = process.stdin;
55
+ const stdout = process.stdout;
56
+ let input = '';
57
+ let cursorPos = 0;
58
+ let lastRenderedLines = 1; // Always 1 (input) or 2 (input + hint)
59
+ const ESC = '\x1B[';
60
+ const menu = {
61
+ items: [],
62
+ selectedIndex: 0,
63
+ isVisible: false,
64
+ type: null,
65
+ };
66
+ const cleanup = () => {
67
+ stdin.removeListener('data', onData);
68
+ stdin.setRawMode(false);
69
+ stdin.pause();
70
+ isInputLocked = false;
71
+ };
72
+ // ── Menu Logic ──────────────────────────────────────────────
73
+ const updateMenu = () => {
74
+ if (input.startsWith('/')) {
75
+ menu.type = 'command';
76
+ const filter = input.slice(1).toLowerCase();
77
+ const filtered = SLASH_COMMANDS.filter(c => c.name.toLowerCase().includes(filter) || c.desc.toLowerCase().includes(filter));
78
+ menu.items = filtered;
79
+ menu.isVisible = filtered.length > 0;
80
+ menu.selectedIndex = Math.min(menu.selectedIndex, Math.max(0, filtered.length - 1));
81
+ }
82
+ else {
83
+ const atMatch = input.slice(0, cursorPos).lastIndexOf('@');
84
+ if (atMatch !== -1 && (atMatch === 0 || input[atMatch - 1] === ' ')) {
85
+ const afterAt = input.slice(atMatch + 1, cursorPos);
86
+ menu.type = 'file';
87
+ const files = scanFiles(process.cwd(), afterAt);
88
+ menu.items = files.map(f => ({ name: f, desc: '' }));
89
+ menu.isVisible = files.length > 0;
90
+ menu.selectedIndex = Math.min(menu.selectedIndex, Math.max(0, files.length - 1));
91
+ }
92
+ else {
93
+ menu.isVisible = false;
94
+ }
95
+ }
96
+ };
97
+ const applyMenuSelection = () => {
98
+ if (!menu.isVisible || menu.items.length === 0)
99
+ return;
100
+ const selected = menu.items[menu.selectedIndex];
101
+ if (menu.type === 'command') {
102
+ input = selected.name;
103
+ cursorPos = input.length;
104
+ }
105
+ else if (menu.type === 'file') {
106
+ const atMatch = input.slice(0, cursorPos).lastIndexOf('@');
107
+ if (atMatch !== -1) {
108
+ const before = input.slice(0, atMatch);
109
+ const after = input.slice(cursorPos);
110
+ input = before + '@' + selected.name + after;
111
+ cursorPos = before.length + 1 + selected.name.length;
112
+ }
113
+ }
114
+ menu.isVisible = false;
115
+ menu.selectedIndex = 0;
116
+ };
117
+ // ── Rendering (Zero Newlines) ───────────────────────────────────
118
+ const redrawAll = () => {
119
+ const termWidth = stdout.columns || 80;
120
+ const promptLen = stripAnsi(prompt).length;
121
+ // Move up to start of our area
122
+ if (lastRenderedLines > 1) {
123
+ stdout.write(ESC + (lastRenderedLines - 1) + 'A');
124
+ }
125
+ stdout.write('\r' + ESC + '0J'); // Clear from here down
126
+ // Colorize input
127
+ const coloredInput = options.secret
128
+ ? '*'.repeat(input.length)
129
+ : input.replace(/@[^\s]+/g, (match) => colors.yellow(match));
130
+ let fullText = prompt + coloredInput;
131
+ // ── Inline Hint (Same Line) ───────────────────────────────
132
+ if (menu.isVisible && menu.items.length > 0) {
133
+ const item = menu.items[menu.selectedIndex];
134
+ const count = `[${menu.selectedIndex + 1}/${menu.items.length} ↑↓]`;
135
+ const icon = menu.type === 'command' ? '⌘' : (item.name.endsWith('/') ? '📁' : '📄');
136
+ let desc = '';
137
+ if (menu.type === 'command')
138
+ desc = `· ${item.desc} `;
139
+ // Append hint directly to the text (grayed out)
140
+ const hintText = pc.dim(` ${icon} ${item.name} ${desc}${count} (Tab)`);
141
+ fullText += hintText;
142
+ }
143
+ // Write everything at once
144
+ stdout.write(fullText);
145
+ // Calculate total lines used
146
+ const fullLen = stripAnsi(fullText).length;
147
+ const totalLines = Math.max(1, Math.ceil(fullLen / termWidth));
148
+ lastRenderedLines = totalLines;
149
+ // Position cursor within input text
150
+ const targetPos = promptLen + cursorPos;
151
+ const inputEndLine = Math.max(0, totalLines - 1);
152
+ const targetLine = Math.floor(targetPos / termWidth);
153
+ const targetCol = targetPos % termWidth;
154
+ const moveUp = inputEndLine - targetLine;
155
+ if (moveUp > 0)
156
+ stdout.write(ESC + moveUp + 'A');
157
+ stdout.write('\r');
158
+ if (targetCol > 0)
159
+ stdout.write(ESC + targetCol + 'C');
160
+ };
161
+ // ── Key Handler ─────────────────────────────────────────────
162
+ const onData = (data) => {
163
+ if (isInputLocked)
164
+ return;
165
+ const str = data.toString();
166
+ // Control sequences
167
+ if (str.startsWith('\x1B')) {
168
+ if (str === '\x1B[A') { // Up
169
+ if (menu.isVisible) {
170
+ menu.selectedIndex = (menu.selectedIndex - 1 + menu.items.length) % menu.items.length;
171
+ redrawAll();
172
+ }
173
+ return;
174
+ }
175
+ if (str === '\x1B[B') { // Down
176
+ if (menu.isVisible) {
177
+ menu.selectedIndex = (menu.selectedIndex + 1) % menu.items.length;
178
+ redrawAll();
179
+ }
180
+ return;
181
+ }
182
+ if (str === '\x1B[D') { // Left
183
+ cursorPos = Math.max(0, cursorPos - 1);
184
+ updateMenu();
185
+ redrawAll();
186
+ return;
187
+ }
188
+ if (str === '\x1B[C') { // Right
189
+ cursorPos = Math.min(input.length, cursorPos + 1);
190
+ updateMenu();
191
+ redrawAll();
192
+ return;
193
+ }
194
+ if (str === '\x1B[3~') { // Delete
195
+ if (cursorPos < input.length) {
196
+ input = input.slice(0, cursorPos) + input.slice(cursorPos + 1);
197
+ updateMenu();
198
+ redrawAll();
199
+ }
200
+ return;
201
+ }
202
+ if (str === '\x1B') { // Esc
203
+ if (menu.isVisible) {
204
+ menu.isVisible = false;
205
+ redrawAll();
206
+ }
207
+ return;
208
+ }
209
+ return;
210
+ }
211
+ // Special chars
212
+ for (let i = 0; i < str.length; i++) {
213
+ const char = str[i];
214
+ if (char === '\x03') { // Ctrl+C
215
+ input = '';
216
+ cursorPos = 0;
217
+ menu.isVisible = false;
218
+ stdout.write('\n');
219
+ redrawAll();
220
+ continue;
221
+ }
222
+ if (char === '\x04') { // Ctrl+D
223
+ stdout.write('\n');
224
+ cleanup();
225
+ process.exit(0);
226
+ }
227
+ if (char === '\t') { // Tab → select menu item
228
+ if (menu.isVisible) {
229
+ applyMenuSelection();
230
+ redrawAll();
231
+ }
232
+ continue;
233
+ }
234
+ if (char === '\r' || char === '\n') {
235
+ if (menu.isVisible) {
236
+ applyMenuSelection();
237
+ }
238
+ menu.isVisible = false;
239
+ stdout.write('\n');
240
+ isInputLocked = true;
241
+ cleanup();
242
+ resolve(input);
243
+ return;
244
+ }
245
+ if (char === '\x7F' || char === '\x08') { // Backspace
246
+ if (cursorPos > 0) {
247
+ input = input.slice(0, cursorPos - 1) + input.slice(cursorPos);
248
+ cursorPos--;
249
+ updateMenu();
250
+ redrawAll();
251
+ }
252
+ continue;
253
+ }
254
+ // Regular typing
255
+ input = input.slice(0, cursorPos) + char + input.slice(cursorPos);
256
+ cursorPos++;
257
+ updateMenu();
258
+ redrawAll();
259
+ }
260
+ };
261
+ stdin.setRawMode(true);
262
+ stdin.resume();
263
+ stdin.setEncoding('utf8');
264
+ stdin.on('data', onData);
265
+ redrawAll();
266
+ });
267
+ }
268
+ //# sourceMappingURL=realtime-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime-input.js","sourceRoot":"","sources":["../../src/cli/realtime-input.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Eden CLI Setup - Interactive UI for system configuration
4
+ */
5
+ /**
6
+ * Interactive model setup wizard
7
+ */
8
+ export declare function interactiveSetup(): Promise<void>;
9
+ /**
10
+ * Download multiple models with progress display
11
+ */
12
+ export declare function downloadModelsBatch(modelNames: string[], verbose?: boolean): Promise<void>;
13
+ /**
14
+ * Quick setup - non-interactive automatic download
15
+ */
16
+ export declare function autoSetup(): Promise<boolean>;
17
+ /**
18
+ * Main entry point for setup command
19
+ */
20
+ export declare function runSetup(options?: {
21
+ interactive?: boolean;
22
+ verbose?: boolean;
23
+ }): Promise<void>;
24
+ export { checkOllama, getSystemInfo, checkInstalledModels } from '../core/system.js';
25
+ export { REQUIRED_MODELS } from '../core/setup.js';
26
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":";AACA;;GAEG;AAgBH;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAyItD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAED;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CA8BlD;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAOxG;AAED,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,202 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Eden CLI Setup - Interactive UI for system configuration
4
+ */
5
+ import { spawn, exec } from 'child_process';
6
+ import { promisify } from 'util';
7
+ import pc from 'picocolors';
8
+ import readline from 'readline';
9
+ import { checkOllama, getSystemInfo, checkInstalledModels, downloadModel } from '../core/system.js';
10
+ import { REQUIRED_MODELS } from '../core/setup.js';
11
+ const execAsync = promisify(exec);
12
+ /**
13
+ * Interactive model setup wizard
14
+ */
15
+ export async function interactiveSetup() {
16
+ const rl = readline.createInterface({
17
+ input: process.stdin,
18
+ output: process.stdout,
19
+ });
20
+ const ask = (question) => {
21
+ return new Promise(resolve => rl.question(question, resolve));
22
+ };
23
+ console.log(pc.cyan(`
24
+ ╔══════════════════════════════════════════════════════════════╗
25
+ ║ ║
26
+ ║ 🤖 Eden - Enterprise AI Agent System ║
27
+ ║ Setup Wizard ║
28
+ ║ ║
29
+ ╚══════════════════════════════════════════════════════════════╝
30
+ `));
31
+ // Check mode
32
+ const { edenVault } = await import('../core/vault.js');
33
+ const mode = await edenVault.getSecret('OLLAMA_MODE');
34
+ if (mode === 'remote') {
35
+ console.log(pc.cyan(`\n ☁️ Eden Cloud activo. Saltando configuración local.`));
36
+ console.log(` Conectado a: ${await edenVault.getSecret('OLLAMA_REMOTE_URL')}\n`);
37
+ rl.close();
38
+ return;
39
+ }
40
+ // Check Ollama
41
+ const ollamaStatus = await checkOllama();
42
+ if (!ollamaStatus.installed) {
43
+ console.log(pc.red('❌ Ollama no está instalado.'));
44
+ console.log(pc.yellow('\nInstala Ollama desde: https://ollama.com/download\n'));
45
+ const installNow = await ask('¿Quieres abrir la página de descarga? (s/n): ');
46
+ if (installNow.toLowerCase() === 's') {
47
+ await execAsync('xdg-open https://ollama.com/download || open https://ollama.com/download');
48
+ }
49
+ rl.close();
50
+ return;
51
+ }
52
+ if (!ollamaStatus.running) {
53
+ console.log(pc.yellow('⚠️ Ollama está instalado pero no está corriendo.'));
54
+ console.log(pc.cyan('Iniciando Ollama...'));
55
+ try {
56
+ spawn('ollama', ['serve'], { detached: true, stdio: 'ignore' });
57
+ await new Promise(r => setTimeout(r, 3000));
58
+ }
59
+ catch {
60
+ console.log(pc.red('❌ No se pudo iniciar Ollama automáticamente.'));
61
+ console.log(pc.yellow('Ejecuta: ollama serve'));
62
+ rl.close();
63
+ return;
64
+ }
65
+ }
66
+ console.log(pc.green(`✓ Ollama ${ollamaStatus.version || ''} detectado`));
67
+ // Check system requirements
68
+ const sysInfo = await getSystemInfo();
69
+ console.log(pc.cyan(`\n📊 Información del sistema:`));
70
+ console.log(` RAM: ${sysInfo.totalMemoryGB.toFixed(1)} GB total (${sysInfo.freeMemoryGB.toFixed(1)} GB libre)`);
71
+ console.log(` CPU: ${sysInfo.cpuCores} núcleos`);
72
+ if (sysInfo.hasGPU) {
73
+ console.log(` GPU: ${sysInfo.gpuVRAM?.toFixed(1)} GB VRAM ✓`);
74
+ }
75
+ else {
76
+ console.log(` GPU: No detectada (modo CPU)`);
77
+ }
78
+ // Check installed models
79
+ const modelStatus = await checkInstalledModels();
80
+ const installedCount = modelStatus.filter(m => m.installed).length;
81
+ console.log(pc.cyan(`\n📦 Modelos: ${installedCount}/${REQUIRED_MODELS.length} instalados`));
82
+ // Show missing essential models
83
+ const missingEssential = modelStatus.filter(m => {
84
+ const req = REQUIRED_MODELS.find(r => r.name === m.name);
85
+ return !m.installed && req?.priority === 1;
86
+ });
87
+ if (missingEssential.length > 0) {
88
+ console.log(pc.yellow(`\n⚠️ Modelos esenciales faltantes:`));
89
+ missingEssential.forEach(m => {
90
+ const req = REQUIRED_MODELS.find(r => r.name === m.name);
91
+ console.log(` • ${m.name} (${req?.size}) - ${req?.purpose}`);
92
+ });
93
+ const totalSize = missingEssential.reduce((sum, m) => {
94
+ const req = REQUIRED_MODELS.find(r => r.name === m.name);
95
+ const sizeStr = req?.size || '0GB';
96
+ const sizeGB = parseFloat(sizeStr.replace('GB', ''));
97
+ return sum + sizeGB;
98
+ }, 0);
99
+ console.log(pc.cyan(`\n💾 Espacio requerido: ~${totalSize.toFixed(1)} GB`));
100
+ const download = await ask(pc.yellow('\n¿Descargar modelos esenciales automáticamente? (s/n): '));
101
+ if (download.toLowerCase() === 's') {
102
+ await downloadModelsBatch(missingEssential.map(m => m.name), true);
103
+ }
104
+ }
105
+ else {
106
+ console.log(pc.green('\n✓ Todos los modelos esenciales están instalados'));
107
+ }
108
+ // Ask about recommended models
109
+ const missingRecommended = modelStatus.filter(m => {
110
+ const req = REQUIRED_MODELS.find(r => r.name === m.name);
111
+ return !m.installed && req?.priority === 2;
112
+ });
113
+ if (missingRecommended.length > 0) {
114
+ const downloadRec = await ask(pc.yellow('\n¿Descargar modelos recomendados también? (s/n): '));
115
+ if (downloadRec.toLowerCase() === 's') {
116
+ await downloadModelsBatch(missingRecommended.map(m => m.name), true);
117
+ }
118
+ }
119
+ console.log(pc.green(`
120
+ ╔══════════════════════════════════════════════════════════════╗
121
+ ║ ║
122
+ ║ ✅ Setup completado! ║
123
+ ║ ║
124
+ ║ Comandos disponibles: ║
125
+ ║ • eden - Modo interactivo ║
126
+ ║ • eden doctor - Verificar instalación ║
127
+ ║ • eden models - Gestionar modelos ║
128
+ ║ ║
129
+ ╚══════════════════════════════════════════════════════════════╝
130
+ `));
131
+ rl.close();
132
+ }
133
+ /**
134
+ * Download multiple models with progress display
135
+ */
136
+ export async function downloadModelsBatch(modelNames, verbose = false) {
137
+ const total = modelNames.length;
138
+ for (let i = 0; i < modelNames.length; i++) {
139
+ const model = modelNames[i];
140
+ const modelInfo = REQUIRED_MODELS.find(r => r.name === model);
141
+ console.log(pc.cyan(`\n[${i + 1}/${total}] Descargando ${model}...`));
142
+ console.log(` Propósito: ${modelInfo?.purpose || 'General'}`);
143
+ console.log(` Tamaño estimado: ${modelInfo?.size || 'Unknown'}`);
144
+ let lastProgress = 0;
145
+ const success = await downloadModel(model, (progress, status) => {
146
+ if (verbose && progress !== lastProgress) {
147
+ process.stdout.write(`\r Progreso: ${progress}% ${status === 'downloading' ? '⬇️' : '✓'}`);
148
+ lastProgress = progress;
149
+ }
150
+ });
151
+ if (verbose)
152
+ process.stdout.write('\n');
153
+ if (success) {
154
+ console.log(pc.green(` ✓ ${model} instalado correctamente`));
155
+ }
156
+ else {
157
+ console.log(pc.red(` ✗ Error descargando ${model}`));
158
+ }
159
+ }
160
+ }
161
+ /**
162
+ * Quick setup - non-interactive automatic download
163
+ */
164
+ export async function autoSetup() {
165
+ const { edenVault } = await import('../core/vault.js');
166
+ const mode = await edenVault.getSecret('OLLAMA_MODE');
167
+ if (mode === 'remote') {
168
+ return true;
169
+ }
170
+ const ollamaStatus = await checkOllama();
171
+ if (!ollamaStatus.installed || !ollamaStatus.running) {
172
+ console.log(pc.red('❌ Ollama no está disponible. Ejecuta setup interactivo: eden setup'));
173
+ return false;
174
+ }
175
+ const modelStatus = await checkInstalledModels();
176
+ const missingEssential = modelStatus.filter(m => {
177
+ const req = REQUIRED_MODELS.find(r => r.name === m.name);
178
+ return !m.installed && req?.priority === 1;
179
+ });
180
+ if (missingEssential.length === 0) {
181
+ console.log(pc.green('✓ Todos los modelos esenciales ya están instalados'));
182
+ return true;
183
+ }
184
+ console.log(pc.cyan(`📦 Descargando ${missingEssential.length} modelos esenciales...`));
185
+ await downloadModelsBatch(missingEssential.map(m => m.name), false);
186
+ return true;
187
+ }
188
+ /**
189
+ * Main entry point for setup command
190
+ */
191
+ export async function runSetup(options = {}) {
192
+ if (options.interactive ?? true) {
193
+ await interactiveSetup();
194
+ }
195
+ else {
196
+ const success = await autoSetup();
197
+ process.exit(success ? 0 : 1);
198
+ }
199
+ }
200
+ export { checkOllama, getSystemInfo, checkInstalledModels } from '../core/system.js';
201
+ export { REQUIRED_MODELS } from '../core/setup.js';
202
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EACL,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,aAAa,EACd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,CAAC,QAAgB,EAAmB,EAAE;QAChD,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;CAOrB,CAAC,CAAC,CAAC;IAEF,aAAa;IACb,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAEtD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACrF,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,eAAe;IACf,MAAM,YAAY,GAAG,MAAM,WAAW,EAAE,CAAC;IAEzC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,uDAAuD,CAAC,CAAC,CAAC;QAEhF,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC9E,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YACrC,MAAM,SAAS,CAAC,0EAA0E,CAAC,CAAC;QAC9F,CAAC;QACD,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAE5C,IAAI,CAAC;YACH,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;YAChD,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;QACT,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,YAAY,CAAC,OAAO,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAE1E,4BAA4B;IAC5B,MAAM,OAAO,GAAG,MAAM,aAAa,EAAE,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAClH,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,QAAQ,UAAU,CAAC,CAAC;IACnD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IAED,yBAAyB;IACzB,MAAM,WAAW,GAAG,MAAM,oBAAoB,EAAE,CAAC;IACjD,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IAEnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,cAAc,IAAI,eAAe,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC;IAE7F,gCAAgC;IAChC,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAC9C,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,QAAQ,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC9D,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC3B,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,GAAG,EAAE,IAAI,OAAO,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACnD,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,IAAI,KAAK,CAAC;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YACrD,OAAO,GAAG,GAAG,MAAM,CAAC;QACtB,CAAC,EAAE,CAAC,CAAC,CAAC;QAEN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,4BAA4B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAE5E,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,0DAA0D,CAAC,CAAC,CAAC;QAElG,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YACnC,MAAM,mBAAmB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,+BAA+B;IAC/B,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAChD,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,QAAQ,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAC/F,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YACtC,MAAM,mBAAmB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC;;;;;;;;;;;CAWtB,CAAC,CAAC,CAAC;IAEF,EAAE,CAAC,KAAK,EAAE,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,UAAoB,EACpB,UAAmB,KAAK;IAExB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,iBAAiB,KAAK,KAAK,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,uBAAuB,SAAS,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;QAEnE,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;YAC9D,IAAI,OAAO,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,QAAQ,KAAK,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC7F,YAAY,GAAG,QAAQ,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,0BAA0B,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAEtD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,WAAW,EAAE,CAAC;IAEzC,IAAI,CAAC,YAAY,CAAC,SAAS,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC,CAAC;QAC1F,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,oBAAoB,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAC9C,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,QAAQ,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,gBAAgB,CAAC,MAAM,wBAAwB,CAAC,CAAC,CAAC;IACxF,MAAM,mBAAmB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IAEpE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,UAAwD,EAAE;IACvF,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QAChC,MAAM,gBAAgB,EAAE,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,MAAM,SAAS,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,30 @@
1
+ export type ColorFn = (text: string) => string;
2
+ export interface Theme {
3
+ name: string;
4
+ success: ColorFn;
5
+ error: ColorFn;
6
+ warning: ColorFn;
7
+ accent: ColorFn;
8
+ primary: ColorFn;
9
+ secondary: ColorFn;
10
+ muted: ColorFn;
11
+ dim: ColorFn;
12
+ user: ColorFn;
13
+ system: ColorFn;
14
+ tool: ColorFn;
15
+ text: ColorFn;
16
+ info: ColorFn;
17
+ emerald: ColorFn;
18
+ cyan: ColorFn;
19
+ yellow: ColorFn;
20
+ obsidian: ColorFn;
21
+ }
22
+ export declare const THEMES: Record<string, Theme>;
23
+ export declare function loadThemePreference(): Promise<void>;
24
+ export declare function saveThemePreference(name: string): Promise<void>;
25
+ export declare function getActiveTheme(): Theme;
26
+ export declare function getActiveThemeName(): string;
27
+ export declare function setTheme(name: string): boolean;
28
+ export declare function listThemes(): string[];
29
+ export declare function createColorProxy(): Record<keyof Theme, ColorFn>;
30
+ //# sourceMappingURL=themes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../../src/cli/themes.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAE/C,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAyBD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CA6IxC,CAAC;AAMF,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUzD;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAarE;AAED,wBAAgB,cAAc,IAAI,KAAK,CAEtC;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAI9C;AAED,wBAAgB,UAAU,IAAI,MAAM,EAAE,CAErC;AAGD,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,OAAO,CAAC,CAW/D"}