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 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/core/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import type { OllamaMessage } from './types/index.js';
2
+ export interface Session {
3
+ id: string;
4
+ title: string;
5
+ messages: OllamaMessage[];
6
+ model: string;
7
+ createdAt: string;
8
+ updatedAt: string;
9
+ stats: {
10
+ messageCount: number;
11
+ inputTokens: number;
12
+ outputTokens: number;
13
+ cost: number;
14
+ };
15
+ metadata: {
16
+ agent: string;
17
+ cwd: string;
18
+ };
19
+ }
20
+ export interface SessionSummary {
21
+ id: string;
22
+ title: string;
23
+ model: string;
24
+ messageCount: number;
25
+ updatedAt: string;
26
+ preview: string;
27
+ metadata: {
28
+ agent: string;
29
+ cwd: string;
30
+ };
31
+ }
32
+ export declare class SessionManager {
33
+ private currentSessionId;
34
+ private autoSaveInterval;
35
+ constructor();
36
+ private ensureDirectory;
37
+ private generateId;
38
+ private generateTitle;
39
+ createSession(messages: OllamaMessage[], model: string, agent: string, cwd: string): Promise<Session>;
40
+ saveSession(session: Session): Promise<void>;
41
+ loadSession(id: string): Promise<Session | null>;
42
+ deleteSession(id: string): Promise<boolean>;
43
+ listSessions(maxCount?: number): Promise<SessionSummary[]>;
44
+ exportSession(id: string, exportPath?: string): Promise<string | null>;
45
+ importSession(filePath: string): Promise<Session | null>;
46
+ updateCurrentSession(messages: OllamaMessage[], stats?: Partial<Session['stats']>): Promise<void>;
47
+ getCurrentSessionId(): string | null;
48
+ setCurrentSessionId(id: string): void;
49
+ startAutoSave(getMessages: () => OllamaMessage[], intervalMs?: number): void;
50
+ stopAutoSave(): void;
51
+ getSessionsDir(): Promise<string>;
52
+ }
53
+ export declare const sessionManager: SessionManager;
54
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../src/core/sessions.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAID,qBAAa,cAAc;IACzB,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,gBAAgB,CAA+B;;YAMzC,eAAe;IAQ7B,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,aAAa;IAUf,aAAa,CACjB,QAAQ,EAAE,aAAa,EAAE,EACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC;IA6Bb,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAUhD,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa3C,YAAY,CAAC,QAAQ,GAAE,MAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAwC9D,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAStE,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAiBxD,oBAAoB,CACxB,QAAQ,EAAE,aAAa,EAAE,EACzB,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IAehB,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAIpC,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIrC,aAAa,CACX,WAAW,EAAE,MAAM,aAAa,EAAE,EAClC,UAAU,GAAE,MAAc,GACzB,IAAI;IAOP,YAAY,IAAI,IAAI;IAOd,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;CAGxC;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
@@ -0,0 +1,182 @@
1
+ // Session Persistence System for Eden CLI
2
+ // Inspired by Opencode's session management
3
+ import { promises as fs } from 'node:fs';
4
+ import path from 'node:path';
5
+ import { homedir } from 'node:os';
6
+ const SESSIONS_DIR = path.join(homedir(), '.eden', 'sessions');
7
+ export class SessionManager {
8
+ currentSessionId = null;
9
+ autoSaveInterval = null;
10
+ constructor() {
11
+ this.ensureDirectory();
12
+ }
13
+ async ensureDirectory() {
14
+ try {
15
+ await fs.mkdir(SESSIONS_DIR, { recursive: true });
16
+ }
17
+ catch {
18
+ // Directory may already exist
19
+ }
20
+ }
21
+ generateId() {
22
+ return `sess_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
23
+ }
24
+ generateTitle(messages) {
25
+ // Find first user message to use as title
26
+ const firstUserMsg = messages.find(m => m.role === 'user');
27
+ if (firstUserMsg) {
28
+ const text = firstUserMsg.content.slice(0, 50);
29
+ return text.length > 47 ? text + '...' : text;
30
+ }
31
+ return 'Nueva sesión';
32
+ }
33
+ async createSession(messages, model, agent, cwd) {
34
+ const id = this.generateId();
35
+ const title = this.generateTitle(messages);
36
+ const now = new Date().toISOString();
37
+ const session = {
38
+ id,
39
+ title,
40
+ messages: [...messages],
41
+ model,
42
+ createdAt: now,
43
+ updatedAt: now,
44
+ stats: {
45
+ messageCount: messages.length,
46
+ inputTokens: 0,
47
+ outputTokens: 0,
48
+ cost: 0,
49
+ },
50
+ metadata: {
51
+ agent,
52
+ cwd,
53
+ },
54
+ };
55
+ await this.saveSession(session);
56
+ this.currentSessionId = id;
57
+ return session;
58
+ }
59
+ async saveSession(session) {
60
+ const filePath = path.join(SESSIONS_DIR, `${session.id}.json`);
61
+ session.updatedAt = new Date().toISOString();
62
+ await fs.writeFile(filePath, JSON.stringify(session, null, 2), 'utf8');
63
+ }
64
+ async loadSession(id) {
65
+ try {
66
+ const filePath = path.join(SESSIONS_DIR, `${id}.json`);
67
+ const content = await fs.readFile(filePath, 'utf8');
68
+ return JSON.parse(content);
69
+ }
70
+ catch {
71
+ return null;
72
+ }
73
+ }
74
+ async deleteSession(id) {
75
+ try {
76
+ const filePath = path.join(SESSIONS_DIR, `${id}.json`);
77
+ await fs.unlink(filePath);
78
+ if (this.currentSessionId === id) {
79
+ this.currentSessionId = null;
80
+ }
81
+ return true;
82
+ }
83
+ catch {
84
+ return false;
85
+ }
86
+ }
87
+ async listSessions(maxCount = 20) {
88
+ try {
89
+ const files = await fs.readdir(SESSIONS_DIR);
90
+ const sessionFiles = files.filter(f => f.endsWith('.json'));
91
+ const sessions = [];
92
+ for (const file of sessionFiles.slice(0, maxCount)) {
93
+ try {
94
+ const content = await fs.readFile(path.join(SESSIONS_DIR, file), 'utf8');
95
+ const session = JSON.parse(content);
96
+ // Get preview from last message
97
+ const lastMessage = session.messages[session.messages.length - 1];
98
+ const preview = lastMessage
99
+ ? lastMessage.content.slice(0, 60) + (lastMessage.content.length > 60 ? '...' : '')
100
+ : '';
101
+ sessions.push({
102
+ id: session.id,
103
+ title: session.title,
104
+ model: session.model,
105
+ messageCount: session.stats.messageCount,
106
+ updatedAt: session.updatedAt,
107
+ preview,
108
+ metadata: session.metadata,
109
+ });
110
+ }
111
+ catch {
112
+ // Skip corrupted sessions
113
+ }
114
+ }
115
+ // Sort by updatedAt desc
116
+ return sessions.sort((a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime());
117
+ }
118
+ catch {
119
+ return [];
120
+ }
121
+ }
122
+ async exportSession(id, exportPath) {
123
+ const session = await this.loadSession(id);
124
+ if (!session)
125
+ return null;
126
+ const targetPath = exportPath || path.join(process.cwd(), `eden-session-${id}.json`);
127
+ await fs.writeFile(targetPath, JSON.stringify(session, null, 2), 'utf8');
128
+ return targetPath;
129
+ }
130
+ async importSession(filePath) {
131
+ try {
132
+ const content = await fs.readFile(filePath, 'utf8');
133
+ const session = JSON.parse(content);
134
+ // Generate new ID to avoid conflicts
135
+ session.id = this.generateId();
136
+ session.createdAt = new Date().toISOString();
137
+ session.updatedAt = new Date().toISOString();
138
+ await this.saveSession(session);
139
+ return session;
140
+ }
141
+ catch {
142
+ return null;
143
+ }
144
+ }
145
+ async updateCurrentSession(messages, stats) {
146
+ if (!this.currentSessionId)
147
+ return;
148
+ const session = await this.loadSession(this.currentSessionId);
149
+ if (!session)
150
+ return;
151
+ session.messages = [...messages];
152
+ if (stats) {
153
+ session.stats = { ...session.stats, ...stats };
154
+ }
155
+ session.stats.messageCount = messages.length;
156
+ await this.saveSession(session);
157
+ }
158
+ getCurrentSessionId() {
159
+ return this.currentSessionId;
160
+ }
161
+ setCurrentSessionId(id) {
162
+ this.currentSessionId = id;
163
+ }
164
+ startAutoSave(getMessages, intervalMs = 30000) {
165
+ this.stopAutoSave();
166
+ this.autoSaveInterval = setInterval(async () => {
167
+ await this.updateCurrentSession(getMessages());
168
+ }, intervalMs);
169
+ }
170
+ stopAutoSave() {
171
+ if (this.autoSaveInterval) {
172
+ clearInterval(this.autoSaveInterval);
173
+ this.autoSaveInterval = null;
174
+ }
175
+ }
176
+ async getSessionsDir() {
177
+ return SESSIONS_DIR;
178
+ }
179
+ }
180
+ // Singleton instance
181
+ export const sessionManager = new SessionManager();
182
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/core/sessions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare const REQUIRED_MODELS: {
2
+ name: string;
3
+ size: string;
4
+ description: string;
5
+ purpose: string;
6
+ priority: number;
7
+ }[];
8
+ export declare function smartDiscovery(): Promise<{
9
+ mode: 'local' | 'remote';
10
+ url: string;
11
+ }>;
12
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/core/setup.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe;;;;;;GAI3B,CAAC;AAIF,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAAE,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAkEzF"}
@@ -0,0 +1,70 @@
1
+ import { edenVault } from './vault.js';
2
+ import { colors, icons } from '../cli/ui.js';
3
+ import pc from 'picocolors';
4
+ import enquirer from 'enquirer';
5
+ export const REQUIRED_MODELS = [
6
+ { name: 'ministral-3:14b', size: '19GB', description: 'Modelo de razonamiento avanzado (DeepSeek)', purpose: 'Razonamiento complejo y código', priority: 1 },
7
+ { name: 'qwen2.5:3b', size: '1.9GB', description: 'Modelo rápido para tareas simples', purpose: 'Tareas rápidas y código', priority: 2 },
8
+ { name: 'mxbai-embed-large', size: '669MB', description: 'Modelo para búsqueda semántica', purpose: 'Búsqueda y memoria', priority: 1 }
9
+ ];
10
+ const DEFAULT_CLOUD_URL = 'http://44.200.44.189:11435';
11
+ export async function smartDiscovery() {
12
+ // 1. Si ya hay una configuración guardada, respetarla
13
+ const savedMode = await edenVault.getSecret('OLLAMA_MODE');
14
+ const savedUrl = await edenVault.getSecret('OLLAMA_REMOTE_URL');
15
+ if (savedMode === 'remote' && savedUrl) {
16
+ return { mode: 'remote', url: savedUrl };
17
+ }
18
+ if (savedMode === 'local') {
19
+ return { mode: 'local', url: 'http://127.0.0.1:11434' };
20
+ }
21
+ // 2. Intento de descubrimiento: ¿Está el clúster de Paradixe online?
22
+ try {
23
+ const controller = new AbortController();
24
+ const timeoutId = setTimeout(() => controller.abort(), 2000); // 2 segundos de timeout
25
+ const response = await fetch(`${DEFAULT_CLOUD_URL}/auth/join`, {
26
+ method: 'GET', // Un simple GET para ver si el proxy responde
27
+ signal: controller.signal
28
+ }).catch(() => null);
29
+ clearTimeout(timeoutId);
30
+ if (response && (response.status === 200 || response.status === 401 || response.status === 405)) {
31
+ console.log(`\n ${colors.accent(icons.info)} ${pc.bold('Eden Cloud detectado.')}`);
32
+ const { useCloud } = await enquirer.prompt({
33
+ type: 'confirm',
34
+ name: 'useCloud',
35
+ message: '¿Quieres conectarte al clúster de inferencia de Paradixe? (Más rápido, sin uso de CPU local)',
36
+ initial: true
37
+ });
38
+ if (useCloud) {
39
+ const { password } = await enquirer.prompt({
40
+ type: 'password',
41
+ name: 'password',
42
+ message: 'Introduce la contraseña del clúster:'
43
+ });
44
+ const authRes = await fetch(`${DEFAULT_CLOUD_URL}/auth/join`, {
45
+ method: 'POST',
46
+ headers: { 'Content-Type': 'application/json' },
47
+ body: JSON.stringify({ password })
48
+ });
49
+ if (authRes.ok) {
50
+ const data = await authRes.json();
51
+ await edenVault.setSecret('OLLAMA_REMOTE_URL', DEFAULT_CLOUD_URL);
52
+ await edenVault.setSecret('OLLAMA_REMOTE_KEY', data.apiKey);
53
+ await edenVault.setSecret('OLLAMA_MODE', 'remote');
54
+ return { mode: 'remote', url: DEFAULT_CLOUD_URL };
55
+ }
56
+ else {
57
+ console.log(` ${colors.error(icons.error)} Password incorrecta. Usando modo local...`);
58
+ }
59
+ }
60
+ }
61
+ }
62
+ catch (err) {
63
+ // El servidor no está disponible, seguimos a local
64
+ }
65
+ // 3. Fallback a Local
66
+ console.log(`\n ${colors.dim(icons.info + ' Usando Ollama local...')}`);
67
+ await edenVault.setSecret('OLLAMA_MODE', 'local');
68
+ return { mode: 'local', url: 'http://localhost:11434' };
69
+ }
70
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/core/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface Skill {
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ triggers: string[];
6
+ priority: number;
7
+ context: string;
8
+ exclusive: boolean;
9
+ }
10
+ export declare const skills: Skill[];
11
+ export declare function detectSkills(prompt: string): Skill[];
12
+ export declare function buildEnhancedPrompt(baseSystemPrompt: string, userPrompt: string): string;
13
+ export declare function getActiveSkillsInfo(prompt: string): {
14
+ names: string[];
15
+ count: number;
16
+ };
17
+ //# sourceMappingURL=skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/core/skills.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IAEpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB,QAAQ,EAAE,MAAM,CAAC;IAEjB,OAAO,EAAE,MAAM,CAAC;IAEhB,SAAS,EAAE,OAAO,CAAC;CACpB;AAGD,eAAO,MAAM,MAAM,EAAE,KAAK,EAsFzB,CAAC;AAGF,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAmBpD;AAGD,wBAAgB,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAYxF;AAGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAMtF"}
@@ -0,0 +1,123 @@
1
+ // Skills System for Eden CLI
2
+ // Skills enhance the AI's performance by injecting specialized context based on prompt detection
3
+ // Core skills registry
4
+ export const skills = [
5
+ {
6
+ id: 'code-review',
7
+ name: 'Code Review',
8
+ description: 'Deep analysis for bugs, performance, and maintainability',
9
+ triggers: ['review', 'revisa', 'código', 'code', 'bug', 'fix', 'refactor'],
10
+ priority: 95,
11
+ exclusive: false,
12
+ context: `Eres un Principal Engineer realizando un code review crítico.
13
+ Enfócate en:
14
+ - Seguridad: Sanitización, AuthZ/AuthN, CWE-Top-25.
15
+ - Performance: Complejidad algorítmica, bloqueos de event loop, fugas de memoria.
16
+ - Arquitectura: Acoplamiento, cohesión, SOLID, patrones de diseño.
17
+ - Estilo: Legibilidad, mantenibilidad, estándares de la industria.`,
18
+ },
19
+ {
20
+ id: 'backend-architect',
21
+ name: 'Backend Architecture',
22
+ description: 'Expertise in distributed systems and API design',
23
+ triggers: ['arquitectura', 'architecture', 'api', 'backend', 'distribuido', 'microservicios', 'escalabilidad'],
24
+ priority: 90,
25
+ exclusive: false,
26
+ context: `Eres un Cloud Architect experto en sistemas distribuidos.
27
+ Diseña considerando:
28
+ - Disponibilidad y resiliencia (Circuit breakers, retries).
29
+ - Consistencia de datos (Eventual vs Strong).
30
+ - Escalabilidad horizontal y patrones de mensajería (Pub/Sub, Event-driven).
31
+ - Diseño de API REST/GraphQL de alto nivel.`,
32
+ },
33
+ {
34
+ id: 'security-expert',
35
+ name: 'Security Expert',
36
+ description: 'Security auditing and hardening',
37
+ triggers: ['seguridad', 'security', 'vulnerabilidad', 'vulnerability', 'hacker', 'audit', 'hardening'],
38
+ priority: 100,
39
+ exclusive: false,
40
+ context: `Eres un experto en ciberseguridad ofensiva y defensiva.
41
+ Analiza para encontrar:
42
+ - OWASP Top 10 vulnerabilities.
43
+ - Vulnerabilidades en dependencias (Supply chain security).
44
+ - Configuraciones de infraestructura inseguras.
45
+ - Sugiere mitigaciones específicas y proactivas.`,
46
+ },
47
+ {
48
+ id: 'ui-ux-designer',
49
+ name: 'High-End UI/UX Designer',
50
+ description: 'Expertise in minimalist and premium interface design',
51
+ triggers: ['ui', 'ux', 'diseño', 'design', 'estética', 'estético', 'interfaz', 'elegant', 'minimalista', 'premium'],
52
+ priority: 100,
53
+ exclusive: false,
54
+ context: `Eres un Senior UI/UX Designer experto en minimalismo premium.
55
+ Tus mandamientos de diseño:
56
+ - TIPOGRAFÍA RUBIK: Usa siempre Google Fonts 'Rubik' como fuente principal. Es obligatoria.
57
+ - MINIMALISMO EXTREMO: Espaciado generoso (whitespace). Layouts limpios y no saturados.
58
+ - COLORES PREMIUM: Usa paletas sofisticadas. Evita colores base del navegador. Usa grises profundos, blancos rotos y acentos elegantes.
59
+ - COMPONENTES: Bordes redondeados suaves (12px-20px). Sombras muy sutiles (soft shadows).
60
+ - INTERACTIVIDAD: Micro-interacciones suaves y transiciones elegantes.`,
61
+ },
62
+ {
63
+ id: 'frontend-design',
64
+ name: 'Frontend & Design',
65
+ description: 'Beautiful and optimized web experiences',
66
+ triggers: ['frontend', 'web', 'react', 'next', 'html', 'css', 'layout'],
67
+ priority: 95,
68
+ exclusive: false,
69
+ context: `Eres un Frontend Engineer con ojo de diseñador.
70
+ Tu objetivo es código impecable y estética premium:
71
+ - CSS Moderno: Usa Variables CSS, Flexbox y Grid.
72
+ - Mobile First: Diseño responsivo y fluido.
73
+ - Accesibilidad: Semántica HTML5 perfecta y estándares WAI-ARIA.
74
+ - Rubik Everywhere: Asegúrate de importar y aplicar 'Rubik' en el CSS global.`,
75
+ },
76
+ {
77
+ id: 'database-optimizer',
78
+ name: 'Database Optimizer',
79
+ description: 'SQL/NoSQL schema and query optimization',
80
+ triggers: ['database', 'db', 'sql', 'query', 'índice', 'index', 'postgresql', 'mongodb', 'optimizar db'],
81
+ priority: 90,
82
+ exclusive: false,
83
+ context: `Eres un Database Administrator experto.
84
+ Optimiza:
85
+ - Estructura de esquemas y normalización estratégica.
86
+ - Plan de ejecución de queries (EXPLAIN ANALYZE).
87
+ - Estrategias de indexación y particionamiento.
88
+ - Connection pooling y concurrencia.`,
89
+ },
90
+ ];
91
+ // Detect which skills apply to a given prompt
92
+ export function detectSkills(prompt) {
93
+ const promptLower = prompt.toLowerCase();
94
+ const matched = skills.filter(skill => {
95
+ return skill.triggers.some(trigger => promptLower.includes(trigger.toLowerCase()));
96
+ });
97
+ // Sort by priority (highest first)
98
+ matched.sort((a, b) => b.priority - a.priority);
99
+ // If any exclusive skill matches, return only that one
100
+ const exclusive = matched.find(s => s.exclusive);
101
+ if (exclusive) {
102
+ return [exclusive];
103
+ }
104
+ return matched;
105
+ }
106
+ // Build enhanced system prompt with detected skills
107
+ export function buildEnhancedPrompt(baseSystemPrompt, userPrompt) {
108
+ const detected = detectSkills(userPrompt);
109
+ if (detected.length === 0) {
110
+ return baseSystemPrompt;
111
+ }
112
+ const skillContexts = detected.map(s => `\n=== ${s.name} ===\n${s.context}`).join('\n');
113
+ return `${baseSystemPrompt}\n\n=== CONTEXTOS ESPECIALIZADOS ACTIVADOS ===${skillContexts}`;
114
+ }
115
+ // Get skill info for display
116
+ export function getActiveSkillsInfo(prompt) {
117
+ const detected = detectSkills(prompt);
118
+ return {
119
+ names: detected.map(s => s.name),
120
+ count: detected.length,
121
+ };
122
+ }
123
+ //# sourceMappingURL=skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/core/skills.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ export interface TokenUsage {
2
+ inputTokens: number;
3
+ outputTokens: number;
4
+ totalTokens: number;
5
+ cost: number;
6
+ }
7
+ export interface ToolUsage {
8
+ name: string;
9
+ count: number;
10
+ }
11
+ export interface SessionStats {
12
+ sessionId: string;
13
+ startTime: string;
14
+ endTime?: string;
15
+ model: string;
16
+ messages: number;
17
+ tokenUsage: TokenUsage;
18
+ toolsUsed: ToolUsage[];
19
+ }
20
+ export interface DailyStats {
21
+ date: string;
22
+ sessions: number;
23
+ totalTokens: number;
24
+ totalCost: number;
25
+ modelsUsed: Record<string, number>;
26
+ }
27
+ export declare class StatsTracker {
28
+ private currentSession;
29
+ private toolCounts;
30
+ constructor();
31
+ private ensureDirectory;
32
+ startSession(sessionId: string, model: string): void;
33
+ endSession(): SessionStats | null;
34
+ recordMessage(inputTokens: number, outputTokens: number, model: string): void;
35
+ recordToolUsage(toolName: string): void;
36
+ private calculateCost;
37
+ private saveSessionStats;
38
+ getStats(days?: number): Promise<{
39
+ totalSessions: number;
40
+ totalTokens: number;
41
+ totalCost: number;
42
+ modelBreakdown: Record<string, {
43
+ tokens: number;
44
+ cost: number;
45
+ }>;
46
+ toolBreakdown: Record<string, number>;
47
+ dailyStats: DailyStats[];
48
+ }>;
49
+ getCurrentSessionStats(): SessionStats | null;
50
+ formatCurrency(amount: number): string;
51
+ formatTokens(tokens: number): string;
52
+ }
53
+ export declare const statsTracker: StatsTracker;
54
+ //# sourceMappingURL=stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../src/core/stats.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAKD,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,UAAU,CAAkC;;YAMtC,eAAe;IAQ7B,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAiBpD,UAAU,IAAI,YAAY,GAAG,IAAI;IAoBjC,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAc7E,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKvC,OAAO,CAAC,aAAa;YAiBP,gBAAgB;IA0BxB,QAAQ,CAAC,IAAI,GAAE,MAAU,GAAG,OAAO,CAAC;QACxC,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACjE,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtC,UAAU,EAAE,UAAU,EAAE,CAAC;KAC1B,CAAC;IA+EF,sBAAsB,IAAI,YAAY,GAAG,IAAI;IAc7C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAMtC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CASrC;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}