@johpaz/hive-agents 0.0.34 → 0.0.36

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 (466) hide show
  1. package/README.md +64 -39
  2. package/dist/hive.js +4539 -4586
  3. package/dist/ui/assets/AgentCreateForm-tJZv9FZC.js +1 -0
  4. package/dist/ui/assets/AgentDetailPage-Du-mRcAX.js +1 -0
  5. package/dist/ui/assets/AgentNewPage-DIFYd_Ys.js +1 -0
  6. package/dist/ui/assets/{AgentsPage-DhCjvDNa.js → AgentsPage-YvSgWRiw.js} +7 -7
  7. package/dist/ui/assets/CanvasPage-DtMwGvxf.js +33 -0
  8. package/dist/ui/assets/ChannelsPage-BdBXWHjj.js +8 -0
  9. package/dist/ui/assets/DashboardPage-ghl1ZguH.js +6 -0
  10. package/dist/ui/assets/{LoginPage-B30OrEBy.js → LoginPage-CAmSI9Vy.js} +1 -1
  11. package/dist/ui/assets/LogsPage-DAPBHkwK.js +1 -0
  12. package/dist/ui/assets/MeetingPage-WjjGOqqU.js +1 -0
  13. package/dist/ui/assets/{NotFound-HD1Yp9yK.js → NotFound-BMeQSGcG.js} +1 -1
  14. package/dist/ui/assets/ProvidersPage-Ct6HsAi1.js +1 -0
  15. package/dist/ui/assets/{RecoverPage-CLF6buGP.js → RecoverPage-DpW3l-yv.js} +1 -1
  16. package/dist/ui/assets/SettingsPage-DBJ7_E6C.js +9 -0
  17. package/dist/ui/assets/SetupPage-DKmLVUaj.js +1 -0
  18. package/dist/ui/assets/{WebChatPage-Um3VANzn.js → WebChatPage-CVRcKept.js} +2 -2
  19. package/dist/ui/assets/accordion-C5d5Rm5z.js +1 -0
  20. package/dist/ui/assets/{activity-SfJ6UDF2.js → activity-c3pNngT_.js} +1 -1
  21. package/dist/ui/assets/alert-C-NE-P3s.js +1 -0
  22. package/dist/ui/assets/{alert-dialog-M893TdvF.js → alert-dialog-C5mzbHdP.js} +1 -1
  23. package/dist/ui/assets/arrow-left-CBcbX5EZ.js +1 -0
  24. package/dist/ui/assets/badge-ChpACfWO.js +1 -0
  25. package/dist/ui/assets/{calendar-CMMeWsP-.js → calendar-B-KZ9RQO.js} +1 -1
  26. package/dist/ui/assets/{card-C7P3W6_y.js → card-CNf6BS2e.js} +1 -1
  27. package/dist/ui/assets/chevron-left-D4U-5A27.js +1 -0
  28. package/dist/ui/assets/chevron-right-CR4Skrf3.js +1 -0
  29. package/dist/ui/assets/chevron-up-BYhk0K2J.js +1 -0
  30. package/dist/ui/assets/{circle-alert-7koABcbO.js → circle-alert-CyHDwUj8.js} +1 -1
  31. package/dist/ui/assets/circle-check-Bb54Ebmu.js +1 -0
  32. package/dist/ui/assets/{cpu-mBJgRJzM.js → cpu-Cdgc_B1K.js} +1 -1
  33. package/dist/ui/assets/dialog-QnZ0ad8O.js +1 -0
  34. package/dist/ui/assets/{download-oaofq4K1.js → download-C3ifGMjJ.js} +1 -1
  35. package/dist/ui/assets/dropdown-menu-BK-CO3Od.js +1 -0
  36. package/dist/ui/assets/{es-eUrU2hyB.js → es-NQNoaWDx.js} +1 -1
  37. package/dist/ui/assets/{external-link-SkkF2Z7B.js → external-link-BvxYeTP1.js} +1 -1
  38. package/dist/ui/assets/{eye-B8lq7sWG.js → eye-DqNTU_GD.js} +1 -1
  39. package/dist/ui/assets/{file-text-0oYol8Bb.js → file-text-BT_9S9SM.js} +1 -1
  40. package/dist/ui/assets/{folder-open-DVYu2lgk.js → folder-open-BhH8y9ac.js} +1 -1
  41. package/dist/ui/assets/gauge-D_TMa4i9.js +1 -0
  42. package/dist/ui/assets/{globe-BVPd5DRa.js → globe-DeCQTCDJ.js} +1 -1
  43. package/dist/ui/assets/{hexagon-BIAFUAlQ.js → hexagon-DsGOUl-H.js} +1 -1
  44. package/dist/ui/assets/{history-BUAnaMQo.js → history-BSG-Ypqf.js} +1 -1
  45. package/dist/ui/assets/index-B2fCYtTS.css +2 -0
  46. package/dist/ui/assets/index-DMCjjdqf.js +116 -0
  47. package/dist/ui/assets/{info-DWioleen.js → info-NwLoa2Mj.js} +1 -1
  48. package/dist/ui/assets/{key-BCGwSKKc.js → key-3EP0dhkT.js} +1 -1
  49. package/dist/ui/assets/label-D2H1IR_J.js +1 -0
  50. package/dist/ui/assets/loader-circle-CZNax6kS.js +1 -0
  51. package/dist/ui/assets/{lock-D7PCO7GC.js → lock-Ei1_J-Nq.js} +1 -1
  52. package/dist/ui/assets/{pause-CI1JFH6r.js → pause-BUqah9Bi.js} +1 -1
  53. package/dist/ui/assets/play-NcZ4swwL.js +1 -0
  54. package/dist/ui/assets/plus-CX1xyhp5.js +1 -0
  55. package/dist/ui/assets/progress-BherYzY6.js +1 -0
  56. package/dist/ui/assets/{refresh-cw-BLmKlO4J.js → refresh-cw-DaYdjQFk.js} +1 -1
  57. package/dist/ui/assets/{save-M1nv6H3P.js → save-CUdYyHNy.js} +1 -1
  58. package/dist/ui/assets/scroll-area-DkeyX32e.js +1 -0
  59. package/dist/ui/assets/{send-ijRfR0gp.js → send-B0H5SEIE.js} +1 -1
  60. package/dist/ui/assets/{settings-BvXhlJCF.js → settings-Ds4SqD8s.js} +1 -1
  61. package/dist/ui/assets/{slider-DrDFLwXh.js → slider-CsiUDxc3.js} +1 -1
  62. package/dist/ui/assets/{sparkles-C4MACMbE.js → sparkles-yUEb-7oH.js} +1 -1
  63. package/dist/ui/assets/{square-D_-gRT1l.js → square-BD81nFtN.js} +1 -1
  64. package/dist/ui/assets/switch-BDwN8RYV.js +1 -0
  65. package/dist/ui/assets/{table-DWEJJiuF.js → table-CSc8ubon.js} +1 -1
  66. package/dist/ui/assets/terminal-DN38Q456.js +1 -0
  67. package/dist/ui/assets/{textarea-CwPvQVAG.js → textarea-CXgXWKrT.js} +1 -1
  68. package/dist/ui/assets/{trash-2-Blkv31Dz.js → trash-2-CNjMkoq6.js} +1 -1
  69. package/dist/ui/assets/{triangle-alert-BKgbd30k.js → triangle-alert-C9Y8Ub4X.js} +1 -1
  70. package/dist/ui/assets/useProviders-C6_QHsEi.js +1 -0
  71. package/dist/ui/assets/{vendor-radix-JY4ncZrD.js → vendor-radix-cw1bQaVC.js} +4 -4
  72. package/dist/ui/assets/{vendor-react-CscwQerf.js → vendor-react-D4s9E-zj.js} +1 -1
  73. package/dist/ui/assets/{volume-2-BiUgObeI.js → volume-2-CeSXNDv4.js} +1 -1
  74. package/dist/ui/assets/{zap-CpyuQJEC.js → zap-hlXjpSeA.js} +1 -1
  75. package/dist/ui/dist/assets/AgentCreateForm-tJZv9FZC.js +1 -0
  76. package/dist/ui/dist/assets/AgentDetailPage-Du-mRcAX.js +1 -0
  77. package/dist/ui/dist/assets/AgentNewPage-DIFYd_Ys.js +1 -0
  78. package/dist/ui/dist/assets/AgentsPage-YvSgWRiw.js +10 -0
  79. package/dist/ui/dist/assets/CanvasPage-DtMwGvxf.js +33 -0
  80. package/dist/ui/dist/assets/ChannelsPage-BdBXWHjj.js +8 -0
  81. package/dist/ui/dist/assets/DashboardPage-ghl1ZguH.js +6 -0
  82. package/dist/ui/dist/assets/LoginPage-CAmSI9Vy.js +1 -0
  83. package/dist/ui/dist/assets/LogsPage-DAPBHkwK.js +1 -0
  84. package/dist/ui/dist/assets/MeetingPage-WjjGOqqU.js +1 -0
  85. package/dist/ui/dist/assets/NotFound-BMeQSGcG.js +1 -0
  86. package/dist/ui/dist/assets/ProvidersPage-Ct6HsAi1.js +1 -0
  87. package/dist/ui/dist/assets/RecoverPage-DpW3l-yv.js +1 -0
  88. package/dist/ui/dist/assets/SettingsPage-DBJ7_E6C.js +9 -0
  89. package/dist/ui/dist/assets/SetupPage-DKmLVUaj.js +1 -0
  90. package/dist/ui/dist/assets/WebChatPage-CVRcKept.js +16 -0
  91. package/dist/ui/dist/assets/accordion-C5d5Rm5z.js +1 -0
  92. package/dist/ui/dist/assets/activity-c3pNngT_.js +1 -0
  93. package/dist/ui/dist/assets/alert-C-NE-P3s.js +1 -0
  94. package/dist/ui/dist/assets/alert-dialog-C5mzbHdP.js +1 -0
  95. package/dist/ui/dist/assets/arrow-left-CBcbX5EZ.js +1 -0
  96. package/dist/ui/dist/assets/badge-ChpACfWO.js +1 -0
  97. package/dist/ui/dist/assets/calendar-B-KZ9RQO.js +1 -0
  98. package/dist/ui/dist/assets/card-CNf6BS2e.js +1 -0
  99. package/dist/ui/dist/assets/chevron-left-D4U-5A27.js +1 -0
  100. package/dist/ui/dist/assets/chevron-right-CR4Skrf3.js +1 -0
  101. package/dist/ui/dist/assets/chevron-up-BYhk0K2J.js +1 -0
  102. package/dist/ui/dist/assets/circle-alert-CyHDwUj8.js +1 -0
  103. package/dist/ui/dist/assets/circle-check-Bb54Ebmu.js +1 -0
  104. package/dist/ui/dist/assets/cpu-Cdgc_B1K.js +1 -0
  105. package/dist/ui/dist/assets/dialog-QnZ0ad8O.js +1 -0
  106. package/dist/ui/dist/assets/download-C3ifGMjJ.js +1 -0
  107. package/dist/ui/dist/assets/dropdown-menu-BK-CO3Od.js +1 -0
  108. package/dist/ui/dist/assets/es-NQNoaWDx.js +1 -0
  109. package/dist/ui/dist/assets/external-link-BvxYeTP1.js +1 -0
  110. package/dist/ui/dist/assets/eye-DqNTU_GD.js +1 -0
  111. package/dist/ui/dist/assets/file-text-BT_9S9SM.js +1 -0
  112. package/dist/ui/dist/assets/folder-open-BhH8y9ac.js +1 -0
  113. package/dist/ui/dist/assets/format-GVHeOyWI.js +1 -0
  114. package/dist/ui/dist/assets/gateway-url-COCbW0IR.js +1 -0
  115. package/dist/ui/dist/assets/gauge-D_TMa4i9.js +1 -0
  116. package/dist/ui/dist/assets/globe-DeCQTCDJ.js +1 -0
  117. package/dist/ui/dist/assets/hexagon-DsGOUl-H.js +1 -0
  118. package/dist/ui/dist/assets/history-BSG-Ypqf.js +1 -0
  119. package/dist/ui/dist/assets/index-B2fCYtTS.css +2 -0
  120. package/dist/ui/dist/assets/index-DMCjjdqf.js +116 -0
  121. package/dist/ui/dist/assets/info-NwLoa2Mj.js +1 -0
  122. package/dist/ui/dist/assets/key-3EP0dhkT.js +1 -0
  123. package/dist/ui/dist/assets/label-D2H1IR_J.js +1 -0
  124. package/dist/ui/dist/assets/loader-circle-CZNax6kS.js +1 -0
  125. package/dist/ui/dist/assets/lock-Ei1_J-Nq.js +1 -0
  126. package/dist/ui/dist/assets/pause-BUqah9Bi.js +1 -0
  127. package/dist/ui/dist/assets/play-NcZ4swwL.js +1 -0
  128. package/dist/ui/dist/assets/plus-CX1xyhp5.js +1 -0
  129. package/dist/ui/dist/assets/progress-BherYzY6.js +1 -0
  130. package/dist/ui/dist/assets/refresh-cw-DaYdjQFk.js +1 -0
  131. package/dist/ui/dist/assets/rolldown-runtime-S-ySWqyJ.js +1 -0
  132. package/dist/ui/dist/assets/save-CUdYyHNy.js +1 -0
  133. package/dist/ui/dist/assets/scroll-area-DkeyX32e.js +1 -0
  134. package/dist/ui/dist/assets/send-B0H5SEIE.js +1 -0
  135. package/dist/ui/dist/assets/settings-Ds4SqD8s.js +1 -0
  136. package/dist/ui/dist/assets/slider-CsiUDxc3.js +14 -0
  137. package/dist/ui/dist/assets/sparkles-yUEb-7oH.js +1 -0
  138. package/dist/ui/dist/assets/square-BD81nFtN.js +1 -0
  139. package/dist/ui/dist/assets/switch-BDwN8RYV.js +1 -0
  140. package/dist/ui/dist/assets/table-CSc8ubon.js +1 -0
  141. package/dist/ui/dist/assets/terminal-DN38Q456.js +1 -0
  142. package/dist/ui/dist/assets/textarea-CXgXWKrT.js +1 -0
  143. package/dist/ui/dist/assets/trash-2-CNjMkoq6.js +1 -0
  144. package/dist/ui/dist/assets/triangle-alert-C9Y8Ub4X.js +1 -0
  145. package/dist/ui/dist/assets/useProviders-C6_QHsEi.js +1 -0
  146. package/dist/ui/dist/assets/utils-3pnRFmFe.js +1 -0
  147. package/dist/ui/dist/assets/vendor-charts-Bu2lyBKP.js +65 -0
  148. package/dist/ui/dist/assets/vendor-query-DsWPbQdG.js +1 -0
  149. package/dist/ui/dist/assets/vendor-radix-cw1bQaVC.js +63 -0
  150. package/dist/ui/dist/assets/vendor-react-D4s9E-zj.js +1 -0
  151. package/dist/ui/dist/assets/vendor-router-C9pIYwbJ.js +3 -0
  152. package/dist/ui/dist/assets/volume-2-CeSXNDv4.js +1 -0
  153. package/dist/ui/dist/assets/zap-hlXjpSeA.js +1 -0
  154. package/dist/ui/dist/favicon.ico +0 -0
  155. package/dist/ui/dist/index.html +40 -0
  156. package/dist/ui/dist/placeholder.svg +1 -0
  157. package/dist/ui/index.html +7 -11
  158. package/package.json +137 -15
  159. package/packages/cli/src/adapters/binary.ts +461 -0
  160. package/packages/cli/src/adapters/bun-global.ts +378 -0
  161. package/packages/cli/src/adapters/config.ts +314 -0
  162. package/packages/cli/src/adapters/docker.ts +308 -0
  163. package/packages/cli/src/adapters/factory.ts +168 -0
  164. package/packages/cli/src/adapters/index.ts +80 -0
  165. package/packages/cli/src/adapters/types.ts +218 -0
  166. package/packages/cli/src/commands/agent-run.ts +168 -0
  167. package/packages/cli/src/commands/agents.ts +398 -0
  168. package/packages/cli/src/commands/chat.ts +142 -0
  169. package/packages/cli/src/commands/config.ts +49 -0
  170. package/packages/cli/src/commands/cron.ts +487 -0
  171. package/packages/cli/src/commands/dev.ts +58 -0
  172. package/packages/cli/src/commands/doctor.ts +320 -0
  173. package/packages/cli/src/commands/gateway.ts +719 -0
  174. package/packages/cli/src/commands/logs.ts +57 -0
  175. package/packages/cli/src/commands/mcp.ts +175 -0
  176. package/packages/cli/src/commands/message.ts +77 -0
  177. package/packages/cli/src/commands/migrate.ts +90 -0
  178. package/packages/cli/src/commands/onboard.ts +1656 -0
  179. package/packages/cli/src/commands/security.ts +144 -0
  180. package/packages/cli/src/commands/service.ts +50 -0
  181. package/packages/cli/src/commands/sessions.ts +116 -0
  182. package/packages/cli/src/commands/skills.ts +215 -0
  183. package/packages/cli/src/commands/update.ts +203 -0
  184. package/packages/cli/src/index.ts +210 -0
  185. package/packages/cli/src/ui-bundle.generated.ts +3 -0
  186. package/packages/cli/src/utils/token.ts +6 -0
  187. package/packages/core/src/agent/agent-loop.ts +691 -0
  188. package/packages/core/src/agent/compaction.ts +240 -0
  189. package/packages/core/src/agent/context-compiler.ts +467 -0
  190. package/packages/core/src/agent/context-guard.ts +91 -0
  191. package/packages/core/src/agent/conversation-store.ts +244 -0
  192. package/packages/core/src/agent/curator.ts +158 -0
  193. package/packages/core/src/agent/hooks.ts +166 -0
  194. package/packages/core/src/agent/llm-client.ts +167 -0
  195. package/packages/core/src/agent/llm-providers/anthropic.ts +212 -0
  196. package/packages/core/src/agent/llm-providers/deepseek.ts +8 -0
  197. package/packages/core/src/agent/llm-providers/gemini.ts +215 -0
  198. package/packages/core/src/agent/llm-providers/groq.ts +5 -0
  199. package/packages/core/src/agent/llm-providers/interface.ts +195 -0
  200. package/packages/core/src/agent/llm-providers/kimi.ts +8 -0
  201. package/packages/core/src/agent/llm-providers/local-llama.ts +37 -0
  202. package/packages/core/src/agent/llm-providers/mistral.ts +5 -0
  203. package/packages/core/src/agent/llm-providers/nvidia.ts +5 -0
  204. package/packages/core/src/agent/llm-providers/ollama.ts +175 -0
  205. package/packages/core/src/agent/llm-providers/openai-compat-base.ts +379 -0
  206. package/packages/core/src/agent/llm-providers/openai.ts +5 -0
  207. package/packages/core/src/agent/llm-providers/openrouter.ts +5 -0
  208. package/packages/core/src/agent/llm-providers/qwen.ts +5 -0
  209. package/packages/core/src/agent/native-tools.ts +31 -0
  210. package/packages/core/src/agent/playbook-selector.ts +147 -0
  211. package/packages/core/src/agent/prompt-builder.ts +169 -0
  212. package/packages/core/src/agent/providers/index.ts +204 -0
  213. package/packages/core/src/agent/providers.ts +1 -0
  214. package/packages/core/src/agent/reflector.ts +200 -0
  215. package/packages/core/src/agent/service.ts +267 -0
  216. package/packages/core/src/agent/skill-selector.ts +479 -0
  217. package/packages/core/src/agent/stuck-loop.ts +133 -0
  218. package/packages/core/src/agent/tool-selector.ts +569 -0
  219. package/packages/core/src/agent/tracer.ts +100 -0
  220. package/packages/core/src/auth/auth.ts +108 -0
  221. package/packages/core/src/auth/index.ts +1 -0
  222. package/packages/core/src/canvas/a2ui-tools.ts +255 -0
  223. package/packages/core/src/canvas/canvas-manager.ts +390 -0
  224. package/packages/core/src/canvas/canvas-tools.ts +448 -0
  225. package/packages/core/src/canvas/emitter.ts +149 -0
  226. package/packages/core/src/canvas/index.ts +3 -0
  227. package/packages/core/src/channels/base.ts +154 -0
  228. package/packages/core/src/channels/discord.ts +273 -0
  229. package/packages/core/src/channels/index.ts +7 -0
  230. package/packages/core/src/channels/manager.ts +450 -0
  231. package/packages/core/src/channels/slack.ts +323 -0
  232. package/packages/core/src/channels/telegram.ts +612 -0
  233. package/packages/core/src/channels/webchat.ts +139 -0
  234. package/packages/core/src/channels/whatsapp.ts +548 -0
  235. package/packages/core/src/config/index.ts +12 -0
  236. package/packages/core/src/config/loader.ts +569 -0
  237. package/packages/core/src/events/agent-bus.ts +460 -0
  238. package/packages/core/src/events/event-bus.ts +169 -0
  239. package/packages/core/src/gateway/channel-notify.ts +64 -0
  240. package/packages/core/src/gateway/helpers/cors.ts +32 -0
  241. package/packages/core/src/gateway/helpers/index.ts +4 -0
  242. package/packages/core/src/gateway/helpers/narration.ts +57 -0
  243. package/packages/core/src/gateway/helpers/path.ts +13 -0
  244. package/packages/core/src/gateway/helpers/redact.ts +61 -0
  245. package/packages/core/src/gateway/index.ts +5 -0
  246. package/packages/core/src/gateway/initializer.ts +363 -0
  247. package/packages/core/src/gateway/lane-queue.ts +169 -0
  248. package/packages/core/src/gateway/llm-local/client.ts +94 -0
  249. package/packages/core/src/gateway/llm-local/detector.ts +321 -0
  250. package/packages/core/src/gateway/llm-local/downloader.ts +216 -0
  251. package/packages/core/src/gateway/llm-local/index.ts +34 -0
  252. package/packages/core/src/gateway/llm-local/manager.ts +186 -0
  253. package/packages/core/src/gateway/llm-local/models.ts +149 -0
  254. package/packages/core/src/gateway/llm-local/server.ts +179 -0
  255. package/packages/core/src/gateway/resolver.ts +108 -0
  256. package/packages/core/src/gateway/router.ts +124 -0
  257. package/packages/core/src/gateway/routes/agents.ts +210 -0
  258. package/packages/core/src/gateway/routes/auth.ts +244 -0
  259. package/packages/core/src/gateway/routes/channels.ts +484 -0
  260. package/packages/core/src/gateway/routes/chat.ts +241 -0
  261. package/packages/core/src/gateway/routes/config.ts +12 -0
  262. package/packages/core/src/gateway/routes/cron-api.ts +544 -0
  263. package/packages/core/src/gateway/routes/ethics.ts +46 -0
  264. package/packages/core/src/gateway/routes/llm-local.ts +271 -0
  265. package/packages/core/src/gateway/routes/mcp.ts +319 -0
  266. package/packages/core/src/gateway/routes/meeting.ts +232 -0
  267. package/packages/core/src/gateway/routes/models.ts +163 -0
  268. package/packages/core/src/gateway/routes/multimodal.ts +93 -0
  269. package/packages/core/src/gateway/routes/providers.ts +220 -0
  270. package/packages/core/src/gateway/routes/setup.ts +441 -0
  271. package/packages/core/src/gateway/routes/skills.ts +115 -0
  272. package/packages/core/src/gateway/routes/system.ts +469 -0
  273. package/packages/core/src/gateway/routes/tasks.ts +44 -0
  274. package/packages/core/src/gateway/routes/tools.ts +59 -0
  275. package/packages/core/src/gateway/routes/tts-local.ts +388 -0
  276. package/packages/core/src/gateway/routes/users.ts +122 -0
  277. package/packages/core/src/gateway/routes/voice.ts +189 -0
  278. package/packages/core/src/gateway/routes/workspace.ts +281 -0
  279. package/packages/core/src/gateway/server.ts +2744 -0
  280. package/packages/core/src/gateway/session.ts +95 -0
  281. package/packages/core/src/gateway/slash-commands.ts +207 -0
  282. package/packages/core/src/gateway/tts/README.md +94 -0
  283. package/packages/core/src/gateway/tts/package.json +25 -0
  284. package/packages/core/src/gateway/tts/src/client.ts +59 -0
  285. package/packages/core/src/gateway/tts/src/detect.ts +42 -0
  286. package/packages/core/src/gateway/tts/src/index.ts +15 -0
  287. package/packages/core/src/gateway/tts/src/install.ts +129 -0
  288. package/packages/core/src/gateway/tts/src/models.ts +50 -0
  289. package/packages/core/src/gateway/tts/src/server.ts +252 -0
  290. package/packages/core/src/gateway/tts/voices/.gitkeep +0 -0
  291. package/packages/core/src/heartbeat/index.ts +157 -0
  292. package/packages/core/src/index.ts +56 -0
  293. package/packages/core/src/mcp/hot-reload.ts +148 -0
  294. package/packages/core/src/mcp/singleton.ts +21 -0
  295. package/packages/core/src/mcp/tool-sync.ts +176 -0
  296. package/packages/core/src/multimodal/index.ts +2 -0
  297. package/packages/core/src/multimodal/types.ts +28 -0
  298. package/packages/core/src/multimodal/vision-service.ts +283 -0
  299. package/packages/core/src/plugins/api.ts +128 -0
  300. package/packages/core/src/plugins/index.ts +2 -0
  301. package/packages/core/src/plugins/loader.ts +365 -0
  302. package/packages/core/src/resilience/circuit-breaker.ts +225 -0
  303. package/packages/core/src/scheduler/CronScheduler.ts +699 -0
  304. package/packages/core/src/scheduler/dag/AgentExecutor.ts +53 -0
  305. package/packages/core/src/scheduler/dag/DAGScheduler.ts +250 -0
  306. package/packages/core/src/scheduler/dag/EventBridge.ts +122 -0
  307. package/packages/core/src/scheduler/dag/TaskGraph.ts +192 -0
  308. package/packages/core/src/scheduler/dag/TaskNode.ts +97 -0
  309. package/packages/core/src/scheduler/dag/TaskResult.ts +22 -0
  310. package/packages/core/src/scheduler/dag/errors.ts +37 -0
  311. package/packages/core/src/scheduler/dag/index.ts +26 -0
  312. package/packages/core/src/scheduler/dag/presets/ResearchPreset.ts +97 -0
  313. package/packages/core/src/scheduler/dag/strategies/ParallelStrategy.ts +21 -0
  314. package/packages/core/src/scheduler/dag/strategies/PriorityStrategy.ts +46 -0
  315. package/packages/core/src/scheduler/index.ts +22 -0
  316. package/packages/core/src/scheduler/integration.ts +237 -0
  317. package/packages/core/src/scheduler/types.ts +164 -0
  318. package/packages/core/src/security/google-chat.ts +269 -0
  319. package/packages/core/src/security/index.ts +192 -0
  320. package/packages/core/src/security/pairing.ts +250 -0
  321. package/packages/core/src/security/rate-limit.ts +270 -0
  322. package/packages/core/src/security/signal.ts +321 -0
  323. package/packages/core/src/state/store.ts +312 -0
  324. package/packages/core/src/storage/crypto.ts +197 -0
  325. package/packages/core/src/storage/migrate.ts +147 -0
  326. package/packages/core/src/storage/onboarding.ts +1506 -0
  327. package/packages/core/src/storage/schema.ts +666 -0
  328. package/packages/core/src/storage/seed.ts +628 -0
  329. package/packages/core/src/storage/sqlite.ts +407 -0
  330. package/packages/core/src/storage/usage.ts +374 -0
  331. package/packages/core/src/tool-runtime/index.ts +476 -0
  332. package/packages/core/src/tool-runtime/tool-worker.ts +125 -0
  333. package/packages/core/src/tools/agents/get-available-models.ts +118 -0
  334. package/packages/core/src/tools/agents/index.ts +610 -0
  335. package/packages/core/src/tools/canvas/index.ts +420 -0
  336. package/packages/core/src/tools/cli/index.ts +142 -0
  337. package/packages/core/src/tools/core/index.ts +478 -0
  338. package/packages/core/src/tools/cron/index.ts +635 -0
  339. package/packages/core/src/tools/filesystem/fs-delete.ts +78 -0
  340. package/packages/core/src/tools/filesystem/fs-edit.ts +106 -0
  341. package/packages/core/src/tools/filesystem/fs-exists.ts +63 -0
  342. package/packages/core/src/tools/filesystem/fs-glob.ts +108 -0
  343. package/packages/core/src/tools/filesystem/fs-list.ts +129 -0
  344. package/packages/core/src/tools/filesystem/fs-read.ts +72 -0
  345. package/packages/core/src/tools/filesystem/fs-write.ts +67 -0
  346. package/packages/core/src/tools/filesystem/index.ts +34 -0
  347. package/packages/core/src/tools/filesystem/workspace-guard.ts +62 -0
  348. package/packages/core/src/tools/index.ts +197 -0
  349. package/packages/core/src/tools/meeting/index.ts +363 -0
  350. package/packages/core/src/tools/office/index.ts +47 -0
  351. package/packages/core/src/tools/office/office-escribir-docx.ts +192 -0
  352. package/packages/core/src/tools/office/office-escribir-pdf.ts +172 -0
  353. package/packages/core/src/tools/office/office-escribir-pptx.ts +174 -0
  354. package/packages/core/src/tools/office/office-escribir-xlsx.ts +116 -0
  355. package/packages/core/src/tools/office/office-leer-docx.ts +93 -0
  356. package/packages/core/src/tools/office/office-leer-pdf.ts +114 -0
  357. package/packages/core/src/tools/office/office-leer-pptx.ts +136 -0
  358. package/packages/core/src/tools/office/office-leer-xlsx.ts +124 -0
  359. package/packages/core/src/tools/types.ts +39 -0
  360. package/packages/core/src/tools/voice/index.ts +104 -0
  361. package/packages/core/src/tools/web/browser-click.ts +78 -0
  362. package/packages/core/src/tools/web/browser-extract.ts +139 -0
  363. package/packages/core/src/tools/web/browser-navigate.ts +106 -0
  364. package/packages/core/src/tools/web/browser-screenshot.ts +87 -0
  365. package/packages/core/src/tools/web/browser-script.ts +88 -0
  366. package/packages/core/src/tools/web/browser-service.ts +554 -0
  367. package/packages/core/src/tools/web/browser-type.ts +101 -0
  368. package/packages/core/src/tools/web/browser-wait.ts +136 -0
  369. package/packages/core/src/tools/web/index.ts +41 -0
  370. package/packages/core/src/tools/web/web-fetch.ts +78 -0
  371. package/packages/core/src/tools/web/web-search.ts +123 -0
  372. package/packages/core/src/utils/benchmark.ts +80 -0
  373. package/packages/core/src/utils/crypto.ts +73 -0
  374. package/packages/core/src/utils/date.ts +42 -0
  375. package/packages/core/src/utils/index.ts +5 -0
  376. package/packages/core/src/utils/logger.ts +389 -0
  377. package/packages/core/src/utils/retry.ts +70 -0
  378. package/packages/core/src/utils/toon.ts +253 -0
  379. package/packages/core/src/voice/index.ts +643 -0
  380. package/packages/mcp/src/config.ts +13 -0
  381. package/packages/mcp/src/index.ts +1 -0
  382. package/packages/mcp/src/logger.ts +47 -0
  383. package/packages/mcp/src/manager.ts +439 -0
  384. package/packages/mcp/src/transports/index.ts +67 -0
  385. package/packages/mcp/src/transports/sse.ts +238 -0
  386. package/packages/mcp/src/transports/websocket.ts +159 -0
  387. package/packages/skills/src/bundled/agents/agent_spawner/SKILL.md +167 -0
  388. package/packages/skills/src/bundled/agents/code_delegator/SKILL.md +156 -0
  389. package/packages/skills/src/bundled/agents/memory_manager/SKILL.md +143 -0
  390. package/packages/skills/src/bundled/agents/research_and_remember/SKILL.md +139 -0
  391. package/packages/skills/src/bundled/agents/task_orchestrator/SKILL.md +198 -0
  392. package/packages/skills/src/bundled/canvas/a2ui_dashboard/SKILL.md +176 -0
  393. package/packages/skills/src/bundled/canvas/a2ui_form/SKILL.md +202 -0
  394. package/packages/skills/src/bundled/canvas/a2ui_interactive/SKILL.md +206 -0
  395. package/packages/skills/src/bundled/canvas/canvas_dashboard/SKILL.md +146 -0
  396. package/packages/skills/src/bundled/canvas/canvas_interact/SKILL.md +148 -0
  397. package/packages/skills/src/bundled/canvas/canvas_report/SKILL.md +146 -0
  398. package/packages/skills/src/bundled/cli/cli_pipeline/SKILL.md +136 -0
  399. package/packages/skills/src/bundled/cli/cli_safe_exec/SKILL.md +125 -0
  400. package/packages/skills/src/bundled/cron_manager/SKILL.md +188 -0
  401. package/packages/skills/src/bundled/cron_reminder/SKILL.md +112 -0
  402. package/packages/skills/src/bundled/filesystem/file_manager/SKILL.md +118 -0
  403. package/packages/skills/src/bundled/filesystem/file_read_and_summarize/SKILL.md +108 -0
  404. package/packages/skills/src/bundled/filesystem/file_writer/SKILL.md +135 -0
  405. package/packages/skills/src/bundled/meeting/meeting_transcription/SKILL.md +213 -0
  406. package/packages/skills/src/bundled/office/office_document_manager/SKILL.md +262 -0
  407. package/packages/skills/src/bundled/search_knowledge/busqueda_fts5/SKILL.md +74 -0
  408. package/packages/skills/src/bundled/voice/voice_assistant/SKILL.md +174 -0
  409. package/packages/skills/src/bundled/voice/voice_input/SKILL.md +146 -0
  410. package/packages/skills/src/bundled/voice/voice_output/SKILL.md +151 -0
  411. package/packages/skills/src/bundled/web/browser_automate/SKILL.md +120 -0
  412. package/packages/skills/src/bundled/web/browser_scrape/SKILL.md +109 -0
  413. package/packages/skills/src/bundled/web/web_monitor/SKILL.md +127 -0
  414. package/packages/skills/src/bundled/web/web_research/SKILL.md +119 -0
  415. package/packages/skills/src/bundled-data.generated.ts +1964 -0
  416. package/packages/skills/src/index.ts +1 -0
  417. package/packages/skills/src/loader.ts +388 -0
  418. package/dist/ui/assets/AgentCreateForm-DS6yXjGV.js +0 -1
  419. package/dist/ui/assets/AgentDetailPage-Ud552U7_.js +0 -1
  420. package/dist/ui/assets/AgentNewPage-DWWs1P7s.js +0 -1
  421. package/dist/ui/assets/BridgePage-BD93aBKM.js +0 -1
  422. package/dist/ui/assets/CanvasPage-CM35yj0Q.js +0 -33
  423. package/dist/ui/assets/ChannelsPage-CtsWtJdc.js +0 -8
  424. package/dist/ui/assets/DashboardPage-BpiwR5Jg.js +0 -6
  425. package/dist/ui/assets/LogsPage-DqUsG3MW.js +0 -1
  426. package/dist/ui/assets/MeetingPage-C5B8-IzE.js +0 -1
  427. package/dist/ui/assets/ProjectsPage-zic2sjUf.js +0 -1
  428. package/dist/ui/assets/ProvidersPage-BxyIGKzh.js +0 -1
  429. package/dist/ui/assets/SettingsPage-CNFm3nun.js +0 -9
  430. package/dist/ui/assets/SetupPage-RBcjQtv7.js +0 -1
  431. package/dist/ui/assets/accordion-BEVqJf2A.js +0 -1
  432. package/dist/ui/assets/alert-BeGcM0nb.js +0 -1
  433. package/dist/ui/assets/api-q5Ax-vD2.js +0 -63
  434. package/dist/ui/assets/arrow-left-B_jlw8X_.js +0 -1
  435. package/dist/ui/assets/badge-pNhtItyt.js +0 -1
  436. package/dist/ui/assets/chevron-down-B16UVNlu.js +0 -1
  437. package/dist/ui/assets/chevron-left-_8ly7Fz0.js +0 -1
  438. package/dist/ui/assets/chevron-right-yzZLjezG.js +0 -1
  439. package/dist/ui/assets/chevron-up-CxKDQEE5.js +0 -1
  440. package/dist/ui/assets/circle-CFKiO9Ds.js +0 -1
  441. package/dist/ui/assets/circle-check-E2u7ZS2r.js +0 -1
  442. package/dist/ui/assets/circle-minus-1-TZF2pu.js +0 -1
  443. package/dist/ui/assets/circle-x-Cm3Sr-xb.js +0 -1
  444. package/dist/ui/assets/dialog-BaJbZsQF.js +0 -1
  445. package/dist/ui/assets/dist-DB-fE0Co.js +0 -1
  446. package/dist/ui/assets/dropdown-menu-DJoOchfz.js +0 -1
  447. package/dist/ui/assets/gauge-BTpFKuAj.js +0 -1
  448. package/dist/ui/assets/index-BN0875JH.css +0 -2
  449. package/dist/ui/assets/index-D4pdc0Uw.js +0 -54
  450. package/dist/ui/assets/label-C6tqnnKd.js +0 -1
  451. package/dist/ui/assets/loader-circle-CK3qRV3f.js +0 -1
  452. package/dist/ui/assets/pencil-BF2_XX-i.js +0 -1
  453. package/dist/ui/assets/play-DidATMfT.js +0 -1
  454. package/dist/ui/assets/plus-DXm1XDhQ.js +0 -1
  455. package/dist/ui/assets/progress-B1HC9cB_.js +0 -1
  456. package/dist/ui/assets/scroll-area-DKNpYkRA.js +0 -1
  457. package/dist/ui/assets/search-Co6mulZS.js +0 -1
  458. package/dist/ui/assets/switch-7AuR7x2g.js +0 -1
  459. package/dist/ui/assets/terminal-CjZu0OZ0.js +0 -1
  460. package/dist/ui/assets/useProviders-Bxsnav4y.js +0 -1
  461. package/dist/ui/assets/useWebSocketStore-ZCW_Nt1w.js +0 -1
  462. package/dist/ui/assets/x-5cXW_1ZS.js +0 -1
  463. /package/dist/ui/assets/{format-C0EOLKvf.js → format-GVHeOyWI.js} +0 -0
  464. /package/dist/ui/assets/{gateway-url-OqLaEDK-.js → gateway-url-COCbW0IR.js} +0 -0
  465. /package/dist/ui/assets/{utils-_qMjiZaF.js → utils-3pnRFmFe.js} +0 -0
  466. /package/dist/ui/assets/{vendor-router-DhLEd920.js → vendor-router-C9pIYwbJ.js} +0 -0
@@ -0,0 +1,188 @@
1
+ ---
2
+ name: cron_manager
3
+ description: "Complete management of cron jobs with cron expressions. Create, list, update, pause, resume, delete, trigger, and view history. Use for reminders, automated reports, periodic checks."
4
+ version: 2.0.0
5
+ author: Hive Team
6
+ icon: "⏰"
7
+ category: cron
8
+ permissions:
9
+ - cron_manage
10
+ dependencies: []
11
+ tools: [cron.create, cron.list, cron.update, cron.delete, cron.pause, cron.resume, cron.trigger, cron.history]
12
+
13
+ # Structured skill fields
14
+ triggers:
15
+ - "programá una tarea"
16
+ - "schedule task"
17
+ - "creá un cron"
18
+ - "create cron"
19
+ - "editá el cron"
20
+ - "edit cron"
21
+ - "eliminá el cron"
22
+ - "remove cron"
23
+ - "lista las tareas"
24
+ - "list cron jobs"
25
+ - "modificá el cron"
26
+ - "modify cron"
27
+ - "tarea recurrente"
28
+ - "recurring task"
29
+ - "todos los días"
30
+ - "daily"
31
+ - "cada semana"
32
+ - "weekly"
33
+
34
+ preferred_agents: []
35
+
36
+ steps:
37
+ - step: 1
38
+ action: clarify_task
39
+ instruction: "Ask if task is one_shot (single execution) or recurring (repeats). Get specific time and task instruction."
40
+ output: task_type
41
+
42
+ - step: 2
43
+ action: build_cron_expression
44
+ instruction: "For recurring: construct cron expression (minute hour day month weekday). For one_shot: get ISO datetime."
45
+ output: cron_expression or fire_at
46
+
47
+ - step: 3
48
+ action: cron.create
49
+ instruction: "Create new cron job with required 'task' field (instruction for the agent)"
50
+ params:
51
+ name: "Short identifier (e.g., 'daily-report')"
52
+ task: "REQUIRED - Natural language instruction the agent reads when triggered (e.g., 'Generate sales report and send to Telegram')"
53
+ task_type: "'recurring' or 'one_shot'"
54
+ cron_expression: "Cron expression for recurring (e.g., '0 9 * * *')"
55
+ fire_at: "ISO datetime for one_shot (e.g., '2026-04-20T09:00:00')"
56
+ channel: "Notification channel (telegram, discord, webchat)"
57
+ start_at: "Optional ISO datetime - start of execution window (Croner startAt)"
58
+ stop_at: "Optional ISO datetime - end of execution window (Croner stopAt)"
59
+ dom_and_dow: "0 = OR logic (default), 1 = AND logic for day-of-month + day-of-week"
60
+ max_runs: "Optional max executions"
61
+ output: cron_id
62
+
63
+ - step: 4
64
+ action: cron.list
65
+ instruction: "List all cron jobs with next execution times"
66
+ output: cron_jobs
67
+
68
+ rules:
69
+ - "ALWAYS use cron.* tools — never exec/terminal"
70
+ - "The 'task' field is REQUIRED and contains the instruction the agent reads when triggered"
71
+ - "Ask if one_shot or recurring before creating"
72
+ - "For one_shot: use fire_at with ISO datetime"
73
+ - "For daily: 'MM HH * * *'"
74
+ - "For weekly: 'MM HH * * N' (N=0-6, 0=Sun)"
75
+ - "For monthly: 'MM HH D * *' (D=1-31)"
76
+ - "Always show next 3 execution times after creating"
77
+ - "Use start_at/stop_at to limit execution time window"
78
+ - "Use dom_and_dow=1 to require BOTH day-of-month AND day-of-week"
79
+ - "To edit: ALWAYS call cron.update with task_id (get from cron.list first)"
80
+
81
+ output_format:
82
+ structure: markdown
83
+ sections:
84
+ - "job_name"
85
+ - "task_instruction"
86
+ - "cron_expression"
87
+ - "next_executions"
88
+ max_length: "List all jobs"
89
+
90
+ examples:
91
+ - user_input: "programá un recordatorio diario a las 9am"
92
+ expected_behavior: "cron.create({ name: 'daily-reminder', task: 'Send reminder message', task_type: 'recurring', cron_expression: '0 9 * * *', channel: 'telegram' })"
93
+
94
+ - user_input: "lista las tareas programadas"
95
+ expected_behavior: "cron.list({})"
96
+
97
+ - user_input: "editá el cron para que sea a las 10am"
98
+ expected_behavior: "cron.list() → get task_id → cron.update({ task_id: '<id>', cron_expression: '0 10 * * *' })"
99
+
100
+ - user_input: "actualizá la instrucción del cron"
101
+ expected_behavior: "cron.list() → get task_id → cron.update({ task_id: '<id>', task: 'New instruction for agent' })"
102
+
103
+ - user_input: "elimina el cron"
104
+ expected_behavior: "cron.list() → get task_id → cron.delete({ task_id: '<id>' })"
105
+ ---
106
+
107
+ # Cron Manager Skill
108
+
109
+ ## Cuándo se Activa
110
+
111
+ Para gestionar tareas programadas (cron jobs): crear, listar, actualizar, pausar, reanudar, eliminar, ejecutar y ver historial.
112
+
113
+ ## Herramientas Disponibles
114
+
115
+ | Tool | Qué hace | Cuándo usarla |
116
+ |------|----------|---------------|
117
+ | `cron.create` | Crear cron job | Nueva tarea |
118
+ | `cron.list` | Listar todos | Ver existentes |
119
+ | `cron.update` | Actualizar existente | Cambiar horario/instrucción |
120
+ | `cron.pause` | Pausar temporalmente | Sin eliminar |
121
+ | `cron.resume` | Reanudar pausado | Continuar ejecución |
122
+ | `cron.delete` | Eliminar permanentemente | Cancelar para siempre |
123
+ | `cron.trigger` | Ejecutar ahora | Forzar ejecución |
124
+ | `cron.history` | Ver historial | Ver logs de ejecuciones |
125
+
126
+ ## Campos Principales
127
+
128
+ | Campo | Tipo | Descripción |
129
+ |-------|------|-------------|
130
+ | `name` | string | Identificador corto (e.g., 'daily-report') |
131
+ | `task` | string | **REQUERIDO** - Instrucciones para el agente al ejecutarse |
132
+ | `task_type` | string | 'recurring' (repite) o 'one_shot' (una vez) |
133
+ | `cron_expression` | string | Expresión cron (solo para recurring) |
134
+ | `fire_at` | string | Datetime ISO (solo para one_shot) |
135
+ | `channel` | string | Canal de notificación |
136
+ | `start_at` | string | Inicio de ventana opcional (Croner startAt) |
137
+ | `stop_at` | string | Fin de ventana opcional (Croner stopAt) |
138
+ | `dom_and_dow` | number | 0=OR (default), 1=AND (día mes + día semana) |
139
+
140
+ ## Cron Expression Format
141
+
142
+ ```
143
+ * * * * *
144
+ │ │ │ │ │
145
+ │ │ │ │ └── Día semana (0-6, 0=Domingo)
146
+ │ │ │ └──── Mes (1-12)
147
+ │ │ └────── Día del mes (1-31)
148
+ │ └──────── Hora (0-23)
149
+ └────────── Minuto (0-59)
150
+ ```
151
+
152
+ ## Ejemplos Comunes
153
+
154
+ | Expresión | Significado |
155
+ |-----------|-------------|
156
+ | `0 9 * * *` | Diario 9:00 AM |
157
+ | `0 7 * * 1-5` | Lun-Vie 7:00 AM |
158
+ | `0 */2 * * *` | Cada 2 horas |
159
+ | `0 0 * * 0` | Domingos medianoche |
160
+ | `0 0 1 * *` | Día 1 de cada mes |
161
+
162
+ ## Cómo Usar start_at / stop_at
163
+
164
+ - `start_at`: La tarea no ejecuta antes de esta fecha
165
+ - `stop_at`: La tarea no ejecuta después de esta fecha
166
+ - Formato ISO: `'2026-04-01T00:00:00'`
167
+
168
+ ## Cómo Usar dom_and_dow
169
+
170
+ - `0` (default): Se ejecuta si es el día del mes O el día de semana
171
+ - `1`: Se ejecuta solo si es EL MISMO día del mes Y el día de semana
172
+
173
+ Ejemplo: `0 9 15 * *` con dom_and_dow=1 significa "los 15 de cada mes QUE SEA domingo"
174
+
175
+ ## Workflow para Crear
176
+
177
+ 1. **Preguntar** → ¿one_shot o recurring?
178
+ 2. **Obtener** → Hora y canal de notificación
179
+ 3. **Crear** → `cron.create` con campo `task` obligatorio
180
+ 4. **Confirmar** → `cron.list` mostrar next runs
181
+
182
+ ## Errores a Evitar
183
+
184
+ - ❌ Olvidar el campo `task` — es obligatorio
185
+ - ❌ Usar exec para tareas programadas
186
+ - ❌ No preguntar si es one_shot o recurring
187
+ - ❌ No mostrar próximos horarios al crear
188
+ - ❌ Llamar `cron.update` sin `task_id` — siempre hacer `cron.list` primero
@@ -0,0 +1,112 @@
1
+ ---
2
+ name: cron_reminder
3
+ description: "Schedule a reminder for yourself at a specific time. Creates a one_shot cron job that sends a notification message via your preferred channel."
4
+ version: 2.0.0
5
+ author: Hive Team
6
+ icon: "⏰"
7
+ category: cron
8
+ permissions:
9
+ - cron_manage
10
+ dependencies: []
11
+ tools: [cron.create, notify]
12
+
13
+ # Structured skill fields
14
+ triggers:
15
+ - "recordame"
16
+ - "remind me"
17
+ - "recordatorio"
18
+ - "reminder"
19
+ - "alerta"
20
+ - "alert"
21
+ - "avísame"
22
+ - "notify me"
23
+ - "programá"
24
+ - "schedule"
25
+ - "para mañana"
26
+ - "for tomorrow"
27
+ - "en 30 minutos"
28
+ - "in 30 minutes"
29
+
30
+ preferred_agents: []
31
+
32
+ steps:
33
+ - step: 1
34
+ action: clarify_reminder
35
+ instruction: "Ask: What do you want to be reminded about? At what time? Via which channel?"
36
+ output: reminder_message, reminder_time, channel
37
+
38
+ - step: 2
39
+ action: build_reminder_payload
40
+ instruction: "Build the task payload with message and channel"
41
+ output: payload
42
+
43
+ - step: 3
44
+ action: cron.create
45
+ instruction: "Create one_shot cron job"
46
+ params:
47
+ name: "Short name (e.g., 'meeting-reminder')"
48
+ task: "REQUIRED - The reminder message (e.g., 'Meeting starts in 5 minutes')"
49
+ task_type: "one_shot"
50
+ fire_at: "ISO datetime (e.g., '2026-04-20T14:00:00')"
51
+ channel: "telegram, discord, webchat, whatsapp"
52
+ output: cron_id
53
+
54
+ rules:
55
+ - "ALWAYS use cron.create with task_type='one_shot' for reminders"
56
+ - "The 'task' field is REQUIRED and contains the reminder message"
57
+ - "fire_at must be in the future"
58
+ - "Use notify tool as fallback if cron fails"
59
+ - "Default channel is user's preferred, ask if not specified"
60
+
61
+ output_format:
62
+ structure: markdown
63
+ sections:
64
+ - "reminder_message"
65
+ - "scheduled_time"
66
+ - "channel"
67
+ max_length: "Short confirmation"
68
+
69
+ examples:
70
+ - user_input: "recordame la reunion a las 3pm"
71
+ expected_behavior: "cron.create({ name: 'meeting-reminder', task: 'La reunión empieza en 5 minutos', task_type: 'one_shot', fire_at: '2026-04-20T15:00:00', channel: 'telegram' })"
72
+
73
+ - user_input: "avísame en 30 minutos"
74
+ expected_behavior: "cron.create({ name: 'quick-reminder', task: 'Revisa el email', task_type: 'one_shot', fire_at: '<30-min-from-now>', channel: 'telegram' })"
75
+
76
+ - user_input: "recordame mañana a las 9am"
77
+ expected_behavior: "cron.create({ name: 'morning-reminder', task: 'Buenos días! Revisa tu agenda', task_type: 'one_shot', fire_at: '<tomorrow-9am>', channel: 'telegram' })"
78
+ ---
79
+
80
+ # Cron Reminder Skill
81
+
82
+ ## Cuándo se Activa
83
+
84
+ Para crear recordatorios de una sola ejecución (one_shot): "recuerdame a las 3pm", "avísame en 30 minutos", etc.
85
+
86
+ ## Herramientas
87
+
88
+ | Tool | Qué hace |
89
+ |------|----------|
90
+ | `cron.create` | Crear recordatorio one_shot |
91
+ | `notify` | Enviar notificación directa |
92
+
93
+ ## Cómo Funciona
94
+
95
+ 1. **Preguntar** → ¿De qué te aviso? ¿A qué hora? ¿Por qué canal?
96
+ 2. **Crear** → `cron.create` con `task_type: 'one_shot'` y `fire_at` en formato ISO
97
+ 3. **Confirmar** → Mostrar hora programada
98
+
99
+ ## Parámetros
100
+
101
+ | Campo | Descripción |
102
+ |-------|-------------|
103
+ | `task` | **REQUERIDO** - Mensaje del recordatorio |
104
+ | `task_type` | Siempre `'one_shot'` |
105
+ | `fire_at` | Fecha/hora ISO (ej: `'2026-04-20T15:00:00'`) |
106
+ | `channel` | Canal (telegram, discord, whatsapp, webchat) |
107
+
108
+ ## Errores Comunes
109
+
110
+ - ❌ Olvidar el campo `task` — obligatorio para que el agente sepa qué enviar
111
+ - ❌ Usar expresiones cron para recordatorios (usar `fire_at` en vez de `cron_expression`)
112
+ - ❌ Poner `fire_at` en el pasado
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: file_manager
3
+ description: "Explore project structure and locate files using glob patterns and directory listing"
4
+ version: 1.0.0
5
+ author: Hive Team
6
+ icon: "📁"
7
+ category: filesystem
8
+ permissions:
9
+ - filesystem_read
10
+ dependencies: []
11
+ tools: [fs_list, fs_glob, fs_exists]
12
+
13
+ # Structured skill fields
14
+ triggers:
15
+ - "lista los archivos"
16
+ - "list files"
17
+ - "buscá archivos"
18
+ - "find files"
19
+ - "explorá el proyecto"
20
+ - "explore project"
21
+ - "qué archivos hay"
22
+ - "what files exist"
23
+ - "buscá por patrón"
24
+ - "search by pattern"
25
+ - "existe este archivo"
26
+ - "file exists"
27
+ - "dónde está"
28
+ - "where is"
29
+
30
+ preferred_agents: []
31
+
32
+ steps:
33
+ - step: 1
34
+ action: fs_list
35
+ instruction: "List directory contents to understand project structure"
36
+ params:
37
+ path: "."
38
+ output: directory_tree
39
+
40
+ - step: 2
41
+ action: fs_glob
42
+ instruction: "Find files matching specific pattern (e.g., **/*.ts, **/*.md)"
43
+ params:
44
+ pattern: "**/*.ts"
45
+ output: matching_files
46
+
47
+ - step: 3
48
+ action: fs_exists
49
+ instruction: "Verify specific file or directory exists"
50
+ params:
51
+ path: "specific/path"
52
+ output: exists_boolean
53
+
54
+ rules:
55
+ - "Use fs_list for initial exploration of unknown directories"
56
+ - "Use fs_glob when user specifies file type or pattern"
57
+ - "Always verify with fs_exists before read/edit operations"
58
+ - "Stay within workspace directory unless explicitly requested otherwise"
59
+ - "For recursive search, use ** pattern (e.g., **/*.ts finds all .ts files)"
60
+
61
+ output_format:
62
+ structure: markdown
63
+ sections:
64
+ - "search_type"
65
+ - "results"
66
+ - "file_count"
67
+ max_length: "List up to 20 files, summarize if more"
68
+
69
+ examples:
70
+ - user_input: "lista los archivos del proyecto"
71
+ expected_behavior: "fs_list({ path: '.' }) → return root directory structure"
72
+
73
+ - user_input: "buscá todos los archivos TypeScript"
74
+ expected_behavior: "fs_glob({ pattern: '**/*.ts' }) → return list of .ts files"
75
+
76
+ - user_input: "existe el archivo src/config.ts"
77
+ expected_behavior: "fs_exists({ path: 'src/config.ts' }) → return true/false"
78
+ ---
79
+
80
+ # File Manager Skill
81
+
82
+ ## Cuándo se Activa
83
+
84
+ Esta skill se activa cuando el usuario necesita:
85
+ - Explorar la estructura del proyecto
86
+ - Buscar archivos por extensión o patrón
87
+ - Verificar si existe un archivo o directorio
88
+ - Encontrar la ubicación de un archivo
89
+
90
+ ## Herramientas Disponibles
91
+
92
+ | Tool | Qué hace | Cuándo usarla |
93
+ |------|----------|---------------|
94
+ | `fs_list` | Lista directorios y archivos | Exploración inicial |
95
+ | `fs_glob` | Busca archivos por patrón wildcard | Búsqueda por extensión/patrón |
96
+ | `fs_exists` | Verifica existencia | Pre-check antes de operaciones |
97
+
98
+ ## Workflow
99
+
100
+ 1. **Explorar** → `fs_list({ path })` para estructura general
101
+ 2. **Buscar por patrón** → `fs_glob({ pattern })` para tipos específicos
102
+ 3. **Verificar** → `fs_exists({ path })` para confirmación
103
+
104
+ ## Patrones Glob Comunes
105
+
106
+ | Patrón | Encuentra |
107
+ |--------|-----------|
108
+ | `**/*.ts` | Todos los TypeScript |
109
+ | `**/*.test.ts` | Solo tests |
110
+ | `**/*.md` | Documentación |
111
+ | `**/package.json` | Todos los package.json |
112
+ | `src/**/*.tsx` | React components en src |
113
+
114
+ ## Errores a Evitar
115
+
116
+ - ❌ No verificar existencia antes de leer/editar
117
+ - ❌ Usar fs_list cuando se conoce el patrón (usar glob)
118
+ - ❌ Patrones muy amplios sin filtrado
@@ -0,0 +1,108 @@
1
+ ---
2
+ name: file_read_and_summarize
3
+ description: "Read and understand file content with automatic summarization for large files"
4
+ version: 1.0.0
5
+ author: Hive Team
6
+ icon: "📄"
7
+ category: filesystem
8
+ permissions:
9
+ - filesystem_read
10
+ dependencies: []
11
+ tools: [project_read]
12
+
13
+ # Structured skill fields
14
+ triggers:
15
+ - "leé este archivo"
16
+ - "read this file"
17
+ - "mostrame el contenido"
18
+ - "show content"
19
+ - "qué dice este archivo"
20
+ - "resumí este archivo"
21
+ - "summarize this file"
22
+ - "entendé este código"
23
+ - "understand this code"
24
+
25
+ preferred_agents: []
26
+
27
+ steps:
28
+ - step: 1
29
+ action: project_exists
30
+ instruction: "Verify file exists before attempting to read"
31
+ output: exists_boolean
32
+
33
+ - step: 2
34
+ action: project_read
35
+ instruction: "Read file content. Use offset/limit for large files (>1000 lines)"
36
+ params:
37
+ path: "file path"
38
+ offset: 0
39
+ limit: 100
40
+ output: file_content
41
+
42
+ - step: 3
43
+ action: synthesize
44
+ instruction: "Summarize content if file is large. Extract key information relevant to user request"
45
+ output: summary
46
+
47
+ rules:
48
+ - "Always check file exists with project_exists before reading"
49
+ - "Use offset and limit for files >1000 lines to avoid context saturation"
50
+ - "Read in chunks for very large files — iterate with offset"
51
+ - "Summarize automatically for files >500 lines unless user requests full content"
52
+ - "Identify file type by extension and adapt summary format (code vs text vs config)"
53
+
54
+ output_format:
55
+ structure: markdown
56
+ sections:
57
+ - "file_path"
58
+ - "file_type"
59
+ - "line_count"
60
+ - "summary"
61
+ - "key_points"
62
+ max_length: "500 words for summary, full content if requested"
63
+
64
+ examples:
65
+ - user_input: "leé el archivo package.json"
66
+ expected_behavior: "Check exists → project_read({ path: 'package.json' }) → return full content (small file)"
67
+
68
+ - user_input: "resumí el archivo src/main.ts"
69
+ expected_behavior: "project_read with offset/limit → identify main exports and functions → summarize structure"
70
+
71
+ - user_input: "qué dice este archivo de configuración"
72
+ expected_behavior: "project_read → parse config format → explain key settings in plain language"
73
+ ---
74
+
75
+ # File Read and Summarize Skill
76
+
77
+ ## Cuándo se Activa
78
+
79
+ Esta skill se activa cuando el usuario necesita leer y entender el contenido de un archivo, especialmente cuando:
80
+ - El archivo es grande y necesita resumen
81
+ - Se requiere comprensión del contenido (no solo lectura)
82
+ - El usuario pide "qué dice", "resumí", "entendé"
83
+
84
+ ## Herramientas Disponibles
85
+
86
+ | Tool | Qué hace | Cuándo usarla |
87
+ |------|----------|---------------|
88
+ | `project_read` | Lee contenido de archivo del workspace | Lectura de cualquier archivo |
89
+
90
+ ## Workflow
91
+
92
+ 1. **Verificar existencia** → `project_exists({ path })`
93
+ 2. **Leer contenido** → `project_read({ path, offset, limit })`
94
+ 3. **Sintetizar** → Resumir si es grande, extraer puntos clave
95
+
96
+ ## Mejores Prácticas
97
+
98
+ - Para archivos >1000 líneas, usar `offset` y `limit`
99
+ - Identificar tipo de archivo por extensión y adaptar formato de resumen
100
+ - Para código: identificar funciones, clases, exports principales
101
+ - Para config: explicar settings clave en lenguaje simple
102
+ - Para texto: extraer ideas principales
103
+
104
+ ## Errores a Evitar
105
+
106
+ - ❌ Leer sin verificar existencia
107
+ - ❌ Retornar archivo completo sin resumir si es muy grande
108
+ - ❌ No identificar tipo de archivo para adaptar resumen
@@ -0,0 +1,135 @@
1
+ ---
2
+ name: file_writer
3
+ description: "Create, modify, and delete files with safe edit operations and confirmation for large changes"
4
+ version: 1.0.0
5
+ author: Hive Team
6
+ icon: "✍️"
7
+ category: filesystem
8
+ permissions:
9
+ - filesystem_read
10
+ - filesystem_write
11
+ dependencies: []
12
+ tools: [project_read, project_write, project_edit, project_exists]
13
+
14
+ # Structured skill fields
15
+ triggers:
16
+ - "creá un archivo"
17
+ - "create a file"
18
+ - "escribí en"
19
+ - "write to"
20
+ - "editá este archivo"
21
+ - "edit this file"
22
+ - "modificá"
23
+ - "modify"
24
+ - "eliminá el archivo"
25
+ - "delete file"
26
+ - "guardá esto"
27
+ - "save this"
28
+ - "actualizá el archivo"
29
+ - "update file"
30
+
31
+ preferred_agents: []
32
+
33
+ steps:
34
+ - step: 1
35
+ action: project_exists
36
+ instruction: "Check if file exists to determine if creating or editing"
37
+ output: exists_boolean
38
+
39
+ - step: 2
40
+ action: project_read (if editing)
41
+ instruction: "Read existing file to understand current structure before modifying"
42
+ output: current_content
43
+
44
+ - step: 3
45
+ action: decision_write_or_edit
46
+ instruction: "Choose project_write for new files or complete rewrite, project_edit for targeted changes"
47
+ output: operation_type
48
+
49
+ - step: 4
50
+ action: canvas_confirm (if large changes)
51
+ instruction: "Confirm with user before overwriting files with >50 lines of changes"
52
+ output: user_approval
53
+
54
+ - step: 5
55
+ action: project_write or project_edit
56
+ instruction: "Execute the write operation with appropriate method"
57
+ output: result
58
+
59
+ rules:
60
+ - "Always read file before editing to understand structure"
61
+ - "Use project_edit for small, targeted changes (find/replace)"
62
+ - "Use project_write for new files or complete rewrites"
63
+ - "Confirm with canvas_confirm before changes >50 lines"
64
+ - "Verify file path is within workspace unless explicitly requested otherwise"
65
+ - "For delete operations, confirm explicitly with user"
66
+
67
+ output_format:
68
+ structure: markdown
69
+ sections:
70
+ - "operation"
71
+ - "file_path"
72
+ - "lines_changed"
73
+ - "summary"
74
+ max_length: "Brief summary of changes"
75
+
76
+ examples:
77
+ - user_input: "creá un archivo README.md con la descripción del proyecto"
78
+ expected_behavior: "project_exists (false) → project_write({ path: 'README.md', content: '...' })"
79
+
80
+ - user_input: "editá el package.json para agregar la dependencia lodash"
81
+ expected_behavior: "project_read → project_edit with old_string/new_string for dependencies → confirm"
82
+
83
+ - user_input: "eliminá el archivo temporal.log"
84
+ expected_behavior: "project_exists → canvas_confirm('¿Eliminar archivo?') → if approved, delete operation"
85
+ ---
86
+
87
+ # File Writer Skill
88
+
89
+ ## Cuándo se Activa
90
+
91
+ Esta skill se activa cuando el usuario necesita:
92
+ - Crear nuevos archivos
93
+ - Modificar contenido existente
94
+ - Eliminar archivos
95
+ - Guardar cambios
96
+
97
+ ## Herramientas Disponibles
98
+
99
+ | Tool | Qué hace | Cuándo usarla |
100
+ |------|----------|---------------|
101
+ | `project_read` | Lee archivo existente | Antes de editar para entender estructura |
102
+ | `project_write` | Crea o sobreescribe archivo | Archivos nuevos o reescritura completa |
103
+ | `project_edit` | Edita secciones específicas | Cambios puntuales (find/replace) |
104
+ | `project_exists` | Verifica existencia | Para decidir crear vs editar |
105
+
106
+ ## Workflow
107
+
108
+ ### Crear Archivo Nuevo
109
+ 1. `project_exists({ path })` → verificar no existe
110
+ 2. `project_write({ path, content })` → crear
111
+
112
+ ### Editar Archivo Existente
113
+ 1. `project_exists({ path })` → verificar existe
114
+ 2. `project_read({ path })` → entender estructura
115
+ 3. `project_edit({ path, old_string, new_string })` → modificar
116
+ 4. `canvas_confirm()` si cambios >50 líneas
117
+
118
+ ### Eliminar Archivo
119
+ 1. `project_exists({ path })` → verificar existe
120
+ 2. `canvas_confirm({ message: '¿Eliminar archivo?' })` → confirmar
121
+ 3. Operación de delete
122
+
123
+ ## Mejores Prácticas
124
+
125
+ - **Leer antes de editar**: Nunca modificar sin entender estructura
126
+ - **Edit vs Write**: Usar edit para cambios pequeños, write para nuevos archivos
127
+ - **Confirmar cambios grandes**: >50 líneas requiere confirmación explícita
128
+ - **Paths seguros**: Trabajar dentro del workspace por defecto
129
+
130
+ ## Errores a Evitar
131
+
132
+ - ❌ Editar sin leer primero
133
+ - ❌ Sobreescribir sin confirmar si es cambio grande
134
+ - ❌ Eliminar sin confirmación explícita
135
+ - ❌ Usar write cuando edit es suficiente