@hoilab/ada-cli 0.84.22 → 0.85.1

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 (2179) 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/bun/cli.d.ts.map +1 -1
  9. package/dist/bun/cli.js.map +1 -1
  10. package/dist/bun/register-bedrock.d.ts.map +1 -1
  11. package/dist/bun/register-bedrock.js.map +1 -1
  12. package/dist/bun/restore-sandbox-env.d.ts.map +1 -1
  13. package/dist/bun/restore-sandbox-env.js.map +1 -1
  14. package/dist/cli/args.d.ts.map +1 -1
  15. package/dist/cli/args.js.map +1 -1
  16. package/dist/cli/audit-command.d.ts +15 -0
  17. package/dist/cli/audit-command.d.ts.map +1 -0
  18. package/dist/cli/audit-command.js +280 -0
  19. package/dist/cli/audit-command.js.map +1 -0
  20. package/dist/cli/auth-check.d.ts.map +1 -1
  21. package/dist/cli/auth-check.js.map +1 -1
  22. package/dist/cli/auth-command.d.ts.map +1 -1
  23. package/dist/cli/auth-command.js.map +1 -1
  24. package/dist/cli/banco-command.d.ts +15 -0
  25. package/dist/cli/banco-command.d.ts.map +1 -0
  26. package/dist/cli/banco-command.js +213 -0
  27. package/dist/cli/banco-command.js.map +1 -0
  28. package/dist/cli/cleanse-command.d.ts +11 -0
  29. package/dist/cli/cleanse-command.d.ts.map +1 -0
  30. package/dist/cli/cleanse-command.js +104 -0
  31. package/dist/cli/cleanse-command.js.map +1 -0
  32. package/dist/cli/commit-command.d.ts +33 -0
  33. package/dist/cli/commit-command.d.ts.map +1 -0
  34. package/dist/cli/commit-command.js +190 -0
  35. package/dist/cli/commit-command.js.map +1 -0
  36. package/dist/cli/completion.d.ts +20 -0
  37. package/dist/cli/completion.d.ts.map +1 -0
  38. package/dist/cli/completion.js +75 -0
  39. package/dist/cli/completion.js.map +1 -0
  40. package/dist/cli/computer-command.d.ts +12 -0
  41. package/dist/cli/computer-command.d.ts.map +1 -0
  42. package/dist/cli/computer-command.js +141 -0
  43. package/dist/cli/computer-command.js.map +1 -0
  44. package/dist/cli/config-selector.d.ts.map +1 -1
  45. package/dist/cli/config-selector.js.map +1 -1
  46. package/dist/cli/credential-print.d.ts.map +1 -1
  47. package/dist/cli/credential-print.js.map +1 -1
  48. package/dist/cli/discover-command.d.ts +18 -0
  49. package/dist/cli/discover-command.d.ts.map +1 -0
  50. package/dist/cli/discover-command.js +112 -0
  51. package/dist/cli/discover-command.js.map +1 -0
  52. package/dist/cli/experimental/auth.d.ts.map +1 -1
  53. package/dist/cli/experimental/auth.js.map +1 -1
  54. package/dist/cli/experimental/cli.d.ts +1 -1
  55. package/dist/cli/experimental/cli.d.ts.map +1 -1
  56. package/dist/cli/experimental/cli.js.map +1 -1
  57. package/dist/cli/experimental/command-options.d.ts.map +1 -1
  58. package/dist/cli/experimental/command-options.js.map +1 -1
  59. package/dist/cli/experimental/command.d.ts.map +1 -1
  60. package/dist/cli/experimental/command.js.map +1 -1
  61. package/dist/cli/experimental/commands/client.d.ts.map +1 -1
  62. package/dist/cli/experimental/commands/client.js.map +1 -1
  63. package/dist/cli/experimental/commands/pi.d.ts.map +1 -1
  64. package/dist/cli/experimental/commands/pi.js.map +1 -1
  65. package/dist/cli/experimental/commands/server.d.ts.map +1 -1
  66. package/dist/cli/experimental/commands/server.js.map +1 -1
  67. package/dist/cli/experimental/transport-address.d.ts.map +1 -1
  68. package/dist/cli/experimental/transport-address.js.map +1 -1
  69. package/dist/cli/file-processor.d.ts.map +1 -1
  70. package/dist/cli/file-processor.js.map +1 -1
  71. package/dist/cli/guardrails.d.ts +14 -0
  72. package/dist/cli/guardrails.d.ts.map +1 -0
  73. package/dist/cli/guardrails.js +47 -0
  74. package/dist/cli/guardrails.js.map +1 -0
  75. package/dist/cli/hashline-command.d.ts +11 -0
  76. package/dist/cli/hashline-command.d.ts.map +1 -0
  77. package/dist/cli/hashline-command.js +106 -0
  78. package/dist/cli/hashline-command.js.map +1 -0
  79. package/dist/cli/home-screen.d.ts.map +1 -1
  80. package/dist/cli/home-screen.js +1 -0
  81. package/dist/cli/home-screen.js.map +1 -1
  82. package/dist/cli/import-command.d.ts +35 -0
  83. package/dist/cli/import-command.d.ts.map +1 -0
  84. package/dist/cli/import-command.js +164 -0
  85. package/dist/cli/import-command.js.map +1 -0
  86. package/dist/cli/initial-message.d.ts +1 -1
  87. package/dist/cli/initial-message.d.ts.map +1 -1
  88. package/dist/cli/initial-message.js.map +1 -1
  89. package/dist/cli/list-models.d.ts.map +1 -1
  90. package/dist/cli/list-models.js.map +1 -1
  91. package/dist/cli/politica-command.d.ts +20 -0
  92. package/dist/cli/politica-command.d.ts.map +1 -0
  93. package/dist/cli/politica-command.js +93 -0
  94. package/dist/cli/politica-command.js.map +1 -0
  95. package/dist/cli/project-trust.d.ts.map +1 -1
  96. package/dist/cli/project-trust.js.map +1 -1
  97. package/dist/cli/refine-command.d.ts +18 -0
  98. package/dist/cli/refine-command.d.ts.map +1 -0
  99. package/dist/cli/refine-command.js +101 -0
  100. package/dist/cli/refine-command.js.map +1 -0
  101. package/dist/cli/review-command.d.ts +24 -0
  102. package/dist/cli/review-command.d.ts.map +1 -0
  103. package/dist/cli/review-command.js +232 -0
  104. package/dist/cli/review-command.js.map +1 -0
  105. package/dist/cli/schedule-command.d.ts +17 -0
  106. package/dist/cli/schedule-command.d.ts.map +1 -0
  107. package/dist/cli/schedule-command.js +117 -0
  108. package/dist/cli/schedule-command.js.map +1 -0
  109. package/dist/cli/serve-command.d.ts +71 -0
  110. package/dist/cli/serve-command.d.ts.map +1 -0
  111. package/dist/cli/serve-command.js +574 -0
  112. package/dist/cli/serve-command.js.map +1 -0
  113. package/dist/cli/session-picker.d.ts.map +1 -1
  114. package/dist/cli/session-picker.js.map +1 -1
  115. package/dist/cli/startup-ui.d.ts.map +1 -1
  116. package/dist/cli/startup-ui.js.map +1 -1
  117. package/dist/cli/telegram-command.d.ts +18 -0
  118. package/dist/cli/telegram-command.d.ts.map +1 -0
  119. package/dist/cli/telegram-command.js +137 -0
  120. package/dist/cli/telegram-command.js.map +1 -0
  121. package/dist/cli/telemetria-command.d.ts +22 -0
  122. package/dist/cli/telemetria-command.d.ts.map +1 -0
  123. package/dist/cli/telemetria-command.js +127 -0
  124. package/dist/cli/telemetria-command.js.map +1 -0
  125. package/dist/cli/undo-command.d.ts +9 -0
  126. package/dist/cli/undo-command.d.ts.map +1 -0
  127. package/dist/cli/undo-command.js +56 -0
  128. package/dist/cli/undo-command.js.map +1 -0
  129. package/dist/cli/update-cli.d.ts +82 -0
  130. package/dist/cli/update-cli.d.ts.map +1 -0
  131. package/dist/cli/update-cli.js +372 -0
  132. package/dist/cli/update-cli.js.map +1 -0
  133. package/dist/cli/usage-command.d.ts +10 -0
  134. package/dist/cli/usage-command.d.ts.map +1 -0
  135. package/dist/cli/usage-command.js +278 -0
  136. package/dist/cli/usage-command.js.map +1 -0
  137. package/dist/cli/wiki-command.d.ts +9 -0
  138. package/dist/cli/wiki-command.d.ts.map +1 -0
  139. package/dist/cli/wiki-command.js +76 -0
  140. package/dist/cli/wiki-command.js.map +1 -0
  141. package/dist/cli.d.ts.map +1 -1
  142. package/dist/cli.js +10 -11
  143. package/dist/cli.js.map +1 -1
  144. package/dist/client/index.d.ts.map +1 -1
  145. package/dist/client/index.js.map +1 -1
  146. package/dist/client/remote-session.d.ts.map +1 -1
  147. package/dist/client/remote-session.js.map +1 -1
  148. package/dist/client/transcript.d.ts.map +1 -1
  149. package/dist/client/transcript.js.map +1 -1
  150. package/dist/config.d.ts +1 -1
  151. package/dist/config.d.ts.map +1 -1
  152. package/dist/config.js +1 -1
  153. package/dist/config.js.map +1 -1
  154. package/dist/core/ada.d.ts +63 -0
  155. package/dist/core/ada.d.ts.map +1 -0
  156. package/dist/core/ada.js +66 -0
  157. package/dist/core/ada.js.map +1 -0
  158. package/dist/core/advisor/guarda.d.ts +66 -0
  159. package/dist/core/advisor/guarda.d.ts.map +1 -0
  160. package/dist/core/advisor/guarda.js +191 -0
  161. package/dist/core/advisor/guarda.js.map +1 -0
  162. package/dist/core/advisor/runtime.d.ts +66 -0
  163. package/dist/core/advisor/runtime.d.ts.map +1 -0
  164. package/dist/core/advisor/runtime.js +121 -0
  165. package/dist/core/advisor/runtime.js.map +1 -0
  166. package/dist/core/advisor/sesion.d.ts +109 -0
  167. package/dist/core/advisor/sesion.d.ts.map +1 -0
  168. package/dist/core/advisor/sesion.js +139 -0
  169. package/dist/core/advisor/sesion.js.map +1 -0
  170. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  171. package/dist/core/agent-session-runtime.js.map +1 -1
  172. package/dist/core/agent-session-services.d.ts.map +1 -1
  173. package/dist/core/agent-session-services.js.map +1 -1
  174. package/dist/core/agent-session.d.ts +97 -2
  175. package/dist/core/agent-session.d.ts.map +1 -1
  176. package/dist/core/agent-session.js +471 -22
  177. package/dist/core/agent-session.js.map +1 -1
  178. package/dist/core/agents/loader.d.ts +77 -0
  179. package/dist/core/agents/loader.d.ts.map +1 -0
  180. package/dist/core/agents/loader.js +154 -0
  181. package/dist/core/agents/loader.js.map +1 -0
  182. package/dist/core/appendonly/append-only-context.d.ts +118 -0
  183. package/dist/core/appendonly/append-only-context.d.ts.map +1 -0
  184. package/dist/core/appendonly/append-only-context.js +256 -0
  185. package/dist/core/appendonly/append-only-context.js.map +1 -0
  186. package/dist/core/appendonly/auto.d.ts +30 -0
  187. package/dist/core/appendonly/auto.d.ts.map +1 -0
  188. package/dist/core/appendonly/auto.js +68 -0
  189. package/dist/core/appendonly/auto.js.map +1 -0
  190. package/dist/core/appendonly/extension.d.ts +29 -0
  191. package/dist/core/appendonly/extension.d.ts.map +1 -0
  192. package/dist/core/appendonly/extension.js +51 -0
  193. package/dist/core/appendonly/extension.js.map +1 -0
  194. package/dist/core/appendonly/index.d.ts +41 -0
  195. package/dist/core/appendonly/index.d.ts.map +1 -0
  196. package/dist/core/appendonly/index.js +42 -0
  197. package/dist/core/appendonly/index.js.map +1 -0
  198. package/dist/core/aprobacion/generados.d.ts +37 -0
  199. package/dist/core/aprobacion/generados.d.ts.map +1 -0
  200. package/dist/core/aprobacion/generados.js +85 -0
  201. package/dist/core/aprobacion/generados.js.map +1 -0
  202. package/dist/core/aprobacion/politica-de-maquina.d.ts +90 -0
  203. package/dist/core/aprobacion/politica-de-maquina.d.ts.map +1 -0
  204. package/dist/core/aprobacion/politica-de-maquina.js +212 -0
  205. package/dist/core/aprobacion/politica-de-maquina.js.map +1 -0
  206. package/dist/core/aprobacion/politica.d.ts +90 -0
  207. package/dist/core/aprobacion/politica.d.ts.map +1 -0
  208. package/dist/core/aprobacion/politica.js +375 -0
  209. package/dist/core/aprobacion/politica.js.map +1 -0
  210. package/dist/core/arranque/atajos.d.ts +46 -0
  211. package/dist/core/arranque/atajos.d.ts.map +1 -0
  212. package/dist/core/arranque/atajos.js +133 -0
  213. package/dist/core/arranque/atajos.js.map +1 -0
  214. package/dist/core/audit/exportacion.d.ts +54 -0
  215. package/dist/core/audit/exportacion.d.ts.map +1 -0
  216. package/dist/core/audit/exportacion.js +267 -0
  217. package/dist/core/audit/exportacion.js.map +1 -0
  218. package/dist/core/audit/libro.d.ts +325 -0
  219. package/dist/core/audit/libro.d.ts.map +1 -0
  220. package/dist/core/audit/libro.js +508 -0
  221. package/dist/core/audit/libro.js.map +1 -0
  222. package/dist/core/audit/registro-sesion.d.ts +78 -0
  223. package/dist/core/audit/registro-sesion.d.ts.map +1 -0
  224. package/dist/core/audit/registro-sesion.js +202 -0
  225. package/dist/core/audit/registro-sesion.js.map +1 -0
  226. package/dist/core/audit/retencion.d.ts +82 -0
  227. package/dist/core/audit/retencion.d.ts.map +1 -0
  228. package/dist/core/audit/retencion.js +152 -0
  229. package/dist/core/audit/retencion.js.map +1 -0
  230. package/dist/core/audit/rutas.d.ts +23 -0
  231. package/dist/core/audit/rutas.d.ts.map +1 -0
  232. package/dist/core/audit/rutas.js +23 -0
  233. package/dist/core/audit/rutas.js.map +1 -0
  234. package/dist/core/auth-guidance.d.ts.map +1 -1
  235. package/dist/core/auth-guidance.js.map +1 -1
  236. package/dist/core/auth-storage.d.ts +0 -3
  237. package/dist/core/auth-storage.d.ts.map +1 -1
  238. package/dist/core/auth-storage.js +17 -5
  239. package/dist/core/auth-storage.js.map +1 -1
  240. package/dist/core/banco/almacenamiento.d.ts +18 -0
  241. package/dist/core/banco/almacenamiento.d.ts.map +1 -0
  242. package/dist/core/banco/almacenamiento.js +50 -0
  243. package/dist/core/banco/almacenamiento.js.map +1 -0
  244. package/dist/core/banco/analisis.d.ts +37 -0
  245. package/dist/core/banco/analisis.d.ts.map +1 -0
  246. package/dist/core/banco/analisis.js +164 -0
  247. package/dist/core/banco/analisis.js.map +1 -0
  248. package/dist/core/banco/asides.d.ts +64 -0
  249. package/dist/core/banco/asides.d.ts.map +1 -0
  250. package/dist/core/banco/asides.js +113 -0
  251. package/dist/core/banco/asides.js.map +1 -0
  252. package/dist/core/banco/bloques.d.ts +39 -0
  253. package/dist/core/banco/bloques.d.ts.map +1 -0
  254. package/dist/core/banco/bloques.js +84 -0
  255. package/dist/core/banco/bloques.js.map +1 -0
  256. package/dist/core/banco/cargas.d.ts +84 -0
  257. package/dist/core/banco/cargas.d.ts.map +1 -0
  258. package/dist/core/banco/cargas.js +520 -0
  259. package/dist/core/banco/cargas.js.map +1 -0
  260. package/dist/core/banco/comparar.d.ts +29 -0
  261. package/dist/core/banco/comparar.d.ts.map +1 -0
  262. package/dist/core/banco/comparar.js +28 -0
  263. package/dist/core/banco/comparar.js.map +1 -0
  264. package/dist/core/banco/cow-isolation.d.ts +74 -0
  265. package/dist/core/banco/cow-isolation.d.ts.map +1 -0
  266. package/dist/core/banco/cow-isolation.js +259 -0
  267. package/dist/core/banco/cow-isolation.js.map +1 -0
  268. package/dist/core/banco/ejecutar.d.ts +44 -0
  269. package/dist/core/banco/ejecutar.d.ts.map +1 -0
  270. package/dist/core/banco/ejecutar.js +183 -0
  271. package/dist/core/banco/ejecutar.js.map +1 -0
  272. package/dist/core/banco/generar.d.ts +24 -0
  273. package/dist/core/banco/generar.d.ts.map +1 -0
  274. package/dist/core/banco/generar.js +159 -0
  275. package/dist/core/banco/generar.js.map +1 -0
  276. package/dist/core/banco/mutaciones.d.ts +25 -0
  277. package/dist/core/banco/mutaciones.d.ts.map +1 -0
  278. package/dist/core/banco/mutaciones.js +215 -0
  279. package/dist/core/banco/mutaciones.js.map +1 -0
  280. package/dist/core/banco/park-revive.d.ts +67 -0
  281. package/dist/core/banco/park-revive.d.ts.map +1 -0
  282. package/dist/core/banco/park-revive.js +130 -0
  283. package/dist/core/banco/park-revive.js.map +1 -0
  284. package/dist/core/banco/pruning.d.ts +48 -0
  285. package/dist/core/banco/pruning.d.ts.map +1 -0
  286. package/dist/core/banco/pruning.js +146 -0
  287. package/dist/core/banco/pruning.js.map +1 -0
  288. package/dist/core/banco/steering.d.ts +81 -0
  289. package/dist/core/banco/steering.d.ts.map +1 -0
  290. package/dist/core/banco/steering.js +96 -0
  291. package/dist/core/banco/steering.js.map +1 -0
  292. package/dist/core/banco/tipos.d.ts +121 -0
  293. package/dist/core/banco/tipos.d.ts.map +1 -0
  294. package/dist/core/banco/tipos.js +16 -0
  295. package/dist/core/banco/tipos.js.map +1 -0
  296. package/dist/core/bash-executor.d.ts.map +1 -1
  297. package/dist/core/bash-executor.js.map +1 -1
  298. package/dist/core/blobs/almacen.d.ts +81 -0
  299. package/dist/core/blobs/almacen.d.ts.map +1 -0
  300. package/dist/core/blobs/almacen.js +198 -0
  301. package/dist/core/blobs/almacen.js.map +1 -0
  302. package/dist/core/blobs/broker.d.ts +104 -0
  303. package/dist/core/blobs/broker.d.ts.map +1 -0
  304. package/dist/core/blobs/broker.js +204 -0
  305. package/dist/core/blobs/broker.js.map +1 -0
  306. package/dist/core/blobs/index.d.ts +71 -0
  307. package/dist/core/blobs/index.d.ts.map +1 -0
  308. package/dist/core/blobs/index.js +233 -0
  309. package/dist/core/blobs/index.js.map +1 -0
  310. package/dist/core/blobs/payload.d.ts +55 -0
  311. package/dist/core/blobs/payload.d.ts.map +1 -0
  312. package/dist/core/blobs/payload.js +255 -0
  313. package/dist/core/blobs/payload.js.map +1 -0
  314. package/dist/core/blobs/proveedor.d.ts +85 -0
  315. package/dist/core/blobs/proveedor.d.ts.map +1 -0
  316. package/dist/core/blobs/proveedor.js +196 -0
  317. package/dist/core/blobs/proveedor.js.map +1 -0
  318. package/dist/core/blobs/uploaders.d.ts +105 -0
  319. package/dist/core/blobs/uploaders.d.ts.map +1 -0
  320. package/dist/core/blobs/uploaders.js +224 -0
  321. package/dist/core/blobs/uploaders.js.map +1 -0
  322. package/dist/core/broker/broker.d.ts +54 -0
  323. package/dist/core/broker/broker.d.ts.map +1 -0
  324. package/dist/core/broker/broker.js +216 -0
  325. package/dist/core/broker/broker.js.map +1 -0
  326. package/dist/core/broker/index.d.ts +21 -0
  327. package/dist/core/broker/index.d.ts.map +1 -0
  328. package/dist/core/broker/index.js +33 -0
  329. package/dist/core/broker/index.js.map +1 -0
  330. package/dist/core/broker/ps.d.ts +20 -0
  331. package/dist/core/broker/ps.d.ts.map +1 -0
  332. package/dist/core/broker/ps.js +55 -0
  333. package/dist/core/broker/ps.js.map +1 -0
  334. package/dist/core/broker/types.d.ts +45 -0
  335. package/dist/core/broker/types.d.ts.map +1 -0
  336. package/dist/core/broker/types.js +19 -0
  337. package/dist/core/broker/types.js.map +1 -0
  338. package/dist/core/browser/cdp.d.ts +41 -0
  339. package/dist/core/browser/cdp.d.ts.map +1 -0
  340. package/dist/core/browser/cdp.js +119 -0
  341. package/dist/core/browser/cdp.js.map +1 -0
  342. package/dist/core/browser/politica.d.ts +51 -0
  343. package/dist/core/browser/politica.d.ts.map +1 -0
  344. package/dist/core/browser/politica.js +123 -0
  345. package/dist/core/browser/politica.js.map +1 -0
  346. package/dist/core/browser/sesion.d.ts +52 -0
  347. package/dist/core/browser/sesion.d.ts.map +1 -0
  348. package/dist/core/browser/sesion.js +176 -0
  349. package/dist/core/browser/sesion.js.map +1 -0
  350. package/dist/core/browser/tools.d.ts +16 -0
  351. package/dist/core/browser/tools.d.ts.map +1 -0
  352. package/dist/core/browser/tools.js +279 -0
  353. package/dist/core/browser/tools.js.map +1 -0
  354. package/dist/core/cache-stats.d.ts.map +1 -1
  355. package/dist/core/cache-stats.js.map +1 -1
  356. package/dist/core/capability/capability.test.d.ts +12 -0
  357. package/dist/core/capability/capability.test.d.ts.map +1 -0
  358. package/dist/core/capability/capability.test.js +258 -0
  359. package/dist/core/capability/capability.test.js.map +1 -0
  360. package/dist/core/capability/fs.d.ts +32 -0
  361. package/dist/core/capability/fs.d.ts.map +1 -0
  362. package/dist/core/capability/fs.js +106 -0
  363. package/dist/core/capability/fs.js.map +1 -0
  364. package/dist/core/capability/index.d.ts +68 -0
  365. package/dist/core/capability/index.d.ts.map +1 -0
  366. package/dist/core/capability/index.js +258 -0
  367. package/dist/core/capability/index.js.map +1 -0
  368. package/dist/core/capability/types.d.ts +168 -0
  369. package/dist/core/capability/types.d.ts.map +1 -0
  370. package/dist/core/capability/types.js +16 -0
  371. package/dist/core/capability/types.js.map +1 -0
  372. package/dist/core/carga-plugins/index.d.ts +49 -0
  373. package/dist/core/carga-plugins/index.d.ts.map +1 -0
  374. package/dist/core/carga-plugins/index.js +85 -0
  375. package/dist/core/carga-plugins/index.js.map +1 -0
  376. package/dist/core/carga-plugins/invalidacion.d.ts +60 -0
  377. package/dist/core/carga-plugins/invalidacion.d.ts.map +1 -0
  378. package/dist/core/carga-plugins/invalidacion.js +94 -0
  379. package/dist/core/carga-plugins/invalidacion.js.map +1 -0
  380. package/dist/core/carga-plugins/paralelo.d.ts +48 -0
  381. package/dist/core/carga-plugins/paralelo.d.ts.map +1 -0
  382. package/dist/core/carga-plugins/paralelo.js +47 -0
  383. package/dist/core/carga-plugins/paralelo.js.map +1 -0
  384. package/dist/core/colaboracion/autoresearch.d.ts +56 -0
  385. package/dist/core/colaboracion/autoresearch.d.ts.map +1 -0
  386. package/dist/core/colaboracion/autoresearch.js +95 -0
  387. package/dist/core/colaboracion/autoresearch.js.map +1 -0
  388. package/dist/core/colaboracion/index.d.ts +10 -0
  389. package/dist/core/colaboracion/index.d.ts.map +1 -0
  390. package/dist/core/colaboracion/index.js +7 -0
  391. package/dist/core/colaboracion/index.js.map +1 -0
  392. package/dist/core/colaboracion/kernels.d.ts +63 -0
  393. package/dist/core/colaboracion/kernels.d.ts.map +1 -0
  394. package/dist/core/colaboracion/kernels.js +99 -0
  395. package/dist/core/colaboracion/kernels.js.map +1 -0
  396. package/dist/core/colaboracion/rele/index.d.ts +8 -0
  397. package/dist/core/colaboracion/rele/index.d.ts.map +1 -0
  398. package/dist/core/colaboracion/rele/index.js +6 -0
  399. package/dist/core/colaboracion/rele/index.js.map +1 -0
  400. package/dist/core/colaboracion/rele/rele-servidor.d.ts +69 -0
  401. package/dist/core/colaboracion/rele/rele-servidor.d.ts.map +1 -0
  402. package/dist/core/colaboracion/rele/rele-servidor.js +197 -0
  403. package/dist/core/colaboracion/rele/rele-servidor.js.map +1 -0
  404. package/dist/core/colaboracion/rele/suscriptor.d.ts +31 -0
  405. package/dist/core/colaboracion/rele/suscriptor.d.ts.map +1 -0
  406. package/dist/core/colaboracion/rele/suscriptor.js +173 -0
  407. package/dist/core/colaboracion/rele/suscriptor.js.map +1 -0
  408. package/dist/core/colaboracion/sesion-colaborativa.d.ts +61 -0
  409. package/dist/core/colaboracion/sesion-colaborativa.d.ts.map +1 -0
  410. package/dist/core/colaboracion/sesion-colaborativa.js +127 -0
  411. package/dist/core/colaboracion/sesion-colaborativa.js.map +1 -0
  412. package/dist/core/commits/agentic.d.ts +101 -0
  413. package/dist/core/commits/agentic.d.ts.map +1 -0
  414. package/dist/core/commits/agentic.js +268 -0
  415. package/dist/core/commits/agentic.js.map +1 -0
  416. package/dist/core/commits/changelog.d.ts +37 -0
  417. package/dist/core/commits/changelog.d.ts.map +1 -0
  418. package/dist/core/commits/changelog.js +155 -0
  419. package/dist/core/commits/changelog.js.map +1 -0
  420. package/dist/core/commits/diff.d.ts +56 -0
  421. package/dist/core/commits/diff.d.ts.map +1 -0
  422. package/dist/core/commits/diff.js +145 -0
  423. package/dist/core/commits/diff.js.map +1 -0
  424. package/dist/core/commits/git.d.ts +43 -0
  425. package/dist/core/commits/git.d.ts.map +1 -0
  426. package/dist/core/commits/git.js +61 -0
  427. package/dist/core/commits/git.js.map +1 -0
  428. package/dist/core/commits/split.d.ts +45 -0
  429. package/dist/core/commits/split.d.ts.map +1 -0
  430. package/dist/core/commits/split.js +128 -0
  431. package/dist/core/commits/split.js.map +1 -0
  432. package/dist/core/compactacion/comandos.d.ts +53 -0
  433. package/dist/core/compactacion/comandos.d.ts.map +1 -0
  434. package/dist/core/compactacion/comandos.js +155 -0
  435. package/dist/core/compactacion/comandos.js.map +1 -0
  436. package/dist/core/compactacion/extension.d.ts +28 -0
  437. package/dist/core/compactacion/extension.d.ts.map +1 -0
  438. package/dist/core/compactacion/extension.js +159 -0
  439. package/dist/core/compactacion/extension.js.map +1 -0
  440. package/dist/core/compactacion/handoff.d.ts +61 -0
  441. package/dist/core/compactacion/handoff.d.ts.map +1 -0
  442. package/dist/core/compactacion/handoff.js +139 -0
  443. package/dist/core/compactacion/handoff.js.map +1 -0
  444. package/dist/core/compactacion/index.d.ts +15 -0
  445. package/dist/core/compactacion/index.d.ts.map +1 -0
  446. package/dist/core/compactacion/index.js +15 -0
  447. package/dist/core/compactacion/index.js.map +1 -0
  448. package/dist/core/compactacion/prune.d.ts +38 -0
  449. package/dist/core/compactacion/prune.d.ts.map +1 -0
  450. package/dist/core/compactacion/prune.js +81 -0
  451. package/dist/core/compactacion/prune.js.map +1 -0
  452. package/dist/core/compactacion/shake.d.ts +40 -0
  453. package/dist/core/compactacion/shake.d.ts.map +1 -0
  454. package/dist/core/compactacion/shake.js +106 -0
  455. package/dist/core/compactacion/shake.js.map +1 -0
  456. package/dist/core/compactacion/tipos.d.ts +54 -0
  457. package/dist/core/compactacion/tipos.d.ts.map +1 -0
  458. package/dist/core/compactacion/tipos.js +44 -0
  459. package/dist/core/compactacion/tipos.js.map +1 -0
  460. package/dist/core/compactar/index.d.ts +52 -0
  461. package/dist/core/compactar/index.d.ts.map +1 -0
  462. package/dist/core/compactar/index.js +91 -0
  463. package/dist/core/compactar/index.js.map +1 -0
  464. package/dist/core/compactar/registro-denso.d.ts +160 -0
  465. package/dist/core/compactar/registro-denso.d.ts.map +1 -0
  466. package/dist/core/compactar/registro-denso.js +620 -0
  467. package/dist/core/compactar/registro-denso.js.map +1 -0
  468. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  469. package/dist/core/compaction/branch-summarization.js.map +1 -1
  470. package/dist/core/compaction/compaction.d.ts.map +1 -1
  471. package/dist/core/compaction/compaction.js.map +1 -1
  472. package/dist/core/compaction/index.d.ts.map +1 -1
  473. package/dist/core/compaction/index.js.map +1 -1
  474. package/dist/core/compaction/utils.d.ts.map +1 -1
  475. package/dist/core/compaction/utils.js.map +1 -1
  476. package/dist/core/computer/captura.d.ts +35 -0
  477. package/dist/core/computer/captura.d.ts.map +1 -0
  478. package/dist/core/computer/captura.js +140 -0
  479. package/dist/core/computer/captura.js.map +1 -0
  480. package/dist/core/computer/driver.d.ts +130 -0
  481. package/dist/core/computer/driver.d.ts.map +1 -0
  482. package/dist/core/computer/driver.js +206 -0
  483. package/dist/core/computer/driver.js.map +1 -0
  484. package/dist/core/computer/motor/actions.d.ts +109 -0
  485. package/dist/core/computer/motor/actions.d.ts.map +1 -0
  486. package/dist/core/computer/motor/actions.js +157 -0
  487. package/dist/core/computer/motor/actions.js.map +1 -0
  488. package/dist/core/computer/motor/bridge.d.ts +232 -0
  489. package/dist/core/computer/motor/bridge.d.ts.map +1 -0
  490. package/dist/core/computer/motor/bridge.js +2335 -0
  491. package/dist/core/computer/motor/bridge.js.map +1 -0
  492. package/dist/core/computer/motor/cdp.d.ts +107 -0
  493. package/dist/core/computer/motor/cdp.d.ts.map +1 -0
  494. package/dist/core/computer/motor/cdp.js +659 -0
  495. package/dist/core/computer/motor/cdp.js.map +1 -0
  496. package/dist/core/computer/motor/config.d.ts +23 -0
  497. package/dist/core/computer/motor/config.d.ts.map +1 -0
  498. package/dist/core/computer/motor/config.js +100 -0
  499. package/dist/core/computer/motor/config.js.map +1 -0
  500. package/dist/core/computer/motor/contract.d.ts +81 -0
  501. package/dist/core/computer/motor/contract.d.ts.map +1 -0
  502. package/dist/core/computer/motor/contract.js +14 -0
  503. package/dist/core/computer/motor/contract.js.map +1 -0
  504. package/dist/core/computer/motor/note.d.ts +37 -0
  505. package/dist/core/computer/motor/note.d.ts.map +1 -0
  506. package/dist/core/computer/motor/note.js +162 -0
  507. package/dist/core/computer/motor/note.js.map +1 -0
  508. package/dist/core/computer/motor/outline.d.ts +155 -0
  509. package/dist/core/computer/motor/outline.d.ts.map +1 -0
  510. package/dist/core/computer/motor/outline.js +590 -0
  511. package/dist/core/computer/motor/outline.js.map +1 -0
  512. package/dist/core/computer/motor/output.d.ts +18 -0
  513. package/dist/core/computer/motor/output.d.ts.map +1 -0
  514. package/dist/core/computer/motor/output.js +148 -0
  515. package/dist/core/computer/motor/output.js.map +1 -0
  516. package/dist/core/computer/motor/permissions.d.ts +41 -0
  517. package/dist/core/computer/motor/permissions.d.ts.map +1 -0
  518. package/dist/core/computer/motor/permissions.js +51 -0
  519. package/dist/core/computer/motor/permissions.js.map +1 -0
  520. package/dist/core/computer/motor/platform/architecture.d.ts +5 -0
  521. package/dist/core/computer/motor/platform/architecture.d.ts.map +1 -0
  522. package/dist/core/computer/motor/platform/architecture.js +21 -0
  523. package/dist/core/computer/motor/platform/architecture.js.map +1 -0
  524. package/dist/core/computer/motor/platform/coerce.d.ts +4 -0
  525. package/dist/core/computer/motor/platform/coerce.d.ts.map +1 -0
  526. package/dist/core/computer/motor/platform/coerce.js +17 -0
  527. package/dist/core/computer/motor/platform/coerce.js.map +1 -0
  528. package/dist/core/computer/motor/platform/index.d.ts +4 -0
  529. package/dist/core/computer/motor/platform/index.d.ts.map +1 -0
  530. package/dist/core/computer/motor/platform/index.js +79 -0
  531. package/dist/core/computer/motor/platform/index.js.map +1 -0
  532. package/dist/core/computer/motor/platform/linux/backend.d.ts +3 -0
  533. package/dist/core/computer/motor/platform/linux/backend.d.ts.map +1 -0
  534. package/dist/core/computer/motor/platform/linux/backend.js +173 -0
  535. package/dist/core/computer/motor/platform/linux/backend.js.map +1 -0
  536. package/dist/core/computer/motor/platform/linux/helper.d.ts +29 -0
  537. package/dist/core/computer/motor/platform/linux/helper.d.ts.map +1 -0
  538. package/dist/core/computer/motor/platform/linux/helper.js +261 -0
  539. package/dist/core/computer/motor/platform/linux/helper.js.map +1 -0
  540. package/dist/core/computer/motor/platform/macos/backend.d.ts +3 -0
  541. package/dist/core/computer/motor/platform/macos/backend.d.ts.map +1 -0
  542. package/dist/core/computer/motor/platform/macos/backend.js +124 -0
  543. package/dist/core/computer/motor/platform/macos/backend.js.map +1 -0
  544. package/dist/core/computer/motor/platform/macos/browser.d.ts +7 -0
  545. package/dist/core/computer/motor/platform/macos/browser.d.ts.map +1 -0
  546. package/dist/core/computer/motor/platform/macos/browser.js +101 -0
  547. package/dist/core/computer/motor/platform/macos/browser.js.map +1 -0
  548. package/dist/core/computer/motor/platform/macos/helper.d.ts +32 -0
  549. package/dist/core/computer/motor/platform/macos/helper.d.ts.map +1 -0
  550. package/dist/core/computer/motor/platform/macos/helper.js +277 -0
  551. package/dist/core/computer/motor/platform/macos/helper.js.map +1 -0
  552. package/dist/core/computer/motor/platform/macos/permissions.d.ts +4 -0
  553. package/dist/core/computer/motor/platform/macos/permissions.d.ts.map +1 -0
  554. package/dist/core/computer/motor/platform/macos/permissions.js +118 -0
  555. package/dist/core/computer/motor/platform/macos/permissions.js.map +1 -0
  556. package/dist/core/computer/motor/platform/types.d.ts +263 -0
  557. package/dist/core/computer/motor/platform/types.d.ts.map +1 -0
  558. package/dist/core/computer/motor/platform/types.js +2 -0
  559. package/dist/core/computer/motor/platform/types.js.map +1 -0
  560. package/dist/core/computer/motor/platform/windows/backend.d.ts +3 -0
  561. package/dist/core/computer/motor/platform/windows/backend.d.ts.map +1 -0
  562. package/dist/core/computer/motor/platform/windows/backend.js +163 -0
  563. package/dist/core/computer/motor/platform/windows/backend.js.map +1 -0
  564. package/dist/core/computer/motor/platform/windows/helper.d.ts +18 -0
  565. package/dist/core/computer/motor/platform/windows/helper.d.ts.map +1 -0
  566. package/dist/core/computer/motor/platform/windows/helper.js +174 -0
  567. package/dist/core/computer/motor/platform/windows/helper.js.map +1 -0
  568. package/dist/core/computer/motor/root-selection.d.ts +6 -0
  569. package/dist/core/computer/motor/root-selection.d.ts.map +1 -0
  570. package/dist/core/computer/motor/root-selection.js +28 -0
  571. package/dist/core/computer/motor/root-selection.js.map +1 -0
  572. package/dist/core/computer/motor/runtime.d.ts +50 -0
  573. package/dist/core/computer/motor/runtime.d.ts.map +1 -0
  574. package/dist/core/computer/motor/runtime.js +119 -0
  575. package/dist/core/computer/motor/runtime.js.map +1 -0
  576. package/dist/core/computer/motor/state.d.ts +68 -0
  577. package/dist/core/computer/motor/state.d.ts.map +1 -0
  578. package/dist/core/computer/motor/state.js +100 -0
  579. package/dist/core/computer/motor/state.js.map +1 -0
  580. package/dist/core/computer/motor/view.d.ts +6 -0
  581. package/dist/core/computer/motor/view.d.ts.map +1 -0
  582. package/dist/core/computer/motor/view.js +185 -0
  583. package/dist/core/computer/motor/view.js.map +1 -0
  584. package/dist/core/computer/motor-ada.d.ts +159 -0
  585. package/dist/core/computer/motor-ada.d.ts.map +1 -0
  586. package/dist/core/computer/motor-ada.js +412 -0
  587. package/dist/core/computer/motor-ada.js.map +1 -0
  588. package/dist/core/computer/politica.d.ts +56 -0
  589. package/dist/core/computer/politica.d.ts.map +1 -0
  590. package/dist/core/computer/politica.js +163 -0
  591. package/dist/core/computer/politica.js.map +1 -0
  592. package/dist/core/computer/tools.d.ts +26 -0
  593. package/dist/core/computer/tools.d.ts.map +1 -0
  594. package/dist/core/computer/tools.js +399 -0
  595. package/dist/core/computer/tools.js.map +1 -0
  596. package/dist/core/config/quarantine.d.ts +57 -0
  597. package/dist/core/config/quarantine.d.ts.map +1 -0
  598. package/dist/core/config/quarantine.js +161 -0
  599. package/dist/core/config/quarantine.js.map +1 -0
  600. package/dist/core/config-viva/ambito.d.ts +46 -0
  601. package/dist/core/config-viva/ambito.d.ts.map +1 -0
  602. package/dist/core/config-viva/ambito.js +62 -0
  603. package/dist/core/config-viva/ambito.js.map +1 -0
  604. package/dist/core/config-viva/cache-negativa.d.ts +50 -0
  605. package/dist/core/config-viva/cache-negativa.d.ts.map +1 -0
  606. package/dist/core/config-viva/cache-negativa.js +78 -0
  607. package/dist/core/config-viva/cache-negativa.js.map +1 -0
  608. package/dist/core/config-viva/headers-vivos.d.ts +41 -0
  609. package/dist/core/config-viva/headers-vivos.d.ts.map +1 -0
  610. package/dist/core/config-viva/headers-vivos.js +43 -0
  611. package/dist/core/config-viva/headers-vivos.js.map +1 -0
  612. package/dist/core/config-viva/index.d.ts +16 -0
  613. package/dist/core/config-viva/index.d.ts.map +1 -0
  614. package/dist/core/config-viva/index.js +16 -0
  615. package/dist/core/config-viva/index.js.map +1 -0
  616. package/dist/core/config-viva/proveedor.d.ts +48 -0
  617. package/dist/core/config-viva/proveedor.d.ts.map +1 -0
  618. package/dist/core/config-viva/proveedor.js +78 -0
  619. package/dist/core/config-viva/proveedor.js.map +1 -0
  620. package/dist/core/context-breakdown.d.ts +80 -0
  621. package/dist/core/context-breakdown.d.ts.map +1 -0
  622. package/dist/core/context-breakdown.js +87 -0
  623. package/dist/core/context-breakdown.js.map +1 -0
  624. package/dist/core/credenciales/cliente.d.ts +60 -0
  625. package/dist/core/credenciales/cliente.d.ts.map +1 -0
  626. package/dist/core/credenciales/cliente.js +81 -0
  627. package/dist/core/credenciales/cliente.js.map +1 -0
  628. package/dist/core/credenciales/pool.d.ts +131 -0
  629. package/dist/core/credenciales/pool.d.ts.map +1 -0
  630. package/dist/core/credenciales/pool.js +177 -0
  631. package/dist/core/credenciales/pool.js.map +1 -0
  632. package/dist/core/credenciales/ranking.d.ts +56 -0
  633. package/dist/core/credenciales/ranking.d.ts.map +1 -0
  634. package/dist/core/credenciales/ranking.js +94 -0
  635. package/dist/core/credenciales/ranking.js.map +1 -0
  636. package/dist/core/credenciales/ratelimit.d.ts +54 -0
  637. package/dist/core/credenciales/ratelimit.d.ts.map +1 -0
  638. package/dist/core/credenciales/ratelimit.js +116 -0
  639. package/dist/core/credenciales/ratelimit.js.map +1 -0
  640. package/dist/core/credenciales/reposo.d.ts +93 -0
  641. package/dist/core/credenciales/reposo.d.ts.map +1 -0
  642. package/dist/core/credenciales/reposo.js +489 -0
  643. package/dist/core/credenciales/reposo.js.map +1 -0
  644. package/dist/core/credenciales/servidor.d.ts +63 -0
  645. package/dist/core/credenciales/servidor.d.ts.map +1 -0
  646. package/dist/core/credenciales/servidor.js +213 -0
  647. package/dist/core/credenciales/servidor.js.map +1 -0
  648. package/dist/core/defaults.d.ts.map +1 -1
  649. package/dist/core/defaults.js.map +1 -1
  650. package/dist/core/descubrimiento/comandos.d.ts +30 -0
  651. package/dist/core/descubrimiento/comandos.d.ts.map +1 -0
  652. package/dist/core/descubrimiento/comandos.js +76 -0
  653. package/dist/core/descubrimiento/comandos.js.map +1 -0
  654. package/dist/core/descubrimiento/mcp.d.ts +54 -0
  655. package/dist/core/descubrimiento/mcp.d.ts.map +1 -0
  656. package/dist/core/descubrimiento/mcp.js +162 -0
  657. package/dist/core/descubrimiento/mcp.js.map +1 -0
  658. package/dist/core/descubrimiento/reglas.d.ts +61 -0
  659. package/dist/core/descubrimiento/reglas.d.ts.map +1 -0
  660. package/dist/core/descubrimiento/reglas.js +134 -0
  661. package/dist/core/descubrimiento/reglas.js.map +1 -0
  662. package/dist/core/descubrimiento/runtimes/index.d.ts +24 -0
  663. package/dist/core/descubrimiento/runtimes/index.d.ts.map +1 -0
  664. package/dist/core/descubrimiento/runtimes/index.js +109 -0
  665. package/dist/core/descubrimiento/runtimes/index.js.map +1 -0
  666. package/dist/core/descubrimiento/runtimes/litellm.d.ts +12 -0
  667. package/dist/core/descubrimiento/runtimes/litellm.d.ts.map +1 -0
  668. package/dist/core/descubrimiento/runtimes/litellm.js +185 -0
  669. package/dist/core/descubrimiento/runtimes/litellm.js.map +1 -0
  670. package/dist/core/descubrimiento/runtimes/lm-studio.d.ts +13 -0
  671. package/dist/core/descubrimiento/runtimes/lm-studio.d.ts.map +1 -0
  672. package/dist/core/descubrimiento/runtimes/lm-studio.js +142 -0
  673. package/dist/core/descubrimiento/runtimes/lm-studio.js.map +1 -0
  674. package/dist/core/descubrimiento/runtimes/ollama.d.ts +8 -0
  675. package/dist/core/descubrimiento/runtimes/ollama.d.ts.map +1 -0
  676. package/dist/core/descubrimiento/runtimes/ollama.js +96 -0
  677. package/dist/core/descubrimiento/runtimes/ollama.js.map +1 -0
  678. package/dist/core/descubrimiento/runtimes/tipos.d.ts +47 -0
  679. package/dist/core/descubrimiento/runtimes/tipos.d.ts.map +1 -0
  680. package/dist/core/descubrimiento/runtimes/tipos.js +10 -0
  681. package/dist/core/descubrimiento/runtimes/tipos.js.map +1 -0
  682. package/dist/core/descubrimiento/skills.d.ts +57 -0
  683. package/dist/core/descubrimiento/skills.d.ts.map +1 -0
  684. package/dist/core/descubrimiento/skills.js +113 -0
  685. package/dist/core/descubrimiento/skills.js.map +1 -0
  686. package/dist/core/diagnostics.d.ts.map +1 -1
  687. package/dist/core/diagnostics.js.map +1 -1
  688. package/dist/core/dificultad/clasificador.d.ts +133 -0
  689. package/dist/core/dificultad/clasificador.d.ts.map +1 -0
  690. package/dist/core/dificultad/clasificador.js +288 -0
  691. package/dist/core/dificultad/clasificador.js.map +1 -0
  692. package/dist/core/edicion/diario.d.ts +37 -0
  693. package/dist/core/edicion/diario.d.ts.map +1 -0
  694. package/dist/core/edicion/diario.js +51 -0
  695. package/dist/core/edicion/diario.js.map +1 -0
  696. package/dist/core/edicion/hashline.d.ts +71 -0
  697. package/dist/core/edicion/hashline.d.ts.map +1 -0
  698. package/dist/core/edicion/hashline.js +111 -0
  699. package/dist/core/edicion/hashline.js.map +1 -0
  700. package/dist/core/edicion/hueco.d.ts +64 -0
  701. package/dist/core/edicion/hueco.d.ts.map +1 -0
  702. package/dist/core/edicion/hueco.js +162 -0
  703. package/dist/core/edicion/hueco.js.map +1 -0
  704. package/dist/core/edicion/ipynb.d.ts +51 -0
  705. package/dist/core/edicion/ipynb.d.ts.map +1 -0
  706. package/dist/core/edicion/ipynb.js +110 -0
  707. package/dist/core/edicion/ipynb.js.map +1 -0
  708. package/dist/core/edicion/limpiar-carga.d.ts +39 -0
  709. package/dist/core/edicion/limpiar-carga.d.ts.map +1 -0
  710. package/dist/core/edicion/limpiar-carga.js +121 -0
  711. package/dist/core/edicion/limpiar-carga.js.map +1 -0
  712. package/dist/core/edicion/observador.d.ts +80 -0
  713. package/dist/core/edicion/observador.d.ts.map +1 -0
  714. package/dist/core/edicion/observador.js +183 -0
  715. package/dist/core/edicion/observador.js.map +1 -0
  716. package/dist/core/edicion/parecido.d.ts +53 -0
  717. package/dist/core/edicion/parecido.d.ts.map +1 -0
  718. package/dist/core/edicion/parecido.js +145 -0
  719. package/dist/core/edicion/parecido.js.map +1 -0
  720. package/dist/core/edicion/parseo.d.ts +58 -0
  721. package/dist/core/edicion/parseo.d.ts.map +1 -0
  722. package/dist/core/edicion/parseo.js +124 -0
  723. package/dist/core/edicion/parseo.js.map +1 -0
  724. package/dist/core/edicion/portapapeles.d.ts +28 -0
  725. package/dist/core/edicion/portapapeles.d.ts.map +1 -0
  726. package/dist/core/edicion/portapapeles.js +49 -0
  727. package/dist/core/edicion/portapapeles.js.map +1 -0
  728. package/dist/core/edicion/reparacion.d.ts +67 -0
  729. package/dist/core/edicion/reparacion.d.ts.map +1 -0
  730. package/dist/core/edicion/reparacion.js +202 -0
  731. package/dist/core/edicion/reparacion.js.map +1 -0
  732. package/dist/core/edicion/rutas-difusas.d.ts +44 -0
  733. package/dist/core/edicion/rutas-difusas.d.ts.map +1 -0
  734. package/dist/core/edicion/rutas-difusas.js +93 -0
  735. package/dist/core/edicion/rutas-difusas.js.map +1 -0
  736. package/dist/core/edicion/sangria.d.ts +121 -0
  737. package/dist/core/edicion/sangria.d.ts.map +1 -0
  738. package/dist/core/edicion/sangria.js +341 -0
  739. package/dist/core/edicion/sangria.js.map +1 -0
  740. package/dist/core/edicion/tipos.d.ts +58 -0
  741. package/dist/core/edicion/tipos.d.ts.map +1 -0
  742. package/dist/core/edicion/tipos.js +160 -0
  743. package/dist/core/edicion/tipos.js.map +1 -0
  744. package/dist/core/engine-personality.d.ts.map +1 -1
  745. package/dist/core/engine-personality.js.map +1 -1
  746. package/dist/core/errores/proveedor.d.ts +53 -0
  747. package/dist/core/errores/proveedor.d.ts.map +1 -0
  748. package/dist/core/errores/proveedor.js +191 -0
  749. package/dist/core/errores/proveedor.js.map +1 -0
  750. package/dist/core/estructural/buscar.d.ts +61 -0
  751. package/dist/core/estructural/buscar.d.ts.map +1 -0
  752. package/dist/core/estructural/buscar.js +261 -0
  753. package/dist/core/estructural/buscar.js.map +1 -0
  754. package/dist/core/estructural/editar.d.ts +36 -0
  755. package/dist/core/estructural/editar.d.ts.map +1 -0
  756. package/dist/core/estructural/editar.js +123 -0
  757. package/dist/core/estructural/editar.js.map +1 -0
  758. package/dist/core/estructural/tools.d.ts +11 -0
  759. package/dist/core/estructural/tools.d.ts.map +1 -0
  760. package/dist/core/estructural/tools.js +100 -0
  761. package/dist/core/estructural/tools.js.map +1 -0
  762. package/dist/core/event-bus.d.ts.map +1 -1
  763. package/dist/core/event-bus.js.map +1 -1
  764. package/dist/core/exec.d.ts.map +1 -1
  765. package/dist/core/exec.js.map +1 -1
  766. package/dist/core/experimental.d.ts.map +1 -1
  767. package/dist/core/experimental.js +10 -1
  768. package/dist/core/experimental.js.map +1 -1
  769. package/dist/core/export-html/ansi-to-html.d.ts.map +1 -1
  770. package/dist/core/export-html/ansi-to-html.js.map +1 -1
  771. package/dist/core/export-html/index.d.ts.map +1 -1
  772. package/dist/core/export-html/index.js +183 -13
  773. package/dist/core/export-html/index.js.map +1 -1
  774. package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
  775. package/dist/core/export-html/tool-renderer.js.map +1 -1
  776. package/dist/core/extensiones/suplantacion.d.ts +49 -0
  777. package/dist/core/extensiones/suplantacion.d.ts.map +1 -0
  778. package/dist/core/extensiones/suplantacion.js +61 -0
  779. package/dist/core/extensiones/suplantacion.js.map +1 -0
  780. package/dist/core/extensiones/vigilancia.d.ts +54 -0
  781. package/dist/core/extensiones/vigilancia.d.ts.map +1 -0
  782. package/dist/core/extensiones/vigilancia.js +217 -0
  783. package/dist/core/extensiones/vigilancia.js.map +1 -0
  784. package/dist/core/extensions/index.d.ts.map +1 -1
  785. package/dist/core/extensions/index.js.map +1 -1
  786. package/dist/core/extensions/loader.d.ts.map +1 -1
  787. package/dist/core/extensions/loader.js +11 -1
  788. package/dist/core/extensions/loader.js.map +1 -1
  789. package/dist/core/extensions/runner.d.ts.map +1 -1
  790. package/dist/core/extensions/runner.js.map +1 -1
  791. package/dist/core/extensions/types.d.ts.map +1 -1
  792. package/dist/core/extensions/types.js.map +1 -1
  793. package/dist/core/extensions/wrapper.d.ts.map +1 -1
  794. package/dist/core/extensions/wrapper.js.map +1 -1
  795. package/dist/core/footer-data-provider.d.ts.map +1 -1
  796. package/dist/core/footer-data-provider.js.map +1 -1
  797. package/dist/core/gc/archivo-frio.d.ts +33 -0
  798. package/dist/core/gc/archivo-frio.d.ts.map +1 -0
  799. package/dist/core/gc/archivo-frio.js +152 -0
  800. package/dist/core/gc/archivo-frio.js.map +1 -0
  801. package/dist/core/gc/blobs-gc.d.ts +25 -0
  802. package/dist/core/gc/blobs-gc.d.ts.map +1 -0
  803. package/dist/core/gc/blobs-gc.js +143 -0
  804. package/dist/core/gc/blobs-gc.js.map +1 -0
  805. package/dist/core/gc/index.d.ts +42 -0
  806. package/dist/core/gc/index.d.ts.map +1 -0
  807. package/dist/core/gc/index.js +50 -0
  808. package/dist/core/gc/index.js.map +1 -0
  809. package/dist/core/gc/lock.d.ts +19 -0
  810. package/dist/core/gc/lock.d.ts.map +1 -0
  811. package/dist/core/gc/lock.js +48 -0
  812. package/dist/core/gc/lock.js.map +1 -0
  813. package/dist/core/gc/reconciliacion.d.ts +19 -0
  814. package/dist/core/gc/reconciliacion.d.ts.map +1 -0
  815. package/dist/core/gc/reconciliacion.js +102 -0
  816. package/dist/core/gc/reconciliacion.js.map +1 -0
  817. package/dist/core/gc/wal.d.ts +15 -0
  818. package/dist/core/gc/wal.d.ts.map +1 -0
  819. package/dist/core/gc/wal.js +44 -0
  820. package/dist/core/gc/wal.js.map +1 -0
  821. package/dist/core/harness/fuentes-de-contexto.d.ts +29 -0
  822. package/dist/core/harness/fuentes-de-contexto.d.ts.map +1 -0
  823. package/dist/core/harness/fuentes-de-contexto.js +44 -0
  824. package/dist/core/harness/fuentes-de-contexto.js.map +1 -0
  825. package/dist/core/harness/refine.d.ts +40 -0
  826. package/dist/core/harness/refine.d.ts.map +1 -0
  827. package/dist/core/harness/refine.js +109 -0
  828. package/dist/core/harness/refine.js.map +1 -0
  829. package/dist/core/harness/store.d.ts +75 -0
  830. package/dist/core/harness/store.d.ts.map +1 -0
  831. package/dist/core/harness/store.js +149 -0
  832. package/dist/core/harness/store.js.map +1 -0
  833. package/dist/core/higiene/index.d.ts +8 -0
  834. package/dist/core/higiene/index.d.ts.map +1 -0
  835. package/dist/core/higiene/index.js +8 -0
  836. package/dist/core/higiene/index.js.map +1 -0
  837. package/dist/core/higiene/managed-timers.d.ts +19 -0
  838. package/dist/core/higiene/managed-timers.d.ts.map +1 -0
  839. package/dist/core/higiene/managed-timers.js +68 -0
  840. package/dist/core/higiene/managed-timers.js.map +1 -0
  841. package/dist/core/higiene/race-handler.d.ts +7 -0
  842. package/dist/core/higiene/race-handler.d.ts.map +1 -0
  843. package/dist/core/higiene/race-handler.js +32 -0
  844. package/dist/core/higiene/race-handler.js.map +1 -0
  845. package/dist/core/higiene/withHostGuard.d.ts +27 -0
  846. package/dist/core/higiene/withHostGuard.d.ts.map +1 -0
  847. package/dist/core/higiene/withHostGuard.js +79 -0
  848. package/dist/core/higiene/withHostGuard.js.map +1 -0
  849. package/dist/core/hooks/contract.d.ts +85 -0
  850. package/dist/core/hooks/contract.d.ts.map +1 -0
  851. package/dist/core/hooks/contract.js +140 -0
  852. package/dist/core/hooks/contract.js.map +1 -0
  853. package/dist/core/hooks/runner.d.ts +42 -0
  854. package/dist/core/hooks/runner.d.ts.map +1 -0
  855. package/dist/core/hooks/runner.js +85 -0
  856. package/dist/core/hooks/runner.js.map +1 -0
  857. package/dist/core/hooks/session-hooks.d.ts +62 -0
  858. package/dist/core/hooks/session-hooks.d.ts.map +1 -0
  859. package/dist/core/hooks/session-hooks.js +84 -0
  860. package/dist/core/hooks/session-hooks.js.map +1 -0
  861. package/dist/core/hooks-ts/cargador.d.ts +29 -0
  862. package/dist/core/hooks-ts/cargador.d.ts.map +1 -0
  863. package/dist/core/hooks-ts/cargador.js +51 -0
  864. package/dist/core/hooks-ts/cargador.js.map +1 -0
  865. package/dist/core/hooks-ts/index.d.ts +25 -0
  866. package/dist/core/hooks-ts/index.d.ts.map +1 -0
  867. package/dist/core/hooks-ts/index.js +25 -0
  868. package/dist/core/hooks-ts/index.js.map +1 -0
  869. package/dist/core/hooks-ts/runner.d.ts +40 -0
  870. package/dist/core/hooks-ts/runner.d.ts.map +1 -0
  871. package/dist/core/hooks-ts/runner.js +95 -0
  872. package/dist/core/hooks-ts/runner.js.map +1 -0
  873. package/dist/core/hooks-ts/tipos.d.ts +69 -0
  874. package/dist/core/hooks-ts/tipos.d.ts.map +1 -0
  875. package/dist/core/hooks-ts/tipos.js +90 -0
  876. package/dist/core/hooks-ts/tipos.js.map +1 -0
  877. package/dist/core/http-dispatcher.d.ts.map +1 -1
  878. package/dist/core/http-dispatcher.js.map +1 -1
  879. package/dist/core/importar/formatos.d.ts +69 -0
  880. package/dist/core/importar/formatos.d.ts.map +1 -0
  881. package/dist/core/importar/formatos.js +235 -0
  882. package/dist/core/importar/formatos.js.map +1 -0
  883. package/dist/core/index.d.ts.map +1 -1
  884. package/dist/core/index.js.map +1 -1
  885. package/dist/core/interactivo/deteccion.d.ts +44 -0
  886. package/dist/core/interactivo/deteccion.d.ts.map +1 -0
  887. package/dist/core/interactivo/deteccion.js +82 -0
  888. package/dist/core/interactivo/deteccion.js.map +1 -0
  889. package/dist/core/interactivo/sesion.d.ts +50 -0
  890. package/dist/core/interactivo/sesion.d.ts.map +1 -0
  891. package/dist/core/interactivo/sesion.js +156 -0
  892. package/dist/core/interactivo/sesion.js.map +1 -0
  893. package/dist/core/interactivo/tools.d.ts +21 -0
  894. package/dist/core/interactivo/tools.d.ts.map +1 -0
  895. package/dist/core/interactivo/tools.js +122 -0
  896. package/dist/core/interactivo/tools.js.map +1 -0
  897. package/dist/core/keybindings.d.ts +170 -170
  898. package/dist/core/keybindings.d.ts.map +1 -1
  899. package/dist/core/keybindings.js.map +1 -1
  900. package/dist/core/lectura/mapa.d.ts +70 -0
  901. package/dist/core/lectura/mapa.d.ts.map +1 -0
  902. package/dist/core/lectura/mapa.js +177 -0
  903. package/dist/core/lectura/mapa.js.map +1 -0
  904. package/dist/core/lectura/pdf.d.ts +49 -0
  905. package/dist/core/lectura/pdf.d.ts.map +1 -0
  906. package/dist/core/lectura/pdf.js +337 -0
  907. package/dist/core/lectura/pdf.js.map +1 -0
  908. package/dist/core/lectura/sniffer.d.ts +54 -0
  909. package/dist/core/lectura/sniffer.d.ts.map +1 -0
  910. package/dist/core/lectura/sniffer.js +106 -0
  911. package/dist/core/lectura/sniffer.js.map +1 -0
  912. package/dist/core/limpieza/comprobadores.d.ts +42 -0
  913. package/dist/core/limpieza/comprobadores.d.ts.map +1 -0
  914. package/dist/core/limpieza/comprobadores.js +505 -0
  915. package/dist/core/limpieza/comprobadores.js.map +1 -0
  916. package/dist/core/limpieza/flujo.d.ts +36 -0
  917. package/dist/core/limpieza/flujo.d.ts.map +1 -0
  918. package/dist/core/limpieza/flujo.js +89 -0
  919. package/dist/core/limpieza/flujo.js.map +1 -0
  920. package/dist/core/limpieza/parseo.d.ts +19 -0
  921. package/dist/core/limpieza/parseo.d.ts.map +1 -0
  922. package/dist/core/limpieza/parseo.js +124 -0
  923. package/dist/core/limpieza/parseo.js.map +1 -0
  924. package/dist/core/limpieza/peso.d.ts +17 -0
  925. package/dist/core/limpieza/peso.d.ts.map +1 -0
  926. package/dist/core/limpieza/peso.js +52 -0
  927. package/dist/core/limpieza/peso.js.map +1 -0
  928. package/dist/core/limpieza/pool.d.ts +44 -0
  929. package/dist/core/limpieza/pool.d.ts.map +1 -0
  930. package/dist/core/limpieza/pool.js +123 -0
  931. package/dist/core/limpieza/pool.js.map +1 -0
  932. package/dist/core/limpieza/reparacion.d.ts +94 -0
  933. package/dist/core/limpieza/reparacion.d.ts.map +1 -0
  934. package/dist/core/limpieza/reparacion.js +341 -0
  935. package/dist/core/limpieza/reparacion.js.map +1 -0
  936. package/dist/core/limpieza/tablero.d.ts +47 -0
  937. package/dist/core/limpieza/tablero.d.ts.map +1 -0
  938. package/dist/core/limpieza/tablero.js +78 -0
  939. package/dist/core/limpieza/tablero.js.map +1 -0
  940. package/dist/core/limpieza/tipos.d.ts +81 -0
  941. package/dist/core/limpieza/tipos.d.ts.map +1 -0
  942. package/dist/core/limpieza/tipos.js +9 -0
  943. package/dist/core/limpieza/tipos.js.map +1 -0
  944. package/dist/core/lsp/cliente.d.ts +59 -0
  945. package/dist/core/lsp/cliente.d.ts.map +1 -0
  946. package/dist/core/lsp/cliente.js +234 -0
  947. package/dist/core/lsp/cliente.js.map +1 -0
  948. package/dist/core/lsp/descubrimiento.d.ts +62 -0
  949. package/dist/core/lsp/descubrimiento.d.ts.map +1 -0
  950. package/dist/core/lsp/descubrimiento.js +152 -0
  951. package/dist/core/lsp/descubrimiento.js.map +1 -0
  952. package/dist/core/lsp/ediciones.d.ts +59 -0
  953. package/dist/core/lsp/ediciones.d.ts.map +1 -0
  954. package/dist/core/lsp/ediciones.js +89 -0
  955. package/dist/core/lsp/ediciones.js.map +1 -0
  956. package/dist/core/lsp/extension.d.ts +37 -0
  957. package/dist/core/lsp/extension.d.ts.map +1 -0
  958. package/dist/core/lsp/extension.js +90 -0
  959. package/dist/core/lsp/extension.js.map +1 -0
  960. package/dist/core/lsp/formato.d.ts +72 -0
  961. package/dist/core/lsp/formato.d.ts.map +1 -0
  962. package/dist/core/lsp/formato.js +117 -0
  963. package/dist/core/lsp/formato.js.map +1 -0
  964. package/dist/core/lsp/tools.d.ts +45 -0
  965. package/dist/core/lsp/tools.d.ts.map +1 -0
  966. package/dist/core/lsp/tools.js +265 -0
  967. package/dist/core/lsp/tools.js.map +1 -0
  968. package/dist/core/lsp/writethrough.d.ts +165 -0
  969. package/dist/core/lsp/writethrough.d.ts.map +1 -0
  970. package/dist/core/lsp/writethrough.js +282 -0
  971. package/dist/core/lsp/writethrough.js.map +1 -0
  972. package/dist/core/marketplace/catalogo.d.ts +32 -0
  973. package/dist/core/marketplace/catalogo.d.ts.map +1 -0
  974. package/dist/core/marketplace/catalogo.js +122 -0
  975. package/dist/core/marketplace/catalogo.js.map +1 -0
  976. package/dist/core/marketplace/doctor.d.ts +47 -0
  977. package/dist/core/marketplace/doctor.d.ts.map +1 -0
  978. package/dist/core/marketplace/doctor.js +155 -0
  979. package/dist/core/marketplace/doctor.js.map +1 -0
  980. package/dist/core/marketplace/features.d.ts +22 -0
  981. package/dist/core/marketplace/features.d.ts.map +1 -0
  982. package/dist/core/marketplace/features.js +70 -0
  983. package/dist/core/marketplace/features.js.map +1 -0
  984. package/dist/core/marketplace/index.d.ts +33 -0
  985. package/dist/core/marketplace/index.d.ts.map +1 -0
  986. package/dist/core/marketplace/index.js +33 -0
  987. package/dist/core/marketplace/index.js.map +1 -0
  988. package/dist/core/marketplace/instalar.d.ts +27 -0
  989. package/dist/core/marketplace/instalar.d.ts.map +1 -0
  990. package/dist/core/marketplace/instalar.js +50 -0
  991. package/dist/core/marketplace/instalar.js.map +1 -0
  992. package/dist/core/mcp/client.d.ts +60 -0
  993. package/dist/core/mcp/client.d.ts.map +1 -0
  994. package/dist/core/mcp/client.js +139 -0
  995. package/dist/core/mcp/client.js.map +1 -0
  996. package/dist/core/mcp/manager.d.ts +86 -0
  997. package/dist/core/mcp/manager.d.ts.map +1 -0
  998. package/dist/core/mcp/manager.js +124 -0
  999. package/dist/core/mcp/manager.js.map +1 -0
  1000. package/dist/core/mcp/oauth.d.ts +138 -0
  1001. package/dist/core/mcp/oauth.d.ts.map +1 -0
  1002. package/dist/core/mcp/oauth.js +348 -0
  1003. package/dist/core/mcp/oauth.js.map +1 -0
  1004. package/dist/core/mcp/tools.d.ts +15 -0
  1005. package/dist/core/mcp/tools.d.ts.map +1 -0
  1006. package/dist/core/mcp/tools.js +84 -0
  1007. package/dist/core/mcp/tools.js.map +1 -0
  1008. package/dist/core/memoria/almacen.d.ts +56 -0
  1009. package/dist/core/memoria/almacen.d.ts.map +1 -0
  1010. package/dist/core/memoria/almacen.js +214 -0
  1011. package/dist/core/memoria/almacen.js.map +1 -0
  1012. package/dist/core/memoria/dr/respaldo.d.ts +34 -0
  1013. package/dist/core/memoria/dr/respaldo.d.ts.map +1 -0
  1014. package/dist/core/memoria/dr/respaldo.js +133 -0
  1015. package/dist/core/memoria/dr/respaldo.js.map +1 -0
  1016. package/dist/core/memoria/embeddings.d.ts +21 -0
  1017. package/dist/core/memoria/embeddings.d.ts.map +1 -0
  1018. package/dist/core/memoria/embeddings.js +87 -0
  1019. package/dist/core/memoria/embeddings.js.map +1 -0
  1020. package/dist/core/memoria/grafo.d.ts +56 -0
  1021. package/dist/core/memoria/grafo.d.ts.map +1 -0
  1022. package/dist/core/memoria/grafo.js +143 -0
  1023. package/dist/core/memoria/grafo.js.map +1 -0
  1024. package/dist/core/memoria/redaccion.d.ts +32 -0
  1025. package/dist/core/memoria/redaccion.d.ts.map +1 -0
  1026. package/dist/core/memoria/redaccion.js +76 -0
  1027. package/dist/core/memoria/redaccion.js.map +1 -0
  1028. package/dist/core/memoria/servidor/almacen-json.d.ts +26 -0
  1029. package/dist/core/memoria/servidor/almacen-json.d.ts.map +1 -0
  1030. package/dist/core/memoria/servidor/almacen-json.js +90 -0
  1031. package/dist/core/memoria/servidor/almacen-json.js.map +1 -0
  1032. package/dist/core/memoria/servidor/servidor.d.ts +43 -0
  1033. package/dist/core/memoria/servidor/servidor.d.ts.map +1 -0
  1034. package/dist/core/memoria/servidor/servidor.js +195 -0
  1035. package/dist/core/memoria/servidor/servidor.js.map +1 -0
  1036. package/dist/core/memoria/servidor/tipos.d.ts +44 -0
  1037. package/dist/core/memoria/servidor/tipos.d.ts.map +1 -0
  1038. package/dist/core/memoria/servidor/tipos.js +12 -0
  1039. package/dist/core/memoria/servidor/tipos.js.map +1 -0
  1040. package/dist/core/memoria/tipos.d.ts +63 -0
  1041. package/dist/core/memoria/tipos.d.ts.map +1 -0
  1042. package/dist/core/memoria/tipos.js +14 -0
  1043. package/dist/core/memoria/tipos.js.map +1 -0
  1044. package/dist/core/memory-engine/audit-export.d.ts +12 -10
  1045. package/dist/core/memory-engine/audit-export.d.ts.map +1 -1
  1046. package/dist/core/memory-engine/audit-export.js +15 -0
  1047. package/dist/core/memory-engine/audit-export.js.map +1 -1
  1048. package/dist/core/memory-engine/audit-indice.d.ts +153 -0
  1049. package/dist/core/memory-engine/audit-indice.d.ts.map +1 -0
  1050. package/dist/core/memory-engine/audit-indice.js +271 -0
  1051. package/dist/core/memory-engine/audit-indice.js.map +1 -0
  1052. package/dist/core/memory-engine/audit.d.ts +18 -6
  1053. package/dist/core/memory-engine/audit.d.ts.map +1 -1
  1054. package/dist/core/memory-engine/audit.js +25 -42
  1055. package/dist/core/memory-engine/audit.js.map +1 -1
  1056. package/dist/core/memory-engine/engine.d.ts +26 -1
  1057. package/dist/core/memory-engine/engine.d.ts.map +1 -1
  1058. package/dist/core/memory-engine/engine.js +71 -5
  1059. package/dist/core/memory-engine/engine.js.map +1 -1
  1060. package/dist/core/memory-engine/inverted-index.d.ts.map +1 -1
  1061. package/dist/core/memory-engine/inverted-index.js.map +1 -1
  1062. package/dist/core/memory-engine/keychain.d.ts.map +1 -1
  1063. package/dist/core/memory-engine/keychain.js.map +1 -1
  1064. package/dist/core/memory-engine/observation-store.d.ts +1 -2
  1065. package/dist/core/memory-engine/observation-store.d.ts.map +1 -1
  1066. package/dist/core/memory-engine/observation-store.js +4 -5
  1067. package/dist/core/memory-engine/observation-store.js.map +1 -1
  1068. package/dist/core/memory-engine/refinements.d.ts +51 -0
  1069. package/dist/core/memory-engine/refinements.d.ts.map +1 -0
  1070. package/dist/core/memory-engine/refinements.js +99 -0
  1071. package/dist/core/memory-engine/refinements.js.map +1 -0
  1072. package/dist/core/memory-engine/scanner.d.ts.map +1 -1
  1073. package/dist/core/memory-engine/scanner.js.map +1 -1
  1074. package/dist/core/memory-engine/security.d.ts.map +1 -1
  1075. package/dist/core/memory-engine/security.js.map +1 -1
  1076. package/dist/core/memory-engine/session-indexer.d.ts.map +1 -1
  1077. package/dist/core/memory-engine/session-indexer.js.map +1 -1
  1078. package/dist/core/memory-engine/tools.d.ts.map +1 -1
  1079. package/dist/core/memory-engine/tools.js +27 -1
  1080. package/dist/core/memory-engine/tools.js.map +1 -1
  1081. package/dist/core/memory-engine/types.d.ts +2 -0
  1082. package/dist/core/memory-engine/types.d.ts.map +1 -1
  1083. package/dist/core/memory-engine/types.js.map +1 -1
  1084. package/dist/core/memory-engine/vault.d.ts.map +1 -1
  1085. package/dist/core/memory-engine/vault.js.map +1 -1
  1086. package/dist/core/messages.d.ts.map +1 -1
  1087. package/dist/core/messages.js.map +1 -1
  1088. package/dist/core/metaharness/cli.d.ts +19 -0
  1089. package/dist/core/metaharness/cli.d.ts.map +1 -0
  1090. package/dist/core/metaharness/cli.js +171 -0
  1091. package/dist/core/metaharness/cli.js.map +1 -0
  1092. package/dist/core/metaharness/comparar.d.ts +21 -0
  1093. package/dist/core/metaharness/comparar.d.ts.map +1 -0
  1094. package/dist/core/metaharness/comparar.js +64 -0
  1095. package/dist/core/metaharness/comparar.js.map +1 -0
  1096. package/dist/core/metaharness/ejecutar.d.ts +70 -0
  1097. package/dist/core/metaharness/ejecutar.d.ts.map +1 -0
  1098. package/dist/core/metaharness/ejecutar.js +249 -0
  1099. package/dist/core/metaharness/ejecutar.js.map +1 -0
  1100. package/dist/core/metaharness/tipos.d.ts +142 -0
  1101. package/dist/core/metaharness/tipos.d.ts.map +1 -0
  1102. package/dist/core/metaharness/tipos.js +17 -0
  1103. package/dist/core/metaharness/tipos.js.map +1 -0
  1104. package/dist/core/model-config.d.ts +8 -8
  1105. package/dist/core/model-config.d.ts.map +1 -1
  1106. package/dist/core/model-config.js.map +1 -1
  1107. package/dist/core/model-registry.d.ts.map +1 -1
  1108. package/dist/core/model-registry.js.map +1 -1
  1109. package/dist/core/model-resolver.d.ts.map +1 -1
  1110. package/dist/core/model-resolver.js +7 -1
  1111. package/dist/core/model-resolver.js.map +1 -1
  1112. package/dist/core/model-runtime.d.ts.map +1 -1
  1113. package/dist/core/model-runtime.js.map +1 -1
  1114. package/dist/core/models-store.d.ts.map +1 -1
  1115. package/dist/core/models-store.js.map +1 -1
  1116. package/dist/core/muestreo-restringido.d.ts +49 -0
  1117. package/dist/core/muestreo-restringido.d.ts.map +1 -0
  1118. package/dist/core/muestreo-restringido.js +65 -0
  1119. package/dist/core/muestreo-restringido.js.map +1 -0
  1120. package/dist/core/orphan-process-journal.d.ts +48 -0
  1121. package/dist/core/orphan-process-journal.d.ts.map +1 -0
  1122. package/dist/core/orphan-process-journal.js +116 -0
  1123. package/dist/core/orphan-process-journal.js.map +1 -0
  1124. package/dist/core/output-guard.d.ts.map +1 -1
  1125. package/dist/core/output-guard.js.map +1 -1
  1126. package/dist/core/package-manager.d.ts.map +1 -1
  1127. package/dist/core/package-manager.js.map +1 -1
  1128. package/dist/core/parche/aplicar.d.ts +19 -0
  1129. package/dist/core/parche/aplicar.d.ts.map +1 -0
  1130. package/dist/core/parche/aplicar.js +243 -0
  1131. package/dist/core/parche/aplicar.js.map +1 -0
  1132. package/dist/core/parche/parser.d.ts +38 -0
  1133. package/dist/core/parche/parser.d.ts.map +1 -0
  1134. package/dist/core/parche/parser.js +217 -0
  1135. package/dist/core/parche/parser.js.map +1 -0
  1136. package/dist/core/parche/registro.d.ts +12 -0
  1137. package/dist/core/parche/registro.d.ts.map +1 -0
  1138. package/dist/core/parche/registro.js +58 -0
  1139. package/dist/core/parche/registro.js.map +1 -0
  1140. package/dist/core/perfiles/index.d.ts +22 -0
  1141. package/dist/core/perfiles/index.d.ts.map +1 -0
  1142. package/dist/core/perfiles/index.js +21 -0
  1143. package/dist/core/perfiles/index.js.map +1 -0
  1144. package/dist/core/perfiles/resolver.d.ts +51 -0
  1145. package/dist/core/perfiles/resolver.d.ts.map +1 -0
  1146. package/dist/core/perfiles/resolver.js +329 -0
  1147. package/dist/core/perfiles/resolver.js.map +1 -0
  1148. package/dist/core/perfiles/tipos.d.ts +69 -0
  1149. package/dist/core/perfiles/tipos.d.ts.map +1 -0
  1150. package/dist/core/perfiles/tipos.js +98 -0
  1151. package/dist/core/perfiles/tipos.js.map +1 -0
  1152. package/dist/core/pi-manifest.d.ts.map +1 -1
  1153. package/dist/core/pi-manifest.js.map +1 -1
  1154. package/dist/core/privacidad/categorias-especiales.d.ts +186 -0
  1155. package/dist/core/privacidad/categorias-especiales.d.ts.map +1 -0
  1156. package/dist/core/privacidad/categorias-especiales.js +749 -0
  1157. package/dist/core/privacidad/categorias-especiales.js.map +1 -0
  1158. package/dist/core/privacidad/tapar.d.ts +48 -0
  1159. package/dist/core/privacidad/tapar.d.ts.map +1 -0
  1160. package/dist/core/privacidad/tapar.js +66 -0
  1161. package/dist/core/privacidad/tapar.js.map +1 -0
  1162. package/dist/core/project-memory.d.ts.map +1 -1
  1163. package/dist/core/project-memory.js.map +1 -1
  1164. package/dist/core/project-trust.d.ts.map +1 -1
  1165. package/dist/core/project-trust.js.map +1 -1
  1166. package/dist/core/prompt-cache/diagnostics.d.ts +33 -0
  1167. package/dist/core/prompt-cache/diagnostics.d.ts.map +1 -0
  1168. package/dist/core/prompt-cache/diagnostics.js +100 -0
  1169. package/dist/core/prompt-cache/diagnostics.js.map +1 -0
  1170. package/dist/core/prompt-cache/index.d.ts +33 -0
  1171. package/dist/core/prompt-cache/index.d.ts.map +1 -0
  1172. package/dist/core/prompt-cache/index.js +189 -0
  1173. package/dist/core/prompt-cache/index.js.map +1 -0
  1174. package/dist/core/prompt-cache/payload.d.ts +58 -0
  1175. package/dist/core/prompt-cache/payload.d.ts.map +1 -0
  1176. package/dist/core/prompt-cache/payload.js +122 -0
  1177. package/dist/core/prompt-cache/payload.js.map +1 -0
  1178. package/dist/core/prompt-cache/stabilize.d.ts +65 -0
  1179. package/dist/core/prompt-cache/stabilize.d.ts.map +1 -0
  1180. package/dist/core/prompt-cache/stabilize.js +137 -0
  1181. package/dist/core/prompt-cache/stabilize.js.map +1 -0
  1182. package/dist/core/prompt-cache/stats.d.ts +55 -0
  1183. package/dist/core/prompt-cache/stats.d.ts.map +1 -0
  1184. package/dist/core/prompt-cache/stats.js +158 -0
  1185. package/dist/core/prompt-cache/stats.js.map +1 -0
  1186. package/dist/core/prompt-eleccion.d.ts +38 -0
  1187. package/dist/core/prompt-eleccion.d.ts.map +1 -0
  1188. package/dist/core/prompt-eleccion.js +46 -0
  1189. package/dist/core/prompt-eleccion.js.map +1 -0
  1190. package/dist/core/prompt-optimizer.d.ts.map +1 -1
  1191. package/dist/core/prompt-optimizer.js.map +1 -1
  1192. package/dist/core/prompt-templates.d.ts.map +1 -1
  1193. package/dist/core/prompt-templates.js.map +1 -1
  1194. package/dist/core/prompts/montar.d.ts +75 -0
  1195. package/dist/core/prompts/montar.d.ts.map +1 -0
  1196. package/dist/core/prompts/montar.js +146 -0
  1197. package/dist/core/prompts/montar.js.map +1 -0
  1198. package/dist/core/prompts/plantilla.d.ts +54 -0
  1199. package/dist/core/prompts/plantilla.d.ts.map +1 -0
  1200. package/dist/core/prompts/plantilla.js +153 -0
  1201. package/dist/core/prompts/plantilla.js.map +1 -0
  1202. package/dist/core/proveedores-registry/definiciones.d.ts +15 -0
  1203. package/dist/core/proveedores-registry/definiciones.d.ts.map +1 -0
  1204. package/dist/core/proveedores-registry/definiciones.js +22 -0
  1205. package/dist/core/proveedores-registry/definiciones.js.map +1 -0
  1206. package/dist/core/proveedores-registry/index.d.ts +14 -0
  1207. package/dist/core/proveedores-registry/index.d.ts.map +1 -0
  1208. package/dist/core/proveedores-registry/index.js +13 -0
  1209. package/dist/core/proveedores-registry/index.js.map +1 -0
  1210. package/dist/core/proveedores-registry/resolver.d.ts +25 -0
  1211. package/dist/core/proveedores-registry/resolver.d.ts.map +1 -0
  1212. package/dist/core/proveedores-registry/resolver.js +69 -0
  1213. package/dist/core/proveedores-registry/resolver.js.map +1 -0
  1214. package/dist/core/proveedores-registry/tipos.d.ts +47 -0
  1215. package/dist/core/proveedores-registry/tipos.d.ts.map +1 -0
  1216. package/dist/core/proveedores-registry/tipos.js +15 -0
  1217. package/dist/core/proveedores-registry/tipos.js.map +1 -0
  1218. package/dist/core/provider-attribution.d.ts +24 -2
  1219. package/dist/core/provider-attribution.d.ts.map +1 -1
  1220. package/dist/core/provider-attribution.js +24 -42
  1221. package/dist/core/provider-attribution.js.map +1 -1
  1222. package/dist/core/provider-composer.d.ts.map +1 -1
  1223. package/dist/core/provider-composer.js.map +1 -1
  1224. package/dist/core/radius.d.ts.map +1 -1
  1225. package/dist/core/radius.js.map +1 -1
  1226. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  1227. package/dist/core/remote-catalog-provider.js.map +1 -1
  1228. package/dist/core/remoto/destino.d.ts +38 -0
  1229. package/dist/core/remoto/destino.d.ts.map +1 -0
  1230. package/dist/core/remoto/destino.js +105 -0
  1231. package/dist/core/remoto/destino.js.map +1 -0
  1232. package/dist/core/remoto/ejecutor.d.ts +59 -0
  1233. package/dist/core/remoto/ejecutor.d.ts.map +1 -0
  1234. package/dist/core/remoto/ejecutor.js +225 -0
  1235. package/dist/core/remoto/ejecutor.js.map +1 -0
  1236. package/dist/core/remoto/ficheros.d.ts +29 -0
  1237. package/dist/core/remoto/ficheros.d.ts.map +1 -0
  1238. package/dist/core/remoto/ficheros.js +90 -0
  1239. package/dist/core/remoto/ficheros.js.map +1 -0
  1240. package/dist/core/remoto/registro-extension.d.ts +15 -0
  1241. package/dist/core/remoto/registro-extension.d.ts.map +1 -0
  1242. package/dist/core/remoto/registro-extension.js +17 -0
  1243. package/dist/core/remoto/registro-extension.js.map +1 -0
  1244. package/dist/core/remoto/tools.d.ts +28 -0
  1245. package/dist/core/remoto/tools.d.ts.map +1 -0
  1246. package/dist/core/remoto/tools.js +31 -0
  1247. package/dist/core/remoto/tools.js.map +1 -0
  1248. package/dist/core/reparacion/index.d.ts +2 -0
  1249. package/dist/core/reparacion/index.d.ts.map +1 -0
  1250. package/dist/core/reparacion/index.js +2 -0
  1251. package/dist/core/reparacion/index.js.map +1 -0
  1252. package/dist/core/reparacion/reparar-hunk.d.ts +27 -0
  1253. package/dist/core/reparacion/reparar-hunk.d.ts.map +1 -0
  1254. package/dist/core/reparacion/reparar-hunk.js +139 -0
  1255. package/dist/core/reparacion/reparar-hunk.js.map +1 -0
  1256. package/dist/core/resolve-config-value.d.ts.map +1 -1
  1257. package/dist/core/resolve-config-value.js.map +1 -1
  1258. package/dist/core/resource-loader.d.ts +21 -0
  1259. package/dist/core/resource-loader.d.ts.map +1 -1
  1260. package/dist/core/resource-loader.js +96 -1
  1261. package/dist/core/resource-loader.js.map +1 -1
  1262. package/dist/core/revision/dispositions.d.ts +86 -0
  1263. package/dist/core/revision/dispositions.d.ts.map +1 -0
  1264. package/dist/core/revision/dispositions.js +137 -0
  1265. package/dist/core/revision/dispositions.js.map +1 -0
  1266. package/dist/core/revision/hallazgo.d.ts +51 -0
  1267. package/dist/core/revision/hallazgo.d.ts.map +1 -0
  1268. package/dist/core/revision/hallazgo.js +73 -0
  1269. package/dist/core/revision/hallazgo.js.map +1 -0
  1270. package/dist/core/revision/procedencia.d.ts +63 -0
  1271. package/dist/core/revision/procedencia.d.ts.map +1 -0
  1272. package/dist/core/revision/procedencia.js +72 -0
  1273. package/dist/core/revision/procedencia.js.map +1 -0
  1274. package/dist/core/revision/publicar.d.ts +26 -0
  1275. package/dist/core/revision/publicar.d.ts.map +1 -0
  1276. package/dist/core/revision/publicar.js +34 -0
  1277. package/dist/core/revision/publicar.js.map +1 -0
  1278. package/dist/core/revision/revisor.d.ts +81 -0
  1279. package/dist/core/revision/revisor.d.ts.map +1 -0
  1280. package/dist/core/revision/revisor.js +132 -0
  1281. package/dist/core/revision/revisor.js.map +1 -0
  1282. package/dist/core/revision/sarif.d.ts +30 -0
  1283. package/dist/core/revision/sarif.d.ts.map +1 -0
  1284. package/dist/core/revision/sarif.js +83 -0
  1285. package/dist/core/revision/sarif.js.map +1 -0
  1286. package/dist/core/router-uris/index.d.ts +12 -0
  1287. package/dist/core/router-uris/index.d.ts.map +1 -0
  1288. package/dist/core/router-uris/index.js +12 -0
  1289. package/dist/core/router-uris/index.js.map +1 -0
  1290. package/dist/core/router-uris/router.d.ts +2 -0
  1291. package/dist/core/router-uris/router.d.ts.map +1 -0
  1292. package/dist/core/router-uris/router.js +2 -0
  1293. package/dist/core/router-uris/router.js.map +1 -0
  1294. package/dist/core/runtime-credentials.d.ts.map +1 -1
  1295. package/dist/core/runtime-credentials.js.map +1 -1
  1296. package/dist/core/rutas/envoltorio.d.ts +20 -0
  1297. package/dist/core/rutas/envoltorio.d.ts.map +1 -0
  1298. package/dist/core/rutas/envoltorio.js +48 -0
  1299. package/dist/core/rutas/envoltorio.js.map +1 -0
  1300. package/dist/core/rutas/index.d.ts +11 -0
  1301. package/dist/core/rutas/index.d.ts.map +1 -0
  1302. package/dist/core/rutas/index.js +11 -0
  1303. package/dist/core/rutas/index.js.map +1 -0
  1304. package/dist/core/rutas/router.d.ts +82 -0
  1305. package/dist/core/rutas/router.d.ts.map +1 -0
  1306. package/dist/core/rutas/router.js +161 -0
  1307. package/dist/core/rutas/router.js.map +1 -0
  1308. package/dist/core/scheduler/scheduler.d.ts +87 -0
  1309. package/dist/core/scheduler/scheduler.d.ts.map +1 -0
  1310. package/dist/core/scheduler/scheduler.js +178 -0
  1311. package/dist/core/scheduler/scheduler.js.map +1 -0
  1312. package/dist/core/sdk.d.ts.map +1 -1
  1313. package/dist/core/sdk.js.map +1 -1
  1314. package/dist/core/secretos/extension.d.ts +31 -0
  1315. package/dist/core/secretos/extension.d.ts.map +1 -0
  1316. package/dist/core/secretos/extension.js +64 -0
  1317. package/dist/core/secretos/extension.js.map +1 -0
  1318. package/dist/core/secretos/index.d.ts +75 -0
  1319. package/dist/core/secretos/index.d.ts.map +1 -0
  1320. package/dist/core/secretos/index.js +385 -0
  1321. package/dist/core/secretos/index.js.map +1 -0
  1322. package/dist/core/secretos/message-transform.d.ts +44 -0
  1323. package/dist/core/secretos/message-transform.d.ts.map +1 -0
  1324. package/dist/core/secretos/message-transform.js +246 -0
  1325. package/dist/core/secretos/message-transform.js.map +1 -0
  1326. package/dist/core/secretos/obfuscator.d.ts +30 -0
  1327. package/dist/core/secretos/obfuscator.d.ts.map +1 -0
  1328. package/dist/core/secretos/obfuscator.js +1182 -0
  1329. package/dist/core/secretos/obfuscator.js.map +1 -0
  1330. package/dist/core/secretos/placeholder-scan.d.ts +96 -0
  1331. package/dist/core/secretos/placeholder-scan.d.ts.map +1 -0
  1332. package/dist/core/secretos/placeholder-scan.js +433 -0
  1333. package/dist/core/secretos/placeholder-scan.js.map +1 -0
  1334. package/dist/core/secretos/placeholder.d.ts +95 -0
  1335. package/dist/core/secretos/placeholder.d.ts.map +1 -0
  1336. package/dist/core/secretos/placeholder.js +283 -0
  1337. package/dist/core/secretos/placeholder.js.map +1 -0
  1338. package/dist/core/secretos/regex.d.ts +3 -0
  1339. package/dist/core/secretos/regex.d.ts.map +1 -0
  1340. package/dist/core/secretos/regex.js +19 -0
  1341. package/dist/core/secretos/regex.js.map +1 -0
  1342. package/dist/core/secretos/replacement.d.ts +83 -0
  1343. package/dist/core/secretos/replacement.d.ts.map +1 -0
  1344. package/dist/core/secretos/replacement.js +211 -0
  1345. package/dist/core/secretos/replacement.js.map +1 -0
  1346. package/dist/core/sesion/cerrar-llamadas-abiertas.d.ts +49 -0
  1347. package/dist/core/sesion/cerrar-llamadas-abiertas.d.ts.map +1 -0
  1348. package/dist/core/sesion/cerrar-llamadas-abiertas.js +77 -0
  1349. package/dist/core/sesion/cerrar-llamadas-abiertas.js.map +1 -0
  1350. package/dist/core/sesion/journal-tree.d.ts +73 -0
  1351. package/dist/core/sesion/journal-tree.d.ts.map +1 -0
  1352. package/dist/core/sesion/journal-tree.js +241 -0
  1353. package/dist/core/sesion/journal-tree.js.map +1 -0
  1354. package/dist/core/sesion/turn-recovery.d.ts +48 -0
  1355. package/dist/core/sesion/turn-recovery.d.ts.map +1 -0
  1356. package/dist/core/sesion/turn-recovery.js +182 -0
  1357. package/dist/core/sesion/turn-recovery.js.map +1 -0
  1358. package/dist/core/session-cwd.d.ts.map +1 -1
  1359. package/dist/core/session-cwd.js.map +1 -1
  1360. package/dist/core/session-manager.d.ts.map +1 -1
  1361. package/dist/core/session-manager.js.map +1 -1
  1362. package/dist/core/settings-diagnostics.d.ts.map +1 -1
  1363. package/dist/core/settings-diagnostics.js.map +1 -1
  1364. package/dist/core/settings-manager.d.ts +110 -6
  1365. package/dist/core/settings-manager.d.ts.map +1 -1
  1366. package/dist/core/settings-manager.js +53 -2
  1367. package/dist/core/settings-manager.js.map +1 -1
  1368. package/dist/core/share/cifrado.d.ts +39 -0
  1369. package/dist/core/share/cifrado.d.ts.map +1 -0
  1370. package/dist/core/share/cifrado.js +81 -0
  1371. package/dist/core/share/cifrado.js.map +1 -0
  1372. package/dist/core/share/exportar.d.ts +69 -0
  1373. package/dist/core/share/exportar.d.ts.map +1 -0
  1374. package/dist/core/share/exportar.js +247 -0
  1375. package/dist/core/share/exportar.js.map +1 -0
  1376. package/dist/core/skills.d.ts.map +1 -1
  1377. package/dist/core/skills.js.map +1 -1
  1378. package/dist/core/slash-commands.d.ts.map +1 -1
  1379. package/dist/core/slash-commands.js +3 -3
  1380. package/dist/core/slash-commands.js.map +1 -1
  1381. package/dist/core/source-info.d.ts.map +1 -1
  1382. package/dist/core/source-info.js.map +1 -1
  1383. package/dist/core/stream-guard/guardia.d.ts +45 -0
  1384. package/dist/core/stream-guard/guardia.d.ts.map +1 -0
  1385. package/dist/core/stream-guard/guardia.js +100 -0
  1386. package/dist/core/stream-guard/guardia.js.map +1 -0
  1387. package/dist/core/stream-guard/index.d.ts +9 -0
  1388. package/dist/core/stream-guard/index.d.ts.map +1 -0
  1389. package/dist/core/stream-guard/index.js +7 -0
  1390. package/dist/core/stream-guard/index.js.map +1 -0
  1391. package/dist/core/stream-guard/replay.d.ts +39 -0
  1392. package/dist/core/stream-guard/replay.d.ts.map +1 -0
  1393. package/dist/core/stream-guard/replay.js +68 -0
  1394. package/dist/core/stream-guard/replay.js.map +1 -0
  1395. package/dist/core/system-prompt.d.ts +17 -0
  1396. package/dist/core/system-prompt.d.ts.map +1 -1
  1397. package/dist/core/system-prompt.js +13 -5
  1398. package/dist/core/system-prompt.js.map +1 -1
  1399. package/dist/core/telemetria/otlp.d.ts +122 -0
  1400. package/dist/core/telemetria/otlp.d.ts.map +1 -0
  1401. package/dist/core/telemetria/otlp.js +373 -0
  1402. package/dist/core/telemetria/otlp.js.map +1 -0
  1403. package/dist/core/telemetry/otel-genai.d.ts +44 -0
  1404. package/dist/core/telemetry/otel-genai.d.ts.map +1 -0
  1405. package/dist/core/telemetry/otel-genai.js +124 -0
  1406. package/dist/core/telemetry/otel-genai.js.map +1 -0
  1407. package/dist/core/telemetry.d.ts.map +1 -1
  1408. package/dist/core/telemetry.js.map +1 -1
  1409. package/dist/core/terminal/backlog-guard.d.ts +53 -0
  1410. package/dist/core/terminal/backlog-guard.d.ts.map +1 -0
  1411. package/dist/core/terminal/backlog-guard.js +122 -0
  1412. package/dist/core/terminal/backlog-guard.js.map +1 -0
  1413. package/dist/core/terminal/conpty.d.ts +29 -0
  1414. package/dist/core/terminal/conpty.d.ts.map +1 -0
  1415. package/dist/core/terminal/conpty.js +67 -0
  1416. package/dist/core/terminal/conpty.js.map +1 -0
  1417. package/dist/core/terminal/conptyChunking.d.ts +2 -0
  1418. package/dist/core/terminal/conptyChunking.d.ts.map +1 -0
  1419. package/dist/core/terminal/conptyChunking.js +2 -0
  1420. package/dist/core/terminal/conptyChunking.js.map +1 -0
  1421. package/dist/core/terminal/index.d.ts +5 -0
  1422. package/dist/core/terminal/index.d.ts.map +1 -0
  1423. package/dist/core/terminal/index.js +5 -0
  1424. package/dist/core/terminal/index.js.map +1 -0
  1425. package/dist/core/terminal/loop-watchdog.d.ts +43 -0
  1426. package/dist/core/terminal/loop-watchdog.d.ts.map +1 -0
  1427. package/dist/core/terminal/loop-watchdog.js +117 -0
  1428. package/dist/core/terminal/loop-watchdog.js.map +1 -0
  1429. package/dist/core/terminal/runner.d.ts +55 -0
  1430. package/dist/core/terminal/runner.d.ts.map +1 -0
  1431. package/dist/core/terminal/runner.js +102 -0
  1432. package/dist/core/terminal/runner.js.map +1 -0
  1433. package/dist/core/timings.d.ts.map +1 -1
  1434. package/dist/core/timings.js.map +1 -1
  1435. package/dist/core/tools/apply_patch.d.ts +29 -0
  1436. package/dist/core/tools/apply_patch.d.ts.map +1 -0
  1437. package/dist/core/tools/apply_patch.js +54 -0
  1438. package/dist/core/tools/apply_patch.js.map +1 -0
  1439. package/dist/core/tools/bash.d.ts.map +1 -1
  1440. package/dist/core/tools/bash.js.map +1 -1
  1441. package/dist/core/tools/coercion-argumentos.d.ts +48 -0
  1442. package/dist/core/tools/coercion-argumentos.d.ts.map +1 -0
  1443. package/dist/core/tools/coercion-argumentos.js +99 -0
  1444. package/dist/core/tools/coercion-argumentos.js.map +1 -0
  1445. package/dist/core/tools/edit-diff.d.ts +0 -7
  1446. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  1447. package/dist/core/tools/edit-diff.js +232 -7
  1448. package/dist/core/tools/edit-diff.js.map +1 -1
  1449. package/dist/core/tools/edit.d.ts.map +1 -1
  1450. package/dist/core/tools/edit.js +51 -2
  1451. package/dist/core/tools/edit.js.map +1 -1
  1452. package/dist/core/tools/file-mutation-queue.d.ts.map +1 -1
  1453. package/dist/core/tools/file-mutation-queue.js +5 -0
  1454. package/dist/core/tools/file-mutation-queue.js.map +1 -1
  1455. package/dist/core/tools/find.d.ts.map +1 -1
  1456. package/dist/core/tools/find.js.map +1 -1
  1457. package/dist/core/tools/grep.d.ts.map +1 -1
  1458. package/dist/core/tools/grep.js.map +1 -1
  1459. package/dist/core/tools/index.d.ts.map +1 -1
  1460. package/dist/core/tools/index.js.map +1 -1
  1461. package/dist/core/tools/json-tolerante.d.ts +30 -0
  1462. package/dist/core/tools/json-tolerante.d.ts.map +1 -0
  1463. package/dist/core/tools/json-tolerante.js +70 -0
  1464. package/dist/core/tools/json-tolerante.js.map +1 -0
  1465. package/dist/core/tools/ls.d.ts.map +1 -1
  1466. package/dist/core/tools/ls.js.map +1 -1
  1467. package/dist/core/tools/noop-loop-guard.d.ts +46 -0
  1468. package/dist/core/tools/noop-loop-guard.d.ts.map +1 -0
  1469. package/dist/core/tools/noop-loop-guard.js +57 -0
  1470. package/dist/core/tools/noop-loop-guard.js.map +1 -0
  1471. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  1472. package/dist/core/tools/output-accumulator.js.map +1 -1
  1473. package/dist/core/tools/path-utils.d.ts.map +1 -1
  1474. package/dist/core/tools/path-utils.js.map +1 -1
  1475. package/dist/core/tools/project-memory-tool.d.ts.map +1 -1
  1476. package/dist/core/tools/project-memory-tool.js.map +1 -1
  1477. package/dist/core/tools/read.d.ts.map +1 -1
  1478. package/dist/core/tools/read.js +17 -0
  1479. package/dist/core/tools/read.js.map +1 -1
  1480. package/dist/core/tools/render-utils.d.ts.map +1 -1
  1481. package/dist/core/tools/render-utils.js.map +1 -1
  1482. package/dist/core/tools/tool-definition-wrapper.d.ts +14 -1
  1483. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  1484. package/dist/core/tools/tool-definition-wrapper.js +17 -1
  1485. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  1486. package/dist/core/tools/truncate.d.ts.map +1 -1
  1487. package/dist/core/tools/truncate.js.map +1 -1
  1488. package/dist/core/tools/write.d.ts.map +1 -1
  1489. package/dist/core/tools/write.js.map +1 -1
  1490. package/dist/core/trust-manager.d.ts.map +1 -1
  1491. package/dist/core/trust-manager.js.map +1 -1
  1492. package/dist/core/ttsr/captura.d.ts +72 -0
  1493. package/dist/core/ttsr/captura.d.ts.map +1 -0
  1494. package/dist/core/ttsr/captura.js +183 -0
  1495. package/dist/core/ttsr/captura.js.map +1 -0
  1496. package/dist/core/ttsr/index.d.ts +24 -0
  1497. package/dist/core/ttsr/index.d.ts.map +1 -0
  1498. package/dist/core/ttsr/index.js +57 -0
  1499. package/dist/core/ttsr/index.js.map +1 -0
  1500. package/dist/core/ttsr/preview.d.ts +48 -0
  1501. package/dist/core/ttsr/preview.d.ts.map +1 -0
  1502. package/dist/core/ttsr/preview.js +83 -0
  1503. package/dist/core/ttsr/preview.js.map +1 -0
  1504. package/dist/core/turno-vacio/detectar.d.ts +38 -0
  1505. package/dist/core/turno-vacio/detectar.d.ts.map +1 -0
  1506. package/dist/core/turno-vacio/detectar.js +66 -0
  1507. package/dist/core/turno-vacio/detectar.js.map +1 -0
  1508. package/dist/core/undo/journal.d.ts +57 -0
  1509. package/dist/core/undo/journal.d.ts.map +1 -0
  1510. package/dist/core/undo/journal.js +178 -0
  1511. package/dist/core/undo/journal.js.map +1 -0
  1512. package/dist/core/urls-internas/auditoria.d.ts +10 -0
  1513. package/dist/core/urls-internas/auditoria.d.ts.map +1 -0
  1514. package/dist/core/urls-internas/auditoria.js +42 -0
  1515. package/dist/core/urls-internas/auditoria.js.map +1 -0
  1516. package/dist/core/urls-internas/boveda.d.ts +13 -0
  1517. package/dist/core/urls-internas/boveda.d.ts.map +1 -0
  1518. package/dist/core/urls-internas/boveda.js +40 -0
  1519. package/dist/core/urls-internas/boveda.js.map +1 -0
  1520. package/dist/core/urls-internas/lector.d.ts +34 -0
  1521. package/dist/core/urls-internas/lector.d.ts.map +1 -0
  1522. package/dist/core/urls-internas/lector.js +70 -0
  1523. package/dist/core/urls-internas/lector.js.map +1 -0
  1524. package/dist/core/urls-internas/memoria.d.ts +11 -0
  1525. package/dist/core/urls-internas/memoria.d.ts.map +1 -0
  1526. package/dist/core/urls-internas/memoria.js +25 -0
  1527. package/dist/core/urls-internas/memoria.js.map +1 -0
  1528. package/dist/core/urls-internas/parse.d.ts +21 -0
  1529. package/dist/core/urls-internas/parse.d.ts.map +1 -0
  1530. package/dist/core/urls-internas/parse.js +21 -0
  1531. package/dist/core/urls-internas/parse.js.map +1 -0
  1532. package/dist/core/urls-internas/reglas.d.ts +10 -0
  1533. package/dist/core/urls-internas/reglas.d.ts.map +1 -0
  1534. package/dist/core/urls-internas/reglas.js +31 -0
  1535. package/dist/core/urls-internas/reglas.js.map +1 -0
  1536. package/dist/core/usage/aggregate.d.ts +69 -0
  1537. package/dist/core/usage/aggregate.d.ts.map +1 -0
  1538. package/dist/core/usage/aggregate.js +93 -0
  1539. package/dist/core/usage/aggregate.js.map +1 -0
  1540. package/dist/core/usage/cuota/anthropic.d.ts +10 -0
  1541. package/dist/core/usage/cuota/anthropic.d.ts.map +1 -0
  1542. package/dist/core/usage/cuota/anthropic.js +63 -0
  1543. package/dist/core/usage/cuota/anthropic.js.map +1 -0
  1544. package/dist/core/usage/cuota/cache.d.ts +20 -0
  1545. package/dist/core/usage/cuota/cache.d.ts.map +1 -0
  1546. package/dist/core/usage/cuota/cache.js +36 -0
  1547. package/dist/core/usage/cuota/cache.js.map +1 -0
  1548. package/dist/core/usage/cuota/github-copilot.d.ts +9 -0
  1549. package/dist/core/usage/cuota/github-copilot.d.ts.map +1 -0
  1550. package/dist/core/usage/cuota/github-copilot.js +67 -0
  1551. package/dist/core/usage/cuota/github-copilot.js.map +1 -0
  1552. package/dist/core/usage/cuota/google-gemini.d.ts +9 -0
  1553. package/dist/core/usage/cuota/google-gemini.d.ts.map +1 -0
  1554. package/dist/core/usage/cuota/google-gemini.js +72 -0
  1555. package/dist/core/usage/cuota/google-gemini.js.map +1 -0
  1556. package/dist/core/usage/cuota/index.d.ts +25 -0
  1557. package/dist/core/usage/cuota/index.d.ts.map +1 -0
  1558. package/dist/core/usage/cuota/index.js +50 -0
  1559. package/dist/core/usage/cuota/index.js.map +1 -0
  1560. package/dist/core/usage/cuota/openai-codex.d.ts +9 -0
  1561. package/dist/core/usage/cuota/openai-codex.d.ts.map +1 -0
  1562. package/dist/core/usage/cuota/openai-codex.js +59 -0
  1563. package/dist/core/usage/cuota/openai-codex.js.map +1 -0
  1564. package/dist/core/usage/cuota/openrouter.d.ts +10 -0
  1565. package/dist/core/usage/cuota/openrouter.d.ts.map +1 -0
  1566. package/dist/core/usage/cuota/openrouter.js +47 -0
  1567. package/dist/core/usage/cuota/openrouter.js.map +1 -0
  1568. package/dist/core/usage/cuota/tipos.d.ts +50 -0
  1569. package/dist/core/usage/cuota/tipos.d.ts.map +1 -0
  1570. package/dist/core/usage/cuota/tipos.js +25 -0
  1571. package/dist/core/usage/cuota/tipos.js.map +1 -0
  1572. package/dist/core/usage/index.d.ts +11 -0
  1573. package/dist/core/usage/index.d.ts.map +1 -0
  1574. package/dist/core/usage/index.js +11 -0
  1575. package/dist/core/usage/index.js.map +1 -0
  1576. package/dist/core/usage/multi.d.ts +62 -0
  1577. package/dist/core/usage/multi.d.ts.map +1 -0
  1578. package/dist/core/usage/multi.js +122 -0
  1579. package/dist/core/usage/multi.js.map +1 -0
  1580. package/dist/core/usage/redaccion.d.ts +48 -0
  1581. package/dist/core/usage/redaccion.d.ts.map +1 -0
  1582. package/dist/core/usage/redaccion.js +72 -0
  1583. package/dist/core/usage/redaccion.js.map +1 -0
  1584. package/dist/core/usage-totals.d.ts.map +1 -1
  1585. package/dist/core/usage-totals.js.map +1 -1
  1586. package/dist/core/utils/atomic-write.d.ts +55 -0
  1587. package/dist/core/utils/atomic-write.d.ts.map +1 -0
  1588. package/dist/core/utils/atomic-write.js +293 -0
  1589. package/dist/core/utils/atomic-write.js.map +1 -0
  1590. package/dist/core/utils/git.d.ts +24 -0
  1591. package/dist/core/utils/git.d.ts.map +1 -0
  1592. package/dist/core/utils/git.js +107 -0
  1593. package/dist/core/utils/git.js.map +1 -0
  1594. package/dist/core/utils/logger.d.ts +26 -0
  1595. package/dist/core/utils/logger.d.ts.map +1 -0
  1596. package/dist/core/utils/logger.js +104 -0
  1597. package/dist/core/utils/logger.js.map +1 -0
  1598. package/dist/core/utils/shell-snapshot.d.ts +21 -0
  1599. package/dist/core/utils/shell-snapshot.d.ts.map +1 -0
  1600. package/dist/core/utils/shell-snapshot.js +32 -0
  1601. package/dist/core/utils/shell-snapshot.js.map +1 -0
  1602. package/dist/core/utils/startup-watchdog.d.ts +11 -0
  1603. package/dist/core/utils/startup-watchdog.d.ts.map +1 -0
  1604. package/dist/core/utils/startup-watchdog.js +34 -0
  1605. package/dist/core/utils/startup-watchdog.js.map +1 -0
  1606. package/dist/core/utils/tls-ca-shim.d.ts +17 -0
  1607. package/dist/core/utils/tls-ca-shim.d.ts.map +1 -0
  1608. package/dist/core/utils/tls-ca-shim.js +33 -0
  1609. package/dist/core/utils/tls-ca-shim.js.map +1 -0
  1610. package/dist/core/web/agregador.d.ts +67 -0
  1611. package/dist/core/web/agregador.d.ts.map +1 -0
  1612. package/dist/core/web/agregador.js +182 -0
  1613. package/dist/core/web/agregador.js.map +1 -0
  1614. package/dist/core/web/busqueda-nativa.d.ts +82 -0
  1615. package/dist/core/web/busqueda-nativa.d.ts.map +1 -0
  1616. package/dist/core/web/busqueda-nativa.js +163 -0
  1617. package/dist/core/web/busqueda-nativa.js.map +1 -0
  1618. package/dist/core/web/consulta.d.ts +53 -0
  1619. package/dist/core/web/consulta.d.ts.map +1 -0
  1620. package/dist/core/web/consulta.js +213 -0
  1621. package/dist/core/web/consulta.js.map +1 -0
  1622. package/dist/core/web/destino.d.ts +69 -0
  1623. package/dist/core/web/destino.d.ts.map +1 -0
  1624. package/dist/core/web/destino.js +162 -0
  1625. package/dist/core/web/destino.js.map +1 -0
  1626. package/dist/core/web/load-page.d.ts +52 -0
  1627. package/dist/core/web/load-page.d.ts.map +1 -0
  1628. package/dist/core/web/load-page.js +221 -0
  1629. package/dist/core/web/load-page.js.map +1 -0
  1630. package/dist/core/web/proveedores/brave.d.ts +6 -0
  1631. package/dist/core/web/proveedores/brave.d.ts.map +1 -0
  1632. package/dist/core/web/proveedores/brave.js +20 -0
  1633. package/dist/core/web/proveedores/brave.js.map +1 -0
  1634. package/dist/core/web/proveedores/claves.d.ts +19 -0
  1635. package/dist/core/web/proveedores/claves.d.ts.map +1 -0
  1636. package/dist/core/web/proveedores/claves.js +36 -0
  1637. package/dist/core/web/proveedores/claves.js.map +1 -0
  1638. package/dist/core/web/proveedores/duckduckgo.d.ts +3 -0
  1639. package/dist/core/web/proveedores/duckduckgo.d.ts.map +1 -0
  1640. package/dist/core/web/proveedores/duckduckgo.js +109 -0
  1641. package/dist/core/web/proveedores/duckduckgo.js.map +1 -0
  1642. package/dist/core/web/proveedores/ecosia.d.ts +3 -0
  1643. package/dist/core/web/proveedores/ecosia.d.ts.map +1 -0
  1644. package/dist/core/web/proveedores/ecosia.js +72 -0
  1645. package/dist/core/web/proveedores/ecosia.js.map +1 -0
  1646. package/dist/core/web/proveedores/exa.d.ts +6 -0
  1647. package/dist/core/web/proveedores/exa.d.ts.map +1 -0
  1648. package/dist/core/web/proveedores/exa.js +24 -0
  1649. package/dist/core/web/proveedores/exa.js.map +1 -0
  1650. package/dist/core/web/proveedores/mojeek.d.ts +3 -0
  1651. package/dist/core/web/proveedores/mojeek.d.ts.map +1 -0
  1652. package/dist/core/web/proveedores/mojeek.js +65 -0
  1653. package/dist/core/web/proveedores/mojeek.js.map +1 -0
  1654. package/dist/core/web/proveedores/navegador.d.ts +10 -0
  1655. package/dist/core/web/proveedores/navegador.d.ts.map +1 -0
  1656. package/dist/core/web/proveedores/navegador.js +13 -0
  1657. package/dist/core/web/proveedores/navegador.js.map +1 -0
  1658. package/dist/core/web/proveedores/registro.d.ts +43 -0
  1659. package/dist/core/web/proveedores/registro.d.ts.map +1 -0
  1660. package/dist/core/web/proveedores/registro.js +49 -0
  1661. package/dist/core/web/proveedores/registro.js.map +1 -0
  1662. package/dist/core/web/proveedores/searxng.d.ts +9 -0
  1663. package/dist/core/web/proveedores/searxng.d.ts.map +1 -0
  1664. package/dist/core/web/proveedores/searxng.js +17 -0
  1665. package/dist/core/web/proveedores/searxng.js.map +1 -0
  1666. package/dist/core/web/proveedores/serper.d.ts +9 -0
  1667. package/dist/core/web/proveedores/serper.d.ts.map +1 -0
  1668. package/dist/core/web/proveedores/serper.js +19 -0
  1669. package/dist/core/web/proveedores/serper.js.map +1 -0
  1670. package/dist/core/web/proveedores/tavily.d.ts +6 -0
  1671. package/dist/core/web/proveedores/tavily.d.ts.map +1 -0
  1672. package/dist/core/web/proveedores/tavily.js +19 -0
  1673. package/dist/core/web/proveedores/tavily.js.map +1 -0
  1674. package/dist/core/web/proveedores/tipos.d.ts +36 -0
  1675. package/dist/core/web/proveedores/tipos.d.ts.map +1 -0
  1676. package/dist/core/web/proveedores/tipos.js +10 -0
  1677. package/dist/core/web/proveedores/tipos.js.map +1 -0
  1678. package/dist/core/web/registro-red.d.ts +43 -0
  1679. package/dist/core/web/registro-red.d.ts.map +1 -0
  1680. package/dist/core/web/registro-red.js +86 -0
  1681. package/dist/core/web/registro-red.js.map +1 -0
  1682. package/dist/core/web/scrapers/cisa-kev.d.ts +10 -0
  1683. package/dist/core/web/scrapers/cisa-kev.d.ts.map +1 -0
  1684. package/dist/core/web/scrapers/cisa-kev.js +38 -0
  1685. package/dist/core/web/scrapers/cisa-kev.js.map +1 -0
  1686. package/dist/core/web/scrapers/crates-io.d.ts +11 -0
  1687. package/dist/core/web/scrapers/crates-io.d.ts.map +1 -0
  1688. package/dist/core/web/scrapers/crates-io.js +29 -0
  1689. package/dist/core/web/scrapers/crates-io.js.map +1 -0
  1690. package/dist/core/web/scrapers/docs-rs.d.ts +10 -0
  1691. package/dist/core/web/scrapers/docs-rs.d.ts.map +1 -0
  1692. package/dist/core/web/scrapers/docs-rs.js +35 -0
  1693. package/dist/core/web/scrapers/docs-rs.js.map +1 -0
  1694. package/dist/core/web/scrapers/github.d.ts +3 -0
  1695. package/dist/core/web/scrapers/github.d.ts.map +1 -0
  1696. package/dist/core/web/scrapers/github.js +72 -0
  1697. package/dist/core/web/scrapers/github.js.map +1 -0
  1698. package/dist/core/web/scrapers/go-pkg.d.ts +7 -0
  1699. package/dist/core/web/scrapers/go-pkg.d.ts.map +1 -0
  1700. package/dist/core/web/scrapers/go-pkg.js +30 -0
  1701. package/dist/core/web/scrapers/go-pkg.js.map +1 -0
  1702. package/dist/core/web/scrapers/hex.d.ts +6 -0
  1703. package/dist/core/web/scrapers/hex.d.ts.map +1 -0
  1704. package/dist/core/web/scrapers/hex.js +27 -0
  1705. package/dist/core/web/scrapers/hex.js.map +1 -0
  1706. package/dist/core/web/scrapers/maven.d.ts +8 -0
  1707. package/dist/core/web/scrapers/maven.d.ts.map +1 -0
  1708. package/dist/core/web/scrapers/maven.js +41 -0
  1709. package/dist/core/web/scrapers/maven.js.map +1 -0
  1710. package/dist/core/web/scrapers/mdn.d.ts +6 -0
  1711. package/dist/core/web/scrapers/mdn.d.ts.map +1 -0
  1712. package/dist/core/web/scrapers/mdn.js +28 -0
  1713. package/dist/core/web/scrapers/mdn.js.map +1 -0
  1714. package/dist/core/web/scrapers/npm.d.ts +11 -0
  1715. package/dist/core/web/scrapers/npm.d.ts.map +1 -0
  1716. package/dist/core/web/scrapers/npm.js +57 -0
  1717. package/dist/core/web/scrapers/npm.js.map +1 -0
  1718. package/dist/core/web/scrapers/nuget.d.ts +8 -0
  1719. package/dist/core/web/scrapers/nuget.d.ts.map +1 -0
  1720. package/dist/core/web/scrapers/nuget.js +22 -0
  1721. package/dist/core/web/scrapers/nuget.js.map +1 -0
  1722. package/dist/core/web/scrapers/nvd.d.ts +7 -0
  1723. package/dist/core/web/scrapers/nvd.d.ts.map +1 -0
  1724. package/dist/core/web/scrapers/nvd.js +37 -0
  1725. package/dist/core/web/scrapers/nvd.js.map +1 -0
  1726. package/dist/core/web/scrapers/pypi.d.ts +6 -0
  1727. package/dist/core/web/scrapers/pypi.d.ts.map +1 -0
  1728. package/dist/core/web/scrapers/pypi.js +31 -0
  1729. package/dist/core/web/scrapers/pypi.js.map +1 -0
  1730. package/dist/core/web/scrapers/registro.d.ts +13 -0
  1731. package/dist/core/web/scrapers/registro.d.ts.map +1 -0
  1732. package/dist/core/web/scrapers/registro.js +65 -0
  1733. package/dist/core/web/scrapers/registro.js.map +1 -0
  1734. package/dist/core/web/scrapers/rubygems.d.ts +6 -0
  1735. package/dist/core/web/scrapers/rubygems.d.ts.map +1 -0
  1736. package/dist/core/web/scrapers/rubygems.js +23 -0
  1737. package/dist/core/web/scrapers/rubygems.js.map +1 -0
  1738. package/dist/core/web/scrapers/stackoverflow.d.ts +3 -0
  1739. package/dist/core/web/scrapers/stackoverflow.d.ts.map +1 -0
  1740. package/dist/core/web/scrapers/stackoverflow.js +46 -0
  1741. package/dist/core/web/scrapers/stackoverflow.js.map +1 -0
  1742. package/dist/core/web/scrapers/tipos.d.ts +42 -0
  1743. package/dist/core/web/scrapers/tipos.d.ts.map +1 -0
  1744. package/dist/core/web/scrapers/tipos.js +23 -0
  1745. package/dist/core/web/scrapers/tipos.js.map +1 -0
  1746. package/dist/core/web/texto.d.ts +10 -0
  1747. package/dist/core/web/texto.d.ts.map +1 -0
  1748. package/dist/core/web/texto.js +26 -0
  1749. package/dist/core/web/texto.js.map +1 -0
  1750. package/dist/core/web/tools.d.ts +84 -0
  1751. package/dist/core/web/tools.d.ts.map +1 -0
  1752. package/dist/core/web/tools.js +273 -0
  1753. package/dist/core/web/tools.js.map +1 -0
  1754. package/dist/core/wiki/almacen.d.ts +33 -0
  1755. package/dist/core/wiki/almacen.d.ts.map +1 -0
  1756. package/dist/core/wiki/almacen.js +93 -0
  1757. package/dist/core/wiki/almacen.js.map +1 -0
  1758. package/dist/core/wiki/citas.d.ts +111 -0
  1759. package/dist/core/wiki/citas.d.ts.map +1 -0
  1760. package/dist/core/wiki/citas.js +146 -0
  1761. package/dist/core/wiki/citas.js.map +1 -0
  1762. package/dist/core/workflows/agent-runner.d.ts +2 -0
  1763. package/dist/core/workflows/agent-runner.d.ts.map +1 -1
  1764. package/dist/core/workflows/agent-runner.js +131 -44
  1765. package/dist/core/workflows/agent-runner.js.map +1 -1
  1766. package/dist/core/workflows/builtins.d.ts.map +1 -1
  1767. package/dist/core/workflows/builtins.js +1 -0
  1768. package/dist/core/workflows/builtins.js.map +1 -1
  1769. package/dist/core/workflows/contrato/esquema.d.ts +32 -0
  1770. package/dist/core/workflows/contrato/esquema.d.ts.map +1 -0
  1771. package/dist/core/workflows/contrato/esquema.js +25 -0
  1772. package/dist/core/workflows/contrato/esquema.js.map +1 -0
  1773. package/dist/core/workflows/contrato/reparar-argumentos.d.ts +69 -0
  1774. package/dist/core/workflows/contrato/reparar-argumentos.d.ts.map +1 -0
  1775. package/dist/core/workflows/contrato/reparar-argumentos.js +117 -0
  1776. package/dist/core/workflows/contrato/reparar-argumentos.js.map +1 -0
  1777. package/dist/core/workflows/contrato/validador.d.ts +30 -0
  1778. package/dist/core/workflows/contrato/validador.d.ts.map +1 -0
  1779. package/dist/core/workflows/contrato/validador.js +56 -0
  1780. package/dist/core/workflows/contrato/validador.js.map +1 -0
  1781. package/dist/core/workflows/contrato/yield.d.ts +65 -0
  1782. package/dist/core/workflows/contrato/yield.d.ts.map +1 -0
  1783. package/dist/core/workflows/contrato/yield.js +80 -0
  1784. package/dist/core/workflows/contrato/yield.js.map +1 -0
  1785. package/dist/core/workflows/goal-engine/engine.d.ts +22 -0
  1786. package/dist/core/workflows/goal-engine/engine.d.ts.map +1 -1
  1787. package/dist/core/workflows/goal-engine/engine.js +41 -0
  1788. package/dist/core/workflows/goal-engine/engine.js.map +1 -1
  1789. package/dist/core/workflows/goal-engine/errors.d.ts.map +1 -1
  1790. package/dist/core/workflows/goal-engine/errors.js.map +1 -1
  1791. package/dist/core/workflows/goal-engine/index.d.ts.map +1 -1
  1792. package/dist/core/workflows/goal-engine/index.js.map +1 -1
  1793. package/dist/core/workflows/goal-engine/persistence.d.ts.map +1 -1
  1794. package/dist/core/workflows/goal-engine/persistence.js.map +1 -1
  1795. package/dist/core/workflows/goal-engine/prompts.d.ts.map +1 -1
  1796. package/dist/core/workflows/goal-engine/prompts.js.map +1 -1
  1797. package/dist/core/workflows/goal-engine/state.d.ts.map +1 -1
  1798. package/dist/core/workflows/goal-engine/state.js.map +1 -1
  1799. package/dist/core/workflows/goal-engine/tools.d.ts.map +1 -1
  1800. package/dist/core/workflows/goal-engine/tools.js.map +1 -1
  1801. package/dist/core/workflows/goal-engine/types.d.ts.map +1 -1
  1802. package/dist/core/workflows/goal-engine/types.js.map +1 -1
  1803. package/dist/core/workflows/goal-engine/worktree-fingerprint.d.ts.map +1 -1
  1804. package/dist/core/workflows/goal-engine/worktree-fingerprint.js.map +1 -1
  1805. package/dist/core/workflows/graph-sync.d.ts.map +1 -1
  1806. package/dist/core/workflows/graph-sync.js.map +1 -1
  1807. package/dist/core/workflows/graph.d.ts.map +1 -1
  1808. package/dist/core/workflows/graph.js.map +1 -1
  1809. package/dist/core/workflows/index.d.ts +14 -0
  1810. package/dist/core/workflows/index.d.ts.map +1 -1
  1811. package/dist/core/workflows/index.js +7 -0
  1812. package/dist/core/workflows/index.js.map +1 -1
  1813. package/dist/core/workflows/journal.d.ts.map +1 -1
  1814. package/dist/core/workflows/journal.js.map +1 -1
  1815. package/dist/core/workflows/manager.d.ts +10 -0
  1816. package/dist/core/workflows/manager.d.ts.map +1 -1
  1817. package/dist/core/workflows/manager.js +35 -11
  1818. package/dist/core/workflows/manager.js.map +1 -1
  1819. package/dist/core/workflows/provider-caps.d.ts +103 -0
  1820. package/dist/core/workflows/provider-caps.d.ts.map +1 -0
  1821. package/dist/core/workflows/provider-caps.js +235 -0
  1822. package/dist/core/workflows/provider-caps.js.map +1 -0
  1823. package/dist/core/workflows/resolve-script.d.ts.map +1 -1
  1824. package/dist/core/workflows/resolve-script.js.map +1 -1
  1825. package/dist/core/workflows/runtime.d.ts +13 -0
  1826. package/dist/core/workflows/runtime.d.ts.map +1 -1
  1827. package/dist/core/workflows/runtime.js +80 -1
  1828. package/dist/core/workflows/runtime.js.map +1 -1
  1829. package/dist/core/workflows/save-as-skill.d.ts +27 -0
  1830. package/dist/core/workflows/save-as-skill.d.ts.map +1 -0
  1831. package/dist/core/workflows/save-as-skill.js +54 -0
  1832. package/dist/core/workflows/save-as-skill.js.map +1 -0
  1833. package/dist/core/workflows/shared-store.d.ts.map +1 -1
  1834. package/dist/core/workflows/shared-store.js.map +1 -1
  1835. package/dist/core/workflows/soft-budget.d.ts +27 -0
  1836. package/dist/core/workflows/soft-budget.d.ts.map +1 -0
  1837. package/dist/core/workflows/soft-budget.js +47 -0
  1838. package/dist/core/workflows/soft-budget.js.map +1 -0
  1839. package/dist/core/workflows/subagent-host.d.ts.map +1 -1
  1840. package/dist/core/workflows/subagent-host.js.map +1 -1
  1841. package/dist/core/workflows/tool-scheduling.d.ts +47 -0
  1842. package/dist/core/workflows/tool-scheduling.d.ts.map +1 -0
  1843. package/dist/core/workflows/tool-scheduling.js +102 -0
  1844. package/dist/core/workflows/tool-scheduling.js.map +1 -0
  1845. package/dist/core/workflows/tool-workflow.d.ts.map +1 -1
  1846. package/dist/core/workflows/tool-workflow.js.map +1 -1
  1847. package/dist/core/workflows/types.d.ts +49 -0
  1848. package/dist/core/workflows/types.d.ts.map +1 -1
  1849. package/dist/core/workflows/types.js.map +1 -1
  1850. package/dist/core/workflows/worktree.d.ts.map +1 -1
  1851. package/dist/core/workflows/worktree.js.map +1 -1
  1852. package/dist/extensions/index.d.ts.map +1 -1
  1853. package/dist/extensions/index.js.map +1 -1
  1854. package/dist/extensions/llama/client.d.ts.map +1 -1
  1855. package/dist/extensions/llama/client.js.map +1 -1
  1856. package/dist/extensions/llama/huggingface.d.ts.map +1 -1
  1857. package/dist/extensions/llama/huggingface.js.map +1 -1
  1858. package/dist/extensions/llama/index.d.ts.map +1 -1
  1859. package/dist/extensions/llama/index.js.map +1 -1
  1860. package/dist/extensions/llama/provider.d.ts.map +1 -1
  1861. package/dist/extensions/llama/provider.js.map +1 -1
  1862. package/dist/extensions/llama/ui.d.ts.map +1 -1
  1863. package/dist/extensions/llama/ui.js.map +1 -1
  1864. package/dist/extensions/remoto/index.d.ts +22 -0
  1865. package/dist/extensions/remoto/index.d.ts.map +1 -0
  1866. package/dist/extensions/remoto/index.js +54 -0
  1867. package/dist/extensions/remoto/index.js.map +1 -0
  1868. package/dist/index.d.ts +1 -17
  1869. package/dist/index.d.ts.map +1 -1
  1870. package/dist/index.js +7 -16
  1871. package/dist/index.js.map +1 -1
  1872. package/dist/main.d.ts.map +1 -1
  1873. package/dist/main.js +77 -3
  1874. package/dist/main.js.map +1 -1
  1875. package/dist/migrations.d.ts.map +1 -1
  1876. package/dist/migrations.js.map +1 -1
  1877. package/dist/modes/acp/acp-mode.d.ts +42 -0
  1878. package/dist/modes/acp/acp-mode.d.ts.map +1 -0
  1879. package/dist/modes/acp/acp-mode.js +190 -0
  1880. package/dist/modes/acp/acp-mode.js.map +1 -0
  1881. package/dist/modes/acp/events.d.ts +74 -0
  1882. package/dist/modes/acp/events.d.ts.map +1 -0
  1883. package/dist/modes/acp/events.js +116 -0
  1884. package/dist/modes/acp/events.js.map +1 -0
  1885. package/dist/modes/index.d.ts.map +1 -1
  1886. package/dist/modes/index.js.map +1 -1
  1887. package/dist/modes/interactive/components/armin.d.ts.map +1 -1
  1888. package/dist/modes/interactive/components/armin.js.map +1 -1
  1889. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  1890. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  1891. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  1892. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  1893. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  1894. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  1895. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  1896. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  1897. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  1898. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  1899. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  1900. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  1901. package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
  1902. package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
  1903. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  1904. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  1905. package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
  1906. package/dist/modes/interactive/components/custom-entry.js.map +1 -1
  1907. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  1908. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  1909. package/dist/modes/interactive/components/daxnuts.d.ts.map +1 -1
  1910. package/dist/modes/interactive/components/daxnuts.js.map +1 -1
  1911. package/dist/modes/interactive/components/diff.d.ts.map +1 -1
  1912. package/dist/modes/interactive/components/diff.js.map +1 -1
  1913. package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
  1914. package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
  1915. package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
  1916. package/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
  1917. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  1918. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  1919. package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
  1920. package/dist/modes/interactive/components/extension-input.js.map +1 -1
  1921. package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
  1922. package/dist/modes/interactive/components/extension-selector.js.map +1 -1
  1923. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
  1924. package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
  1925. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  1926. package/dist/modes/interactive/components/footer.js.map +1 -1
  1927. package/dist/modes/interactive/components/home-screen.d.ts +2 -0
  1928. package/dist/modes/interactive/components/home-screen.d.ts.map +1 -1
  1929. package/dist/modes/interactive/components/home-screen.js +5 -6
  1930. package/dist/modes/interactive/components/home-screen.js.map +1 -1
  1931. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  1932. package/dist/modes/interactive/components/index.js.map +1 -1
  1933. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  1934. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  1935. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  1936. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  1937. package/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -1
  1938. package/dist/modes/interactive/components/markdown-transform.js.map +1 -1
  1939. package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
  1940. package/dist/modes/interactive/components/mermaid.js.map +1 -1
  1941. package/dist/modes/interactive/components/model-selector.d.ts +8 -1
  1942. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  1943. package/dist/modes/interactive/components/model-selector.js +41 -7
  1944. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  1945. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  1946. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  1947. package/dist/modes/interactive/components/prompt-optimization.d.ts.map +1 -1
  1948. package/dist/modes/interactive/components/prompt-optimization.js.map +1 -1
  1949. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  1950. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  1951. package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
  1952. package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
  1953. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  1954. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  1955. package/dist/modes/interactive/components/settings-selector.d.ts +1 -2
  1956. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  1957. package/dist/modes/interactive/components/settings-selector.js +9 -86
  1958. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  1959. package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
  1960. package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
  1961. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  1962. package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  1963. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  1964. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  1965. package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
  1966. package/dist/modes/interactive/components/status-indicator.js.map +1 -1
  1967. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  1968. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  1969. package/dist/modes/interactive/components/thinking-selector.d.ts +8 -1
  1970. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  1971. package/dist/modes/interactive/components/thinking-selector.js +48 -17
  1972. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  1973. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  1974. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  1975. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  1976. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  1977. package/dist/modes/interactive/components/trust-selector.d.ts.map +1 -1
  1978. package/dist/modes/interactive/components/trust-selector.js.map +1 -1
  1979. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  1980. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  1981. package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  1982. package/dist/modes/interactive/components/user-message.js.map +1 -1
  1983. package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -1
  1984. package/dist/modes/interactive/components/visual-truncate.js.map +1 -1
  1985. package/dist/modes/interactive/external-editor.d.ts.map +1 -1
  1986. package/dist/modes/interactive/external-editor.js.map +1 -1
  1987. package/dist/modes/interactive/interactive-mode.d.ts +22 -7
  1988. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  1989. package/dist/modes/interactive/interactive-mode.js +137 -146
  1990. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  1991. package/dist/modes/interactive/model-catalog-refresh.d.ts.map +1 -1
  1992. package/dist/modes/interactive/model-catalog-refresh.js.map +1 -1
  1993. package/dist/modes/interactive/model-search.d.ts.map +1 -1
  1994. package/dist/modes/interactive/model-search.js.map +1 -1
  1995. package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
  1996. package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
  1997. package/dist/modes/interactive/theme/theme.d.ts +2 -2
  1998. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  1999. package/dist/modes/interactive/theme/theme.js.map +1 -1
  2000. package/dist/modes/json-event.d.ts.map +1 -1
  2001. package/dist/modes/json-event.js.map +1 -1
  2002. package/dist/modes/print-mode.d.ts.map +1 -1
  2003. package/dist/modes/print-mode.js +11 -0
  2004. package/dist/modes/print-mode.js.map +1 -1
  2005. package/dist/modes/rpc/jsonl.d.ts.map +1 -1
  2006. package/dist/modes/rpc/jsonl.js.map +1 -1
  2007. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  2008. package/dist/modes/rpc/rpc-client.js.map +1 -1
  2009. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  2010. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  2011. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  2012. package/dist/modes/rpc/rpc-types.js.map +1 -1
  2013. package/dist/package-manager-cli.d.ts.map +1 -1
  2014. package/dist/package-manager-cli.js +27 -5
  2015. package/dist/package-manager-cli.js.map +1 -1
  2016. package/dist/rpc-entry.d.ts.map +1 -1
  2017. package/dist/rpc-entry.js +0 -0
  2018. package/dist/rpc-entry.js.map +1 -1
  2019. package/dist/server/attach.d.ts +56 -0
  2020. package/dist/server/attach.d.ts.map +1 -0
  2021. package/dist/server/attach.js +130 -0
  2022. package/dist/server/attach.js.map +1 -0
  2023. package/dist/server/create-harness.d.ts.map +1 -1
  2024. package/dist/server/create-harness.js.map +1 -1
  2025. package/dist/server/extension-ops.d.ts +40 -0
  2026. package/dist/server/extension-ops.d.ts.map +1 -0
  2027. package/dist/server/extension-ops.js +146 -0
  2028. package/dist/server/extension-ops.js.map +1 -0
  2029. package/dist/server/pi-server-service.d.ts +85 -0
  2030. package/dist/server/pi-server-service.d.ts.map +1 -0
  2031. package/dist/server/pi-server-service.js +213 -0
  2032. package/dist/server/pi-server-service.js.map +1 -0
  2033. package/dist/server/scheduler-tick.d.ts +32 -0
  2034. package/dist/server/scheduler-tick.d.ts.map +1 -0
  2035. package/dist/server/scheduler-tick.js +47 -0
  2036. package/dist/server/scheduler-tick.js.map +1 -0
  2037. package/dist/server/serve.d.ts +25 -0
  2038. package/dist/server/serve.d.ts.map +1 -0
  2039. package/dist/server/serve.js +83 -0
  2040. package/dist/server/serve.js.map +1 -0
  2041. package/dist/server/transcript.d.ts +38 -0
  2042. package/dist/server/transcript.d.ts.map +1 -0
  2043. package/dist/server/transcript.js +176 -0
  2044. package/dist/server/transcript.js.map +1 -0
  2045. package/dist/telegram/api.d.ts +81 -0
  2046. package/dist/telegram/api.d.ts.map +1 -0
  2047. package/dist/telegram/api.js +104 -0
  2048. package/dist/telegram/api.js.map +1 -0
  2049. package/dist/telegram/bridge.d.ts +85 -0
  2050. package/dist/telegram/bridge.d.ts.map +1 -0
  2051. package/dist/telegram/bridge.js +182 -0
  2052. package/dist/telegram/bridge.js.map +1 -0
  2053. package/dist/telegram/journal.d.ts +67 -0
  2054. package/dist/telegram/journal.d.ts.map +1 -0
  2055. package/dist/telegram/journal.js +119 -0
  2056. package/dist/telegram/journal.js.map +1 -0
  2057. package/dist/telegram/servidor.d.ts +15 -0
  2058. package/dist/telegram/servidor.d.ts.map +1 -0
  2059. package/dist/telegram/servidor.js +74 -0
  2060. package/dist/telegram/servidor.js.map +1 -0
  2061. package/dist/utils/abort.d.ts.map +1 -1
  2062. package/dist/utils/abort.js.map +1 -1
  2063. package/dist/utils/ansi.d.ts.map +1 -1
  2064. package/dist/utils/ansi.js.map +1 -1
  2065. package/dist/utils/changelog.d.ts.map +1 -1
  2066. package/dist/utils/changelog.js.map +1 -1
  2067. package/dist/utils/child-process.d.ts.map +1 -1
  2068. package/dist/utils/child-process.js.map +1 -1
  2069. package/dist/utils/clipboard-image.d.ts.map +1 -1
  2070. package/dist/utils/clipboard-image.js.map +1 -1
  2071. package/dist/utils/clipboard-native.d.ts.map +1 -1
  2072. package/dist/utils/clipboard-native.js.map +1 -1
  2073. package/dist/utils/clipboard.d.ts.map +1 -1
  2074. package/dist/utils/clipboard.js.map +1 -1
  2075. package/dist/utils/deprecation.d.ts.map +1 -1
  2076. package/dist/utils/deprecation.js.map +1 -1
  2077. package/dist/utils/exif-orientation.d.ts.map +1 -1
  2078. package/dist/utils/exif-orientation.js.map +1 -1
  2079. package/dist/utils/frontmatter.d.ts.map +1 -1
  2080. package/dist/utils/frontmatter.js.map +1 -1
  2081. package/dist/utils/fs-watch.d.ts.map +1 -1
  2082. package/dist/utils/fs-watch.js.map +1 -1
  2083. package/dist/utils/git.d.ts.map +1 -1
  2084. package/dist/utils/git.js.map +1 -1
  2085. package/dist/utils/html.d.ts.map +1 -1
  2086. package/dist/utils/html.js.map +1 -1
  2087. package/dist/utils/image-convert.d.ts.map +1 -1
  2088. package/dist/utils/image-convert.js.map +1 -1
  2089. package/dist/utils/image-process.d.ts.map +1 -1
  2090. package/dist/utils/image-process.js.map +1 -1
  2091. package/dist/utils/image-resize-core.d.ts.map +1 -1
  2092. package/dist/utils/image-resize-core.js.map +1 -1
  2093. package/dist/utils/image-resize-worker.d.ts.map +1 -1
  2094. package/dist/utils/image-resize-worker.js.map +1 -1
  2095. package/dist/utils/image-resize.d.ts.map +1 -1
  2096. package/dist/utils/image-resize.js.map +1 -1
  2097. package/dist/utils/json.d.ts.map +1 -1
  2098. package/dist/utils/json.js.map +1 -1
  2099. package/dist/utils/management-http.d.ts.map +1 -1
  2100. package/dist/utils/management-http.js.map +1 -1
  2101. package/dist/utils/mime.d.ts.map +1 -1
  2102. package/dist/utils/mime.js.map +1 -1
  2103. package/dist/utils/open-browser.d.ts.map +1 -1
  2104. package/dist/utils/open-browser.js.map +1 -1
  2105. package/dist/utils/paths.d.ts.map +1 -1
  2106. package/dist/utils/paths.js.map +1 -1
  2107. package/dist/utils/photon.d.ts.map +1 -1
  2108. package/dist/utils/photon.js.map +1 -1
  2109. package/dist/utils/pi-user-agent.d.ts.map +1 -1
  2110. package/dist/utils/pi-user-agent.js.map +1 -1
  2111. package/dist/utils/shell.d.ts +11 -0
  2112. package/dist/utils/shell.d.ts.map +1 -1
  2113. package/dist/utils/shell.js +11 -0
  2114. package/dist/utils/shell.js.map +1 -1
  2115. package/dist/utils/sleep.d.ts.map +1 -1
  2116. package/dist/utils/sleep.js.map +1 -1
  2117. package/dist/utils/syntax-highlight.d.ts.map +1 -1
  2118. package/dist/utils/syntax-highlight.js.map +1 -1
  2119. package/dist/utils/text.d.ts.map +1 -1
  2120. package/dist/utils/text.js.map +1 -1
  2121. package/dist/utils/tool-result-images.d.ts.map +1 -1
  2122. package/dist/utils/tool-result-images.js.map +1 -1
  2123. package/dist/utils/tools-manager.d.ts.map +1 -1
  2124. package/dist/utils/tools-manager.js.map +1 -1
  2125. package/dist/utils/version-check.d.ts.map +1 -1
  2126. package/dist/utils/version-check.js +29 -1
  2127. package/dist/utils/version-check.js.map +1 -1
  2128. package/dist/utils/windows-self-update.d.ts.map +1 -1
  2129. package/dist/utils/windows-self-update.js.map +1 -1
  2130. package/docs/compaction.md +10 -10
  2131. package/docs/compliance.md +241 -0
  2132. package/docs/containerization.md +24 -24
  2133. package/docs/custom-provider.md +10 -10
  2134. package/docs/development-fork.md +170 -0
  2135. package/docs/development.md +47 -10
  2136. package/docs/docs.json +39 -2
  2137. package/docs/environment-variables.md +20 -17
  2138. package/docs/extensions.md +51 -49
  2139. package/docs/index.md +15 -21
  2140. package/docs/json.md +3 -3
  2141. package/docs/keybindings.md +5 -5
  2142. package/docs/llama-cpp.md +7 -7
  2143. package/docs/models.md +12 -12
  2144. package/docs/modules-infraestructura.md +115 -0
  2145. package/docs/modules-motor.md +160 -0
  2146. package/docs/modules-producto.md +179 -0
  2147. package/docs/modules-seguridad.md +158 -0
  2148. package/docs/packages.md +45 -45
  2149. package/docs/prompt-templates.md +5 -5
  2150. package/docs/providers.md +12 -12
  2151. package/docs/quickstart.md +39 -39
  2152. package/docs/rpc.md +12 -12
  2153. package/docs/sdk.md +38 -38
  2154. package/docs/security.md +26 -21
  2155. package/docs/session-format.md +7 -7
  2156. package/docs/sessions.md +14 -14
  2157. package/docs/settings.md +45 -20
  2158. package/docs/shell-aliases.md +2 -2
  2159. package/docs/skills.md +11 -11
  2160. package/docs/terminal-setup.md +14 -14
  2161. package/docs/termux.md +7 -7
  2162. package/docs/themes.md +11 -11
  2163. package/docs/tmux.md +4 -4
  2164. package/docs/tui.md +3 -3
  2165. package/docs/usage.md +54 -54
  2166. package/docs/windows.md +2 -2
  2167. package/examples/sdk/12-full-control.ts +9 -0
  2168. package/npm-shrinkwrap.json +35 -251
  2169. package/package.json +114 -108
  2170. package/dist/core/export-html/template.css +0 -1066
  2171. package/dist/core/export-html/template.html +0 -55
  2172. package/dist/core/export-html/template.js +0 -1864
  2173. package/dist/core/export-html/vendor/highlight.min.js +0 -1213
  2174. package/dist/core/export-html/vendor/marked.min.js +0 -78
  2175. package/dist/modes/interactive/assets/clankolas.png +0 -0
  2176. package/dist/modes/interactive/theme/dark.json +0 -90
  2177. package/dist/modes/interactive/theme/light.json +0 -89
  2178. package/dist/modes/interactive/theme/theme-schema.json +0 -352
  2179. package/dist/skills/ada-engine/SKILL.md +0 -153
@@ -0,0 +1,29 @@
1
+ import type { AgentTool } from "@earendil-works/pi-agent-core";
2
+ import { type Static, Type } from "typebox";
3
+ import type { ToolDefinition } from "../extensions/types.ts";
4
+ declare const applyPatchSchema: Type.TObject<{
5
+ patch: Type.TString;
6
+ }>;
7
+ export type ApplyPatchToolInput = Static<typeof applyPatchSchema>;
8
+ export interface ApplyPatchToolDetails {
9
+ applied: number;
10
+ details: Array<{
11
+ path: string;
12
+ type: string;
13
+ }>;
14
+ }
15
+ export interface ApplyPatchToolOptions {
16
+ cwd?: string;
17
+ }
18
+ export declare function createApplyPatchToolDefinition(cwd: string, _options?: ApplyPatchToolOptions): ToolDefinition<typeof applyPatchSchema, ApplyPatchToolDetails>;
19
+ export declare function createApplyPatchTool(cwd: string, options?: ApplyPatchToolOptions): AgentTool<typeof applyPatchSchema>;
20
+ export declare function isPatchFallbackInput(value: unknown): boolean;
21
+ export declare function executePatchFallback(patchText: string, cwd: string, signal?: AbortSignal): Promise<{
22
+ content: Array<{
23
+ type: string;
24
+ text?: string;
25
+ }>;
26
+ details: ApplyPatchToolDetails;
27
+ }>;
28
+ export {};
29
+ //# sourceMappingURL=apply_patch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply_patch.d.ts","sourceRoot":"","sources":["../../../src/core/tools/apply_patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAK7D,QAAA,MAAM,gBAAgB;;EAQrB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAElE,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,qBAAqB;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,8BAA8B,CAC7C,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,qBAAqB,GAC9B,cAAc,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC,CAwBhE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC,OAAO,gBAAgB,CAAC,CAErH;AAGD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAI5D;AAED,wBAAsB,oBAAoB,CACzC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,EAAE,qBAAqB,CAAA;CAAE,CAAC,CAQ9F"}
@@ -0,0 +1,54 @@
1
+ import { Type } from "typebox";
2
+ import { getExperimentalToolSampling } from "../experimental.js";
3
+ import { aplicarOperaciones } from "../parche/aplicar.js";
4
+ import { parsearPatchWire } from "../parche/parser.js";
5
+ import { wrapToolDefinition } from "./tool-definition-wrapper.js";
6
+ const applyPatchSchema = Type.Object({
7
+ patch: Type.String({
8
+ description: "Unified diff en formato wire *** Begin Patch / *** End Patch con hunks @@. Valida anclaje por hashline del fichero (conflict:// si divergió) y aplica atómicamente con verificación post-escritura.",
9
+ }),
10
+ }, {});
11
+ export function createApplyPatchToolDefinition(cwd, _options) {
12
+ return {
13
+ name: "apply_patch",
14
+ label: "apply_patch",
15
+ description: "Aplica un patch en formato wire nativo (*** Begin Patch … *** End Patch con hunks @@). Cada hunk se ancla por hash del contenido original; si el fichero divergió, falla con conflict:// sin tocar disco. Escritura atómica con verificación byte a byte.",
16
+ parameters: applyPatchSchema,
17
+ constrainedSampling: getExperimentalToolSampling(),
18
+ async execute(_toolCallId, input, signal, _onUpdate, _ctx) {
19
+ const patchText = input.patch;
20
+ if (typeof patchText !== "string" || patchText.trim().length === 0) {
21
+ throw new Error("apply_patch: patch vacío");
22
+ }
23
+ const parsed = parsearPatchWire(patchText);
24
+ if ("error" in parsed)
25
+ throw new Error(`apply_patch: ${parsed.error}`);
26
+ const result = await aplicarOperaciones(parsed.ops, { cwd, signal: signal });
27
+ return {
28
+ content: [{ type: "text", text: `apply_patch: ${result.applied} fichero(s) parcheado(s)` }],
29
+ details: { applied: result.applied, details: result.details },
30
+ };
31
+ },
32
+ };
33
+ }
34
+ export function createApplyPatchTool(cwd, options) {
35
+ return wrapToolDefinition(createApplyPatchToolDefinition(cwd, options));
36
+ }
37
+ // Fallback para edit: cuando args traen `patch`, delega a apply_patch sin pasar por fuzzy
38
+ export function isPatchFallbackInput(value) {
39
+ if (!value || typeof value !== "object" || Array.isArray(value))
40
+ return false;
41
+ const r = value;
42
+ return typeof r.patch === "string" && r.patch.trim().length > 0;
43
+ }
44
+ export async function executePatchFallback(patchText, cwd, signal) {
45
+ const parsed = parsearPatchWire(patchText);
46
+ if ("error" in parsed)
47
+ throw new Error(`edit patch fallback: ${parsed.error}`);
48
+ const result = await aplicarOperaciones(parsed.ops, { cwd, signal });
49
+ return {
50
+ content: [{ type: "text", text: `edit→apply_patch: ${result.applied} fichero(s) parcheado(s)` }],
51
+ details: { applied: result.applied, details: result.details },
52
+ };
53
+ }
54
+ //# sourceMappingURL=apply_patch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply_patch.js","sourceRoot":"","sources":["../../../src/core/tools/apply_patch.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../../src/core/tools/bash.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAG/D,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAa5C,OAAO,KAAK,EAAoB,cAAc,EAA2B,MAAM,wBAAwB,CAAC;AAIxG,OAAO,EAAoD,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAkBxG,QAAA,MAAM,UAAU;;;EAGd,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;CAGnC,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC/B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC9B;;;;;;OAMG;IACH,IAAI,EAAE,CACL,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;QACR,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;KACxB,KACG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAkE1F;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACvB;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,gBAAgB,KAAK,gBAAgB,CAAC;AA8B5E,MAAM,WAAW,eAAe;IAC/B,oEAAoE;IACpE,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,mFAAmF;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,2DAA2D;IAC3D,SAAS,CAAC,EAAE,aAAa,CAAC;CAC1B;AAKD,KAAK,eAAe,GAAG;IACtB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;CACrC,CAAC;AA8GF,wBAAgB,wBAAwB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,eAAe,GACvB,cAAc,CAAC,OAAO,UAAU,EAAE,eAAe,GAAG,SAAS,EAAE,eAAe,CAAC,CA+KjF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAQnG","sourcesContent":["import { constants } from \"node:fs\";\nimport { access as fsAccess } from \"node:fs/promises\";\nimport type { AgentTool } from \"@earendil-works/pi-agent-core\";\nimport { Container, Text, truncateToWidth } from \"@earendil-works/pi-tui\";\nimport { spawn } from \"child_process\";\nimport { type Static, Type } from \"typebox\";\nimport { keyHint } from \"../../modes/interactive/components/keybinding-hints.ts\";\nimport { truncateToVisualLines } from \"../../modes/interactive/components/visual-truncate.ts\";\nimport { theme } from \"../../modes/interactive/theme/theme.ts\";\nimport { waitForChildProcess } from \"../../utils/child-process.ts\";\nimport {\n\tgetShellConfig,\n\tgetShellEnv,\n\tkillProcessTree,\n\ttrackDetachedChildPid,\n\tuntrackDetachedChildPid,\n} from \"../../utils/shell.ts\";\nimport { getExperimentalToolSampling } from \"../experimental.ts\";\nimport type { ExtensionContext, ToolDefinition, ToolRenderResultOptions } from \"../extensions/types.ts\";\nimport { OutputAccumulator } from \"./output-accumulator.ts\";\nimport { getTextOutput, invalidArgText, str } from \"./render-utils.ts\";\nimport { wrapToolDefinition } from \"./tool-definition-wrapper.ts\";\nimport { DEFAULT_MAX_BYTES, DEFAULT_MAX_LINES, formatSize, type TruncationResult } from \"./truncate.ts\";\n\nconst MAX_TIMEOUT_MS = 2_147_483_647;\nconst MAX_TIMEOUT_SECONDS = MAX_TIMEOUT_MS / 1000;\n\nfunction resolveTimeoutMs(timeout: number | undefined): number | undefined {\n\tif (timeout === undefined) return undefined;\n\tif (!Number.isFinite(timeout) || timeout <= 0) {\n\t\tthrow new Error(\"Invalid timeout: must be a finite number of seconds\");\n\t}\n\n\tconst timeoutMs = timeout * 1000;\n\tif (timeoutMs > MAX_TIMEOUT_MS) {\n\t\tthrow new Error(`Invalid timeout: maximum is ${MAX_TIMEOUT_SECONDS} seconds`);\n\t}\n\treturn timeoutMs;\n}\n\nconst bashSchema = Type.Object({\n\tcommand: Type.String({ description: \"Bash command to execute\" }),\n\ttimeout: Type.Optional(Type.Number({ description: \"Timeout in seconds (optional, no default timeout)\" })),\n});\n\nexport const bashToolSystemPromptContribution = {\n\tsnippet: \"Execute bash commands (ls, grep, find, etc.)\",\n\tguidelines: [\"You can inspect PI_* environment variables for current model and session details.\"],\n} as const;\n\nexport type BashToolInput = Static<typeof bashSchema>;\n\nexport interface BashToolDetails {\n\ttruncation?: TruncationResult;\n\tfullOutputPath?: string;\n}\n\n/**\n * Pluggable operations for the bash tool.\n * Override these to delegate command execution to remote systems (for example SSH).\n */\nexport interface BashOperations {\n\t/**\n\t * Execute a command and stream output.\n\t * @param command The command to execute\n\t * @param cwd Working directory\n\t * @param options Execution options\n\t * @returns Promise resolving to exit code (null if killed)\n\t */\n\texec: (\n\t\tcommand: string,\n\t\tcwd: string,\n\t\toptions: {\n\t\t\tonData: (data: Buffer) => void;\n\t\t\tsignal?: AbortSignal;\n\t\t\ttimeout?: number;\n\t\t\tenv?: NodeJS.ProcessEnv;\n\t\t},\n\t) => Promise<{ exitCode: number | null }>;\n}\n\n/**\n * Create bash operations using pi's built-in local shell execution backend.\n *\n * This is useful for extensions that intercept user_bash and still want pi's\n * standard local shell behavior while wrapping or rewriting commands.\n */\nexport function createLocalBashOperations(options?: { shellPath?: string }): BashOperations {\n\treturn {\n\t\texec: async (command, cwd, { onData, signal, timeout, env }) => {\n\t\t\tconst timeoutMs = resolveTimeoutMs(timeout);\n\t\t\tif (signal?.aborted) {\n\t\t\t\tthrow new Error(\"aborted\");\n\t\t\t}\n\t\t\tconst shellConfig = getShellConfig(options?.shellPath);\n\t\t\ttry {\n\t\t\t\tawait fsAccess(cwd, constants.F_OK);\n\t\t\t} catch {\n\t\t\t\tthrow new Error(`Working directory does not exist: ${cwd}\\nCannot execute bash commands.`);\n\t\t\t}\n\n\t\t\tconst commandFromStdin = shellConfig.commandTransport === \"stdin\";\n\t\t\tconst child = spawn(shellConfig.shell, commandFromStdin ? shellConfig.args : [...shellConfig.args, command], {\n\t\t\t\tcwd,\n\t\t\t\tdetached: process.platform !== \"win32\",\n\t\t\t\tenv: env ?? getShellEnv(),\n\t\t\t\tstdio: [commandFromStdin ? \"pipe\" : \"ignore\", \"pipe\", \"pipe\"],\n\t\t\t\twindowsHide: true,\n\t\t\t});\n\t\t\tif (commandFromStdin) {\n\t\t\t\tchild.stdin?.on(\"error\", () => {});\n\t\t\t\tchild.stdin?.end(command);\n\t\t\t}\n\t\t\tif (child.pid) trackDetachedChildPid(child.pid);\n\t\t\tlet timedOut = false;\n\t\t\tlet timeoutHandle: NodeJS.Timeout | undefined;\n\t\t\tconst onAbort = () => {\n\t\t\t\tif (child.pid) killProcessTree(child.pid);\n\t\t\t};\n\n\t\t\ttry {\n\t\t\t\t// Set timeout if provided.\n\t\t\t\tif (timeoutMs !== undefined) {\n\t\t\t\t\ttimeoutHandle = setTimeout(() => {\n\t\t\t\t\t\ttimedOut = true;\n\t\t\t\t\t\tif (child.pid) killProcessTree(child.pid);\n\t\t\t\t\t}, timeoutMs);\n\t\t\t\t}\n\t\t\t\t// Stream stdout and stderr.\n\t\t\t\tchild.stdout?.on(\"data\", onData);\n\t\t\t\tchild.stderr?.on(\"data\", onData);\n\t\t\t\t// Handle abort signal by killing the entire process tree.\n\t\t\t\tif (signal) {\n\t\t\t\t\tif (signal.aborted) onAbort();\n\t\t\t\t\telse signal.addEventListener(\"abort\", onAbort, { once: true });\n\t\t\t\t}\n\t\t\t\t// Handle shell spawn errors and wait for the process to terminate without hanging\n\t\t\t\t// on inherited stdio handles held by detached descendants.\n\t\t\t\tconst exitCode = await waitForChildProcess(child);\n\t\t\t\tif (signal?.aborted) {\n\t\t\t\t\tthrow new Error(\"aborted\");\n\t\t\t\t}\n\t\t\t\tif (timedOut) {\n\t\t\t\t\tthrow new Error(`timeout:${timeout}`);\n\t\t\t\t}\n\t\t\t\treturn { exitCode };\n\t\t\t} finally {\n\t\t\t\tif (child.pid) untrackDetachedChildPid(child.pid);\n\t\t\t\tif (timeoutHandle) clearTimeout(timeoutHandle);\n\t\t\t\tif (signal) signal.removeEventListener(\"abort\", onAbort);\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport interface BashSpawnContext {\n\tcommand: string;\n\tcwd: string;\n\tenv: NodeJS.ProcessEnv;\n}\n\nexport type BashSpawnHook = (context: BashSpawnContext) => BashSpawnContext;\n\nfunction resolveSpawnContext(\n\tcommand: string,\n\tcwd: string,\n\tspawnHook: BashSpawnHook | undefined,\n\texposeSessionEnvironment: boolean,\n\tctx: ExtensionContext | undefined,\n): BashSpawnContext {\n\tconst env = { ...getShellEnv() };\n\tdelete env.PI_SESSION_ID;\n\tdelete env.PI_SESSION_FILE;\n\tdelete env.PI_PROVIDER;\n\tdelete env.PI_MODEL;\n\tdelete env.PI_REASONING_LEVEL;\n\tif (exposeSessionEnvironment && ctx) {\n\t\tconst model = ctx.model;\n\t\tenv.PI_SESSION_ID = ctx.sessionManager.getSessionId();\n\t\tconst sessionFile = ctx.sessionManager.getSessionFile();\n\t\tif (sessionFile) env.PI_SESSION_FILE = sessionFile;\n\t\tif (model) {\n\t\t\tenv.PI_PROVIDER = model.provider;\n\t\t\tenv.PI_MODEL = model.id;\n\t\t}\n\t\tif (ctx.thinkingLevel) env.PI_REASONING_LEVEL = ctx.thinkingLevel;\n\t}\n\tconst baseContext: BashSpawnContext = { command, cwd, env };\n\treturn spawnHook ? spawnHook(baseContext) : baseContext;\n}\n\nexport interface BashToolOptions {\n\t/** Custom operations for command execution. Default: local shell */\n\toperations?: BashOperations;\n\t/** Command prefix prepended to every command (for example shell setup commands) */\n\tcommandPrefix?: string;\n\t/** Optional explicit shell path from settings */\n\tshellPath?: string;\n\t/** Expose current Pi session metadata as PI_* environment variables. Default: true */\n\texposeSessionEnvironment?: boolean;\n\t/** Hook to adjust command, cwd, or env before execution */\n\tspawnHook?: BashSpawnHook;\n}\n\nconst BASH_PREVIEW_LINES = 5;\nconst BASH_UPDATE_THROTTLE_MS = 100;\n\ntype BashRenderState = {\n\tstartedAt: number | undefined;\n\tendedAt: number | undefined;\n\tinterval: NodeJS.Timeout | undefined;\n};\n\ntype BashResultRenderState = {\n\tcachedWidth: number | undefined;\n\tcachedLines: string[] | undefined;\n\tcachedSkipped: number | undefined;\n};\n\nclass BashResultRenderComponent extends Container {\n\tstate: BashResultRenderState = {\n\t\tcachedWidth: undefined,\n\t\tcachedLines: undefined,\n\t\tcachedSkipped: undefined,\n\t};\n}\n\nfunction formatDuration(ms: number): string {\n\treturn `${(ms / 1000).toFixed(1)}s`;\n}\n\nfunction formatBashCall(args: { command?: string; timeout?: number } | undefined): string {\n\tconst command = str(args?.command);\n\tconst timeout = args?.timeout as number | undefined;\n\tconst timeoutSuffix = timeout ? theme.fg(\"muted\", ` (timeout ${timeout}s)`) : \"\";\n\tconst commandDisplay = command === null ? invalidArgText(theme) : command ? command : theme.fg(\"toolOutput\", \"...\");\n\treturn theme.fg(\"toolTitle\", theme.bold(`$ ${commandDisplay}`)) + timeoutSuffix;\n}\n\nfunction rebuildBashResultRenderComponent(\n\tcomponent: BashResultRenderComponent,\n\tresult: {\n\t\tcontent: Array<{ type: string; text?: string; data?: string; mimeType?: string }>;\n\t\tdetails?: BashToolDetails;\n\t},\n\toptions: ToolRenderResultOptions,\n\tshowImages: boolean,\n\tstartedAt: number | undefined,\n\tendedAt: number | undefined,\n): void {\n\tconst state = component.state;\n\tcomponent.clear();\n\n\tlet output = getTextOutput(result as any, showImages).trim();\n\tconst truncation = result.details?.truncation;\n\tconst fullOutputPath = result.details?.fullOutputPath;\n\tif (!options.isPartial && truncation?.truncated && fullOutputPath && output.endsWith(\"]\")) {\n\t\tconst footerStart = output.lastIndexOf(\"\\n\\n[\");\n\t\tif (footerStart !== -1 && output.slice(footerStart).includes(fullOutputPath)) {\n\t\t\toutput = output.slice(0, footerStart).trimEnd();\n\t\t}\n\t}\n\n\tif (output) {\n\t\tconst styledOutput = output\n\t\t\t.split(\"\\n\")\n\t\t\t.map((line) => theme.fg(\"toolOutput\", line))\n\t\t\t.join(\"\\n\");\n\n\t\tif (options.expanded) {\n\t\t\tcomponent.addChild(new Text(`\\n${styledOutput}`, 0, 0));\n\t\t} else {\n\t\t\tcomponent.addChild({\n\t\t\t\trender: (width: number) => {\n\t\t\t\t\tif (state.cachedLines === undefined || state.cachedWidth !== width) {\n\t\t\t\t\t\tconst preview = truncateToVisualLines(styledOutput, BASH_PREVIEW_LINES, width);\n\t\t\t\t\t\tstate.cachedLines = preview.visualLines;\n\t\t\t\t\t\tstate.cachedSkipped = preview.skippedCount;\n\t\t\t\t\t\tstate.cachedWidth = width;\n\t\t\t\t\t}\n\t\t\t\t\tif (state.cachedSkipped && state.cachedSkipped > 0) {\n\t\t\t\t\t\tconst hint =\n\t\t\t\t\t\t\ttheme.fg(\"muted\", `... (${state.cachedSkipped} earlier lines,`) +\n\t\t\t\t\t\t\t` ${keyHint(\"app.tools.expand\", \"to expand\")}${theme.fg(\"muted\", \")\")}`;\n\t\t\t\t\t\treturn [\"\", truncateToWidth(hint, width, \"...\"), ...(state.cachedLines ?? [])];\n\t\t\t\t\t}\n\t\t\t\t\treturn [\"\", ...(state.cachedLines ?? [])];\n\t\t\t\t},\n\t\t\t\tinvalidate: () => {\n\t\t\t\t\tstate.cachedWidth = undefined;\n\t\t\t\t\tstate.cachedLines = undefined;\n\t\t\t\t\tstate.cachedSkipped = undefined;\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t}\n\n\tif (truncation?.truncated || fullOutputPath) {\n\t\tconst warnings: string[] = [];\n\t\tif (fullOutputPath) {\n\t\t\twarnings.push(`Full output: ${fullOutputPath}`);\n\t\t}\n\t\tif (truncation?.truncated) {\n\t\t\tif (truncation.truncatedBy === \"lines\") {\n\t\t\t\twarnings.push(`Truncated: showing ${truncation.outputLines} of ${truncation.totalLines} lines`);\n\t\t\t} else {\n\t\t\t\twarnings.push(\n\t\t\t\t\t`Truncated: ${truncation.outputLines} lines shown (${formatSize(truncation.maxBytes ?? DEFAULT_MAX_BYTES)} limit)`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tcomponent.addChild(new Text(`\\n${theme.fg(\"warning\", `[${warnings.join(\". \")}]`)}`, 0, 0));\n\t}\n\n\tif (startedAt !== undefined) {\n\t\tconst label = options.isPartial ? \"Elapsed\" : \"Took\";\n\t\tconst endTime = endedAt ?? Date.now();\n\t\tcomponent.addChild(new Text(`\\n${theme.fg(\"muted\", `${label} ${formatDuration(endTime - startedAt)}`)}`, 0, 0));\n\t}\n}\n\nexport function createBashToolDefinition(\n\tcwd: string,\n\toptions?: BashToolOptions,\n): ToolDefinition<typeof bashSchema, BashToolDetails | undefined, BashRenderState> {\n\tconst ops = options?.operations ?? createLocalBashOperations({ shellPath: options?.shellPath });\n\tconst commandPrefix = options?.commandPrefix;\n\tconst exposeSessionEnvironment = options?.exposeSessionEnvironment ?? true;\n\tconst spawnHook = options?.spawnHook;\n\treturn {\n\t\tname: \"bash\",\n\t\tlabel: \"bash\",\n\t\tdescription: `Execute a bash command in the current working directory. Returns stdout and stderr. Output is truncated to last ${DEFAULT_MAX_LINES} lines or ${DEFAULT_MAX_BYTES / 1024}KB (whichever is hit first). If truncated, full output is saved to a temp file. Optionally provide a timeout in seconds.`,\n\t\tpromptSnippet: bashToolSystemPromptContribution.snippet,\n\t\tpromptGuidelines: exposeSessionEnvironment ? [...bashToolSystemPromptContribution.guidelines] : undefined,\n\t\tparameters: bashSchema,\n\t\tconstrainedSampling: getExperimentalToolSampling(),\n\t\tasync execute(\n\t\t\t_toolCallId,\n\t\t\t{ command, timeout }: { command: string; timeout?: number },\n\t\t\tsignal?: AbortSignal,\n\t\t\tonUpdate?,\n\t\t\tctx?,\n\t\t) {\n\t\t\tconst resolvedCommand = commandPrefix ? `${commandPrefix}\\n${command}` : command;\n\t\t\tconst spawnContext = resolveSpawnContext(resolvedCommand, cwd, spawnHook, exposeSessionEnvironment, ctx);\n\t\t\tconst output = new OutputAccumulator({ tempFilePrefix: \"pi-bash\" });\n\t\t\tlet acceptingOutput = true;\n\t\t\tlet updateTimer: NodeJS.Timeout | undefined;\n\t\t\tlet updateDirty = false;\n\t\t\tlet lastUpdateAt = 0;\n\n\t\t\tconst emitOutputUpdate = () => {\n\t\t\t\tif (!onUpdate || !updateDirty) return;\n\t\t\t\tupdateDirty = false;\n\t\t\t\tlastUpdateAt = Date.now();\n\t\t\t\tconst snapshot = output.snapshot({ persistIfTruncated: true });\n\t\t\t\tonUpdate({\n\t\t\t\t\tcontent: [{ type: \"text\", text: snapshot.content || \"\" }],\n\t\t\t\t\tdetails: {\n\t\t\t\t\t\ttruncation: snapshot.truncation.truncated ? snapshot.truncation : undefined,\n\t\t\t\t\t\tfullOutputPath: snapshot.fullOutputPath,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tconst clearUpdateTimer = () => {\n\t\t\t\tif (updateTimer) {\n\t\t\t\t\tclearTimeout(updateTimer);\n\t\t\t\t\tupdateTimer = undefined;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst scheduleOutputUpdate = () => {\n\t\t\t\tif (!onUpdate) return;\n\t\t\t\tupdateDirty = true;\n\t\t\t\tconst delay = BASH_UPDATE_THROTTLE_MS - (Date.now() - lastUpdateAt);\n\t\t\t\tif (delay <= 0) {\n\t\t\t\t\tclearUpdateTimer();\n\t\t\t\t\temitOutputUpdate();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tupdateTimer ??= setTimeout(() => {\n\t\t\t\t\tupdateTimer = undefined;\n\t\t\t\t\temitOutputUpdate();\n\t\t\t\t}, delay);\n\t\t\t};\n\n\t\t\tif (onUpdate) {\n\t\t\t\tonUpdate({ content: [], details: undefined });\n\t\t\t}\n\n\t\t\tconst handleData = (data: Buffer) => {\n\t\t\t\tif (!acceptingOutput) return;\n\t\t\t\toutput.append(data);\n\t\t\t\tscheduleOutputUpdate();\n\t\t\t};\n\n\t\t\tconst finishOutput = async () => {\n\t\t\t\tacceptingOutput = false;\n\t\t\t\toutput.finish();\n\t\t\t\tclearUpdateTimer();\n\t\t\t\temitOutputUpdate();\n\t\t\t\tconst snapshot = output.snapshot({ persistIfTruncated: true });\n\t\t\t\tawait output.closeTempFile();\n\t\t\t\treturn snapshot;\n\t\t\t};\n\n\t\t\tconst formatOutput = (snapshot: Awaited<ReturnType<typeof finishOutput>>, emptyText = \"(no output)\") => {\n\t\t\t\tconst truncation = snapshot.truncation;\n\t\t\t\tlet text = snapshot.content || emptyText;\n\t\t\t\tlet details: BashToolDetails | undefined;\n\t\t\t\tif (truncation.truncated) {\n\t\t\t\t\tdetails = { truncation, fullOutputPath: snapshot.fullOutputPath };\n\t\t\t\t\tconst startLine = truncation.totalLines - truncation.outputLines + 1;\n\t\t\t\t\tconst endLine = truncation.totalLines;\n\t\t\t\t\tif (truncation.lastLinePartial) {\n\t\t\t\t\t\tconst lastLineSize = formatSize(output.getLastLineBytes());\n\t\t\t\t\t\ttext += `\\n\\n[Showing last ${formatSize(truncation.outputBytes)} of line ${endLine} (line is ${lastLineSize}). Full output: ${snapshot.fullOutputPath}]`;\n\t\t\t\t\t} else if (truncation.truncatedBy === \"lines\") {\n\t\t\t\t\t\ttext += `\\n\\n[Showing lines ${startLine}-${endLine} of ${truncation.totalLines}. Full output: ${snapshot.fullOutputPath}]`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttext += `\\n\\n[Showing lines ${startLine}-${endLine} of ${truncation.totalLines} (${formatSize(DEFAULT_MAX_BYTES)} limit). Full output: ${snapshot.fullOutputPath}]`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn { text, details };\n\t\t\t};\n\n\t\t\tconst appendStatus = (text: string, status: string) => `${text ? `${text}\\n\\n` : \"\"}${status}`;\n\n\t\t\ttry {\n\t\t\t\tlet exitCode: number | null;\n\t\t\t\ttry {\n\t\t\t\t\tconst result = await ops.exec(spawnContext.command, spawnContext.cwd, {\n\t\t\t\t\t\tonData: handleData,\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t\ttimeout,\n\t\t\t\t\t\tenv: spawnContext.env,\n\t\t\t\t\t});\n\t\t\t\t\texitCode = result.exitCode;\n\t\t\t\t} catch (err) {\n\t\t\t\t\tconst snapshot = await finishOutput();\n\t\t\t\t\tconst { text } = formatOutput(snapshot, \"\");\n\t\t\t\t\tif (err instanceof Error && err.message === \"aborted\") {\n\t\t\t\t\t\tthrow new Error(appendStatus(text, \"Command aborted\"));\n\t\t\t\t\t}\n\t\t\t\t\tif (err instanceof Error && err.message.startsWith(\"timeout:\")) {\n\t\t\t\t\t\tconst timeoutSecs = err.message.split(\":\")[1];\n\t\t\t\t\t\tthrow new Error(appendStatus(text, `Command timed out after ${timeoutSecs} seconds`));\n\t\t\t\t\t}\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\n\t\t\t\tconst snapshot = await finishOutput();\n\t\t\t\tconst { text: outputText, details } = formatOutput(snapshot);\n\t\t\t\tif (exitCode !== 0 && exitCode !== null) {\n\t\t\t\t\tthrow new Error(appendStatus(outputText, `Command exited with code ${exitCode}`));\n\t\t\t\t}\n\t\t\t\treturn { content: [{ type: \"text\", text: outputText }], details };\n\t\t\t} finally {\n\t\t\t\tclearUpdateTimer();\n\t\t\t}\n\t\t},\n\t\trenderCall(args, _theme, context) {\n\t\t\tconst state = context.state;\n\t\t\tif (context.executionStarted && state.startedAt === undefined) {\n\t\t\t\tstate.startedAt = Date.now();\n\t\t\t\tstate.endedAt = undefined;\n\t\t\t}\n\t\t\tconst text = (context.lastComponent as Text | undefined) ?? new Text(\"\", 0, 0);\n\t\t\ttext.setText(formatBashCall(args));\n\t\t\treturn text;\n\t\t},\n\t\trenderResult(result, options, _theme, context) {\n\t\t\tconst state = context.state;\n\t\t\tif (state.startedAt !== undefined && options.isPartial && !state.interval) {\n\t\t\t\tstate.interval = setInterval(() => context.invalidate(), 1000);\n\t\t\t}\n\t\t\tif (!options.isPartial || context.isError) {\n\t\t\t\tstate.endedAt ??= Date.now();\n\t\t\t\tif (state.interval) {\n\t\t\t\t\tclearInterval(state.interval);\n\t\t\t\t\tstate.interval = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst component =\n\t\t\t\t(context.lastComponent as BashResultRenderComponent | undefined) ?? new BashResultRenderComponent();\n\t\t\trebuildBashResultRenderComponent(\n\t\t\t\tcomponent,\n\t\t\t\tresult as any,\n\t\t\t\toptions,\n\t\t\t\tcontext.showImages,\n\t\t\t\tstate.startedAt,\n\t\t\t\tstate.endedAt,\n\t\t\t);\n\t\t\tcomponent.invalidate();\n\t\t\treturn component;\n\t\t},\n\t};\n}\n\nexport function createBashTool(cwd: string, options?: BashToolOptions): AgentTool<typeof bashSchema> {\n\tconst definition = createBashToolDefinition(cwd, options);\n\tconst tool = wrapToolDefinition(definition);\n\tObject.assign(tool, {\n\t\tpromptSnippet: definition.promptSnippet,\n\t\tpromptGuidelines: definition.promptGuidelines,\n\t});\n\treturn tool;\n}\n"]}
1
+ {"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../../src/core/tools/bash.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAG/D,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAa5C,OAAO,KAAK,EAAoB,cAAc,EAA2B,MAAM,wBAAwB,CAAC;AAIxG,OAAO,EAAoD,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAkBxG,QAAA,MAAM,UAAU;;;EAGd,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;CAGnC,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC/B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC9B;;;;;;OAMG;IACH,IAAI,EAAE,CACL,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;QACR,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;KACxB,KACG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAkE1F;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACvB;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,gBAAgB,KAAK,gBAAgB,CAAC;AA8B5E,MAAM,WAAW,eAAe;IAC/B,oEAAoE;IACpE,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,mFAAmF;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,2DAA2D;IAC3D,SAAS,CAAC,EAAE,aAAa,CAAC;CAC1B;AAKD,KAAK,eAAe,GAAG;IACtB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;CACrC,CAAC;AA8GF,wBAAgB,wBAAwB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,eAAe,GACvB,cAAc,CAAC,OAAO,UAAU,EAAE,eAAe,GAAG,SAAS,EAAE,eAAe,CAAC,CA+KjF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAQnG"}
@@ -1 +1 @@
1
- {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/core/tools/bash.ts"],"names":[],"mappings":"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","sourcesContent":["import { constants } from \"node:fs\";\nimport { access as fsAccess } from \"node:fs/promises\";\nimport type { AgentTool } from \"@earendil-works/pi-agent-core\";\nimport { Container, Text, truncateToWidth } from \"@earendil-works/pi-tui\";\nimport { spawn } from \"child_process\";\nimport { type Static, Type } from \"typebox\";\nimport { keyHint } from \"../../modes/interactive/components/keybinding-hints.ts\";\nimport { truncateToVisualLines } from \"../../modes/interactive/components/visual-truncate.ts\";\nimport { theme } from \"../../modes/interactive/theme/theme.ts\";\nimport { waitForChildProcess } from \"../../utils/child-process.ts\";\nimport {\n\tgetShellConfig,\n\tgetShellEnv,\n\tkillProcessTree,\n\ttrackDetachedChildPid,\n\tuntrackDetachedChildPid,\n} from \"../../utils/shell.ts\";\nimport { getExperimentalToolSampling } from \"../experimental.ts\";\nimport type { ExtensionContext, ToolDefinition, ToolRenderResultOptions } from \"../extensions/types.ts\";\nimport { OutputAccumulator } from \"./output-accumulator.ts\";\nimport { getTextOutput, invalidArgText, str } from \"./render-utils.ts\";\nimport { wrapToolDefinition } from \"./tool-definition-wrapper.ts\";\nimport { DEFAULT_MAX_BYTES, DEFAULT_MAX_LINES, formatSize, type TruncationResult } from \"./truncate.ts\";\n\nconst MAX_TIMEOUT_MS = 2_147_483_647;\nconst MAX_TIMEOUT_SECONDS = MAX_TIMEOUT_MS / 1000;\n\nfunction resolveTimeoutMs(timeout: number | undefined): number | undefined {\n\tif (timeout === undefined) return undefined;\n\tif (!Number.isFinite(timeout) || timeout <= 0) {\n\t\tthrow new Error(\"Invalid timeout: must be a finite number of seconds\");\n\t}\n\n\tconst timeoutMs = timeout * 1000;\n\tif (timeoutMs > MAX_TIMEOUT_MS) {\n\t\tthrow new Error(`Invalid timeout: maximum is ${MAX_TIMEOUT_SECONDS} seconds`);\n\t}\n\treturn timeoutMs;\n}\n\nconst bashSchema = Type.Object({\n\tcommand: Type.String({ description: \"Bash command to execute\" }),\n\ttimeout: Type.Optional(Type.Number({ description: \"Timeout in seconds (optional, no default timeout)\" })),\n});\n\nexport const bashToolSystemPromptContribution = {\n\tsnippet: \"Execute bash commands (ls, grep, find, etc.)\",\n\tguidelines: [\"You can inspect PI_* environment variables for current model and session details.\"],\n} as const;\n\nexport type BashToolInput = Static<typeof bashSchema>;\n\nexport interface BashToolDetails {\n\ttruncation?: TruncationResult;\n\tfullOutputPath?: string;\n}\n\n/**\n * Pluggable operations for the bash tool.\n * Override these to delegate command execution to remote systems (for example SSH).\n */\nexport interface BashOperations {\n\t/**\n\t * Execute a command and stream output.\n\t * @param command The command to execute\n\t * @param cwd Working directory\n\t * @param options Execution options\n\t * @returns Promise resolving to exit code (null if killed)\n\t */\n\texec: (\n\t\tcommand: string,\n\t\tcwd: string,\n\t\toptions: {\n\t\t\tonData: (data: Buffer) => void;\n\t\t\tsignal?: AbortSignal;\n\t\t\ttimeout?: number;\n\t\t\tenv?: NodeJS.ProcessEnv;\n\t\t},\n\t) => Promise<{ exitCode: number | null }>;\n}\n\n/**\n * Create bash operations using pi's built-in local shell execution backend.\n *\n * This is useful for extensions that intercept user_bash and still want pi's\n * standard local shell behavior while wrapping or rewriting commands.\n */\nexport function createLocalBashOperations(options?: { shellPath?: string }): BashOperations {\n\treturn {\n\t\texec: async (command, cwd, { onData, signal, timeout, env }) => {\n\t\t\tconst timeoutMs = resolveTimeoutMs(timeout);\n\t\t\tif (signal?.aborted) {\n\t\t\t\tthrow new Error(\"aborted\");\n\t\t\t}\n\t\t\tconst shellConfig = getShellConfig(options?.shellPath);\n\t\t\ttry {\n\t\t\t\tawait fsAccess(cwd, constants.F_OK);\n\t\t\t} catch {\n\t\t\t\tthrow new Error(`Working directory does not exist: ${cwd}\\nCannot execute bash commands.`);\n\t\t\t}\n\n\t\t\tconst commandFromStdin = shellConfig.commandTransport === \"stdin\";\n\t\t\tconst child = spawn(shellConfig.shell, commandFromStdin ? shellConfig.args : [...shellConfig.args, command], {\n\t\t\t\tcwd,\n\t\t\t\tdetached: process.platform !== \"win32\",\n\t\t\t\tenv: env ?? getShellEnv(),\n\t\t\t\tstdio: [commandFromStdin ? \"pipe\" : \"ignore\", \"pipe\", \"pipe\"],\n\t\t\t\twindowsHide: true,\n\t\t\t});\n\t\t\tif (commandFromStdin) {\n\t\t\t\tchild.stdin?.on(\"error\", () => {});\n\t\t\t\tchild.stdin?.end(command);\n\t\t\t}\n\t\t\tif (child.pid) trackDetachedChildPid(child.pid);\n\t\t\tlet timedOut = false;\n\t\t\tlet timeoutHandle: NodeJS.Timeout | undefined;\n\t\t\tconst onAbort = () => {\n\t\t\t\tif (child.pid) killProcessTree(child.pid);\n\t\t\t};\n\n\t\t\ttry {\n\t\t\t\t// Set timeout if provided.\n\t\t\t\tif (timeoutMs !== undefined) {\n\t\t\t\t\ttimeoutHandle = setTimeout(() => {\n\t\t\t\t\t\ttimedOut = true;\n\t\t\t\t\t\tif (child.pid) killProcessTree(child.pid);\n\t\t\t\t\t}, timeoutMs);\n\t\t\t\t}\n\t\t\t\t// Stream stdout and stderr.\n\t\t\t\tchild.stdout?.on(\"data\", onData);\n\t\t\t\tchild.stderr?.on(\"data\", onData);\n\t\t\t\t// Handle abort signal by killing the entire process tree.\n\t\t\t\tif (signal) {\n\t\t\t\t\tif (signal.aborted) onAbort();\n\t\t\t\t\telse signal.addEventListener(\"abort\", onAbort, { once: true });\n\t\t\t\t}\n\t\t\t\t// Handle shell spawn errors and wait for the process to terminate without hanging\n\t\t\t\t// on inherited stdio handles held by detached descendants.\n\t\t\t\tconst exitCode = await waitForChildProcess(child);\n\t\t\t\tif (signal?.aborted) {\n\t\t\t\t\tthrow new Error(\"aborted\");\n\t\t\t\t}\n\t\t\t\tif (timedOut) {\n\t\t\t\t\tthrow new Error(`timeout:${timeout}`);\n\t\t\t\t}\n\t\t\t\treturn { exitCode };\n\t\t\t} finally {\n\t\t\t\tif (child.pid) untrackDetachedChildPid(child.pid);\n\t\t\t\tif (timeoutHandle) clearTimeout(timeoutHandle);\n\t\t\t\tif (signal) signal.removeEventListener(\"abort\", onAbort);\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport interface BashSpawnContext {\n\tcommand: string;\n\tcwd: string;\n\tenv: NodeJS.ProcessEnv;\n}\n\nexport type BashSpawnHook = (context: BashSpawnContext) => BashSpawnContext;\n\nfunction resolveSpawnContext(\n\tcommand: string,\n\tcwd: string,\n\tspawnHook: BashSpawnHook | undefined,\n\texposeSessionEnvironment: boolean,\n\tctx: ExtensionContext | undefined,\n): BashSpawnContext {\n\tconst env = { ...getShellEnv() };\n\tdelete env.PI_SESSION_ID;\n\tdelete env.PI_SESSION_FILE;\n\tdelete env.PI_PROVIDER;\n\tdelete env.PI_MODEL;\n\tdelete env.PI_REASONING_LEVEL;\n\tif (exposeSessionEnvironment && ctx) {\n\t\tconst model = ctx.model;\n\t\tenv.PI_SESSION_ID = ctx.sessionManager.getSessionId();\n\t\tconst sessionFile = ctx.sessionManager.getSessionFile();\n\t\tif (sessionFile) env.PI_SESSION_FILE = sessionFile;\n\t\tif (model) {\n\t\t\tenv.PI_PROVIDER = model.provider;\n\t\t\tenv.PI_MODEL = model.id;\n\t\t}\n\t\tif (ctx.thinkingLevel) env.PI_REASONING_LEVEL = ctx.thinkingLevel;\n\t}\n\tconst baseContext: BashSpawnContext = { command, cwd, env };\n\treturn spawnHook ? spawnHook(baseContext) : baseContext;\n}\n\nexport interface BashToolOptions {\n\t/** Custom operations for command execution. Default: local shell */\n\toperations?: BashOperations;\n\t/** Command prefix prepended to every command (for example shell setup commands) */\n\tcommandPrefix?: string;\n\t/** Optional explicit shell path from settings */\n\tshellPath?: string;\n\t/** Expose current Pi session metadata as PI_* environment variables. Default: true */\n\texposeSessionEnvironment?: boolean;\n\t/** Hook to adjust command, cwd, or env before execution */\n\tspawnHook?: BashSpawnHook;\n}\n\nconst BASH_PREVIEW_LINES = 5;\nconst BASH_UPDATE_THROTTLE_MS = 100;\n\ntype BashRenderState = {\n\tstartedAt: number | undefined;\n\tendedAt: number | undefined;\n\tinterval: NodeJS.Timeout | undefined;\n};\n\ntype BashResultRenderState = {\n\tcachedWidth: number | undefined;\n\tcachedLines: string[] | undefined;\n\tcachedSkipped: number | undefined;\n};\n\nclass BashResultRenderComponent extends Container {\n\tstate: BashResultRenderState = {\n\t\tcachedWidth: undefined,\n\t\tcachedLines: undefined,\n\t\tcachedSkipped: undefined,\n\t};\n}\n\nfunction formatDuration(ms: number): string {\n\treturn `${(ms / 1000).toFixed(1)}s`;\n}\n\nfunction formatBashCall(args: { command?: string; timeout?: number } | undefined): string {\n\tconst command = str(args?.command);\n\tconst timeout = args?.timeout as number | undefined;\n\tconst timeoutSuffix = timeout ? theme.fg(\"muted\", ` (timeout ${timeout}s)`) : \"\";\n\tconst commandDisplay = command === null ? invalidArgText(theme) : command ? command : theme.fg(\"toolOutput\", \"...\");\n\treturn theme.fg(\"toolTitle\", theme.bold(`$ ${commandDisplay}`)) + timeoutSuffix;\n}\n\nfunction rebuildBashResultRenderComponent(\n\tcomponent: BashResultRenderComponent,\n\tresult: {\n\t\tcontent: Array<{ type: string; text?: string; data?: string; mimeType?: string }>;\n\t\tdetails?: BashToolDetails;\n\t},\n\toptions: ToolRenderResultOptions,\n\tshowImages: boolean,\n\tstartedAt: number | undefined,\n\tendedAt: number | undefined,\n): void {\n\tconst state = component.state;\n\tcomponent.clear();\n\n\tlet output = getTextOutput(result as any, showImages).trim();\n\tconst truncation = result.details?.truncation;\n\tconst fullOutputPath = result.details?.fullOutputPath;\n\tif (!options.isPartial && truncation?.truncated && fullOutputPath && output.endsWith(\"]\")) {\n\t\tconst footerStart = output.lastIndexOf(\"\\n\\n[\");\n\t\tif (footerStart !== -1 && output.slice(footerStart).includes(fullOutputPath)) {\n\t\t\toutput = output.slice(0, footerStart).trimEnd();\n\t\t}\n\t}\n\n\tif (output) {\n\t\tconst styledOutput = output\n\t\t\t.split(\"\\n\")\n\t\t\t.map((line) => theme.fg(\"toolOutput\", line))\n\t\t\t.join(\"\\n\");\n\n\t\tif (options.expanded) {\n\t\t\tcomponent.addChild(new Text(`\\n${styledOutput}`, 0, 0));\n\t\t} else {\n\t\t\tcomponent.addChild({\n\t\t\t\trender: (width: number) => {\n\t\t\t\t\tif (state.cachedLines === undefined || state.cachedWidth !== width) {\n\t\t\t\t\t\tconst preview = truncateToVisualLines(styledOutput, BASH_PREVIEW_LINES, width);\n\t\t\t\t\t\tstate.cachedLines = preview.visualLines;\n\t\t\t\t\t\tstate.cachedSkipped = preview.skippedCount;\n\t\t\t\t\t\tstate.cachedWidth = width;\n\t\t\t\t\t}\n\t\t\t\t\tif (state.cachedSkipped && state.cachedSkipped > 0) {\n\t\t\t\t\t\tconst hint =\n\t\t\t\t\t\t\ttheme.fg(\"muted\", `... (${state.cachedSkipped} earlier lines,`) +\n\t\t\t\t\t\t\t` ${keyHint(\"app.tools.expand\", \"to expand\")}${theme.fg(\"muted\", \")\")}`;\n\t\t\t\t\t\treturn [\"\", truncateToWidth(hint, width, \"...\"), ...(state.cachedLines ?? [])];\n\t\t\t\t\t}\n\t\t\t\t\treturn [\"\", ...(state.cachedLines ?? [])];\n\t\t\t\t},\n\t\t\t\tinvalidate: () => {\n\t\t\t\t\tstate.cachedWidth = undefined;\n\t\t\t\t\tstate.cachedLines = undefined;\n\t\t\t\t\tstate.cachedSkipped = undefined;\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t}\n\n\tif (truncation?.truncated || fullOutputPath) {\n\t\tconst warnings: string[] = [];\n\t\tif (fullOutputPath) {\n\t\t\twarnings.push(`Full output: ${fullOutputPath}`);\n\t\t}\n\t\tif (truncation?.truncated) {\n\t\t\tif (truncation.truncatedBy === \"lines\") {\n\t\t\t\twarnings.push(`Truncated: showing ${truncation.outputLines} of ${truncation.totalLines} lines`);\n\t\t\t} else {\n\t\t\t\twarnings.push(\n\t\t\t\t\t`Truncated: ${truncation.outputLines} lines shown (${formatSize(truncation.maxBytes ?? DEFAULT_MAX_BYTES)} limit)`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tcomponent.addChild(new Text(`\\n${theme.fg(\"warning\", `[${warnings.join(\". \")}]`)}`, 0, 0));\n\t}\n\n\tif (startedAt !== undefined) {\n\t\tconst label = options.isPartial ? \"Elapsed\" : \"Took\";\n\t\tconst endTime = endedAt ?? Date.now();\n\t\tcomponent.addChild(new Text(`\\n${theme.fg(\"muted\", `${label} ${formatDuration(endTime - startedAt)}`)}`, 0, 0));\n\t}\n}\n\nexport function createBashToolDefinition(\n\tcwd: string,\n\toptions?: BashToolOptions,\n): ToolDefinition<typeof bashSchema, BashToolDetails | undefined, BashRenderState> {\n\tconst ops = options?.operations ?? createLocalBashOperations({ shellPath: options?.shellPath });\n\tconst commandPrefix = options?.commandPrefix;\n\tconst exposeSessionEnvironment = options?.exposeSessionEnvironment ?? true;\n\tconst spawnHook = options?.spawnHook;\n\treturn {\n\t\tname: \"bash\",\n\t\tlabel: \"bash\",\n\t\tdescription: `Execute a bash command in the current working directory. Returns stdout and stderr. Output is truncated to last ${DEFAULT_MAX_LINES} lines or ${DEFAULT_MAX_BYTES / 1024}KB (whichever is hit first). If truncated, full output is saved to a temp file. Optionally provide a timeout in seconds.`,\n\t\tpromptSnippet: bashToolSystemPromptContribution.snippet,\n\t\tpromptGuidelines: exposeSessionEnvironment ? [...bashToolSystemPromptContribution.guidelines] : undefined,\n\t\tparameters: bashSchema,\n\t\tconstrainedSampling: getExperimentalToolSampling(),\n\t\tasync execute(\n\t\t\t_toolCallId,\n\t\t\t{ command, timeout }: { command: string; timeout?: number },\n\t\t\tsignal?: AbortSignal,\n\t\t\tonUpdate?,\n\t\t\tctx?,\n\t\t) {\n\t\t\tconst resolvedCommand = commandPrefix ? `${commandPrefix}\\n${command}` : command;\n\t\t\tconst spawnContext = resolveSpawnContext(resolvedCommand, cwd, spawnHook, exposeSessionEnvironment, ctx);\n\t\t\tconst output = new OutputAccumulator({ tempFilePrefix: \"pi-bash\" });\n\t\t\tlet acceptingOutput = true;\n\t\t\tlet updateTimer: NodeJS.Timeout | undefined;\n\t\t\tlet updateDirty = false;\n\t\t\tlet lastUpdateAt = 0;\n\n\t\t\tconst emitOutputUpdate = () => {\n\t\t\t\tif (!onUpdate || !updateDirty) return;\n\t\t\t\tupdateDirty = false;\n\t\t\t\tlastUpdateAt = Date.now();\n\t\t\t\tconst snapshot = output.snapshot({ persistIfTruncated: true });\n\t\t\t\tonUpdate({\n\t\t\t\t\tcontent: [{ type: \"text\", text: snapshot.content || \"\" }],\n\t\t\t\t\tdetails: {\n\t\t\t\t\t\ttruncation: snapshot.truncation.truncated ? snapshot.truncation : undefined,\n\t\t\t\t\t\tfullOutputPath: snapshot.fullOutputPath,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tconst clearUpdateTimer = () => {\n\t\t\t\tif (updateTimer) {\n\t\t\t\t\tclearTimeout(updateTimer);\n\t\t\t\t\tupdateTimer = undefined;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst scheduleOutputUpdate = () => {\n\t\t\t\tif (!onUpdate) return;\n\t\t\t\tupdateDirty = true;\n\t\t\t\tconst delay = BASH_UPDATE_THROTTLE_MS - (Date.now() - lastUpdateAt);\n\t\t\t\tif (delay <= 0) {\n\t\t\t\t\tclearUpdateTimer();\n\t\t\t\t\temitOutputUpdate();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tupdateTimer ??= setTimeout(() => {\n\t\t\t\t\tupdateTimer = undefined;\n\t\t\t\t\temitOutputUpdate();\n\t\t\t\t}, delay);\n\t\t\t};\n\n\t\t\tif (onUpdate) {\n\t\t\t\tonUpdate({ content: [], details: undefined });\n\t\t\t}\n\n\t\t\tconst handleData = (data: Buffer) => {\n\t\t\t\tif (!acceptingOutput) return;\n\t\t\t\toutput.append(data);\n\t\t\t\tscheduleOutputUpdate();\n\t\t\t};\n\n\t\t\tconst finishOutput = async () => {\n\t\t\t\tacceptingOutput = false;\n\t\t\t\toutput.finish();\n\t\t\t\tclearUpdateTimer();\n\t\t\t\temitOutputUpdate();\n\t\t\t\tconst snapshot = output.snapshot({ persistIfTruncated: true });\n\t\t\t\tawait output.closeTempFile();\n\t\t\t\treturn snapshot;\n\t\t\t};\n\n\t\t\tconst formatOutput = (snapshot: Awaited<ReturnType<typeof finishOutput>>, emptyText = \"(no output)\") => {\n\t\t\t\tconst truncation = snapshot.truncation;\n\t\t\t\tlet text = snapshot.content || emptyText;\n\t\t\t\tlet details: BashToolDetails | undefined;\n\t\t\t\tif (truncation.truncated) {\n\t\t\t\t\tdetails = { truncation, fullOutputPath: snapshot.fullOutputPath };\n\t\t\t\t\tconst startLine = truncation.totalLines - truncation.outputLines + 1;\n\t\t\t\t\tconst endLine = truncation.totalLines;\n\t\t\t\t\tif (truncation.lastLinePartial) {\n\t\t\t\t\t\tconst lastLineSize = formatSize(output.getLastLineBytes());\n\t\t\t\t\t\ttext += `\\n\\n[Showing last ${formatSize(truncation.outputBytes)} of line ${endLine} (line is ${lastLineSize}). Full output: ${snapshot.fullOutputPath}]`;\n\t\t\t\t\t} else if (truncation.truncatedBy === \"lines\") {\n\t\t\t\t\t\ttext += `\\n\\n[Showing lines ${startLine}-${endLine} of ${truncation.totalLines}. Full output: ${snapshot.fullOutputPath}]`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttext += `\\n\\n[Showing lines ${startLine}-${endLine} of ${truncation.totalLines} (${formatSize(DEFAULT_MAX_BYTES)} limit). Full output: ${snapshot.fullOutputPath}]`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn { text, details };\n\t\t\t};\n\n\t\t\tconst appendStatus = (text: string, status: string) => `${text ? `${text}\\n\\n` : \"\"}${status}`;\n\n\t\t\ttry {\n\t\t\t\tlet exitCode: number | null;\n\t\t\t\ttry {\n\t\t\t\t\tconst result = await ops.exec(spawnContext.command, spawnContext.cwd, {\n\t\t\t\t\t\tonData: handleData,\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t\ttimeout,\n\t\t\t\t\t\tenv: spawnContext.env,\n\t\t\t\t\t});\n\t\t\t\t\texitCode = result.exitCode;\n\t\t\t\t} catch (err) {\n\t\t\t\t\tconst snapshot = await finishOutput();\n\t\t\t\t\tconst { text } = formatOutput(snapshot, \"\");\n\t\t\t\t\tif (err instanceof Error && err.message === \"aborted\") {\n\t\t\t\t\t\tthrow new Error(appendStatus(text, \"Command aborted\"));\n\t\t\t\t\t}\n\t\t\t\t\tif (err instanceof Error && err.message.startsWith(\"timeout:\")) {\n\t\t\t\t\t\tconst timeoutSecs = err.message.split(\":\")[1];\n\t\t\t\t\t\tthrow new Error(appendStatus(text, `Command timed out after ${timeoutSecs} seconds`));\n\t\t\t\t\t}\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\n\t\t\t\tconst snapshot = await finishOutput();\n\t\t\t\tconst { text: outputText, details } = formatOutput(snapshot);\n\t\t\t\tif (exitCode !== 0 && exitCode !== null) {\n\t\t\t\t\tthrow new Error(appendStatus(outputText, `Command exited with code ${exitCode}`));\n\t\t\t\t}\n\t\t\t\treturn { content: [{ type: \"text\", text: outputText }], details };\n\t\t\t} finally {\n\t\t\t\tclearUpdateTimer();\n\t\t\t}\n\t\t},\n\t\trenderCall(args, _theme, context) {\n\t\t\tconst state = context.state;\n\t\t\tif (context.executionStarted && state.startedAt === undefined) {\n\t\t\t\tstate.startedAt = Date.now();\n\t\t\t\tstate.endedAt = undefined;\n\t\t\t}\n\t\t\tconst text = (context.lastComponent as Text | undefined) ?? new Text(\"\", 0, 0);\n\t\t\ttext.setText(formatBashCall(args));\n\t\t\treturn text;\n\t\t},\n\t\trenderResult(result, options, _theme, context) {\n\t\t\tconst state = context.state;\n\t\t\tif (state.startedAt !== undefined && options.isPartial && !state.interval) {\n\t\t\t\tstate.interval = setInterval(() => context.invalidate(), 1000);\n\t\t\t}\n\t\t\tif (!options.isPartial || context.isError) {\n\t\t\t\tstate.endedAt ??= Date.now();\n\t\t\t\tif (state.interval) {\n\t\t\t\t\tclearInterval(state.interval);\n\t\t\t\t\tstate.interval = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst component =\n\t\t\t\t(context.lastComponent as BashResultRenderComponent | undefined) ?? new BashResultRenderComponent();\n\t\t\trebuildBashResultRenderComponent(\n\t\t\t\tcomponent,\n\t\t\t\tresult as any,\n\t\t\t\toptions,\n\t\t\t\tcontext.showImages,\n\t\t\t\tstate.startedAt,\n\t\t\t\tstate.endedAt,\n\t\t\t);\n\t\t\tcomponent.invalidate();\n\t\t\treturn component;\n\t\t},\n\t};\n}\n\nexport function createBashTool(cwd: string, options?: BashToolOptions): AgentTool<typeof bashSchema> {\n\tconst definition = createBashToolDefinition(cwd, options);\n\tconst tool = wrapToolDefinition(definition);\n\tObject.assign(tool, {\n\t\tpromptSnippet: definition.promptSnippet,\n\t\tpromptGuidelines: definition.promptGuidelines,\n\t});\n\treturn tool;\n}\n"]}
1
+ {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/core/tools/bash.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Coerción de argumentos para TODAS las herramientas, en el paquete que viaja.
3
+ *
4
+ * POR QUÉ EXISTE. `packages/ai` tiene la misma lógica dentro de
5
+ * `validateToolArguments`, pero ese paquete NO llega al cliente: el tarball de
6
+ * `@hoilab/ada-cli` resuelve `@earendil-works/pi-ai` del registro de npm, así
7
+ * que quien instala recibe el de upstream. Medido: 2.066 ficheros en el
8
+ * paquete, cero de `pi-ai`.
9
+ *
10
+ * `edit` ya quedó cubierto porque tiene su propio `prepareArguments`. Esto lo
11
+ * extiende al resto sin depender de que cada herramienta se acuerde: se aplica
12
+ * en los dos embudos por los que pasan todas.
13
+ *
14
+ * QUÉ ARREGLA, medido contra un modelo gratuito: el modelo manda un argumento
15
+ * que el esquema declara array u objeto **como cadena de JSON**, y encima con
16
+ * caracteres de control crudos dentro —18 tabuladores en la carga real— que el
17
+ * JSON prohíbe. Sin esto, la llamada se rechaza y se pierde el turno entero.
18
+ *
19
+ * LO QUE NO HACE, y es lo que la mantiene honesta:
20
+ *
21
+ * · solo mira las propiedades de primer nivel, que es donde los modelos
22
+ * ponen el JSON en cadena; no reescribe el argumento en profundidad;
23
+ * · solo actúa si el esquema pide array u objeto. Una cadena que se quería
24
+ * cadena no se toca — un comando de `bash` que empieza por `[` sigue
25
+ * siendo un comando;
26
+ * · solo acepta el resultado si parsea EXACTAMENTE al tipo pedido;
27
+ * · si no parsea, devuelve el valor intacto para que el error de validación
28
+ * siga siendo el que le dice al modelo qué forma esperábamos.
29
+ */
30
+ /**
31
+ * Convierte las propiedades que llegaron como cadena de JSON y deberían ser
32
+ * array u objeto. Devuelve el MISMO objeto si no hubo nada que cambiar, para
33
+ * que quien compare por referencia siga pudiendo.
34
+ */
35
+ export declare function coercionarArgumentos(args: unknown, parametros: unknown): unknown;
36
+ /**
37
+ * Envuelve una herramienta para que sus argumentos pasen por la coerción.
38
+ *
39
+ * Se compone con el `prepareArguments` que la herramienta ya tuviera: primero
40
+ * la coerción genérica, después el suyo. El orden importa — el de `edit`
41
+ * convierte un edit suelto en una lista de uno, y para eso necesita que `edits`
42
+ * ya sea lo que dice ser.
43
+ */
44
+ export declare function conCoercionDeArgumentos<T extends {
45
+ parameters?: unknown;
46
+ prepareArguments?: (x: unknown) => unknown;
47
+ }>(herramienta: T): T;
48
+ //# sourceMappingURL=coercion-argumentos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coercion-argumentos.d.ts","sourceRoot":"","sources":["../../../src/core/tools/coercion-argumentos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAgBH;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAgChF;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,CAAA;CAAE,EACrH,WAAW,EAAE,CAAC,GACZ,CAAC,CASH"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Coerción de argumentos para TODAS las herramientas, en el paquete que viaja.
3
+ *
4
+ * POR QUÉ EXISTE. `packages/ai` tiene la misma lógica dentro de
5
+ * `validateToolArguments`, pero ese paquete NO llega al cliente: el tarball de
6
+ * `@hoilab/ada-cli` resuelve `@earendil-works/pi-ai` del registro de npm, así
7
+ * que quien instala recibe el de upstream. Medido: 2.066 ficheros en el
8
+ * paquete, cero de `pi-ai`.
9
+ *
10
+ * `edit` ya quedó cubierto porque tiene su propio `prepareArguments`. Esto lo
11
+ * extiende al resto sin depender de que cada herramienta se acuerde: se aplica
12
+ * en los dos embudos por los que pasan todas.
13
+ *
14
+ * QUÉ ARREGLA, medido contra un modelo gratuito: el modelo manda un argumento
15
+ * que el esquema declara array u objeto **como cadena de JSON**, y encima con
16
+ * caracteres de control crudos dentro —18 tabuladores en la carga real— que el
17
+ * JSON prohíbe. Sin esto, la llamada se rechaza y se pierde el turno entero.
18
+ *
19
+ * LO QUE NO HACE, y es lo que la mantiene honesta:
20
+ *
21
+ * · solo mira las propiedades de primer nivel, que es donde los modelos
22
+ * ponen el JSON en cadena; no reescribe el argumento en profundidad;
23
+ * · solo actúa si el esquema pide array u objeto. Una cadena que se quería
24
+ * cadena no se toca — un comando de `bash` que empieza por `[` sigue
25
+ * siendo un comando;
26
+ * · solo acepta el resultado si parsea EXACTAMENTE al tipo pedido;
27
+ * · si no parsea, devuelve el valor intacto para que el error de validación
28
+ * siga siendo el que le dice al modelo qué forma esperábamos.
29
+ */
30
+ import { parsearJsonTolerante } from "./json-tolerante.js";
31
+ function tipoDe(esquema) {
32
+ const t = esquema?.type;
33
+ if (typeof t === "string")
34
+ return [t];
35
+ if (Array.isArray(t))
36
+ return t.filter((x) => typeof x === "string");
37
+ return [];
38
+ }
39
+ /**
40
+ * Convierte las propiedades que llegaron como cadena de JSON y deberían ser
41
+ * array u objeto. Devuelve el MISMO objeto si no hubo nada que cambiar, para
42
+ * que quien compare por referencia siga pudiendo.
43
+ */
44
+ export function coercionarArgumentos(args, parametros) {
45
+ if (!args || typeof args !== "object" || Array.isArray(args))
46
+ return args;
47
+ const propiedades = parametros?.properties;
48
+ if (!propiedades)
49
+ return args;
50
+ const objeto = args;
51
+ for (const [clave, esquema] of Object.entries(propiedades)) {
52
+ const valor = objeto[clave];
53
+ if (typeof valor !== "string")
54
+ continue;
55
+ const tipos = tipoDe(esquema);
56
+ const quiereArray = tipos.includes("array");
57
+ const quiereObjeto = tipos.includes("object");
58
+ if (!quiereArray && !quiereObjeto)
59
+ continue;
60
+ const recortado = valor.trim();
61
+ // El primer carácter descarta casi todo sin pagar un parseo, y evita
62
+ // convertir `"12"` o `"true"` en algo que el esquema no pidió.
63
+ const abre = quiereArray ? "[" : "{";
64
+ if (!recortado.startsWith(abre))
65
+ continue;
66
+ try {
67
+ const parsed = parsearJsonTolerante(recortado);
68
+ const encaja = quiereArray
69
+ ? Array.isArray(parsed)
70
+ : typeof parsed === "object" && parsed !== null && !Array.isArray(parsed);
71
+ if (encaja)
72
+ objeto[clave] = parsed;
73
+ }
74
+ catch {
75
+ // Intacto a propósito: el error de validación posterior es la pista que
76
+ // el modelo necesita para reintentar con la forma correcta.
77
+ }
78
+ }
79
+ return objeto;
80
+ }
81
+ /**
82
+ * Envuelve una herramienta para que sus argumentos pasen por la coerción.
83
+ *
84
+ * Se compone con el `prepareArguments` que la herramienta ya tuviera: primero
85
+ * la coerción genérica, después el suyo. El orden importa — el de `edit`
86
+ * convierte un edit suelto en una lista de uno, y para eso necesita que `edits`
87
+ * ya sea lo que dice ser.
88
+ */
89
+ export function conCoercionDeArgumentos(herramienta) {
90
+ const propio = herramienta.prepareArguments;
91
+ return {
92
+ ...herramienta,
93
+ prepareArguments: (entrada) => {
94
+ const coercionado = coercionarArgumentos(entrada, herramienta.parameters);
95
+ return propio ? propio(coercionado) : coercionado;
96
+ },
97
+ };
98
+ }
99
+ //# sourceMappingURL=coercion-argumentos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coercion-argumentos.js","sourceRoot":"","sources":["../../../src/core/tools/coercion-argumentos.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAO3D,SAAS,MAAM,CAAC,OAAuC;IACtD,MAAM,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC;IACxB,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACjF,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAa,EAAE,UAAmB;IACtE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1E,MAAM,WAAW,GAAI,UAAwC,EAAE,UAAU,CAAC;IAC1E,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,MAAM,GAAG,IAA+B,CAAC;IAC/C,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QACxC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY;YAAE,SAAS;QAE5C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/B,qEAAqE;QACrE,+DAA+D;QAC/D,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAE1C,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,WAAW;gBACzB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBACvB,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3E,IAAI,MAAM;gBAAE,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;QACpC,CAAC;QAAC,MAAM,CAAC;YACR,wEAAwE;YACxE,4DAA4D;QAC7D,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACtC,WAAc;IAEd,MAAM,MAAM,GAAG,WAAW,CAAC,gBAAgB,CAAC;IAC5C,OAAO;QACN,GAAG,WAAW;QACd,gBAAgB,EAAE,CAAC,OAAgB,EAAE,EAAE;YACtC,MAAM,WAAW,GAAG,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;YAC1E,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACnD,CAAC;KACD,CAAC;AACH,CAAC"}
@@ -4,13 +4,6 @@
4
4
  export declare function detectLineEnding(content: string): "\r\n" | "\n";
5
5
  export declare function normalizeToLF(text: string): string;
6
6
  export declare function restoreLineEndings(text: string, ending: "\r\n" | "\n"): string;
7
- /**
8
- * Normalize text for fuzzy matching. Applies progressive transformations:
9
- * - Strip trailing whitespace from each line
10
- * - Normalize smart quotes to ASCII equivalents
11
- * - Normalize Unicode dashes/hyphens to ASCII hyphen
12
- * - Normalize special Unicode spaces to regular space
13
- */
14
7
  export declare function normalizeForFuzzyMatch(text: string): string;
15
8
  interface MatchedEdit {
16
9
  editIndex: number;
@@ -1 +1 @@
1
- {"version":3,"file":"edit-diff.d.ts","sourceRoot":"","sources":["../../../src/core/tools/edit-diff.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE9E;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAqB3D;AAWD,UAAU,WAAW;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,KAAK,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,YAAY,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;AAiDnF;;;;;;;;;GASG;AACH,wBAAgB,yCAAyC,CACxD,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,eAAe,EAAE,GAC7B,MAAM,CAqCR;AAED,MAAM,WAAW,gBAAgB;IAChC,gCAAgC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,4FAA4F;IAC5F,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,cAAc,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,qBAAqB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,IAAI;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAsChF;AA8CD;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC5C,iBAAiB,EAAE,MAAM,EACzB,KAAK,EAAE,IAAI,EAAE,EACb,IAAI,EAAE,MAAM,GACV,kBAAkB,CA0DpB;AAED,yCAAyC;AACzC,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,MAAM,CAKnH;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,YAAY,SAAI,GACd;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAuHxD;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,IAAI,EAAE,EACb,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,cAAc,GAAG,aAAa,CAAC,CAyBzC;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,cAAc,GAAG,aAAa,CAAC,CAEzC","sourcesContent":["/**\n * Shared diff computation utilities for the edit and similar tools.\n */\n\nimport * as Diff from \"diff\";\nimport { constants } from \"fs\";\nimport { access, readFile } from \"fs/promises\";\nimport { splitBom } from \"../../utils/text.ts\";\nimport { resolveToCwd } from \"./path-utils.ts\";\n\nexport function detectLineEnding(content: string): \"\\r\\n\" | \"\\n\" {\n\tconst crlfIdx = content.indexOf(\"\\r\\n\");\n\tconst lfIdx = content.indexOf(\"\\n\");\n\tif (lfIdx === -1) return \"\\n\";\n\tif (crlfIdx === -1) return \"\\n\";\n\treturn crlfIdx < lfIdx ? \"\\r\\n\" : \"\\n\";\n}\n\nexport function normalizeToLF(text: string): string {\n\treturn text.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\");\n}\n\nexport function restoreLineEndings(text: string, ending: \"\\r\\n\" | \"\\n\"): string {\n\treturn ending === \"\\r\\n\" ? text.replace(/\\n/g, \"\\r\\n\") : text;\n}\n\n/**\n * Normalize text for fuzzy matching. Applies progressive transformations:\n * - Strip trailing whitespace from each line\n * - Normalize smart quotes to ASCII equivalents\n * - Normalize Unicode dashes/hyphens to ASCII hyphen\n * - Normalize special Unicode spaces to regular space\n */\nexport function normalizeForFuzzyMatch(text: string): string {\n\treturn (\n\t\ttext\n\t\t\t.normalize(\"NFKC\")\n\t\t\t// Strip trailing whitespace per line\n\t\t\t.split(\"\\n\")\n\t\t\t.map((line) => line.trimEnd())\n\t\t\t.join(\"\\n\")\n\t\t\t// Smart single quotes → '\n\t\t\t.replace(/[\\u2018\\u2019\\u201A\\u201B]/g, \"'\")\n\t\t\t// Smart double quotes → \"\n\t\t\t.replace(/[\\u201C\\u201D\\u201E\\u201F]/g, '\"')\n\t\t\t// Various dashes/hyphens → -\n\t\t\t// U+2010 hyphen, U+2011 non-breaking hyphen, U+2012 figure dash,\n\t\t\t// U+2013 en-dash, U+2014 em-dash, U+2015 horizontal bar, U+2212 minus\n\t\t\t.replace(/[\\u2010\\u2011\\u2012\\u2013\\u2014\\u2015\\u2212]/g, \"-\")\n\t\t\t// Special spaces → regular space\n\t\t\t// U+00A0 NBSP, U+2002-U+200A various spaces, U+202F narrow NBSP,\n\t\t\t// U+205F medium math space, U+3000 ideographic space\n\t\t\t.replace(/[\\u00A0\\u2002-\\u200A\\u202F\\u205F\\u3000]/g, \" \")\n\t);\n}\n\nfunction splitLinesWithEndings(content: string): string[] {\n\treturn content.match(/[^\\n]*\\n|[^\\n]+/g) ?? [];\n}\n\ninterface LineSpan {\n\tstart: number;\n\tend: number;\n}\n\ninterface MatchedEdit {\n\teditIndex: number;\n\tmatchIndex: number;\n\tmatchLength: number;\n\tnewText: string;\n}\n\ntype TextReplacement = Pick<MatchedEdit, \"matchIndex\" | \"matchLength\" | \"newText\">;\n\nfunction getLineSpans(content: string): LineSpan[] {\n\tlet offset = 0;\n\treturn splitLinesWithEndings(content).map((line) => {\n\t\tconst span = { start: offset, end: offset + line.length };\n\t\toffset = span.end;\n\t\treturn span;\n\t});\n}\n\nfunction getReplacementLineRange(lines: LineSpan[], replacement: TextReplacement) {\n\tconst replacementStart = replacement.matchIndex;\n\tconst replacementEnd = replacement.matchIndex + replacement.matchLength;\n\n\tlet startLine = -1;\n\tfor (let i = 0; i < lines.length; i++) {\n\t\tconst line = lines[i];\n\t\tif (replacementStart >= line.start && replacementStart < line.end) {\n\t\t\tstartLine = i;\n\t\t\tbreak;\n\t\t}\n\t}\n\tif (startLine === -1) {\n\t\tthrow new Error(\"Replacement range is outside the base content.\");\n\t}\n\n\tlet endLine = startLine;\n\twhile (endLine < lines.length && lines[endLine].end < replacementEnd) {\n\t\tendLine++;\n\t}\n\tif (endLine >= lines.length) {\n\t\tthrow new Error(\"Replacement range is outside the base content.\");\n\t}\n\n\treturn { startLine, endLine: endLine + 1 };\n}\n\nfunction applyReplacements(content: string, replacements: TextReplacement[], offset = 0): string {\n\tlet result = content;\n\tfor (let i = replacements.length - 1; i >= 0; i--) {\n\t\tconst replacement = replacements[i];\n\t\tconst matchIndex = replacement.matchIndex - offset;\n\t\tresult =\n\t\t\tresult.substring(0, matchIndex) + replacement.newText + result.substring(matchIndex + replacement.matchLength);\n\t}\n\treturn result;\n}\n\n/**\n * Apply replacements matched against `baseContent` to `originalContent` while\n * preserving unchanged line blocks from the original.\n *\n * This is useful when `baseContent` is a normalized view of the original. Each\n * replacement is widened to the lines it actually touches, those touched lines\n * are rewritten from the normalized base, and all other lines are copied back\n * from `originalContent`. The actual replacement ranges drive preservation so\n * duplicate normalized lines cannot be aligned to the wrong occurrence.\n */\nexport function applyReplacementsPreservingUnchangedLines(\n\toriginalContent: string,\n\tbaseContent: string,\n\treplacements: TextReplacement[],\n): string {\n\tconst originalLines = splitLinesWithEndings(originalContent);\n\tconst baseLines = getLineSpans(baseContent);\n\tif (originalLines.length !== baseLines.length) {\n\t\tthrow new Error(\"Cannot preserve unchanged lines because the base content has a different line count.\");\n\t}\n\n\tconst groups: Array<{ startLine: number; endLine: number; replacements: TextReplacement[] }> = [];\n\tconst sortedReplacements = [...replacements].sort((a, b) => a.matchIndex - b.matchIndex);\n\tfor (const replacement of sortedReplacements) {\n\t\tconst range = getReplacementLineRange(baseLines, replacement);\n\t\tconst current = groups[groups.length - 1];\n\t\tif (current && range.startLine < current.endLine) {\n\t\t\tcurrent.endLine = Math.max(current.endLine, range.endLine);\n\t\t\tcurrent.replacements.push(replacement);\n\t\t\tcontinue;\n\t\t}\n\t\tgroups.push({ ...range, replacements: [replacement] });\n\t}\n\n\tlet originalLineIndex = 0;\n\tlet result = \"\";\n\tfor (const group of groups) {\n\t\tresult += originalLines.slice(originalLineIndex, group.startLine).join(\"\");\n\n\t\tconst groupStartOffset = baseLines[group.startLine].start;\n\t\tconst groupEndOffset = baseLines[group.endLine - 1].end;\n\t\tresult += applyReplacements(\n\t\t\tbaseContent.slice(groupStartOffset, groupEndOffset),\n\t\t\tgroup.replacements,\n\t\t\tgroupStartOffset,\n\t\t);\n\t\toriginalLineIndex = group.endLine;\n\t}\n\tresult += originalLines.slice(originalLineIndex).join(\"\");\n\n\treturn result;\n}\n\nexport interface FuzzyMatchResult {\n\t/** Whether a match was found */\n\tfound: boolean;\n\t/** The index where the match starts (in the content that should be used for replacement) */\n\tindex: number;\n\t/** Length of the matched text */\n\tmatchLength: number;\n\t/** Whether fuzzy matching was used (false = exact match) */\n\tusedFuzzyMatch: boolean;\n\t/**\n\t * The content to use for replacement operations.\n\t * When exact match: original content. When fuzzy match: normalized content.\n\t */\n\tcontentForReplacement: string;\n}\n\nexport interface Edit {\n\toldText: string;\n\tnewText: string;\n}\n\nexport interface AppliedEditsResult {\n\tbaseContent: string;\n\tnewContent: string;\n}\n\n/**\n * Find oldText in content, trying exact match first, then fuzzy match.\n * When fuzzy matching is used, the returned contentForReplacement is the\n * fuzzy-normalized version of the content (trailing whitespace stripped,\n * Unicode quotes/dashes normalized to ASCII).\n */\nexport function fuzzyFindText(content: string, oldText: string): FuzzyMatchResult {\n\t// Try exact match first\n\tconst exactIndex = content.indexOf(oldText);\n\tif (exactIndex !== -1) {\n\t\treturn {\n\t\t\tfound: true,\n\t\t\tindex: exactIndex,\n\t\t\tmatchLength: oldText.length,\n\t\t\tusedFuzzyMatch: false,\n\t\t\tcontentForReplacement: content,\n\t\t};\n\t}\n\n\t// Try fuzzy match - work entirely in normalized space\n\tconst fuzzyContent = normalizeForFuzzyMatch(content);\n\tconst fuzzyOldText = normalizeForFuzzyMatch(oldText);\n\tconst fuzzyIndex = fuzzyContent.indexOf(fuzzyOldText);\n\n\tif (fuzzyIndex === -1) {\n\t\treturn {\n\t\t\tfound: false,\n\t\t\tindex: -1,\n\t\t\tmatchLength: 0,\n\t\t\tusedFuzzyMatch: false,\n\t\t\tcontentForReplacement: content,\n\t\t};\n\t}\n\n\t// When fuzzy matching, return offsets in normalized space. Callers can use\n\t// the normalized content to compute replacements, then decide how much of\n\t// that normalized output should be written back.\n\treturn {\n\t\tfound: true,\n\t\tindex: fuzzyIndex,\n\t\tmatchLength: fuzzyOldText.length,\n\t\tusedFuzzyMatch: true,\n\t\tcontentForReplacement: fuzzyContent,\n\t};\n}\n\nfunction countOccurrences(content: string, oldText: string): number {\n\tconst fuzzyContent = normalizeForFuzzyMatch(content);\n\tconst fuzzyOldText = normalizeForFuzzyMatch(oldText);\n\treturn fuzzyContent.split(fuzzyOldText).length - 1;\n}\n\nfunction getNotFoundError(path: string, editIndex: number, totalEdits: number): Error {\n\tif (totalEdits === 1) {\n\t\treturn new Error(\n\t\t\t`Could not find the exact text in ${path}. The old text must match exactly including all whitespace and newlines.`,\n\t\t);\n\t}\n\treturn new Error(\n\t\t`Could not find edits[${editIndex}] in ${path}. The oldText must match exactly including all whitespace and newlines.`,\n\t);\n}\n\nfunction getDuplicateError(path: string, editIndex: number, totalEdits: number, occurrences: number): Error {\n\tif (totalEdits === 1) {\n\t\treturn new Error(\n\t\t\t`Found ${occurrences} occurrences of the text in ${path}. The text must be unique. Please provide more context to make it unique.`,\n\t\t);\n\t}\n\treturn new Error(\n\t\t`Found ${occurrences} occurrences of edits[${editIndex}] in ${path}. Each oldText must be unique. Please provide more context to make it unique.`,\n\t);\n}\n\nfunction getEmptyOldTextError(path: string, editIndex: number, totalEdits: number): Error {\n\tif (totalEdits === 1) {\n\t\treturn new Error(`oldText must not be empty in ${path}.`);\n\t}\n\treturn new Error(`edits[${editIndex}].oldText must not be empty in ${path}.`);\n}\n\nfunction getNoChangeError(path: string, totalEdits: number): Error {\n\tif (totalEdits === 1) {\n\t\treturn new Error(\n\t\t\t`No changes made to ${path}. The replacement produced identical content. This might indicate an issue with special characters or the text not existing as expected.`,\n\t\t);\n\t}\n\treturn new Error(`No changes made to ${path}. The replacements produced identical content.`);\n}\n\n/**\n * Apply one or more exact-text replacements to LF-normalized content.\n *\n * All edits are matched against the same original content. Replacements are\n * then applied in reverse order so offsets remain stable. If any edit needs\n * fuzzy matching, the operation runs in fuzzy-normalized content space and then\n * overlays those line-level changes onto the original content so unchanged line\n * blocks keep their original bytes.\n */\nexport function applyEditsToNormalizedContent(\n\tnormalizedContent: string,\n\tedits: Edit[],\n\tpath: string,\n): AppliedEditsResult {\n\tconst normalizedEdits = edits.map((edit) => ({\n\t\toldText: normalizeToLF(edit.oldText),\n\t\tnewText: normalizeToLF(edit.newText),\n\t}));\n\n\tfor (let i = 0; i < normalizedEdits.length; i++) {\n\t\tif (normalizedEdits[i].oldText.length === 0) {\n\t\t\tthrow getEmptyOldTextError(path, i, normalizedEdits.length);\n\t\t}\n\t}\n\n\tconst initialMatches = normalizedEdits.map((edit) => fuzzyFindText(normalizedContent, edit.oldText));\n\tconst usedFuzzyMatch = initialMatches.some((match) => match.usedFuzzyMatch);\n\tconst replacementBaseContent = usedFuzzyMatch ? normalizeForFuzzyMatch(normalizedContent) : normalizedContent;\n\n\tconst matchedEdits: MatchedEdit[] = [];\n\tfor (let i = 0; i < normalizedEdits.length; i++) {\n\t\tconst edit = normalizedEdits[i];\n\t\tconst matchResult = fuzzyFindText(replacementBaseContent, edit.oldText);\n\t\tif (!matchResult.found) {\n\t\t\tthrow getNotFoundError(path, i, normalizedEdits.length);\n\t\t}\n\n\t\tconst occurrences = countOccurrences(replacementBaseContent, edit.oldText);\n\t\tif (occurrences > 1) {\n\t\t\tthrow getDuplicateError(path, i, normalizedEdits.length, occurrences);\n\t\t}\n\n\t\tmatchedEdits.push({\n\t\t\teditIndex: i,\n\t\t\tmatchIndex: matchResult.index,\n\t\t\tmatchLength: matchResult.matchLength,\n\t\t\tnewText: edit.newText,\n\t\t});\n\t}\n\n\tmatchedEdits.sort((a, b) => a.matchIndex - b.matchIndex);\n\tfor (let i = 1; i < matchedEdits.length; i++) {\n\t\tconst previous = matchedEdits[i - 1];\n\t\tconst current = matchedEdits[i];\n\t\tif (previous.matchIndex + previous.matchLength > current.matchIndex) {\n\t\t\tthrow new Error(\n\t\t\t\t`edits[${previous.editIndex}] and edits[${current.editIndex}] overlap in ${path}. Merge them into one edit or target disjoint regions.`,\n\t\t\t);\n\t\t}\n\t}\n\n\tconst baseContent = normalizedContent;\n\tconst newContent = usedFuzzyMatch\n\t\t? applyReplacementsPreservingUnchangedLines(normalizedContent, replacementBaseContent, matchedEdits)\n\t\t: applyReplacements(replacementBaseContent, matchedEdits);\n\n\tif (baseContent === newContent) {\n\t\tthrow getNoChangeError(path, normalizedEdits.length);\n\t}\n\n\treturn { baseContent, newContent };\n}\n\n/** Generate a standard unified patch. */\nexport function generateUnifiedPatch(path: string, oldContent: string, newContent: string, contextLines = 4): string {\n\treturn Diff.createTwoFilesPatch(path, path, oldContent, newContent, undefined, undefined, {\n\t\tcontext: contextLines,\n\t\theaderOptions: Diff.FILE_HEADERS_ONLY,\n\t});\n}\n\n/**\n * Generate a display-oriented diff string with line numbers and context.\n * Returns both the diff string and the first changed line number (in the new file).\n */\nexport function generateDiffString(\n\toldContent: string,\n\tnewContent: string,\n\tcontextLines = 4,\n): { diff: string; firstChangedLine: number | undefined } {\n\tconst parts = Diff.diffLines(oldContent, newContent);\n\tconst output: string[] = [];\n\n\tconst oldLines = oldContent.split(\"\\n\");\n\tconst newLines = newContent.split(\"\\n\");\n\tconst maxLineNum = Math.max(oldLines.length, newLines.length);\n\tconst lineNumWidth = String(maxLineNum).length;\n\n\tlet oldLineNum = 1;\n\tlet newLineNum = 1;\n\tlet lastWasChange = false;\n\tlet firstChangedLine: number | undefined;\n\n\tfor (let i = 0; i < parts.length; i++) {\n\t\tconst part = parts[i];\n\t\tconst raw = part.value.split(\"\\n\");\n\t\tif (raw[raw.length - 1] === \"\") {\n\t\t\traw.pop();\n\t\t}\n\n\t\tif (part.added || part.removed) {\n\t\t\t// Capture the first changed line (in the new file)\n\t\t\tif (firstChangedLine === undefined) {\n\t\t\t\tfirstChangedLine = newLineNum;\n\t\t\t}\n\n\t\t\t// Show the change\n\t\t\tfor (const line of raw) {\n\t\t\t\tif (part.added) {\n\t\t\t\t\tconst lineNum = String(newLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\toutput.push(`+${lineNum} ${line}`);\n\t\t\t\t\tnewLineNum++;\n\t\t\t\t} else {\n\t\t\t\t\t// removed\n\t\t\t\t\tconst lineNum = String(oldLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\toutput.push(`-${lineNum} ${line}`);\n\t\t\t\t\toldLineNum++;\n\t\t\t\t}\n\t\t\t}\n\t\t\tlastWasChange = true;\n\t\t} else {\n\t\t\t// Context lines - only show a few before/after changes\n\t\t\tconst nextPartIsChange = i < parts.length - 1 && (parts[i + 1].added || parts[i + 1].removed);\n\t\t\tconst hasLeadingChange = lastWasChange;\n\t\t\tconst hasTrailingChange = nextPartIsChange;\n\n\t\t\tif (hasLeadingChange && hasTrailingChange) {\n\t\t\t\tif (raw.length <= contextLines * 2) {\n\t\t\t\t\tfor (const line of raw) {\n\t\t\t\t\t\tconst lineNum = String(oldLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\t\toutput.push(` ${lineNum} ${line}`);\n\t\t\t\t\t\toldLineNum++;\n\t\t\t\t\t\tnewLineNum++;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst leadingLines = raw.slice(0, contextLines);\n\t\t\t\t\tconst trailingLines = raw.slice(raw.length - contextLines);\n\t\t\t\t\tconst skippedLines = raw.length - leadingLines.length - trailingLines.length;\n\n\t\t\t\t\tfor (const line of leadingLines) {\n\t\t\t\t\t\tconst lineNum = String(oldLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\t\toutput.push(` ${lineNum} ${line}`);\n\t\t\t\t\t\toldLineNum++;\n\t\t\t\t\t\tnewLineNum++;\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(` ${\"\".padStart(lineNumWidth, \" \")} ...`);\n\t\t\t\t\toldLineNum += skippedLines;\n\t\t\t\t\tnewLineNum += skippedLines;\n\n\t\t\t\t\tfor (const line of trailingLines) {\n\t\t\t\t\t\tconst lineNum = String(oldLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\t\toutput.push(` ${lineNum} ${line}`);\n\t\t\t\t\t\toldLineNum++;\n\t\t\t\t\t\tnewLineNum++;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (hasLeadingChange) {\n\t\t\t\tconst shownLines = raw.slice(0, contextLines);\n\t\t\t\tconst skippedLines = raw.length - shownLines.length;\n\n\t\t\t\tfor (const line of shownLines) {\n\t\t\t\t\tconst lineNum = String(oldLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\toutput.push(` ${lineNum} ${line}`);\n\t\t\t\t\toldLineNum++;\n\t\t\t\t\tnewLineNum++;\n\t\t\t\t}\n\n\t\t\t\tif (skippedLines > 0) {\n\t\t\t\t\toutput.push(` ${\"\".padStart(lineNumWidth, \" \")} ...`);\n\t\t\t\t\toldLineNum += skippedLines;\n\t\t\t\t\tnewLineNum += skippedLines;\n\t\t\t\t}\n\t\t\t} else if (hasTrailingChange) {\n\t\t\t\tconst skippedLines = Math.max(0, raw.length - contextLines);\n\t\t\t\tif (skippedLines > 0) {\n\t\t\t\t\toutput.push(` ${\"\".padStart(lineNumWidth, \" \")} ...`);\n\t\t\t\t\toldLineNum += skippedLines;\n\t\t\t\t\tnewLineNum += skippedLines;\n\t\t\t\t}\n\n\t\t\t\tfor (const line of raw.slice(skippedLines)) {\n\t\t\t\t\tconst lineNum = String(oldLineNum).padStart(lineNumWidth, \" \");\n\t\t\t\t\toutput.push(` ${lineNum} ${line}`);\n\t\t\t\t\toldLineNum++;\n\t\t\t\t\tnewLineNum++;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Skip these context lines entirely\n\t\t\t\toldLineNum += raw.length;\n\t\t\t\tnewLineNum += raw.length;\n\t\t\t}\n\n\t\t\tlastWasChange = false;\n\t\t}\n\t}\n\n\treturn { diff: output.join(\"\\n\"), firstChangedLine };\n}\n\nexport interface EditDiffResult {\n\tdiff: string;\n\tfirstChangedLine: number | undefined;\n}\n\nexport interface EditDiffError {\n\terror: string;\n}\n\n/**\n * Compute the diff for one or more edit operations without applying them.\n * Used for preview rendering in the TUI before the tool executes.\n */\nexport async function computeEditsDiff(\n\tpath: string,\n\tedits: Edit[],\n\tcwd: string,\n): Promise<EditDiffResult | EditDiffError> {\n\tconst absolutePath = resolveToCwd(path, cwd);\n\n\ttry {\n\t\t// Check if file exists and is readable\n\t\ttry {\n\t\t\tawait access(absolutePath, constants.R_OK);\n\t\t} catch (error: unknown) {\n\t\t\tconst errorMessage = error instanceof Error && \"code\" in error ? `Error code: ${error.code}` : String(error);\n\t\t\treturn { error: `Could not edit file: ${path}. ${errorMessage}.` };\n\t\t}\n\n\t\t// Read the file\n\t\tconst rawContent = await readFile(absolutePath, \"utf-8\");\n\n\t\t// Strip BOM before matching (LLM won't include invisible BOM in oldText)\n\t\tconst { text: content } = splitBom(rawContent);\n\t\tconst normalizedContent = normalizeToLF(content);\n\t\tconst { baseContent, newContent } = applyEditsToNormalizedContent(normalizedContent, edits, path);\n\n\t\t// Generate the diff\n\t\treturn generateDiffString(baseContent, newContent);\n\t} catch (err) {\n\t\treturn { error: err instanceof Error ? err.message : String(err) };\n\t}\n}\n\n/**\n * Compute the diff for a single edit operation without applying it.\n * Kept as a convenience wrapper for single-edit callers.\n */\nexport async function computeEditDiff(\n\tpath: string,\n\toldText: string,\n\tnewText: string,\n\tcwd: string,\n): Promise<EditDiffResult | EditDiffError> {\n\treturn computeEditsDiff(path, [{ oldText, newText }], cwd);\n}\n"]}
1
+ {"version":3,"file":"edit-diff.d.ts","sourceRoot":"","sources":["../../../src/core/tools/edit-diff.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE9E;AAkED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAoB3D;AAWD,UAAU,WAAW;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,KAAK,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,YAAY,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;AAiDnF;;;;;;;;;GASG;AACH,wBAAgB,yCAAyC,CACxD,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,eAAe,EAAE,GAC7B,MAAM,CA+GR;AAED,MAAM,WAAW,gBAAgB;IAChC,gCAAgC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,4FAA4F;IAC5F,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,cAAc,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,qBAAqB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,IAAI;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAsChF;AA8CD;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC5C,iBAAiB,EAAE,MAAM,EACzB,KAAK,EAAE,IAAI,EAAE,EACb,IAAI,EAAE,MAAM,GACV,kBAAkB,CAyJpB;AAED,yCAAyC;AACzC,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,MAAM,CAKnH;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,YAAY,SAAI,GACd;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAuHxD;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,IAAI,EAAE,EACb,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,cAAc,GAAG,aAAa,CAAC,CAyBzC;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,cAAc,GAAG,aAAa,CAAC,CAEzC"}