@hoilab/ada-cli 0.84.22 → 0.85.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 (1114) hide show
  1. package/CHANGELOG.md +29 -2
  2. package/README.es.md +17 -6
  3. package/README.md +109 -11
  4. package/dist/ada-publico.d.ts +35 -0
  5. package/dist/ada-publico.d.ts.map +1 -0
  6. package/dist/ada-publico.js +40 -0
  7. package/dist/ada-publico.js.map +1 -0
  8. package/dist/cli/audit-command.d.ts +15 -0
  9. package/dist/cli/audit-command.d.ts.map +1 -0
  10. package/dist/cli/audit-command.js +280 -0
  11. package/dist/cli/audit-command.js.map +1 -0
  12. package/dist/cli/banco-command.d.ts +15 -0
  13. package/dist/cli/banco-command.d.ts.map +1 -0
  14. package/dist/cli/banco-command.js +213 -0
  15. package/dist/cli/banco-command.js.map +1 -0
  16. package/dist/cli/cleanse-command.d.ts +11 -0
  17. package/dist/cli/cleanse-command.d.ts.map +1 -0
  18. package/dist/cli/cleanse-command.js +101 -0
  19. package/dist/cli/cleanse-command.js.map +1 -0
  20. package/dist/cli/commit-command.d.ts +31 -0
  21. package/dist/cli/commit-command.d.ts.map +1 -0
  22. package/dist/cli/commit-command.js +158 -0
  23. package/dist/cli/commit-command.js.map +1 -0
  24. package/dist/cli/computer-command.d.ts +12 -0
  25. package/dist/cli/computer-command.d.ts.map +1 -0
  26. package/dist/cli/computer-command.js +141 -0
  27. package/dist/cli/computer-command.js.map +1 -0
  28. package/dist/cli/discover-command.d.ts +18 -0
  29. package/dist/cli/discover-command.d.ts.map +1 -0
  30. package/dist/cli/discover-command.js +108 -0
  31. package/dist/cli/discover-command.js.map +1 -0
  32. package/dist/cli/hashline-command.d.ts +11 -0
  33. package/dist/cli/hashline-command.d.ts.map +1 -0
  34. package/dist/cli/hashline-command.js +106 -0
  35. package/dist/cli/hashline-command.js.map +1 -0
  36. package/dist/cli/import-command.d.ts +35 -0
  37. package/dist/cli/import-command.d.ts.map +1 -0
  38. package/dist/cli/import-command.js +164 -0
  39. package/dist/cli/import-command.js.map +1 -0
  40. package/dist/cli/politica-command.d.ts +20 -0
  41. package/dist/cli/politica-command.d.ts.map +1 -0
  42. package/dist/cli/politica-command.js +93 -0
  43. package/dist/cli/politica-command.js.map +1 -0
  44. package/dist/cli/refine-command.d.ts +18 -0
  45. package/dist/cli/refine-command.d.ts.map +1 -0
  46. package/dist/cli/refine-command.js +101 -0
  47. package/dist/cli/refine-command.js.map +1 -0
  48. package/dist/cli/review-command.d.ts +24 -0
  49. package/dist/cli/review-command.d.ts.map +1 -0
  50. package/dist/cli/review-command.js +168 -0
  51. package/dist/cli/review-command.js.map +1 -0
  52. package/dist/cli/schedule-command.d.ts +17 -0
  53. package/dist/cli/schedule-command.d.ts.map +1 -0
  54. package/dist/cli/schedule-command.js +117 -0
  55. package/dist/cli/schedule-command.js.map +1 -0
  56. package/dist/cli/serve-command.d.ts +72 -0
  57. package/dist/cli/serve-command.d.ts.map +1 -0
  58. package/dist/cli/serve-command.js +568 -0
  59. package/dist/cli/serve-command.js.map +1 -0
  60. package/dist/cli/telegram-command.d.ts +18 -0
  61. package/dist/cli/telegram-command.d.ts.map +1 -0
  62. package/dist/cli/telegram-command.js +137 -0
  63. package/dist/cli/telegram-command.js.map +1 -0
  64. package/dist/cli/telemetria-command.d.ts +22 -0
  65. package/dist/cli/telemetria-command.d.ts.map +1 -0
  66. package/dist/cli/telemetria-command.js +127 -0
  67. package/dist/cli/telemetria-command.js.map +1 -0
  68. package/dist/cli/undo-command.d.ts +9 -0
  69. package/dist/cli/undo-command.d.ts.map +1 -0
  70. package/dist/cli/undo-command.js +56 -0
  71. package/dist/cli/undo-command.js.map +1 -0
  72. package/dist/cli/usage-command.d.ts +10 -0
  73. package/dist/cli/usage-command.d.ts.map +1 -0
  74. package/dist/cli/usage-command.js +209 -0
  75. package/dist/cli/usage-command.js.map +1 -0
  76. package/dist/cli/wiki-command.d.ts +9 -0
  77. package/dist/cli/wiki-command.d.ts.map +1 -0
  78. package/dist/cli/wiki-command.js +76 -0
  79. package/dist/cli/wiki-command.js.map +1 -0
  80. package/dist/cli.d.ts +6 -0
  81. package/dist/cli.d.ts.map +1 -1
  82. package/dist/cli.js +10 -11
  83. package/dist/cli.js.map +1 -1
  84. package/dist/config.d.ts +1 -1
  85. package/dist/config.d.ts.map +1 -1
  86. package/dist/config.js +1 -1
  87. package/dist/config.js.map +1 -1
  88. package/dist/core/ada.d.ts +58 -0
  89. package/dist/core/ada.d.ts.map +1 -0
  90. package/dist/core/ada.js +61 -0
  91. package/dist/core/ada.js.map +1 -0
  92. package/dist/core/advisor/guarda.d.ts +66 -0
  93. package/dist/core/advisor/guarda.d.ts.map +1 -0
  94. package/dist/core/advisor/guarda.js +191 -0
  95. package/dist/core/advisor/guarda.js.map +1 -0
  96. package/dist/core/advisor/runtime.d.ts +66 -0
  97. package/dist/core/advisor/runtime.d.ts.map +1 -0
  98. package/dist/core/advisor/runtime.js +121 -0
  99. package/dist/core/advisor/runtime.js.map +1 -0
  100. package/dist/core/advisor/sesion.d.ts +109 -0
  101. package/dist/core/advisor/sesion.d.ts.map +1 -0
  102. package/dist/core/advisor/sesion.js +139 -0
  103. package/dist/core/advisor/sesion.js.map +1 -0
  104. package/dist/core/agent-session.d.ts +30 -2
  105. package/dist/core/agent-session.d.ts.map +1 -1
  106. package/dist/core/agent-session.js +430 -22
  107. package/dist/core/agent-session.js.map +1 -1
  108. package/dist/core/agents/loader.d.ts +77 -0
  109. package/dist/core/agents/loader.d.ts.map +1 -0
  110. package/dist/core/agents/loader.js +154 -0
  111. package/dist/core/agents/loader.js.map +1 -0
  112. package/dist/core/aprobacion/generados.d.ts +37 -0
  113. package/dist/core/aprobacion/generados.d.ts.map +1 -0
  114. package/dist/core/aprobacion/generados.js +85 -0
  115. package/dist/core/aprobacion/generados.js.map +1 -0
  116. package/dist/core/aprobacion/politica-de-maquina.d.ts +90 -0
  117. package/dist/core/aprobacion/politica-de-maquina.d.ts.map +1 -0
  118. package/dist/core/aprobacion/politica-de-maquina.js +212 -0
  119. package/dist/core/aprobacion/politica-de-maquina.js.map +1 -0
  120. package/dist/core/aprobacion/politica.d.ts +90 -0
  121. package/dist/core/aprobacion/politica.d.ts.map +1 -0
  122. package/dist/core/aprobacion/politica.js +375 -0
  123. package/dist/core/aprobacion/politica.js.map +1 -0
  124. package/dist/core/arranque/atajos.d.ts +46 -0
  125. package/dist/core/arranque/atajos.d.ts.map +1 -0
  126. package/dist/core/arranque/atajos.js +113 -0
  127. package/dist/core/arranque/atajos.js.map +1 -0
  128. package/dist/core/audit/exportacion.d.ts +54 -0
  129. package/dist/core/audit/exportacion.d.ts.map +1 -0
  130. package/dist/core/audit/exportacion.js +265 -0
  131. package/dist/core/audit/exportacion.js.map +1 -0
  132. package/dist/core/audit/libro.d.ts +318 -0
  133. package/dist/core/audit/libro.d.ts.map +1 -0
  134. package/dist/core/audit/libro.js +508 -0
  135. package/dist/core/audit/libro.js.map +1 -0
  136. package/dist/core/audit/registro-sesion.d.ts +78 -0
  137. package/dist/core/audit/registro-sesion.d.ts.map +1 -0
  138. package/dist/core/audit/registro-sesion.js +202 -0
  139. package/dist/core/audit/registro-sesion.js.map +1 -0
  140. package/dist/core/audit/retencion.d.ts +82 -0
  141. package/dist/core/audit/retencion.d.ts.map +1 -0
  142. package/dist/core/audit/retencion.js +152 -0
  143. package/dist/core/audit/retencion.js.map +1 -0
  144. package/dist/core/audit/rutas.d.ts +23 -0
  145. package/dist/core/audit/rutas.d.ts.map +1 -0
  146. package/dist/core/audit/rutas.js +23 -0
  147. package/dist/core/audit/rutas.js.map +1 -0
  148. package/dist/core/auth-storage.d.ts +0 -3
  149. package/dist/core/auth-storage.d.ts.map +1 -1
  150. package/dist/core/auth-storage.js +17 -5
  151. package/dist/core/auth-storage.js.map +1 -1
  152. package/dist/core/banco/almacenamiento.d.ts +18 -0
  153. package/dist/core/banco/almacenamiento.d.ts.map +1 -0
  154. package/dist/core/banco/almacenamiento.js +50 -0
  155. package/dist/core/banco/almacenamiento.js.map +1 -0
  156. package/dist/core/banco/analisis.d.ts +37 -0
  157. package/dist/core/banco/analisis.d.ts.map +1 -0
  158. package/dist/core/banco/analisis.js +164 -0
  159. package/dist/core/banco/analisis.js.map +1 -0
  160. package/dist/core/banco/bloques.d.ts +39 -0
  161. package/dist/core/banco/bloques.d.ts.map +1 -0
  162. package/dist/core/banco/bloques.js +84 -0
  163. package/dist/core/banco/bloques.js.map +1 -0
  164. package/dist/core/banco/cargas.d.ts +84 -0
  165. package/dist/core/banco/cargas.d.ts.map +1 -0
  166. package/dist/core/banco/cargas.js +520 -0
  167. package/dist/core/banco/cargas.js.map +1 -0
  168. package/dist/core/banco/comparar.d.ts +29 -0
  169. package/dist/core/banco/comparar.d.ts.map +1 -0
  170. package/dist/core/banco/comparar.js +28 -0
  171. package/dist/core/banco/comparar.js.map +1 -0
  172. package/dist/core/banco/ejecutar.d.ts +44 -0
  173. package/dist/core/banco/ejecutar.d.ts.map +1 -0
  174. package/dist/core/banco/ejecutar.js +183 -0
  175. package/dist/core/banco/ejecutar.js.map +1 -0
  176. package/dist/core/banco/generar.d.ts +24 -0
  177. package/dist/core/banco/generar.d.ts.map +1 -0
  178. package/dist/core/banco/generar.js +159 -0
  179. package/dist/core/banco/generar.js.map +1 -0
  180. package/dist/core/banco/mutaciones.d.ts +25 -0
  181. package/dist/core/banco/mutaciones.d.ts.map +1 -0
  182. package/dist/core/banco/mutaciones.js +215 -0
  183. package/dist/core/banco/mutaciones.js.map +1 -0
  184. package/dist/core/banco/tipos.d.ts +121 -0
  185. package/dist/core/banco/tipos.d.ts.map +1 -0
  186. package/dist/core/banco/tipos.js +16 -0
  187. package/dist/core/banco/tipos.js.map +1 -0
  188. package/dist/core/blobs/almacen.d.ts +81 -0
  189. package/dist/core/blobs/almacen.d.ts.map +1 -0
  190. package/dist/core/blobs/almacen.js +198 -0
  191. package/dist/core/blobs/almacen.js.map +1 -0
  192. package/dist/core/blobs/broker.d.ts +103 -0
  193. package/dist/core/blobs/broker.d.ts.map +1 -0
  194. package/dist/core/blobs/broker.js +204 -0
  195. package/dist/core/blobs/broker.js.map +1 -0
  196. package/dist/core/blobs/index.d.ts +70 -0
  197. package/dist/core/blobs/index.d.ts.map +1 -0
  198. package/dist/core/blobs/index.js +232 -0
  199. package/dist/core/blobs/index.js.map +1 -0
  200. package/dist/core/blobs/payload.d.ts +55 -0
  201. package/dist/core/blobs/payload.d.ts.map +1 -0
  202. package/dist/core/blobs/payload.js +255 -0
  203. package/dist/core/blobs/payload.js.map +1 -0
  204. package/dist/core/blobs/proveedor.d.ts +85 -0
  205. package/dist/core/blobs/proveedor.d.ts.map +1 -0
  206. package/dist/core/blobs/proveedor.js +196 -0
  207. package/dist/core/blobs/proveedor.js.map +1 -0
  208. package/dist/core/browser/cdp.d.ts +41 -0
  209. package/dist/core/browser/cdp.d.ts.map +1 -0
  210. package/dist/core/browser/cdp.js +119 -0
  211. package/dist/core/browser/cdp.js.map +1 -0
  212. package/dist/core/browser/politica.d.ts +51 -0
  213. package/dist/core/browser/politica.d.ts.map +1 -0
  214. package/dist/core/browser/politica.js +123 -0
  215. package/dist/core/browser/politica.js.map +1 -0
  216. package/dist/core/browser/sesion.d.ts +52 -0
  217. package/dist/core/browser/sesion.d.ts.map +1 -0
  218. package/dist/core/browser/sesion.js +176 -0
  219. package/dist/core/browser/sesion.js.map +1 -0
  220. package/dist/core/browser/tools.d.ts +16 -0
  221. package/dist/core/browser/tools.d.ts.map +1 -0
  222. package/dist/core/browser/tools.js +279 -0
  223. package/dist/core/browser/tools.js.map +1 -0
  224. package/dist/core/commit/diff.d.ts +56 -0
  225. package/dist/core/commit/diff.d.ts.map +1 -0
  226. package/dist/core/commit/diff.js +145 -0
  227. package/dist/core/commit/diff.js.map +1 -0
  228. package/dist/core/commit/mensaje.d.ts +80 -0
  229. package/dist/core/commit/mensaje.d.ts.map +1 -0
  230. package/dist/core/commit/mensaje.js +207 -0
  231. package/dist/core/commit/mensaje.js.map +1 -0
  232. package/dist/core/compactar/index.d.ts +52 -0
  233. package/dist/core/compactar/index.d.ts.map +1 -0
  234. package/dist/core/compactar/index.js +91 -0
  235. package/dist/core/compactar/index.js.map +1 -0
  236. package/dist/core/compactar/registro-denso.d.ts +160 -0
  237. package/dist/core/compactar/registro-denso.d.ts.map +1 -0
  238. package/dist/core/compactar/registro-denso.js +620 -0
  239. package/dist/core/compactar/registro-denso.js.map +1 -0
  240. package/dist/core/computer/captura.d.ts +35 -0
  241. package/dist/core/computer/captura.d.ts.map +1 -0
  242. package/dist/core/computer/captura.js +140 -0
  243. package/dist/core/computer/captura.js.map +1 -0
  244. package/dist/core/computer/driver.d.ts +130 -0
  245. package/dist/core/computer/driver.d.ts.map +1 -0
  246. package/dist/core/computer/driver.js +206 -0
  247. package/dist/core/computer/driver.js.map +1 -0
  248. package/dist/core/computer/motor/actions.d.ts +109 -0
  249. package/dist/core/computer/motor/actions.d.ts.map +1 -0
  250. package/dist/core/computer/motor/actions.js +157 -0
  251. package/dist/core/computer/motor/actions.js.map +1 -0
  252. package/dist/core/computer/motor/bridge.d.ts +232 -0
  253. package/dist/core/computer/motor/bridge.d.ts.map +1 -0
  254. package/dist/core/computer/motor/bridge.js +2335 -0
  255. package/dist/core/computer/motor/bridge.js.map +1 -0
  256. package/dist/core/computer/motor/cdp.d.ts +107 -0
  257. package/dist/core/computer/motor/cdp.d.ts.map +1 -0
  258. package/dist/core/computer/motor/cdp.js +659 -0
  259. package/dist/core/computer/motor/cdp.js.map +1 -0
  260. package/dist/core/computer/motor/config.d.ts +23 -0
  261. package/dist/core/computer/motor/config.d.ts.map +1 -0
  262. package/dist/core/computer/motor/config.js +100 -0
  263. package/dist/core/computer/motor/config.js.map +1 -0
  264. package/dist/core/computer/motor/contract.d.ts +81 -0
  265. package/dist/core/computer/motor/contract.d.ts.map +1 -0
  266. package/dist/core/computer/motor/contract.js +14 -0
  267. package/dist/core/computer/motor/contract.js.map +1 -0
  268. package/dist/core/computer/motor/note.d.ts +37 -0
  269. package/dist/core/computer/motor/note.d.ts.map +1 -0
  270. package/dist/core/computer/motor/note.js +162 -0
  271. package/dist/core/computer/motor/note.js.map +1 -0
  272. package/dist/core/computer/motor/outline.d.ts +155 -0
  273. package/dist/core/computer/motor/outline.d.ts.map +1 -0
  274. package/dist/core/computer/motor/outline.js +590 -0
  275. package/dist/core/computer/motor/outline.js.map +1 -0
  276. package/dist/core/computer/motor/output.d.ts +18 -0
  277. package/dist/core/computer/motor/output.d.ts.map +1 -0
  278. package/dist/core/computer/motor/output.js +148 -0
  279. package/dist/core/computer/motor/output.js.map +1 -0
  280. package/dist/core/computer/motor/permissions.d.ts +41 -0
  281. package/dist/core/computer/motor/permissions.d.ts.map +1 -0
  282. package/dist/core/computer/motor/permissions.js +51 -0
  283. package/dist/core/computer/motor/permissions.js.map +1 -0
  284. package/dist/core/computer/motor/platform/architecture.d.ts +5 -0
  285. package/dist/core/computer/motor/platform/architecture.d.ts.map +1 -0
  286. package/dist/core/computer/motor/platform/architecture.js +21 -0
  287. package/dist/core/computer/motor/platform/architecture.js.map +1 -0
  288. package/dist/core/computer/motor/platform/coerce.d.ts +4 -0
  289. package/dist/core/computer/motor/platform/coerce.d.ts.map +1 -0
  290. package/dist/core/computer/motor/platform/coerce.js +17 -0
  291. package/dist/core/computer/motor/platform/coerce.js.map +1 -0
  292. package/dist/core/computer/motor/platform/index.d.ts +4 -0
  293. package/dist/core/computer/motor/platform/index.d.ts.map +1 -0
  294. package/dist/core/computer/motor/platform/index.js +79 -0
  295. package/dist/core/computer/motor/platform/index.js.map +1 -0
  296. package/dist/core/computer/motor/platform/linux/backend.d.ts +3 -0
  297. package/dist/core/computer/motor/platform/linux/backend.d.ts.map +1 -0
  298. package/dist/core/computer/motor/platform/linux/backend.js +173 -0
  299. package/dist/core/computer/motor/platform/linux/backend.js.map +1 -0
  300. package/dist/core/computer/motor/platform/linux/helper.d.ts +29 -0
  301. package/dist/core/computer/motor/platform/linux/helper.d.ts.map +1 -0
  302. package/dist/core/computer/motor/platform/linux/helper.js +261 -0
  303. package/dist/core/computer/motor/platform/linux/helper.js.map +1 -0
  304. package/dist/core/computer/motor/platform/macos/backend.d.ts +3 -0
  305. package/dist/core/computer/motor/platform/macos/backend.d.ts.map +1 -0
  306. package/dist/core/computer/motor/platform/macos/backend.js +124 -0
  307. package/dist/core/computer/motor/platform/macos/backend.js.map +1 -0
  308. package/dist/core/computer/motor/platform/macos/browser.d.ts +7 -0
  309. package/dist/core/computer/motor/platform/macos/browser.d.ts.map +1 -0
  310. package/dist/core/computer/motor/platform/macos/browser.js +101 -0
  311. package/dist/core/computer/motor/platform/macos/browser.js.map +1 -0
  312. package/dist/core/computer/motor/platform/macos/helper-path.mjs +34 -0
  313. package/dist/core/computer/motor/platform/macos/helper.d.ts +32 -0
  314. package/dist/core/computer/motor/platform/macos/helper.d.ts.map +1 -0
  315. package/dist/core/computer/motor/platform/macos/helper.js +277 -0
  316. package/dist/core/computer/motor/platform/macos/helper.js.map +1 -0
  317. package/dist/core/computer/motor/platform/macos/permissions.d.ts +4 -0
  318. package/dist/core/computer/motor/platform/macos/permissions.d.ts.map +1 -0
  319. package/dist/core/computer/motor/platform/macos/permissions.js +118 -0
  320. package/dist/core/computer/motor/platform/macos/permissions.js.map +1 -0
  321. package/dist/core/computer/motor/platform/types.d.ts +263 -0
  322. package/dist/core/computer/motor/platform/types.d.ts.map +1 -0
  323. package/dist/core/computer/motor/platform/types.js +2 -0
  324. package/dist/core/computer/motor/platform/types.js.map +1 -0
  325. package/dist/core/computer/motor/platform/windows/backend.d.ts +3 -0
  326. package/dist/core/computer/motor/platform/windows/backend.d.ts.map +1 -0
  327. package/dist/core/computer/motor/platform/windows/backend.js +163 -0
  328. package/dist/core/computer/motor/platform/windows/backend.js.map +1 -0
  329. package/dist/core/computer/motor/platform/windows/helper.d.ts +18 -0
  330. package/dist/core/computer/motor/platform/windows/helper.d.ts.map +1 -0
  331. package/dist/core/computer/motor/platform/windows/helper.js +174 -0
  332. package/dist/core/computer/motor/platform/windows/helper.js.map +1 -0
  333. package/dist/core/computer/motor/root-selection.d.ts +6 -0
  334. package/dist/core/computer/motor/root-selection.d.ts.map +1 -0
  335. package/dist/core/computer/motor/root-selection.js +28 -0
  336. package/dist/core/computer/motor/root-selection.js.map +1 -0
  337. package/dist/core/computer/motor/runtime.d.ts +50 -0
  338. package/dist/core/computer/motor/runtime.d.ts.map +1 -0
  339. package/dist/core/computer/motor/runtime.js +119 -0
  340. package/dist/core/computer/motor/runtime.js.map +1 -0
  341. package/dist/core/computer/motor/state.d.ts +68 -0
  342. package/dist/core/computer/motor/state.d.ts.map +1 -0
  343. package/dist/core/computer/motor/state.js +100 -0
  344. package/dist/core/computer/motor/state.js.map +1 -0
  345. package/dist/core/computer/motor/view.d.ts +6 -0
  346. package/dist/core/computer/motor/view.d.ts.map +1 -0
  347. package/dist/core/computer/motor/view.js +185 -0
  348. package/dist/core/computer/motor/view.js.map +1 -0
  349. package/dist/core/computer/motor-ada.d.ts +159 -0
  350. package/dist/core/computer/motor-ada.d.ts.map +1 -0
  351. package/dist/core/computer/motor-ada.js +412 -0
  352. package/dist/core/computer/motor-ada.js.map +1 -0
  353. package/dist/core/computer/politica.d.ts +56 -0
  354. package/dist/core/computer/politica.d.ts.map +1 -0
  355. package/dist/core/computer/politica.js +163 -0
  356. package/dist/core/computer/politica.js.map +1 -0
  357. package/dist/core/computer/tools.d.ts +26 -0
  358. package/dist/core/computer/tools.d.ts.map +1 -0
  359. package/dist/core/computer/tools.js +399 -0
  360. package/dist/core/computer/tools.js.map +1 -0
  361. package/dist/core/context-breakdown.d.ts +80 -0
  362. package/dist/core/context-breakdown.d.ts.map +1 -0
  363. package/dist/core/context-breakdown.js +87 -0
  364. package/dist/core/context-breakdown.js.map +1 -0
  365. package/dist/core/credenciales/cliente.d.ts +60 -0
  366. package/dist/core/credenciales/cliente.d.ts.map +1 -0
  367. package/dist/core/credenciales/cliente.js +81 -0
  368. package/dist/core/credenciales/cliente.js.map +1 -0
  369. package/dist/core/credenciales/pool.d.ts +96 -0
  370. package/dist/core/credenciales/pool.d.ts.map +1 -0
  371. package/dist/core/credenciales/pool.js +128 -0
  372. package/dist/core/credenciales/pool.js.map +1 -0
  373. package/dist/core/credenciales/reposo.d.ts +93 -0
  374. package/dist/core/credenciales/reposo.d.ts.map +1 -0
  375. package/dist/core/credenciales/reposo.js +489 -0
  376. package/dist/core/credenciales/reposo.js.map +1 -0
  377. package/dist/core/credenciales/servidor.d.ts +55 -0
  378. package/dist/core/credenciales/servidor.d.ts.map +1 -0
  379. package/dist/core/credenciales/servidor.js +205 -0
  380. package/dist/core/credenciales/servidor.js.map +1 -0
  381. package/dist/core/descubrimiento/comandos.d.ts +30 -0
  382. package/dist/core/descubrimiento/comandos.d.ts.map +1 -0
  383. package/dist/core/descubrimiento/comandos.js +76 -0
  384. package/dist/core/descubrimiento/comandos.js.map +1 -0
  385. package/dist/core/descubrimiento/mcp.d.ts +42 -0
  386. package/dist/core/descubrimiento/mcp.d.ts.map +1 -0
  387. package/dist/core/descubrimiento/mcp.js +130 -0
  388. package/dist/core/descubrimiento/mcp.js.map +1 -0
  389. package/dist/core/descubrimiento/reglas.d.ts +61 -0
  390. package/dist/core/descubrimiento/reglas.d.ts.map +1 -0
  391. package/dist/core/descubrimiento/reglas.js +134 -0
  392. package/dist/core/descubrimiento/reglas.js.map +1 -0
  393. package/dist/core/descubrimiento/skills.d.ts +57 -0
  394. package/dist/core/descubrimiento/skills.d.ts.map +1 -0
  395. package/dist/core/descubrimiento/skills.js +113 -0
  396. package/dist/core/descubrimiento/skills.js.map +1 -0
  397. package/dist/core/dificultad/clasificador.d.ts +133 -0
  398. package/dist/core/dificultad/clasificador.d.ts.map +1 -0
  399. package/dist/core/dificultad/clasificador.js +288 -0
  400. package/dist/core/dificultad/clasificador.js.map +1 -0
  401. package/dist/core/edicion/diario.d.ts +37 -0
  402. package/dist/core/edicion/diario.d.ts.map +1 -0
  403. package/dist/core/edicion/diario.js +51 -0
  404. package/dist/core/edicion/diario.js.map +1 -0
  405. package/dist/core/edicion/hashline.d.ts +71 -0
  406. package/dist/core/edicion/hashline.d.ts.map +1 -0
  407. package/dist/core/edicion/hashline.js +111 -0
  408. package/dist/core/edicion/hashline.js.map +1 -0
  409. package/dist/core/edicion/hueco.d.ts +64 -0
  410. package/dist/core/edicion/hueco.d.ts.map +1 -0
  411. package/dist/core/edicion/hueco.js +162 -0
  412. package/dist/core/edicion/hueco.js.map +1 -0
  413. package/dist/core/edicion/limpiar-carga.d.ts +39 -0
  414. package/dist/core/edicion/limpiar-carga.d.ts.map +1 -0
  415. package/dist/core/edicion/limpiar-carga.js +121 -0
  416. package/dist/core/edicion/limpiar-carga.js.map +1 -0
  417. package/dist/core/edicion/observador.d.ts +80 -0
  418. package/dist/core/edicion/observador.d.ts.map +1 -0
  419. package/dist/core/edicion/observador.js +183 -0
  420. package/dist/core/edicion/observador.js.map +1 -0
  421. package/dist/core/edicion/parecido.d.ts +53 -0
  422. package/dist/core/edicion/parecido.d.ts.map +1 -0
  423. package/dist/core/edicion/parecido.js +145 -0
  424. package/dist/core/edicion/parecido.js.map +1 -0
  425. package/dist/core/edicion/parseo.d.ts +58 -0
  426. package/dist/core/edicion/parseo.d.ts.map +1 -0
  427. package/dist/core/edicion/parseo.js +124 -0
  428. package/dist/core/edicion/parseo.js.map +1 -0
  429. package/dist/core/edicion/reparacion.d.ts +67 -0
  430. package/dist/core/edicion/reparacion.d.ts.map +1 -0
  431. package/dist/core/edicion/reparacion.js +202 -0
  432. package/dist/core/edicion/reparacion.js.map +1 -0
  433. package/dist/core/edicion/sangria.d.ts +121 -0
  434. package/dist/core/edicion/sangria.d.ts.map +1 -0
  435. package/dist/core/edicion/sangria.js +341 -0
  436. package/dist/core/edicion/sangria.js.map +1 -0
  437. package/dist/core/edicion/tipos.d.ts +58 -0
  438. package/dist/core/edicion/tipos.d.ts.map +1 -0
  439. package/dist/core/edicion/tipos.js +160 -0
  440. package/dist/core/edicion/tipos.js.map +1 -0
  441. package/dist/core/errores/proveedor.d.ts +53 -0
  442. package/dist/core/errores/proveedor.d.ts.map +1 -0
  443. package/dist/core/errores/proveedor.js +191 -0
  444. package/dist/core/errores/proveedor.js.map +1 -0
  445. package/dist/core/estructural/buscar.d.ts +61 -0
  446. package/dist/core/estructural/buscar.d.ts.map +1 -0
  447. package/dist/core/estructural/buscar.js +261 -0
  448. package/dist/core/estructural/buscar.js.map +1 -0
  449. package/dist/core/estructural/editar.d.ts +36 -0
  450. package/dist/core/estructural/editar.d.ts.map +1 -0
  451. package/dist/core/estructural/editar.js +123 -0
  452. package/dist/core/estructural/editar.js.map +1 -0
  453. package/dist/core/estructural/tools.d.ts +11 -0
  454. package/dist/core/estructural/tools.d.ts.map +1 -0
  455. package/dist/core/estructural/tools.js +100 -0
  456. package/dist/core/estructural/tools.js.map +1 -0
  457. package/dist/core/experimental.d.ts.map +1 -1
  458. package/dist/core/experimental.js +10 -1
  459. package/dist/core/experimental.js.map +1 -1
  460. package/dist/core/extensiones/suplantacion.d.ts +49 -0
  461. package/dist/core/extensiones/suplantacion.d.ts.map +1 -0
  462. package/dist/core/extensiones/suplantacion.js +61 -0
  463. package/dist/core/extensiones/suplantacion.js.map +1 -0
  464. package/dist/core/extensiones/vigilancia.d.ts +54 -0
  465. package/dist/core/extensiones/vigilancia.d.ts.map +1 -0
  466. package/dist/core/extensiones/vigilancia.js +217 -0
  467. package/dist/core/extensiones/vigilancia.js.map +1 -0
  468. package/dist/core/extensions/loader.d.ts.map +1 -1
  469. package/dist/core/extensions/loader.js +11 -1
  470. package/dist/core/extensions/loader.js.map +1 -1
  471. package/dist/core/harness/fuentes-de-contexto.d.ts +29 -0
  472. package/dist/core/harness/fuentes-de-contexto.d.ts.map +1 -0
  473. package/dist/core/harness/fuentes-de-contexto.js +44 -0
  474. package/dist/core/harness/fuentes-de-contexto.js.map +1 -0
  475. package/dist/core/harness/refine.d.ts +40 -0
  476. package/dist/core/harness/refine.d.ts.map +1 -0
  477. package/dist/core/harness/refine.js +109 -0
  478. package/dist/core/harness/refine.js.map +1 -0
  479. package/dist/core/harness/store.d.ts +75 -0
  480. package/dist/core/harness/store.d.ts.map +1 -0
  481. package/dist/core/harness/store.js +149 -0
  482. package/dist/core/harness/store.js.map +1 -0
  483. package/dist/core/hooks/contract.d.ts +85 -0
  484. package/dist/core/hooks/contract.d.ts.map +1 -0
  485. package/dist/core/hooks/contract.js +140 -0
  486. package/dist/core/hooks/contract.js.map +1 -0
  487. package/dist/core/hooks/runner.d.ts +42 -0
  488. package/dist/core/hooks/runner.d.ts.map +1 -0
  489. package/dist/core/hooks/runner.js +85 -0
  490. package/dist/core/hooks/runner.js.map +1 -0
  491. package/dist/core/hooks/session-hooks.d.ts +62 -0
  492. package/dist/core/hooks/session-hooks.d.ts.map +1 -0
  493. package/dist/core/hooks/session-hooks.js +84 -0
  494. package/dist/core/hooks/session-hooks.js.map +1 -0
  495. package/dist/core/importar/formatos.d.ts +69 -0
  496. package/dist/core/importar/formatos.d.ts.map +1 -0
  497. package/dist/core/importar/formatos.js +235 -0
  498. package/dist/core/importar/formatos.js.map +1 -0
  499. package/dist/core/interactivo/deteccion.d.ts +44 -0
  500. package/dist/core/interactivo/deteccion.d.ts.map +1 -0
  501. package/dist/core/interactivo/deteccion.js +82 -0
  502. package/dist/core/interactivo/deteccion.js.map +1 -0
  503. package/dist/core/interactivo/sesion.d.ts +50 -0
  504. package/dist/core/interactivo/sesion.d.ts.map +1 -0
  505. package/dist/core/interactivo/sesion.js +156 -0
  506. package/dist/core/interactivo/sesion.js.map +1 -0
  507. package/dist/core/interactivo/tools.d.ts +21 -0
  508. package/dist/core/interactivo/tools.d.ts.map +1 -0
  509. package/dist/core/interactivo/tools.js +122 -0
  510. package/dist/core/interactivo/tools.js.map +1 -0
  511. package/dist/core/lectura/mapa.d.ts +70 -0
  512. package/dist/core/lectura/mapa.d.ts.map +1 -0
  513. package/dist/core/lectura/mapa.js +177 -0
  514. package/dist/core/lectura/mapa.js.map +1 -0
  515. package/dist/core/lectura/pdf.d.ts +49 -0
  516. package/dist/core/lectura/pdf.d.ts.map +1 -0
  517. package/dist/core/lectura/pdf.js +337 -0
  518. package/dist/core/lectura/pdf.js.map +1 -0
  519. package/dist/core/limpieza/comprobadores.d.ts +28 -0
  520. package/dist/core/limpieza/comprobadores.d.ts.map +1 -0
  521. package/dist/core/limpieza/comprobadores.js +311 -0
  522. package/dist/core/limpieza/comprobadores.js.map +1 -0
  523. package/dist/core/limpieza/parseo.d.ts +19 -0
  524. package/dist/core/limpieza/parseo.d.ts.map +1 -0
  525. package/dist/core/limpieza/parseo.js +124 -0
  526. package/dist/core/limpieza/parseo.js.map +1 -0
  527. package/dist/core/limpieza/reparacion.d.ts +77 -0
  528. package/dist/core/limpieza/reparacion.d.ts.map +1 -0
  529. package/dist/core/limpieza/reparacion.js +254 -0
  530. package/dist/core/limpieza/reparacion.js.map +1 -0
  531. package/dist/core/limpieza/tipos.d.ts +56 -0
  532. package/dist/core/limpieza/tipos.d.ts.map +1 -0
  533. package/dist/core/limpieza/tipos.js +9 -0
  534. package/dist/core/limpieza/tipos.js.map +1 -0
  535. package/dist/core/lsp/cliente.d.ts +52 -0
  536. package/dist/core/lsp/cliente.d.ts.map +1 -0
  537. package/dist/core/lsp/cliente.js +232 -0
  538. package/dist/core/lsp/cliente.js.map +1 -0
  539. package/dist/core/lsp/descubrimiento.d.ts +62 -0
  540. package/dist/core/lsp/descubrimiento.d.ts.map +1 -0
  541. package/dist/core/lsp/descubrimiento.js +152 -0
  542. package/dist/core/lsp/descubrimiento.js.map +1 -0
  543. package/dist/core/lsp/ediciones.d.ts +59 -0
  544. package/dist/core/lsp/ediciones.d.ts.map +1 -0
  545. package/dist/core/lsp/ediciones.js +89 -0
  546. package/dist/core/lsp/ediciones.js.map +1 -0
  547. package/dist/core/lsp/extension.d.ts +28 -0
  548. package/dist/core/lsp/extension.d.ts.map +1 -0
  549. package/dist/core/lsp/extension.js +34 -0
  550. package/dist/core/lsp/extension.js.map +1 -0
  551. package/dist/core/lsp/tools.d.ts +45 -0
  552. package/dist/core/lsp/tools.d.ts.map +1 -0
  553. package/dist/core/lsp/tools.js +265 -0
  554. package/dist/core/lsp/tools.js.map +1 -0
  555. package/dist/core/mcp/client.d.ts +60 -0
  556. package/dist/core/mcp/client.d.ts.map +1 -0
  557. package/dist/core/mcp/client.js +139 -0
  558. package/dist/core/mcp/client.js.map +1 -0
  559. package/dist/core/mcp/manager.d.ts +86 -0
  560. package/dist/core/mcp/manager.d.ts.map +1 -0
  561. package/dist/core/mcp/manager.js +124 -0
  562. package/dist/core/mcp/manager.js.map +1 -0
  563. package/dist/core/mcp/tools.d.ts +15 -0
  564. package/dist/core/mcp/tools.d.ts.map +1 -0
  565. package/dist/core/mcp/tools.js +84 -0
  566. package/dist/core/mcp/tools.js.map +1 -0
  567. package/dist/core/memory-engine/audit-export.d.ts +12 -10
  568. package/dist/core/memory-engine/audit-export.d.ts.map +1 -1
  569. package/dist/core/memory-engine/audit-export.js +15 -0
  570. package/dist/core/memory-engine/audit-export.js.map +1 -1
  571. package/dist/core/memory-engine/audit-indice.d.ts +153 -0
  572. package/dist/core/memory-engine/audit-indice.d.ts.map +1 -0
  573. package/dist/core/memory-engine/audit-indice.js +271 -0
  574. package/dist/core/memory-engine/audit-indice.js.map +1 -0
  575. package/dist/core/memory-engine/audit.d.ts +18 -6
  576. package/dist/core/memory-engine/audit.d.ts.map +1 -1
  577. package/dist/core/memory-engine/audit.js +25 -42
  578. package/dist/core/memory-engine/audit.js.map +1 -1
  579. package/dist/core/memory-engine/engine.d.ts +19 -1
  580. package/dist/core/memory-engine/engine.d.ts.map +1 -1
  581. package/dist/core/memory-engine/engine.js +71 -5
  582. package/dist/core/memory-engine/engine.js.map +1 -1
  583. package/dist/core/memory-engine/observation-store.d.ts +0 -2
  584. package/dist/core/memory-engine/observation-store.d.ts.map +1 -1
  585. package/dist/core/memory-engine/observation-store.js +4 -5
  586. package/dist/core/memory-engine/observation-store.js.map +1 -1
  587. package/dist/core/memory-engine/refinements.d.ts +51 -0
  588. package/dist/core/memory-engine/refinements.d.ts.map +1 -0
  589. package/dist/core/memory-engine/refinements.js +99 -0
  590. package/dist/core/memory-engine/refinements.js.map +1 -0
  591. package/dist/core/memory-engine/tools.d.ts.map +1 -1
  592. package/dist/core/memory-engine/tools.js +27 -1
  593. package/dist/core/memory-engine/tools.js.map +1 -1
  594. package/dist/core/memory-engine/types.d.ts +2 -0
  595. package/dist/core/memory-engine/types.d.ts.map +1 -1
  596. package/dist/core/memory-engine/types.js.map +1 -1
  597. package/dist/core/model-resolver.d.ts.map +1 -1
  598. package/dist/core/model-resolver.js +7 -1
  599. package/dist/core/model-resolver.js.map +1 -1
  600. package/dist/core/muestreo-restringido.d.ts +49 -0
  601. package/dist/core/muestreo-restringido.d.ts.map +1 -0
  602. package/dist/core/muestreo-restringido.js +65 -0
  603. package/dist/core/muestreo-restringido.js.map +1 -0
  604. package/dist/core/orphan-process-journal.d.ts +48 -0
  605. package/dist/core/orphan-process-journal.d.ts.map +1 -0
  606. package/dist/core/orphan-process-journal.js +116 -0
  607. package/dist/core/orphan-process-journal.js.map +1 -0
  608. package/dist/core/privacidad/categorias-especiales.d.ts +186 -0
  609. package/dist/core/privacidad/categorias-especiales.d.ts.map +1 -0
  610. package/dist/core/privacidad/categorias-especiales.js +745 -0
  611. package/dist/core/privacidad/categorias-especiales.js.map +1 -0
  612. package/dist/core/privacidad/tapar.d.ts +48 -0
  613. package/dist/core/privacidad/tapar.d.ts.map +1 -0
  614. package/dist/core/privacidad/tapar.js +66 -0
  615. package/dist/core/privacidad/tapar.js.map +1 -0
  616. package/dist/core/prompt-cache/diagnostics.d.ts +33 -0
  617. package/dist/core/prompt-cache/diagnostics.d.ts.map +1 -0
  618. package/dist/core/prompt-cache/diagnostics.js +100 -0
  619. package/dist/core/prompt-cache/diagnostics.js.map +1 -0
  620. package/dist/core/prompt-cache/index.d.ts +33 -0
  621. package/dist/core/prompt-cache/index.d.ts.map +1 -0
  622. package/dist/core/prompt-cache/index.js +189 -0
  623. package/dist/core/prompt-cache/index.js.map +1 -0
  624. package/dist/core/prompt-cache/payload.d.ts +58 -0
  625. package/dist/core/prompt-cache/payload.d.ts.map +1 -0
  626. package/dist/core/prompt-cache/payload.js +122 -0
  627. package/dist/core/prompt-cache/payload.js.map +1 -0
  628. package/dist/core/prompt-cache/stabilize.d.ts +65 -0
  629. package/dist/core/prompt-cache/stabilize.d.ts.map +1 -0
  630. package/dist/core/prompt-cache/stabilize.js +137 -0
  631. package/dist/core/prompt-cache/stabilize.js.map +1 -0
  632. package/dist/core/prompt-cache/stats.d.ts +55 -0
  633. package/dist/core/prompt-cache/stats.d.ts.map +1 -0
  634. package/dist/core/prompt-cache/stats.js +158 -0
  635. package/dist/core/prompt-cache/stats.js.map +1 -0
  636. package/dist/core/prompt-eleccion.d.ts +38 -0
  637. package/dist/core/prompt-eleccion.d.ts.map +1 -0
  638. package/dist/core/prompt-eleccion.js +46 -0
  639. package/dist/core/prompt-eleccion.js.map +1 -0
  640. package/dist/core/prompts/montar.d.ts +75 -0
  641. package/dist/core/prompts/montar.d.ts.map +1 -0
  642. package/dist/core/prompts/montar.js +146 -0
  643. package/dist/core/prompts/montar.js.map +1 -0
  644. package/dist/core/prompts/plantilla.d.ts +54 -0
  645. package/dist/core/prompts/plantilla.d.ts.map +1 -0
  646. package/dist/core/prompts/plantilla.js +153 -0
  647. package/dist/core/prompts/plantilla.js.map +1 -0
  648. package/dist/core/prompts/sistema.md +134 -0
  649. package/dist/core/provider-attribution.d.ts +24 -2
  650. package/dist/core/provider-attribution.d.ts.map +1 -1
  651. package/dist/core/provider-attribution.js +24 -42
  652. package/dist/core/provider-attribution.js.map +1 -1
  653. package/dist/core/remoto/destino.d.ts +38 -0
  654. package/dist/core/remoto/destino.d.ts.map +1 -0
  655. package/dist/core/remoto/destino.js +105 -0
  656. package/dist/core/remoto/destino.js.map +1 -0
  657. package/dist/core/remoto/ejecutor.d.ts +59 -0
  658. package/dist/core/remoto/ejecutor.d.ts.map +1 -0
  659. package/dist/core/remoto/ejecutor.js +225 -0
  660. package/dist/core/remoto/ejecutor.js.map +1 -0
  661. package/dist/core/remoto/ficheros.d.ts +29 -0
  662. package/dist/core/remoto/ficheros.d.ts.map +1 -0
  663. package/dist/core/remoto/ficheros.js +90 -0
  664. package/dist/core/remoto/ficheros.js.map +1 -0
  665. package/dist/core/remoto/registro-extension.d.ts +15 -0
  666. package/dist/core/remoto/registro-extension.d.ts.map +1 -0
  667. package/dist/core/remoto/registro-extension.js +17 -0
  668. package/dist/core/remoto/registro-extension.js.map +1 -0
  669. package/dist/core/remoto/tools.d.ts +28 -0
  670. package/dist/core/remoto/tools.d.ts.map +1 -0
  671. package/dist/core/remoto/tools.js +31 -0
  672. package/dist/core/remoto/tools.js.map +1 -0
  673. package/dist/core/resource-loader.d.ts +8 -0
  674. package/dist/core/resource-loader.d.ts.map +1 -1
  675. package/dist/core/resource-loader.js +93 -1
  676. package/dist/core/resource-loader.js.map +1 -1
  677. package/dist/core/revision/hallazgo.d.ts +51 -0
  678. package/dist/core/revision/hallazgo.d.ts.map +1 -0
  679. package/dist/core/revision/hallazgo.js +73 -0
  680. package/dist/core/revision/hallazgo.js.map +1 -0
  681. package/dist/core/revision/revisor.d.ts +81 -0
  682. package/dist/core/revision/revisor.d.ts.map +1 -0
  683. package/dist/core/revision/revisor.js +132 -0
  684. package/dist/core/revision/revisor.js.map +1 -0
  685. package/dist/core/revision/sarif.d.ts +30 -0
  686. package/dist/core/revision/sarif.d.ts.map +1 -0
  687. package/dist/core/revision/sarif.js +83 -0
  688. package/dist/core/revision/sarif.js.map +1 -0
  689. package/dist/core/scheduler/scheduler.d.ts +87 -0
  690. package/dist/core/scheduler/scheduler.d.ts.map +1 -0
  691. package/dist/core/scheduler/scheduler.js +178 -0
  692. package/dist/core/scheduler/scheduler.js.map +1 -0
  693. package/dist/core/sesion/cerrar-llamadas-abiertas.d.ts +49 -0
  694. package/dist/core/sesion/cerrar-llamadas-abiertas.d.ts.map +1 -0
  695. package/dist/core/sesion/cerrar-llamadas-abiertas.js +77 -0
  696. package/dist/core/sesion/cerrar-llamadas-abiertas.js.map +1 -0
  697. package/dist/core/settings-manager.d.ts +110 -6
  698. package/dist/core/settings-manager.d.ts.map +1 -1
  699. package/dist/core/settings-manager.js +53 -2
  700. package/dist/core/settings-manager.js.map +1 -1
  701. package/dist/core/slash-commands.d.ts.map +1 -1
  702. package/dist/core/slash-commands.js +3 -3
  703. package/dist/core/slash-commands.js.map +1 -1
  704. package/dist/core/system-prompt.d.ts +17 -0
  705. package/dist/core/system-prompt.d.ts.map +1 -1
  706. package/dist/core/system-prompt.js +13 -5
  707. package/dist/core/system-prompt.js.map +1 -1
  708. package/dist/core/telemetria/otlp.d.ts +122 -0
  709. package/dist/core/telemetria/otlp.d.ts.map +1 -0
  710. package/dist/core/telemetria/otlp.js +373 -0
  711. package/dist/core/telemetria/otlp.js.map +1 -0
  712. package/dist/core/tools/coercion-argumentos.d.ts +48 -0
  713. package/dist/core/tools/coercion-argumentos.d.ts.map +1 -0
  714. package/dist/core/tools/coercion-argumentos.js +99 -0
  715. package/dist/core/tools/coercion-argumentos.js.map +1 -0
  716. package/dist/core/tools/edit-diff.d.ts +0 -7
  717. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  718. package/dist/core/tools/edit-diff.js +232 -7
  719. package/dist/core/tools/edit-diff.js.map +1 -1
  720. package/dist/core/tools/edit.d.ts.map +1 -1
  721. package/dist/core/tools/edit.js +8 -1
  722. package/dist/core/tools/edit.js.map +1 -1
  723. package/dist/core/tools/file-mutation-queue.d.ts.map +1 -1
  724. package/dist/core/tools/file-mutation-queue.js +5 -0
  725. package/dist/core/tools/file-mutation-queue.js.map +1 -1
  726. package/dist/core/tools/json-tolerante.d.ts +30 -0
  727. package/dist/core/tools/json-tolerante.d.ts.map +1 -0
  728. package/dist/core/tools/json-tolerante.js +70 -0
  729. package/dist/core/tools/json-tolerante.js.map +1 -0
  730. package/dist/core/tools/read.d.ts.map +1 -1
  731. package/dist/core/tools/read.js +17 -0
  732. package/dist/core/tools/read.js.map +1 -1
  733. package/dist/core/tools/tool-definition-wrapper.d.ts +14 -1
  734. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  735. package/dist/core/tools/tool-definition-wrapper.js +17 -1
  736. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  737. package/dist/core/turno-vacio/detectar.d.ts +38 -0
  738. package/dist/core/turno-vacio/detectar.d.ts.map +1 -0
  739. package/dist/core/turno-vacio/detectar.js +66 -0
  740. package/dist/core/turno-vacio/detectar.js.map +1 -0
  741. package/dist/core/undo/journal.d.ts +57 -0
  742. package/dist/core/undo/journal.d.ts.map +1 -0
  743. package/dist/core/undo/journal.js +178 -0
  744. package/dist/core/undo/journal.js.map +1 -0
  745. package/dist/core/urls-internas/auditoria.d.ts +10 -0
  746. package/dist/core/urls-internas/auditoria.d.ts.map +1 -0
  747. package/dist/core/urls-internas/auditoria.js +42 -0
  748. package/dist/core/urls-internas/auditoria.js.map +1 -0
  749. package/dist/core/urls-internas/boveda.d.ts +13 -0
  750. package/dist/core/urls-internas/boveda.d.ts.map +1 -0
  751. package/dist/core/urls-internas/boveda.js +40 -0
  752. package/dist/core/urls-internas/boveda.js.map +1 -0
  753. package/dist/core/urls-internas/lector.d.ts +30 -0
  754. package/dist/core/urls-internas/lector.d.ts.map +1 -0
  755. package/dist/core/urls-internas/lector.js +56 -0
  756. package/dist/core/urls-internas/lector.js.map +1 -0
  757. package/dist/core/urls-internas/memoria.d.ts +11 -0
  758. package/dist/core/urls-internas/memoria.d.ts.map +1 -0
  759. package/dist/core/urls-internas/memoria.js +25 -0
  760. package/dist/core/urls-internas/memoria.js.map +1 -0
  761. package/dist/core/urls-internas/parse.d.ts +28 -0
  762. package/dist/core/urls-internas/parse.d.ts.map +1 -0
  763. package/dist/core/urls-internas/parse.js +32 -0
  764. package/dist/core/urls-internas/parse.js.map +1 -0
  765. package/dist/core/urls-internas/reglas.d.ts +10 -0
  766. package/dist/core/urls-internas/reglas.d.ts.map +1 -0
  767. package/dist/core/urls-internas/reglas.js +31 -0
  768. package/dist/core/urls-internas/reglas.js.map +1 -0
  769. package/dist/core/usage/aggregate.d.ts +68 -0
  770. package/dist/core/usage/aggregate.d.ts.map +1 -0
  771. package/dist/core/usage/aggregate.js +93 -0
  772. package/dist/core/usage/aggregate.js.map +1 -0
  773. package/dist/core/usage/cuota/anthropic.d.ts +10 -0
  774. package/dist/core/usage/cuota/anthropic.d.ts.map +1 -0
  775. package/dist/core/usage/cuota/anthropic.js +63 -0
  776. package/dist/core/usage/cuota/anthropic.js.map +1 -0
  777. package/dist/core/usage/cuota/cache.d.ts +20 -0
  778. package/dist/core/usage/cuota/cache.d.ts.map +1 -0
  779. package/dist/core/usage/cuota/cache.js +36 -0
  780. package/dist/core/usage/cuota/cache.js.map +1 -0
  781. package/dist/core/usage/cuota/github-copilot.d.ts +9 -0
  782. package/dist/core/usage/cuota/github-copilot.d.ts.map +1 -0
  783. package/dist/core/usage/cuota/github-copilot.js +67 -0
  784. package/dist/core/usage/cuota/github-copilot.js.map +1 -0
  785. package/dist/core/usage/cuota/google-gemini.d.ts +9 -0
  786. package/dist/core/usage/cuota/google-gemini.d.ts.map +1 -0
  787. package/dist/core/usage/cuota/google-gemini.js +72 -0
  788. package/dist/core/usage/cuota/google-gemini.js.map +1 -0
  789. package/dist/core/usage/cuota/index.d.ts +25 -0
  790. package/dist/core/usage/cuota/index.d.ts.map +1 -0
  791. package/dist/core/usage/cuota/index.js +50 -0
  792. package/dist/core/usage/cuota/index.js.map +1 -0
  793. package/dist/core/usage/cuota/openai-codex.d.ts +9 -0
  794. package/dist/core/usage/cuota/openai-codex.d.ts.map +1 -0
  795. package/dist/core/usage/cuota/openai-codex.js +59 -0
  796. package/dist/core/usage/cuota/openai-codex.js.map +1 -0
  797. package/dist/core/usage/cuota/openrouter.d.ts +10 -0
  798. package/dist/core/usage/cuota/openrouter.d.ts.map +1 -0
  799. package/dist/core/usage/cuota/openrouter.js +47 -0
  800. package/dist/core/usage/cuota/openrouter.js.map +1 -0
  801. package/dist/core/usage/cuota/tipos.d.ts +50 -0
  802. package/dist/core/usage/cuota/tipos.d.ts.map +1 -0
  803. package/dist/core/usage/cuota/tipos.js +25 -0
  804. package/dist/core/usage/cuota/tipos.js.map +1 -0
  805. package/dist/core/web/busqueda-nativa.d.ts +82 -0
  806. package/dist/core/web/busqueda-nativa.d.ts.map +1 -0
  807. package/dist/core/web/busqueda-nativa.js +163 -0
  808. package/dist/core/web/busqueda-nativa.js.map +1 -0
  809. package/dist/core/web/destino.d.ts +58 -0
  810. package/dist/core/web/destino.d.ts.map +1 -0
  811. package/dist/core/web/destino.js +127 -0
  812. package/dist/core/web/destino.js.map +1 -0
  813. package/dist/core/web/proveedores/brave.d.ts +6 -0
  814. package/dist/core/web/proveedores/brave.d.ts.map +1 -0
  815. package/dist/core/web/proveedores/brave.js +20 -0
  816. package/dist/core/web/proveedores/brave.js.map +1 -0
  817. package/dist/core/web/proveedores/claves.d.ts +19 -0
  818. package/dist/core/web/proveedores/claves.d.ts.map +1 -0
  819. package/dist/core/web/proveedores/claves.js +36 -0
  820. package/dist/core/web/proveedores/claves.js.map +1 -0
  821. package/dist/core/web/proveedores/duckduckgo.d.ts +3 -0
  822. package/dist/core/web/proveedores/duckduckgo.d.ts.map +1 -0
  823. package/dist/core/web/proveedores/duckduckgo.js +109 -0
  824. package/dist/core/web/proveedores/duckduckgo.js.map +1 -0
  825. package/dist/core/web/proveedores/ecosia.d.ts +3 -0
  826. package/dist/core/web/proveedores/ecosia.d.ts.map +1 -0
  827. package/dist/core/web/proveedores/ecosia.js +72 -0
  828. package/dist/core/web/proveedores/ecosia.js.map +1 -0
  829. package/dist/core/web/proveedores/exa.d.ts +6 -0
  830. package/dist/core/web/proveedores/exa.d.ts.map +1 -0
  831. package/dist/core/web/proveedores/exa.js +24 -0
  832. package/dist/core/web/proveedores/exa.js.map +1 -0
  833. package/dist/core/web/proveedores/mojeek.d.ts +3 -0
  834. package/dist/core/web/proveedores/mojeek.d.ts.map +1 -0
  835. package/dist/core/web/proveedores/mojeek.js +65 -0
  836. package/dist/core/web/proveedores/mojeek.js.map +1 -0
  837. package/dist/core/web/proveedores/navegador.d.ts +10 -0
  838. package/dist/core/web/proveedores/navegador.d.ts.map +1 -0
  839. package/dist/core/web/proveedores/navegador.js +13 -0
  840. package/dist/core/web/proveedores/navegador.js.map +1 -0
  841. package/dist/core/web/proveedores/registro.d.ts +43 -0
  842. package/dist/core/web/proveedores/registro.d.ts.map +1 -0
  843. package/dist/core/web/proveedores/registro.js +49 -0
  844. package/dist/core/web/proveedores/registro.js.map +1 -0
  845. package/dist/core/web/proveedores/searxng.d.ts +9 -0
  846. package/dist/core/web/proveedores/searxng.d.ts.map +1 -0
  847. package/dist/core/web/proveedores/searxng.js +17 -0
  848. package/dist/core/web/proveedores/searxng.js.map +1 -0
  849. package/dist/core/web/proveedores/serper.d.ts +9 -0
  850. package/dist/core/web/proveedores/serper.d.ts.map +1 -0
  851. package/dist/core/web/proveedores/serper.js +19 -0
  852. package/dist/core/web/proveedores/serper.js.map +1 -0
  853. package/dist/core/web/proveedores/tavily.d.ts +6 -0
  854. package/dist/core/web/proveedores/tavily.d.ts.map +1 -0
  855. package/dist/core/web/proveedores/tavily.js +19 -0
  856. package/dist/core/web/proveedores/tavily.js.map +1 -0
  857. package/dist/core/web/proveedores/tipos.d.ts +36 -0
  858. package/dist/core/web/proveedores/tipos.d.ts.map +1 -0
  859. package/dist/core/web/proveedores/tipos.js +10 -0
  860. package/dist/core/web/proveedores/tipos.js.map +1 -0
  861. package/dist/core/web/registro-red.d.ts +43 -0
  862. package/dist/core/web/registro-red.d.ts.map +1 -0
  863. package/dist/core/web/registro-red.js +86 -0
  864. package/dist/core/web/registro-red.js.map +1 -0
  865. package/dist/core/web/scrapers/cisa-kev.d.ts +10 -0
  866. package/dist/core/web/scrapers/cisa-kev.d.ts.map +1 -0
  867. package/dist/core/web/scrapers/cisa-kev.js +38 -0
  868. package/dist/core/web/scrapers/cisa-kev.js.map +1 -0
  869. package/dist/core/web/scrapers/crates-io.d.ts +11 -0
  870. package/dist/core/web/scrapers/crates-io.d.ts.map +1 -0
  871. package/dist/core/web/scrapers/crates-io.js +29 -0
  872. package/dist/core/web/scrapers/crates-io.js.map +1 -0
  873. package/dist/core/web/scrapers/docs-rs.d.ts +10 -0
  874. package/dist/core/web/scrapers/docs-rs.d.ts.map +1 -0
  875. package/dist/core/web/scrapers/docs-rs.js +35 -0
  876. package/dist/core/web/scrapers/docs-rs.js.map +1 -0
  877. package/dist/core/web/scrapers/github.d.ts +3 -0
  878. package/dist/core/web/scrapers/github.d.ts.map +1 -0
  879. package/dist/core/web/scrapers/github.js +72 -0
  880. package/dist/core/web/scrapers/github.js.map +1 -0
  881. package/dist/core/web/scrapers/go-pkg.d.ts +7 -0
  882. package/dist/core/web/scrapers/go-pkg.d.ts.map +1 -0
  883. package/dist/core/web/scrapers/go-pkg.js +30 -0
  884. package/dist/core/web/scrapers/go-pkg.js.map +1 -0
  885. package/dist/core/web/scrapers/hex.d.ts +6 -0
  886. package/dist/core/web/scrapers/hex.d.ts.map +1 -0
  887. package/dist/core/web/scrapers/hex.js +27 -0
  888. package/dist/core/web/scrapers/hex.js.map +1 -0
  889. package/dist/core/web/scrapers/maven.d.ts +8 -0
  890. package/dist/core/web/scrapers/maven.d.ts.map +1 -0
  891. package/dist/core/web/scrapers/maven.js +41 -0
  892. package/dist/core/web/scrapers/maven.js.map +1 -0
  893. package/dist/core/web/scrapers/mdn.d.ts +6 -0
  894. package/dist/core/web/scrapers/mdn.d.ts.map +1 -0
  895. package/dist/core/web/scrapers/mdn.js +28 -0
  896. package/dist/core/web/scrapers/mdn.js.map +1 -0
  897. package/dist/core/web/scrapers/npm.d.ts +11 -0
  898. package/dist/core/web/scrapers/npm.d.ts.map +1 -0
  899. package/dist/core/web/scrapers/npm.js +57 -0
  900. package/dist/core/web/scrapers/npm.js.map +1 -0
  901. package/dist/core/web/scrapers/nuget.d.ts +8 -0
  902. package/dist/core/web/scrapers/nuget.d.ts.map +1 -0
  903. package/dist/core/web/scrapers/nuget.js +22 -0
  904. package/dist/core/web/scrapers/nuget.js.map +1 -0
  905. package/dist/core/web/scrapers/nvd.d.ts +7 -0
  906. package/dist/core/web/scrapers/nvd.d.ts.map +1 -0
  907. package/dist/core/web/scrapers/nvd.js +37 -0
  908. package/dist/core/web/scrapers/nvd.js.map +1 -0
  909. package/dist/core/web/scrapers/pypi.d.ts +6 -0
  910. package/dist/core/web/scrapers/pypi.d.ts.map +1 -0
  911. package/dist/core/web/scrapers/pypi.js +31 -0
  912. package/dist/core/web/scrapers/pypi.js.map +1 -0
  913. package/dist/core/web/scrapers/registro.d.ts +13 -0
  914. package/dist/core/web/scrapers/registro.d.ts.map +1 -0
  915. package/dist/core/web/scrapers/registro.js +65 -0
  916. package/dist/core/web/scrapers/registro.js.map +1 -0
  917. package/dist/core/web/scrapers/rubygems.d.ts +6 -0
  918. package/dist/core/web/scrapers/rubygems.d.ts.map +1 -0
  919. package/dist/core/web/scrapers/rubygems.js +23 -0
  920. package/dist/core/web/scrapers/rubygems.js.map +1 -0
  921. package/dist/core/web/scrapers/stackoverflow.d.ts +3 -0
  922. package/dist/core/web/scrapers/stackoverflow.d.ts.map +1 -0
  923. package/dist/core/web/scrapers/stackoverflow.js +46 -0
  924. package/dist/core/web/scrapers/stackoverflow.js.map +1 -0
  925. package/dist/core/web/scrapers/tipos.d.ts +42 -0
  926. package/dist/core/web/scrapers/tipos.d.ts.map +1 -0
  927. package/dist/core/web/scrapers/tipos.js +23 -0
  928. package/dist/core/web/scrapers/tipos.js.map +1 -0
  929. package/dist/core/web/texto.d.ts +10 -0
  930. package/dist/core/web/texto.d.ts.map +1 -0
  931. package/dist/core/web/texto.js +26 -0
  932. package/dist/core/web/texto.js.map +1 -0
  933. package/dist/core/web/tools.d.ts +91 -0
  934. package/dist/core/web/tools.d.ts.map +1 -0
  935. package/dist/core/web/tools.js +304 -0
  936. package/dist/core/web/tools.js.map +1 -0
  937. package/dist/core/wiki/almacen.d.ts +33 -0
  938. package/dist/core/wiki/almacen.d.ts.map +1 -0
  939. package/dist/core/wiki/almacen.js +93 -0
  940. package/dist/core/wiki/almacen.js.map +1 -0
  941. package/dist/core/wiki/citas.d.ts +111 -0
  942. package/dist/core/wiki/citas.d.ts.map +1 -0
  943. package/dist/core/wiki/citas.js +146 -0
  944. package/dist/core/wiki/citas.js.map +1 -0
  945. package/dist/core/workflows/agent-runner.d.ts +2 -0
  946. package/dist/core/workflows/agent-runner.d.ts.map +1 -1
  947. package/dist/core/workflows/agent-runner.js +131 -44
  948. package/dist/core/workflows/agent-runner.js.map +1 -1
  949. package/dist/core/workflows/builtins.d.ts.map +1 -1
  950. package/dist/core/workflows/builtins.js +1 -0
  951. package/dist/core/workflows/builtins.js.map +1 -1
  952. package/dist/core/workflows/contrato/esquema.d.ts +32 -0
  953. package/dist/core/workflows/contrato/esquema.d.ts.map +1 -0
  954. package/dist/core/workflows/contrato/esquema.js +25 -0
  955. package/dist/core/workflows/contrato/esquema.js.map +1 -0
  956. package/dist/core/workflows/contrato/reparar-argumentos.d.ts +69 -0
  957. package/dist/core/workflows/contrato/reparar-argumentos.d.ts.map +1 -0
  958. package/dist/core/workflows/contrato/reparar-argumentos.js +117 -0
  959. package/dist/core/workflows/contrato/reparar-argumentos.js.map +1 -0
  960. package/dist/core/workflows/contrato/validador.d.ts +30 -0
  961. package/dist/core/workflows/contrato/validador.d.ts.map +1 -0
  962. package/dist/core/workflows/contrato/validador.js +56 -0
  963. package/dist/core/workflows/contrato/validador.js.map +1 -0
  964. package/dist/core/workflows/contrato/yield.d.ts +65 -0
  965. package/dist/core/workflows/contrato/yield.d.ts.map +1 -0
  966. package/dist/core/workflows/contrato/yield.js +80 -0
  967. package/dist/core/workflows/contrato/yield.js.map +1 -0
  968. package/dist/core/workflows/goal-engine/engine.d.ts +17 -0
  969. package/dist/core/workflows/goal-engine/engine.d.ts.map +1 -1
  970. package/dist/core/workflows/goal-engine/engine.js +41 -0
  971. package/dist/core/workflows/goal-engine/engine.js.map +1 -1
  972. package/dist/core/workflows/index.d.ts +8 -0
  973. package/dist/core/workflows/index.d.ts.map +1 -1
  974. package/dist/core/workflows/index.js +4 -0
  975. package/dist/core/workflows/index.js.map +1 -1
  976. package/dist/core/workflows/manager.d.ts +10 -0
  977. package/dist/core/workflows/manager.d.ts.map +1 -1
  978. package/dist/core/workflows/manager.js +35 -11
  979. package/dist/core/workflows/manager.js.map +1 -1
  980. package/dist/core/workflows/runtime.d.ts +13 -0
  981. package/dist/core/workflows/runtime.d.ts.map +1 -1
  982. package/dist/core/workflows/runtime.js +80 -1
  983. package/dist/core/workflows/runtime.js.map +1 -1
  984. package/dist/core/workflows/save-as-skill.d.ts +27 -0
  985. package/dist/core/workflows/save-as-skill.d.ts.map +1 -0
  986. package/dist/core/workflows/save-as-skill.js +54 -0
  987. package/dist/core/workflows/save-as-skill.js.map +1 -0
  988. package/dist/core/workflows/types.d.ts +49 -0
  989. package/dist/core/workflows/types.d.ts.map +1 -1
  990. package/dist/core/workflows/types.js.map +1 -1
  991. package/dist/extensions/remoto/index.d.ts +22 -0
  992. package/dist/extensions/remoto/index.d.ts.map +1 -0
  993. package/dist/extensions/remoto/index.js +54 -0
  994. package/dist/extensions/remoto/index.js.map +1 -0
  995. package/dist/index.d.ts +1 -17
  996. package/dist/index.d.ts.map +1 -1
  997. package/dist/index.js +7 -16
  998. package/dist/index.js.map +1 -1
  999. package/dist/main.d.ts.map +1 -1
  1000. package/dist/main.js +6 -0
  1001. package/dist/main.js.map +1 -1
  1002. package/dist/modes/acp/acp-mode.d.ts +42 -0
  1003. package/dist/modes/acp/acp-mode.d.ts.map +1 -0
  1004. package/dist/modes/acp/acp-mode.js +190 -0
  1005. package/dist/modes/acp/acp-mode.js.map +1 -0
  1006. package/dist/modes/acp/events.d.ts +74 -0
  1007. package/dist/modes/acp/events.d.ts.map +1 -0
  1008. package/dist/modes/acp/events.js +116 -0
  1009. package/dist/modes/acp/events.js.map +1 -0
  1010. package/dist/modes/interactive/components/model-selector.d.ts +8 -1
  1011. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  1012. package/dist/modes/interactive/components/model-selector.js +41 -7
  1013. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  1014. package/dist/modes/interactive/components/settings-selector.d.ts +1 -2
  1015. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  1016. package/dist/modes/interactive/components/settings-selector.js +9 -86
  1017. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  1018. package/dist/modes/interactive/components/thinking-selector.d.ts +8 -1
  1019. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  1020. package/dist/modes/interactive/components/thinking-selector.js +48 -17
  1021. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  1022. package/dist/modes/interactive/interactive-mode.d.ts +3 -7
  1023. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  1024. package/dist/modes/interactive/interactive-mode.js +137 -146
  1025. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  1026. package/dist/modes/print-mode.d.ts.map +1 -1
  1027. package/dist/modes/print-mode.js +11 -0
  1028. package/dist/modes/print-mode.js.map +1 -1
  1029. package/dist/package-manager-cli.d.ts.map +1 -1
  1030. package/dist/package-manager-cli.js +27 -5
  1031. package/dist/package-manager-cli.js.map +1 -1
  1032. package/dist/server/attach.d.ts +56 -0
  1033. package/dist/server/attach.d.ts.map +1 -0
  1034. package/dist/server/attach.js +130 -0
  1035. package/dist/server/attach.js.map +1 -0
  1036. package/dist/server/extension-ops.d.ts +40 -0
  1037. package/dist/server/extension-ops.d.ts.map +1 -0
  1038. package/dist/server/extension-ops.js +146 -0
  1039. package/dist/server/extension-ops.js.map +1 -0
  1040. package/dist/server/pi-server-service.d.ts +85 -0
  1041. package/dist/server/pi-server-service.d.ts.map +1 -0
  1042. package/dist/server/pi-server-service.js +213 -0
  1043. package/dist/server/pi-server-service.js.map +1 -0
  1044. package/dist/server/scheduler-tick.d.ts +32 -0
  1045. package/dist/server/scheduler-tick.d.ts.map +1 -0
  1046. package/dist/server/scheduler-tick.js +47 -0
  1047. package/dist/server/scheduler-tick.js.map +1 -0
  1048. package/dist/server/serve.d.ts +25 -0
  1049. package/dist/server/serve.d.ts.map +1 -0
  1050. package/dist/server/serve.js +83 -0
  1051. package/dist/server/serve.js.map +1 -0
  1052. package/dist/server/transcript.d.ts +38 -0
  1053. package/dist/server/transcript.d.ts.map +1 -0
  1054. package/dist/server/transcript.js +176 -0
  1055. package/dist/server/transcript.js.map +1 -0
  1056. package/dist/skills/skill-creator/SKILL.md +90 -0
  1057. package/dist/telegram/api.d.ts +75 -0
  1058. package/dist/telegram/api.d.ts.map +1 -0
  1059. package/dist/telegram/api.js +104 -0
  1060. package/dist/telegram/api.js.map +1 -0
  1061. package/dist/telegram/bridge.d.ts +85 -0
  1062. package/dist/telegram/bridge.d.ts.map +1 -0
  1063. package/dist/telegram/bridge.js +182 -0
  1064. package/dist/telegram/bridge.js.map +1 -0
  1065. package/dist/telegram/journal.d.ts +67 -0
  1066. package/dist/telegram/journal.d.ts.map +1 -0
  1067. package/dist/telegram/journal.js +119 -0
  1068. package/dist/telegram/journal.js.map +1 -0
  1069. package/dist/telegram/servidor.d.ts +15 -0
  1070. package/dist/telegram/servidor.d.ts.map +1 -0
  1071. package/dist/telegram/servidor.js +74 -0
  1072. package/dist/telegram/servidor.js.map +1 -0
  1073. package/dist/utils/shell.d.ts +11 -0
  1074. package/dist/utils/shell.d.ts.map +1 -1
  1075. package/dist/utils/shell.js +11 -0
  1076. package/dist/utils/shell.js.map +1 -1
  1077. package/dist/utils/version-check.d.ts.map +1 -1
  1078. package/dist/utils/version-check.js +29 -1
  1079. package/dist/utils/version-check.js.map +1 -1
  1080. package/docs/compaction.md +10 -10
  1081. package/docs/compliance.md +241 -0
  1082. package/docs/containerization.md +24 -24
  1083. package/docs/custom-provider.md +10 -10
  1084. package/docs/development.md +47 -10
  1085. package/docs/docs.json +14 -2
  1086. package/docs/environment-variables.md +20 -17
  1087. package/docs/extensions.md +51 -49
  1088. package/docs/index.md +15 -21
  1089. package/docs/json.md +3 -3
  1090. package/docs/keybindings.md +5 -5
  1091. package/docs/llama-cpp.md +7 -7
  1092. package/docs/models.md +12 -12
  1093. package/docs/packages.md +45 -45
  1094. package/docs/prompt-templates.md +5 -5
  1095. package/docs/providers.md +12 -12
  1096. package/docs/quickstart.md +39 -39
  1097. package/docs/rpc.md +12 -12
  1098. package/docs/sdk.md +38 -38
  1099. package/docs/security.md +26 -21
  1100. package/docs/session-format.md +7 -7
  1101. package/docs/sessions.md +14 -14
  1102. package/docs/settings.md +45 -20
  1103. package/docs/shell-aliases.md +2 -2
  1104. package/docs/skills.md +11 -11
  1105. package/docs/terminal-setup.md +14 -14
  1106. package/docs/termux.md +7 -7
  1107. package/docs/themes.md +11 -11
  1108. package/docs/tmux.md +4 -4
  1109. package/docs/tui.md +3 -3
  1110. package/docs/usage.md +54 -54
  1111. package/docs/windows.md +2 -2
  1112. package/examples/sdk/12-full-control.ts +9 -0
  1113. package/npm-shrinkwrap.json +35 -251
  1114. package/package.json +10 -4
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Scheduler: trabajo recurrente o diferido.
3
+ *
4
+ * Copiado del competidor SOLO en los dos detalles que separan un scheduler de
5
+ * un pie de plomo:
6
+ *
7
+ * 1. **Reclamar antes de entregar.** Un job cuya ejecución anterior sigue en
8
+ * vuelo se SALTA, no se encola. Sin esto, un job más lento que su intervalo
9
+ * acumula ejecuciones hasta ahogar la sesión.
10
+ * 2. **`nextRunAt` avanza al reclamar**, no al terminar. Así una ejecución lenta
11
+ * no arrastra el horario.
12
+ *
13
+ * Y tres frenos que a ellos les faltan, cada uno por un riesgo real:
14
+ *
15
+ * - **Nunca hace steer.** Su modo por defecto inyecta el prompt recurrente
16
+ * DENTRO de un turno activo, que es un vector de inyección: lo que diga el
17
+ * texto programado entra a mitad de un razonamiento. Aquí siempre se entrega
18
+ * como turno nuevo, y no es configurable.
19
+ * - **Techo de ejecuciones y caducidad obligatorios.** Un heartbeat desatendido
20
+ * gasta tokens para siempre; ellos no tienen tope alguno.
21
+ * - **Se desactiva solo tras fallos seguidos**, para que un job roto no siga
22
+ * quemando presupuesto indefinidamente.
23
+ */
24
+ import { mkdirSync, readFileSync, renameSync, writeFileSync } from "node:fs";
25
+ import { dirname, join } from "node:path";
26
+ /** Tope duro: ningún job puede programarse sin límite de ejecuciones. */
27
+ const MAX_RUNS_CEILING = 1000;
28
+ const FAILURES_BEFORE_DISABLE = 3;
29
+ export class Scheduler {
30
+ path;
31
+ data = { version: 1, jobs: [], inFlight: [] };
32
+ loaded = false;
33
+ counter = 0;
34
+ constructor(agentDir) {
35
+ this.path = join(agentDir, "scheduler.json");
36
+ }
37
+ load() {
38
+ if (this.loaded)
39
+ return;
40
+ try {
41
+ const parsed = JSON.parse(readFileSync(this.path, "utf-8"));
42
+ if (parsed.version === 1 && Array.isArray(parsed.jobs)) {
43
+ this.data = { version: 1, jobs: parsed.jobs, inFlight: parsed.inFlight ?? [] };
44
+ }
45
+ }
46
+ catch {
47
+ // primer arranque o fichero corrupto
48
+ }
49
+ this.loaded = true;
50
+ }
51
+ save() {
52
+ mkdirSync(dirname(this.path), { recursive: true });
53
+ const tmp = `${this.path}.tmp`;
54
+ writeFileSync(tmp, JSON.stringify(this.data, null, 1), "utf-8");
55
+ renameSync(tmp, this.path);
56
+ }
57
+ list() {
58
+ this.load();
59
+ return this.data.jobs;
60
+ }
61
+ /**
62
+ * Programa un job. `maxRuns` y `expiresAt` son obligatorios a propósito: un
63
+ * scheduler sin techo es una fuga de presupuesto con sintaxis bonita.
64
+ */
65
+ add(input) {
66
+ this.load();
67
+ if (!input.prompt.trim())
68
+ return { ok: false, error: "El prompt no puede estar vacío." };
69
+ if (!Number.isFinite(input.maxRuns) || input.maxRuns < 1) {
70
+ return { ok: false, error: "maxRuns es obligatorio y debe ser >= 1." };
71
+ }
72
+ if (input.maxRuns > MAX_RUNS_CEILING) {
73
+ return { ok: false, error: `maxRuns no puede superar ${MAX_RUNS_CEILING}.` };
74
+ }
75
+ if (Number.isNaN(Date.parse(input.expiresAt))) {
76
+ return { ok: false, error: "expiresAt es obligatorio y debe ser una fecha ISO." };
77
+ }
78
+ if (this.data.jobs.some((job) => job.id === input.id)) {
79
+ return { ok: false, error: `Ya existe un job con id '${input.id}'.` };
80
+ }
81
+ this.data.jobs.push({
82
+ id: input.id,
83
+ prompt: input.prompt,
84
+ intervalMs: input.intervalMs,
85
+ nextRunAt: input.firstRunAt,
86
+ runsUsed: 0,
87
+ maxRuns: input.maxRuns,
88
+ expiresAt: input.expiresAt,
89
+ enabled: true,
90
+ consecutiveFailures: 0,
91
+ createdAt: input.now ?? new Date().toISOString(),
92
+ });
93
+ this.save();
94
+ return { ok: true };
95
+ }
96
+ remove(id) {
97
+ this.load();
98
+ const before = this.data.jobs.length;
99
+ this.data.jobs = this.data.jobs.filter((job) => job.id !== id);
100
+ if (this.data.jobs.length === before)
101
+ return false;
102
+ this.save();
103
+ return true;
104
+ }
105
+ /**
106
+ * Reclama los jobs vencidos.
107
+ *
108
+ * Un job con una ejecución en vuelo se salta: avanza su horario pero no se
109
+ * entrega. Es lo que impide que un job lento se acumule sobre sí mismo.
110
+ */
111
+ claimDue(nowIso) {
112
+ this.load();
113
+ const now = Date.parse(nowIso);
114
+ const inFlightJobs = new Set(this.data.inFlight.map((entry) => entry.jobId));
115
+ const dispatches = [];
116
+ for (const job of this.data.jobs) {
117
+ if (!job.enabled)
118
+ continue;
119
+ if (Date.parse(job.expiresAt) <= now) {
120
+ job.enabled = false;
121
+ continue;
122
+ }
123
+ if (job.runsUsed >= job.maxRuns) {
124
+ job.enabled = false;
125
+ continue;
126
+ }
127
+ if (Date.parse(job.nextRunAt) > now)
128
+ continue;
129
+ // El horario avanza SIEMPRE al reclamar, incluso si se salta: una
130
+ // ejecución lenta no debe arrastrar el calendario.
131
+ job.nextRunAt = job.intervalMs
132
+ ? new Date(now + job.intervalMs).toISOString()
133
+ : new Date(now + 1).toISOString();
134
+ if (!job.intervalMs)
135
+ job.enabled = false; // ejecución única
136
+ if (inFlightJobs.has(job.id))
137
+ continue; // ya hay una en vuelo: se salta
138
+ const dispatchId = `d-${job.id}-${++this.counter}`;
139
+ this.data.inFlight.push({ dispatchId, jobId: job.id, claimedAt: nowIso });
140
+ job.runsUsed += 1;
141
+ dispatches.push({ dispatchId, job: { ...job } });
142
+ }
143
+ this.save();
144
+ return dispatches;
145
+ }
146
+ /** Cierra una ejecución. Tras varios fallos seguidos el job se desactiva. */
147
+ complete(dispatchId, ok) {
148
+ this.load();
149
+ const index = this.data.inFlight.findIndex((entry) => entry.dispatchId === dispatchId);
150
+ if (index === -1)
151
+ return;
152
+ const [entry] = this.data.inFlight.splice(index, 1);
153
+ const job = this.data.jobs.find((candidate) => candidate.id === entry.jobId);
154
+ if (job) {
155
+ job.consecutiveFailures = ok ? 0 : job.consecutiveFailures + 1;
156
+ if (job.consecutiveFailures >= FAILURES_BEFORE_DISABLE)
157
+ job.enabled = false;
158
+ }
159
+ this.save();
160
+ }
161
+ /**
162
+ * Libera ejecuciones que murieron con el proceso.
163
+ *
164
+ * Sin esto un crash deja el job marcado como "en vuelo" para siempre y no
165
+ * vuelve a entregarse nunca — el mismo fallo que teníamos en los workflows.
166
+ */
167
+ reconcile(nowIso, staleAfterMs = 30 * 60 * 1000) {
168
+ this.load();
169
+ const now = Date.parse(nowIso);
170
+ const before = this.data.inFlight.length;
171
+ this.data.inFlight = this.data.inFlight.filter((entry) => now - Date.parse(entry.claimedAt) < staleAfterMs);
172
+ const reclaimed = before - this.data.inFlight.length;
173
+ if (reclaimed > 0)
174
+ this.save();
175
+ return reclaimed;
176
+ }
177
+ }
178
+ //# sourceMappingURL=scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/core/scheduler/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,2EAAyE;AACzE,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,uBAAuB,GAAG,CAAC,CAAC;AA+BlC,MAAM,OAAO,SAAS;IACb,IAAI,CAAS;IACb,IAAI,GAAkB,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC7D,MAAM,GAAG,KAAK,CAAC;IACf,OAAO,GAAG,CAAC,CAAC;IAEpB,YAAY,QAAgB,EAAE;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAAA,CAC7C;IAEO,IAAI,GAAS;QACpB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAkB,CAAC;YAC7E,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAChF,CAAC;QACF,CAAC;QAAC,MAAM,CAAC;YACR,qCAAqC;QACtC,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IAAA,CACnB;IAEO,IAAI,GAAS;QACpB,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,MAAM,CAAC;QAC/B,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAChE,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAAA,CAC3B;IAED,IAAI,GAAmB;QACtB,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAAA,CACtB;IAED;;;OAGG;IACH,GAAG,CAAC,KAQH,EAAmC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAiC,EAAE,CAAC;QACzF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,yCAAyC,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,GAAG,gBAAgB,EAAE,CAAC;YACtC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,gBAAgB,GAAG,EAAE,CAAC;QAC9E,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC;QACnF,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACvD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACnB,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,IAAI;YACb,mBAAmB,EAAE,CAAC;YACtB,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAChD,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAAA,CACpB;IAED,MAAM,CAAC,EAAU,EAAW;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;QACnD,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IAAA,CACZ;IAED;;;;;OAKG;IACH,QAAQ,CAAC,MAAc,EAAc;QACpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7E,MAAM,UAAU,GAAe,EAAE,CAAC;QAElC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC,OAAO;gBAAE,SAAS;YAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC;gBACtC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;gBACpB,SAAS;YACV,CAAC;YACD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACjC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;gBACpB,SAAS;YACV,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG;gBAAE,SAAS;YAE9C,kEAAkE;YAClE,oDAAmD;YACnD,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,UAAU;gBAC7B,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE;gBAC9C,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,UAAU;gBAAE,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,oBAAkB;YAE5D,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS,CAAC,gCAAgC;YAExE,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YACnD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1E,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,UAAU,CAAC;IAAA,CAClB;IAED,8EAA6E;IAC7E,QAAQ,CAAC,UAAkB,EAAE,EAAW,EAAQ;QAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;QACvF,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO;QACzB,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7E,IAAI,GAAG,EAAE,CAAC;YACT,GAAG,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,CAAC;YAC/D,IAAI,GAAG,CAAC,mBAAmB,IAAI,uBAAuB;gBAAE,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;IAAA,CACZ;IAED;;;;;OAKG;IACH,SAAS,CAAC,MAAc,EAAE,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAU;QAChE,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,CAAC;QAC5G,MAAM,SAAS,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrD,IAAI,SAAS,GAAG,CAAC;YAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IAAA,CACjB;CACD","sourcesContent":["/**\n * Scheduler: trabajo recurrente o diferido.\n *\n * Copiado del competidor SOLO en los dos detalles que separan un scheduler de\n * un pie de plomo:\n *\n * 1. **Reclamar antes de entregar.** Un job cuya ejecución anterior sigue en\n * vuelo se SALTA, no se encola. Sin esto, un job más lento que su intervalo\n * acumula ejecuciones hasta ahogar la sesión.\n * 2. **`nextRunAt` avanza al reclamar**, no al terminar. Así una ejecución lenta\n * no arrastra el horario.\n *\n * Y tres frenos que a ellos les faltan, cada uno por un riesgo real:\n *\n * - **Nunca hace steer.** Su modo por defecto inyecta el prompt recurrente\n * DENTRO de un turno activo, que es un vector de inyección: lo que diga el\n * texto programado entra a mitad de un razonamiento. Aquí siempre se entrega\n * como turno nuevo, y no es configurable.\n * - **Techo de ejecuciones y caducidad obligatorios.** Un heartbeat desatendido\n * gasta tokens para siempre; ellos no tienen tope alguno.\n * - **Se desactiva solo tras fallos seguidos**, para que un job roto no siga\n * quemando presupuesto indefinidamente.\n */\n\nimport { mkdirSync, readFileSync, renameSync, writeFileSync } from \"node:fs\";\nimport { dirname, join } from \"node:path\";\n\n/** Tope duro: ningún job puede programarse sin límite de ejecuciones. */\nconst MAX_RUNS_CEILING = 1000;\nconst FAILURES_BEFORE_DISABLE = 3;\n\nexport interface ScheduledJob {\n\tid: string;\n\t/** Texto que se entrega como turno nuevo. */\n\tprompt: string;\n\t/** Repetición en ms. Ausente = ejecución única. */\n\tintervalMs?: number;\n\tnextRunAt: string;\n\trunsUsed: number;\n\t/** Obligatorio: sin techo no se crea el job. */\n\tmaxRuns: number;\n\t/** ISO. Pasada esta fecha el job no vuelve a correr. */\n\texpiresAt: string;\n\tenabled: boolean;\n\tconsecutiveFailures: number;\n\tcreatedAt: string;\n}\n\nexport interface Dispatch {\n\tdispatchId: string;\n\tjob: ScheduledJob;\n}\n\ninterface SchedulerFile {\n\tversion: 1;\n\tjobs: ScheduledJob[];\n\t/** Ejecuciones reclamadas y aún sin cerrar. */\n\tinFlight: Array<{ dispatchId: string; jobId: string; claimedAt: string }>;\n}\n\nexport class Scheduler {\n\tprivate path: string;\n\tprivate data: SchedulerFile = { version: 1, jobs: [], inFlight: [] };\n\tprivate loaded = false;\n\tprivate counter = 0;\n\n\tconstructor(agentDir: string) {\n\t\tthis.path = join(agentDir, \"scheduler.json\");\n\t}\n\n\tprivate load(): void {\n\t\tif (this.loaded) return;\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(readFileSync(this.path, \"utf-8\")) as SchedulerFile;\n\t\t\tif (parsed.version === 1 && Array.isArray(parsed.jobs)) {\n\t\t\t\tthis.data = { version: 1, jobs: parsed.jobs, inFlight: parsed.inFlight ?? [] };\n\t\t\t}\n\t\t} catch {\n\t\t\t// primer arranque o fichero corrupto\n\t\t}\n\t\tthis.loaded = true;\n\t}\n\n\tprivate save(): void {\n\t\tmkdirSync(dirname(this.path), { recursive: true });\n\t\tconst tmp = `${this.path}.tmp`;\n\t\twriteFileSync(tmp, JSON.stringify(this.data, null, 1), \"utf-8\");\n\t\trenameSync(tmp, this.path);\n\t}\n\n\tlist(): ScheduledJob[] {\n\t\tthis.load();\n\t\treturn this.data.jobs;\n\t}\n\n\t/**\n\t * Programa un job. `maxRuns` y `expiresAt` son obligatorios a propósito: un\n\t * scheduler sin techo es una fuga de presupuesto con sintaxis bonita.\n\t */\n\tadd(input: {\n\t\tid: string;\n\t\tprompt: string;\n\t\tfirstRunAt: string;\n\t\tintervalMs?: number;\n\t\tmaxRuns: number;\n\t\texpiresAt: string;\n\t\tnow?: string;\n\t}): { ok: boolean; error?: string } {\n\t\tthis.load();\n\t\tif (!input.prompt.trim()) return { ok: false, error: \"El prompt no puede estar vacío.\" };\n\t\tif (!Number.isFinite(input.maxRuns) || input.maxRuns < 1) {\n\t\t\treturn { ok: false, error: \"maxRuns es obligatorio y debe ser >= 1.\" };\n\t\t}\n\t\tif (input.maxRuns > MAX_RUNS_CEILING) {\n\t\t\treturn { ok: false, error: `maxRuns no puede superar ${MAX_RUNS_CEILING}.` };\n\t\t}\n\t\tif (Number.isNaN(Date.parse(input.expiresAt))) {\n\t\t\treturn { ok: false, error: \"expiresAt es obligatorio y debe ser una fecha ISO.\" };\n\t\t}\n\t\tif (this.data.jobs.some((job) => job.id === input.id)) {\n\t\t\treturn { ok: false, error: `Ya existe un job con id '${input.id}'.` };\n\t\t}\n\t\tthis.data.jobs.push({\n\t\t\tid: input.id,\n\t\t\tprompt: input.prompt,\n\t\t\tintervalMs: input.intervalMs,\n\t\t\tnextRunAt: input.firstRunAt,\n\t\t\trunsUsed: 0,\n\t\t\tmaxRuns: input.maxRuns,\n\t\t\texpiresAt: input.expiresAt,\n\t\t\tenabled: true,\n\t\t\tconsecutiveFailures: 0,\n\t\t\tcreatedAt: input.now ?? new Date().toISOString(),\n\t\t});\n\t\tthis.save();\n\t\treturn { ok: true };\n\t}\n\n\tremove(id: string): boolean {\n\t\tthis.load();\n\t\tconst before = this.data.jobs.length;\n\t\tthis.data.jobs = this.data.jobs.filter((job) => job.id !== id);\n\t\tif (this.data.jobs.length === before) return false;\n\t\tthis.save();\n\t\treturn true;\n\t}\n\n\t/**\n\t * Reclama los jobs vencidos.\n\t *\n\t * Un job con una ejecución en vuelo se salta: avanza su horario pero no se\n\t * entrega. Es lo que impide que un job lento se acumule sobre sí mismo.\n\t */\n\tclaimDue(nowIso: string): Dispatch[] {\n\t\tthis.load();\n\t\tconst now = Date.parse(nowIso);\n\t\tconst inFlightJobs = new Set(this.data.inFlight.map((entry) => entry.jobId));\n\t\tconst dispatches: Dispatch[] = [];\n\n\t\tfor (const job of this.data.jobs) {\n\t\t\tif (!job.enabled) continue;\n\t\t\tif (Date.parse(job.expiresAt) <= now) {\n\t\t\t\tjob.enabled = false;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (job.runsUsed >= job.maxRuns) {\n\t\t\t\tjob.enabled = false;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (Date.parse(job.nextRunAt) > now) continue;\n\n\t\t\t// El horario avanza SIEMPRE al reclamar, incluso si se salta: una\n\t\t\t// ejecución lenta no debe arrastrar el calendario.\n\t\t\tjob.nextRunAt = job.intervalMs\n\t\t\t\t? new Date(now + job.intervalMs).toISOString()\n\t\t\t\t: new Date(now + 1).toISOString();\n\t\t\tif (!job.intervalMs) job.enabled = false; // ejecución única\n\n\t\t\tif (inFlightJobs.has(job.id)) continue; // ya hay una en vuelo: se salta\n\n\t\t\tconst dispatchId = `d-${job.id}-${++this.counter}`;\n\t\t\tthis.data.inFlight.push({ dispatchId, jobId: job.id, claimedAt: nowIso });\n\t\t\tjob.runsUsed += 1;\n\t\t\tdispatches.push({ dispatchId, job: { ...job } });\n\t\t}\n\t\tthis.save();\n\t\treturn dispatches;\n\t}\n\n\t/** Cierra una ejecución. Tras varios fallos seguidos el job se desactiva. */\n\tcomplete(dispatchId: string, ok: boolean): void {\n\t\tthis.load();\n\t\tconst index = this.data.inFlight.findIndex((entry) => entry.dispatchId === dispatchId);\n\t\tif (index === -1) return;\n\t\tconst [entry] = this.data.inFlight.splice(index, 1);\n\t\tconst job = this.data.jobs.find((candidate) => candidate.id === entry.jobId);\n\t\tif (job) {\n\t\t\tjob.consecutiveFailures = ok ? 0 : job.consecutiveFailures + 1;\n\t\t\tif (job.consecutiveFailures >= FAILURES_BEFORE_DISABLE) job.enabled = false;\n\t\t}\n\t\tthis.save();\n\t}\n\n\t/**\n\t * Libera ejecuciones que murieron con el proceso.\n\t *\n\t * Sin esto un crash deja el job marcado como \"en vuelo\" para siempre y no\n\t * vuelve a entregarse nunca — el mismo fallo que teníamos en los workflows.\n\t */\n\treconcile(nowIso: string, staleAfterMs = 30 * 60 * 1000): number {\n\t\tthis.load();\n\t\tconst now = Date.parse(nowIso);\n\t\tconst before = this.data.inFlight.length;\n\t\tthis.data.inFlight = this.data.inFlight.filter((entry) => now - Date.parse(entry.claimedAt) < staleAfterMs);\n\t\tconst reclaimed = before - this.data.inFlight.length;\n\t\tif (reclaimed > 0) this.save();\n\t\treturn reclaimed;\n\t}\n}\n"]}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Cerrar las llamadas que un turno abortado deja a medias — desde el paquete
3
+ * que sí llega al cliente.
4
+ *
5
+ * EL FALLO. Los proveedores rechazan un historial donde un `tool_use` no tiene
6
+ * su `tool_result`. Si al abortar el par queda a medias, la conversación entera
7
+ * deja de poder reanudarse: un Ctrl-C en el momento equivocado no estropea el
8
+ * turno, estropea la sesión.
9
+ *
10
+ * Medido sobre el historial real, antes de arreglarlo:
11
+ *
12
+ * user:text | assistant:toolCall <- huérfana
13
+ *
14
+ * y después:
15
+ *
16
+ * user:text | assistant:toolCall | toolResult:text
17
+ *
18
+ * POR QUÉ AQUÍ Y NO SOLO EN EL BUCLE. El arreglo existe también en
19
+ * `packages/agent/src/agent-loop.ts`, pero ESE PAQUETE NO VIAJA: el tarball de
20
+ * `@hoilab/ada-cli` resuelve `@earendil-works/pi-agent-core` del registro de
21
+ * npm, así que quien instala recibe el de upstream, sin el arreglo. Medido con
22
+ * `npm pack --dry-run`: cero ficheros de esos paquetes en el tarball.
23
+ *
24
+ * ES IDEMPOTENTE POR CONSTRUCCIÓN, que es lo que permite tener las dos. Solo
25
+ * cierra lo que sigue abierto: si el bucle ya lo hizo —al ejecutar desde el
26
+ * árbol de fuentes— no encuentra huérfanas y no añade nada. Nunca duplica.
27
+ */
28
+ interface LlamadaAbierta {
29
+ id: string;
30
+ nombre: string;
31
+ }
32
+ /**
33
+ * Las llamadas de `mensaje` que el historial no ha cerrado todavía.
34
+ *
35
+ * OJO CON LA FORMA, porque la primera versión de esta comprobación miró la
36
+ * equivocada y no medía nada: una llamada es un BLOQUE dentro del contenido de
37
+ * un mensaje `assistant`, pero un resultado es un MENSAJE entero con
38
+ * `role: "toolResult"` y su `toolCallId` al nivel del mensaje, no un bloque.
39
+ */
40
+ export declare function llamadasSinCerrar(historial: readonly unknown[], mensaje: unknown): LlamadaAbierta[];
41
+ /**
42
+ * Cierra en `historial` las llamadas que `mensaje` dejó abiertas.
43
+ *
44
+ * Devuelve cuántas cerró: cero es la respuesta normal y significa que no había
45
+ * nada que cerrar, no que no se haya mirado.
46
+ */
47
+ export declare function cerrarLlamadasAbiertas(historial: unknown[], mensaje: unknown): number;
48
+ export {};
49
+ //# sourceMappingURL=cerrar-llamadas-abiertas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cerrar-llamadas-abiertas.d.ts","sourceRoot":"","sources":["../../../src/core/sesion/cerrar-llamadas-abiertas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AASH,UAAU,cAAc;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,cAAc,EAAE,CAgBnG;AAcD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAIrF","sourcesContent":["/**\n * Cerrar las llamadas que un turno abortado deja a medias — desde el paquete\n * que sí llega al cliente.\n *\n * EL FALLO. Los proveedores rechazan un historial donde un `tool_use` no tiene\n * su `tool_result`. Si al abortar el par queda a medias, la conversación entera\n * deja de poder reanudarse: un Ctrl-C en el momento equivocado no estropea el\n * turno, estropea la sesión.\n *\n * Medido sobre el historial real, antes de arreglarlo:\n *\n * user:text | assistant:toolCall <- huérfana\n *\n * y después:\n *\n * user:text | assistant:toolCall | toolResult:text\n *\n * POR QUÉ AQUÍ Y NO SOLO EN EL BUCLE. El arreglo existe también en\n * `packages/agent/src/agent-loop.ts`, pero ESE PAQUETE NO VIAJA: el tarball de\n * `@hoilab/ada-cli` resuelve `@earendil-works/pi-agent-core` del registro de\n * npm, así que quien instala recibe el de upstream, sin el arreglo. Medido con\n * `npm pack --dry-run`: cero ficheros de esos paquetes en el tarball.\n *\n * ES IDEMPOTENTE POR CONSTRUCCIÓN, que es lo que permite tener las dos. Solo\n * cierra lo que sigue abierto: si el bucle ya lo hizo —al ejecutar desde el\n * árbol de fuentes— no encuentra huérfanas y no añade nada. Nunca duplica.\n */\n\n/** Lo mínimo que hace falta de un mensaje para decidir. */\ninterface MensajeMinimo {\n\trole?: string;\n\ttoolCallId?: unknown;\n\tcontent?: unknown;\n}\n\ninterface LlamadaAbierta {\n\tid: string;\n\tnombre: string;\n}\n\n/**\n * Las llamadas de `mensaje` que el historial no ha cerrado todavía.\n *\n * OJO CON LA FORMA, porque la primera versión de esta comprobación miró la\n * equivocada y no medía nada: una llamada es un BLOQUE dentro del contenido de\n * un mensaje `assistant`, pero un resultado es un MENSAJE entero con\n * `role: \"toolResult\"` y su `toolCallId` al nivel del mensaje, no un bloque.\n */\nexport function llamadasSinCerrar(historial: readonly unknown[], mensaje: unknown): LlamadaAbierta[] {\n\tconst m = mensaje as MensajeMinimo;\n\tconst bloques = Array.isArray(m?.content) ? (m.content as Array<Record<string, unknown>>) : [];\n\tconst abiertas: LlamadaAbierta[] = [];\n\tfor (const b of bloques) {\n\t\tif (b.type === \"toolCall\" && typeof b.id === \"string\") {\n\t\t\tabiertas.push({ id: b.id, nombre: typeof b.name === \"string\" ? b.name : \"desconocida\" });\n\t\t}\n\t}\n\tif (abiertas.length === 0) return [];\n\n\tconst cerradas = new Set<string>();\n\tfor (const entrada of historial as MensajeMinimo[]) {\n\t\tif (entrada?.role === \"toolResult\" && typeof entrada.toolCallId === \"string\") cerradas.add(entrada.toolCallId);\n\t}\n\treturn abiertas.filter((l) => !cerradas.has(l.id));\n}\n\n/** El resultado sintético que habría producido la ejecución al ver la señal. */\nfunction resultadoDeAborto(llamada: LlamadaAbierta): Record<string, unknown> {\n\treturn {\n\t\trole: \"toolResult\",\n\t\ttoolCallId: llamada.id,\n\t\ttoolName: llamada.nombre,\n\t\tcontent: [{ type: \"text\", text: \"Operation aborted\" }],\n\t\tisError: true,\n\t\ttimestamp: Date.now(),\n\t};\n}\n\n/**\n * Cierra en `historial` las llamadas que `mensaje` dejó abiertas.\n *\n * Devuelve cuántas cerró: cero es la respuesta normal y significa que no había\n * nada que cerrar, no que no se haya mirado.\n */\nexport function cerrarLlamadasAbiertas(historial: unknown[], mensaje: unknown): number {\n\tconst abiertas = llamadasSinCerrar(historial, mensaje);\n\tfor (const llamada of abiertas) historial.push(resultadoDeAborto(llamada));\n\treturn abiertas.length;\n}\n"]}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Cerrar las llamadas que un turno abortado deja a medias — desde el paquete
3
+ * que sí llega al cliente.
4
+ *
5
+ * EL FALLO. Los proveedores rechazan un historial donde un `tool_use` no tiene
6
+ * su `tool_result`. Si al abortar el par queda a medias, la conversación entera
7
+ * deja de poder reanudarse: un Ctrl-C en el momento equivocado no estropea el
8
+ * turno, estropea la sesión.
9
+ *
10
+ * Medido sobre el historial real, antes de arreglarlo:
11
+ *
12
+ * user:text | assistant:toolCall <- huérfana
13
+ *
14
+ * y después:
15
+ *
16
+ * user:text | assistant:toolCall | toolResult:text
17
+ *
18
+ * POR QUÉ AQUÍ Y NO SOLO EN EL BUCLE. El arreglo existe también en
19
+ * `packages/agent/src/agent-loop.ts`, pero ESE PAQUETE NO VIAJA: el tarball de
20
+ * `@hoilab/ada-cli` resuelve `@earendil-works/pi-agent-core` del registro de
21
+ * npm, así que quien instala recibe el de upstream, sin el arreglo. Medido con
22
+ * `npm pack --dry-run`: cero ficheros de esos paquetes en el tarball.
23
+ *
24
+ * ES IDEMPOTENTE POR CONSTRUCCIÓN, que es lo que permite tener las dos. Solo
25
+ * cierra lo que sigue abierto: si el bucle ya lo hizo —al ejecutar desde el
26
+ * árbol de fuentes— no encuentra huérfanas y no añade nada. Nunca duplica.
27
+ */
28
+ /**
29
+ * Las llamadas de `mensaje` que el historial no ha cerrado todavía.
30
+ *
31
+ * OJO CON LA FORMA, porque la primera versión de esta comprobación miró la
32
+ * equivocada y no medía nada: una llamada es un BLOQUE dentro del contenido de
33
+ * un mensaje `assistant`, pero un resultado es un MENSAJE entero con
34
+ * `role: "toolResult"` y su `toolCallId` al nivel del mensaje, no un bloque.
35
+ */
36
+ export function llamadasSinCerrar(historial, mensaje) {
37
+ const m = mensaje;
38
+ const bloques = Array.isArray(m?.content) ? m.content : [];
39
+ const abiertas = [];
40
+ for (const b of bloques) {
41
+ if (b.type === "toolCall" && typeof b.id === "string") {
42
+ abiertas.push({ id: b.id, nombre: typeof b.name === "string" ? b.name : "desconocida" });
43
+ }
44
+ }
45
+ if (abiertas.length === 0)
46
+ return [];
47
+ const cerradas = new Set();
48
+ for (const entrada of historial) {
49
+ if (entrada?.role === "toolResult" && typeof entrada.toolCallId === "string")
50
+ cerradas.add(entrada.toolCallId);
51
+ }
52
+ return abiertas.filter((l) => !cerradas.has(l.id));
53
+ }
54
+ /** El resultado sintético que habría producido la ejecución al ver la señal. */
55
+ function resultadoDeAborto(llamada) {
56
+ return {
57
+ role: "toolResult",
58
+ toolCallId: llamada.id,
59
+ toolName: llamada.nombre,
60
+ content: [{ type: "text", text: "Operation aborted" }],
61
+ isError: true,
62
+ timestamp: Date.now(),
63
+ };
64
+ }
65
+ /**
66
+ * Cierra en `historial` las llamadas que `mensaje` dejó abiertas.
67
+ *
68
+ * Devuelve cuántas cerró: cero es la respuesta normal y significa que no había
69
+ * nada que cerrar, no que no se haya mirado.
70
+ */
71
+ export function cerrarLlamadasAbiertas(historial, mensaje) {
72
+ const abiertas = llamadasSinCerrar(historial, mensaje);
73
+ for (const llamada of abiertas)
74
+ historial.push(resultadoDeAborto(llamada));
75
+ return abiertas.length;
76
+ }
77
+ //# sourceMappingURL=cerrar-llamadas-abiertas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cerrar-llamadas-abiertas.js","sourceRoot":"","sources":["../../../src/core/sesion/cerrar-llamadas-abiertas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAcH;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAA6B,EAAE,OAAgB,EAAoB;IACpG,MAAM,CAAC,GAAG,OAAwB,CAAC;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,OAA0C,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,QAAQ,GAAqB,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QAC1F,CAAC;IACF,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAErC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,OAAO,IAAI,SAA4B,EAAE,CAAC;QACpD,IAAI,OAAO,EAAE,IAAI,KAAK,YAAY,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;YAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAChH,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA,CACnD;AAED,oFAAgF;AAChF,SAAS,iBAAiB,CAAC,OAAuB,EAA2B;IAC5E,OAAO;QACN,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE,OAAO,CAAC,EAAE;QACtB,QAAQ,EAAE,OAAO,CAAC,MAAM;QACxB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;QACtD,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACrB,CAAC;AAAA,CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAoB,EAAE,OAAgB,EAAU;IACtF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACvD,KAAK,MAAM,OAAO,IAAI,QAAQ;QAAE,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,OAAO,QAAQ,CAAC,MAAM,CAAC;AAAA,CACvB","sourcesContent":["/**\n * Cerrar las llamadas que un turno abortado deja a medias — desde el paquete\n * que sí llega al cliente.\n *\n * EL FALLO. Los proveedores rechazan un historial donde un `tool_use` no tiene\n * su `tool_result`. Si al abortar el par queda a medias, la conversación entera\n * deja de poder reanudarse: un Ctrl-C en el momento equivocado no estropea el\n * turno, estropea la sesión.\n *\n * Medido sobre el historial real, antes de arreglarlo:\n *\n * user:text | assistant:toolCall <- huérfana\n *\n * y después:\n *\n * user:text | assistant:toolCall | toolResult:text\n *\n * POR QUÉ AQUÍ Y NO SOLO EN EL BUCLE. El arreglo existe también en\n * `packages/agent/src/agent-loop.ts`, pero ESE PAQUETE NO VIAJA: el tarball de\n * `@hoilab/ada-cli` resuelve `@earendil-works/pi-agent-core` del registro de\n * npm, así que quien instala recibe el de upstream, sin el arreglo. Medido con\n * `npm pack --dry-run`: cero ficheros de esos paquetes en el tarball.\n *\n * ES IDEMPOTENTE POR CONSTRUCCIÓN, que es lo que permite tener las dos. Solo\n * cierra lo que sigue abierto: si el bucle ya lo hizo —al ejecutar desde el\n * árbol de fuentes— no encuentra huérfanas y no añade nada. Nunca duplica.\n */\n\n/** Lo mínimo que hace falta de un mensaje para decidir. */\ninterface MensajeMinimo {\n\trole?: string;\n\ttoolCallId?: unknown;\n\tcontent?: unknown;\n}\n\ninterface LlamadaAbierta {\n\tid: string;\n\tnombre: string;\n}\n\n/**\n * Las llamadas de `mensaje` que el historial no ha cerrado todavía.\n *\n * OJO CON LA FORMA, porque la primera versión de esta comprobación miró la\n * equivocada y no medía nada: una llamada es un BLOQUE dentro del contenido de\n * un mensaje `assistant`, pero un resultado es un MENSAJE entero con\n * `role: \"toolResult\"` y su `toolCallId` al nivel del mensaje, no un bloque.\n */\nexport function llamadasSinCerrar(historial: readonly unknown[], mensaje: unknown): LlamadaAbierta[] {\n\tconst m = mensaje as MensajeMinimo;\n\tconst bloques = Array.isArray(m?.content) ? (m.content as Array<Record<string, unknown>>) : [];\n\tconst abiertas: LlamadaAbierta[] = [];\n\tfor (const b of bloques) {\n\t\tif (b.type === \"toolCall\" && typeof b.id === \"string\") {\n\t\t\tabiertas.push({ id: b.id, nombre: typeof b.name === \"string\" ? b.name : \"desconocida\" });\n\t\t}\n\t}\n\tif (abiertas.length === 0) return [];\n\n\tconst cerradas = new Set<string>();\n\tfor (const entrada of historial as MensajeMinimo[]) {\n\t\tif (entrada?.role === \"toolResult\" && typeof entrada.toolCallId === \"string\") cerradas.add(entrada.toolCallId);\n\t}\n\treturn abiertas.filter((l) => !cerradas.has(l.id));\n}\n\n/** El resultado sintético que habría producido la ejecución al ver la señal. */\nfunction resultadoDeAborto(llamada: LlamadaAbierta): Record<string, unknown> {\n\treturn {\n\t\trole: \"toolResult\",\n\t\ttoolCallId: llamada.id,\n\t\ttoolName: llamada.nombre,\n\t\tcontent: [{ type: \"text\", text: \"Operation aborted\" }],\n\t\tisError: true,\n\t\ttimestamp: Date.now(),\n\t};\n}\n\n/**\n * Cierra en `historial` las llamadas que `mensaje` dejó abiertas.\n *\n * Devuelve cuántas cerró: cero es la respuesta normal y significa que no había\n * nada que cerrar, no que no se haya mirado.\n */\nexport function cerrarLlamadasAbiertas(historial: unknown[], mensaje: unknown): number {\n\tconst abiertas = llamadasSinCerrar(historial, mensaje);\n\tfor (const llamada of abiertas) historial.push(resultadoDeAborto(llamada));\n\treturn abiertas.length;\n}\n"]}
@@ -85,6 +85,19 @@ export interface Settings {
85
85
  shellCommandPrefix?: string;
86
86
  npmCommand?: string[];
87
87
  collapseChangelog?: boolean;
88
+ /**
89
+ * INERTE desde que se quitaron las dos cosas que gobernaba.
90
+ *
91
+ * Eran el aviso de instalación a `https://pi.dev/api/report-install` y las
92
+ * cabeceras de atribución por defecto (`HTTP-Referer: https://ada.dev` y
93
+ * compañía). Las dos salían activadas y las dos contaban a un tercero algo
94
+ * que nadie había pedido contar, así que se fueron.
95
+ *
96
+ * El campo se conserva porque es superficie pública del SDK y quitarlo
97
+ * rompería a quien lo escriba; ponerlo a `true` o a `false` ya no cambia
98
+ * nada. Se dice aquí en vez de dejar un interruptor que finge gobernar algo:
99
+ * una casilla que no hace nada es peor que una casilla que no existe.
100
+ */
88
101
  enableInstallTelemetry?: boolean;
89
102
  enableAnalytics?: boolean;
90
103
  trackingId?: string;
@@ -107,6 +120,7 @@ export interface Settings {
107
120
  permissions?: Record<string, unknown>;
108
121
  graph?: Record<string, unknown>;
109
122
  computerUse?: Record<string, unknown>;
123
+ advisor?: Record<string, unknown>;
110
124
  memoryMode?: "policy" | "inject";
111
125
  memoryPrivacyLevel?: "strict" | "balanced" | "permissive";
112
126
  memoryAuditEnabled?: boolean;
@@ -316,6 +330,13 @@ export declare class SettingsManager {
316
330
  setFullscreenScrollbar(mode: ScrollViewScrollbar): void;
317
331
  getImageAutoResize(): boolean;
318
332
  getProjectMemoryEnabled(): boolean;
333
+ /** Servidores MCP declarados por el usuario (`mcpServers` en settings). */
334
+ getMcpServers(): Record<string, import("./mcp/manager.ts").McpServerConfig> | undefined;
335
+ /**
336
+ * Optimizador de caché de prompt (activo por defecto). Reordena el prefijo
337
+ * estable y rellena las claves de caché; ver core/prompt-cache/.
338
+ */
339
+ getPromptCacheEnabled(): boolean;
319
340
  setProjectMemoryEnabled(enabled: boolean): void;
320
341
  getMemoryMode(): "policy" | "inject";
321
342
  setMemoryMode(mode: "policy" | "inject"): void;
@@ -357,13 +378,96 @@ export declare class SettingsManager {
357
378
  failureInjectMaxEntries: number;
358
379
  };
359
380
  /** Config completa del Ada Intelligence Engine (bloques con defaults). */
381
+ /**
382
+ * Configuración del engine con los defaults ya aplicados.
383
+ *
384
+ * El tipo de retorno se INFIERE a propósito. La anotación anterior era
385
+ * `Record<string, unknown>` por bloque, que tiraba toda la forma: quien
386
+ * llamaba veía `cfg.workflows.budget` como `unknown` y tenía que castear
387
+ * para leer un valor que este mismo método acababa de construir. Un tipo
388
+ * que obliga a castear no está documentando nada.
389
+ */
360
390
  getEngineConfig(): {
361
- workflows: Record<string, unknown>;
362
- goalEngine: Record<string, unknown>;
363
- hooks: Record<string, unknown>;
364
- permissions: Record<string, unknown>;
365
- graph: Record<string, unknown>;
366
- computerUse: Record<string, unknown>;
391
+ workflows: {
392
+ enabled: boolean;
393
+ concurrency: number;
394
+ maxAgentsPerRun: number;
395
+ budget: {
396
+ perRun: {
397
+ tokens: number;
398
+ usd: number;
399
+ };
400
+ perAgent: {
401
+ tokens: number;
402
+ };
403
+ perPhase: {} | null;
404
+ };
405
+ timeouts: {
406
+ agentMs: number;
407
+ scriptMs: number;
408
+ drainMs: number;
409
+ };
410
+ judge: {
411
+ model: string;
412
+ crossModel: boolean;
413
+ cheapForIntermediate: boolean;
414
+ };
415
+ models: {
416
+ cheap: string | null;
417
+ main: string | null;
418
+ judge: string | null;
419
+ cheapCandidates: string[];
420
+ cheapThinking: string | null;
421
+ mainThinking: string | null;
422
+ judgeThinking: string | null;
423
+ };
424
+ autoResume: boolean;
425
+ web: {
426
+ searchProvider: string;
427
+ fetch: string;
428
+ };
429
+ };
430
+ goalEngine: {
431
+ enabled: boolean;
432
+ maxTurns: number;
433
+ repeatDetector: number;
434
+ stopFile: string;
435
+ budgetTokens: number;
436
+ autopilot: boolean;
437
+ allowShipThrough: boolean;
438
+ askBefore: {};
439
+ workTier: string;
440
+ planOnly: boolean;
441
+ };
442
+ hooks: {
443
+ enabled: boolean;
444
+ failClosedHeadless: boolean;
445
+ events: Record<string, {
446
+ matcher?: string | undefined;
447
+ command: string;
448
+ timeoutMs?: number | undefined;
449
+ }[]>;
450
+ };
451
+ permissions: {
452
+ level: string;
453
+ destructiveGuards: boolean;
454
+ envGuards: boolean;
455
+ denied: unknown;
456
+ };
457
+ graph: {
458
+ enabled: boolean;
459
+ minConfidence: number;
460
+ gates: boolean;
461
+ };
462
+ computerUse: {
463
+ enabled: boolean;
464
+ backend: string;
465
+ browser: boolean;
466
+ };
467
+ advisor: {
468
+ enabled: boolean;
469
+ cadaCuantosTurnos: number;
470
+ };
367
471
  };
368
472
  getWorkflowsEnabled(): boolean;
369
473
  setWorkflowsEnabled(v: boolean): void;