@subimpact/e 0.99.12 → 0.100.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 (930) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +7 -1
  3. package/dist/bundle/chunks/anthropic-messages-BGDBSRR2.js +6 -0
  4. package/dist/bundle/chunks/azure-openai-responses-ZCNWFVTX.js +2 -0
  5. package/dist/bundle/chunks/bedrock-converse-stream.js +3 -3
  6. package/dist/bundle/chunks/chunk-35AZPBGE.js +11 -0
  7. package/dist/bundle/chunks/{chunk-C47CLQZK.js → chunk-CMZY6PM7.js} +1 -1
  8. package/dist/bundle/chunks/{chunk-XVIZD2L5.js → chunk-DOSAFY5Y.js} +3 -3
  9. package/dist/bundle/chunks/{chunk-KAXC2ESR.js → chunk-GICF34HK.js} +8 -8
  10. package/dist/bundle/chunks/{chunk-GYREDKZT.js → chunk-HKQXO4IQ.js} +1 -1
  11. package/dist/bundle/chunks/chunk-K4O5WZC5.js +11 -0
  12. package/dist/bundle/chunks/{chunk-SVKJCAH2.js → chunk-NBSSK56J.js} +1 -1
  13. package/dist/bundle/chunks/{chunk-XZYVF4BW.js → chunk-RAB4RJZ2.js} +60 -60
  14. package/dist/bundle/chunks/{cloudflare-workers-ai-system-one-NHSAQJW5.js → cloudflare-workers-ai-system-one-6FXZDK6A.js} +1 -1
  15. package/dist/bundle/chunks/{easter-egg-3d-DD22MRM3.js → easter-egg-3d-JQPBRQEU.js} +1 -1
  16. package/dist/bundle/chunks/github-copilot.js +1 -1
  17. package/dist/bundle/chunks/{google-generative-ai-ON7RPJHF.js → google-generative-ai-VJA5IOK3.js} +1 -1
  18. package/dist/bundle/chunks/{google-vertex-6YO5GV2H.js → google-vertex-TI6AJXT2.js} +1 -1
  19. package/dist/bundle/chunks/{mistral-conversations-NN33SMJ6.js → mistral-conversations-XTWEX6FG.js} +1 -1
  20. package/dist/bundle/chunks/openai-codex-responses-WGH4GHLE.js +10 -0
  21. package/dist/bundle/chunks/openai-completions-GXGEEHZH.js +7 -0
  22. package/dist/bundle/chunks/openai-responses-NLSL5UY4.js +3 -0
  23. package/dist/bundle/chunks/{typesafe-system-one-PRR5K6CI.js → typesafe-system-one-3OTHQPDL.js} +1 -1
  24. package/dist/bundle/chunks/{virtual-modules-6MDPJKNE.js → virtual-modules-L22CHFWU.js} +1 -1
  25. package/dist/bundle/cli-runtime.js +1 -1
  26. package/dist/bundle/index.js +1 -1
  27. package/dist/bundle/rpc-entry.js +1 -1
  28. package/docs/compaction.md +2 -2
  29. package/docs/extensions.md +4 -10
  30. package/docs/message-types.md +2 -4
  31. package/docs/session-format.md +4 -4
  32. package/docs/settings.md +1 -1
  33. package/docs/tui.md +1 -1
  34. package/examples/extensions/overlay-test.ts +2 -2
  35. package/package.json +31 -31
  36. package/dist/bun/cli.d.ts +0 -5
  37. package/dist/bun/cli.d.ts.map +0 -1
  38. package/dist/bun/cli.js +0 -5
  39. package/dist/bun/cli.js.map +0 -1
  40. package/dist/bun/restore-sandbox-env.d.ts +0 -17
  41. package/dist/bun/restore-sandbox-env.d.ts.map +0 -1
  42. package/dist/bun/restore-sandbox-env.js +0 -36
  43. package/dist/bun/restore-sandbox-env.js.map +0 -1
  44. package/dist/bun/runtime-setup.d.ts +0 -2
  45. package/dist/bun/runtime-setup.d.ts.map +0 -1
  46. package/dist/bun/runtime-setup.js +0 -9
  47. package/dist/bun/runtime-setup.js.map +0 -1
  48. package/dist/bun/sandbox-env-setup.d.ts +0 -2
  49. package/dist/bun/sandbox-env-setup.d.ts.map +0 -1
  50. package/dist/bun/sandbox-env-setup.js +0 -4
  51. package/dist/bun/sandbox-env-setup.js.map +0 -1
  52. package/dist/bundle/chunks/anthropic-messages-EGJT3PY6.js +0 -6
  53. package/dist/bundle/chunks/azure-openai-responses-JEEXH6HK.js +0 -2
  54. package/dist/bundle/chunks/chunk-IOJUMBW3.js +0 -11
  55. package/dist/bundle/chunks/chunk-KJUDFE6Y.js +0 -11
  56. package/dist/bundle/chunks/openai-codex-responses-CPSVXTKM.js +0 -10
  57. package/dist/bundle/chunks/openai-completions-T7GN33JE.js +0 -7
  58. package/dist/bundle/chunks/openai-responses-GPE3ZQ46.js +0 -3
  59. package/dist/cli/args.d.ts +0 -61
  60. package/dist/cli/args.d.ts.map +0 -1
  61. package/dist/cli/args.js +0 -453
  62. package/dist/cli/args.js.map +0 -1
  63. package/dist/cli/auth-check.d.ts +0 -19
  64. package/dist/cli/auth-check.d.ts.map +0 -1
  65. package/dist/cli/auth-check.js +0 -50
  66. package/dist/cli/auth-check.js.map +0 -1
  67. package/dist/cli/auth-command.d.ts +0 -24
  68. package/dist/cli/auth-command.d.ts.map +0 -1
  69. package/dist/cli/auth-command.js +0 -103
  70. package/dist/cli/auth-command.js.map +0 -1
  71. package/dist/cli/config-selector.d.ts +0 -16
  72. package/dist/cli/config-selector.d.ts.map +0 -1
  73. package/dist/cli/config-selector.js +0 -32
  74. package/dist/cli/config-selector.js.map +0 -1
  75. package/dist/cli/credential-print.d.ts +0 -13
  76. package/dist/cli/credential-print.d.ts.map +0 -1
  77. package/dist/cli/credential-print.js +0 -76
  78. package/dist/cli/credential-print.js.map +0 -1
  79. package/dist/cli/file-processor.d.ts +0 -15
  80. package/dist/cli/file-processor.d.ts.map +0 -1
  81. package/dist/cli/file-processor.js +0 -71
  82. package/dist/cli/file-processor.js.map +0 -1
  83. package/dist/cli/initial-message.d.ts +0 -18
  84. package/dist/cli/initial-message.d.ts.map +0 -1
  85. package/dist/cli/initial-message.js +0 -22
  86. package/dist/cli/initial-message.js.map +0 -1
  87. package/dist/cli/list-models.d.ts +0 -9
  88. package/dist/cli/list-models.d.ts.map +0 -1
  89. package/dist/cli/list-models.js +0 -98
  90. package/dist/cli/list-models.js.map +0 -1
  91. package/dist/cli/project-trust.d.ts +0 -10
  92. package/dist/cli/project-trust.d.ts.map +0 -1
  93. package/dist/cli/project-trust.js +0 -48
  94. package/dist/cli/project-trust.js.map +0 -1
  95. package/dist/cli/session-picker.d.ts +0 -10
  96. package/dist/cli/session-picker.d.ts.map +0 -1
  97. package/dist/cli/session-picker.js +0 -36
  98. package/dist/cli/session-picker.js.map +0 -1
  99. package/dist/cli/setup.d.ts +0 -2
  100. package/dist/cli/setup.d.ts.map +0 -1
  101. package/dist/cli/setup.js +0 -12
  102. package/dist/cli/setup.js.map +0 -1
  103. package/dist/cli/startup-ui.d.ts +0 -20
  104. package/dist/cli/startup-ui.d.ts.map +0 -1
  105. package/dist/cli/startup-ui.js +0 -193
  106. package/dist/cli/startup-ui.js.map +0 -1
  107. package/dist/cli.d.ts +0 -3
  108. package/dist/cli.d.ts.map +0 -1
  109. package/dist/cli.js +0 -6
  110. package/dist/cli.js.map +0 -1
  111. package/dist/config.d.ts +0 -107
  112. package/dist/config.d.ts.map +0 -1
  113. package/dist/config.js +0 -486
  114. package/dist/config.js.map +0 -1
  115. package/dist/core/agent-session-runtime.d.ts +0 -119
  116. package/dist/core/agent-session-runtime.d.ts.map +0 -1
  117. package/dist/core/agent-session-runtime.js +0 -317
  118. package/dist/core/agent-session-runtime.js.map +0 -1
  119. package/dist/core/agent-session-services.d.ts +0 -86
  120. package/dist/core/agent-session-services.d.ts.map +0 -1
  121. package/dist/core/agent-session-services.js +0 -147
  122. package/dist/core/agent-session-services.js.map +0 -1
  123. package/dist/core/agent-session.d.ts +0 -881
  124. package/dist/core/agent-session.d.ts.map +0 -1
  125. package/dist/core/agent-session.js +0 -3524
  126. package/dist/core/agent-session.js.map +0 -1
  127. package/dist/core/auth-guidance.d.ts +0 -5
  128. package/dist/core/auth-guidance.d.ts.map +0 -1
  129. package/dist/core/auth-guidance.js +0 -21
  130. package/dist/core/auth-guidance.js.map +0 -1
  131. package/dist/core/auth-storage.d.ts +0 -72
  132. package/dist/core/auth-storage.d.ts.map +0 -1
  133. package/dist/core/auth-storage.js +0 -426
  134. package/dist/core/auth-storage.js.map +0 -1
  135. package/dist/core/bash-executor.d.ts +0 -32
  136. package/dist/core/bash-executor.d.ts.map +0 -1
  137. package/dist/core/bash-executor.js +0 -106
  138. package/dist/core/bash-executor.js.map +0 -1
  139. package/dist/core/bug-report-upload.d.ts +0 -12
  140. package/dist/core/bug-report-upload.d.ts.map +0 -1
  141. package/dist/core/bug-report-upload.js +0 -22
  142. package/dist/core/bug-report-upload.js.map +0 -1
  143. package/dist/core/bug-report.d.ts +0 -176
  144. package/dist/core/bug-report.d.ts.map +0 -1
  145. package/dist/core/bug-report.js +0 -292
  146. package/dist/core/bug-report.js.map +0 -1
  147. package/dist/core/cache-stats.d.ts +0 -49
  148. package/dist/core/cache-stats.d.ts.map +0 -1
  149. package/dist/core/cache-stats.js +0 -112
  150. package/dist/core/cache-stats.js.map +0 -1
  151. package/dist/core/cache-warmer.d.ts +0 -103
  152. package/dist/core/cache-warmer.d.ts.map +0 -1
  153. package/dist/core/cache-warmer.js +0 -359
  154. package/dist/core/cache-warmer.js.map +0 -1
  155. package/dist/core/compaction/branch-summarization.d.ts +0 -98
  156. package/dist/core/compaction/branch-summarization.d.ts.map +0 -1
  157. package/dist/core/compaction/branch-summarization.js +0 -251
  158. package/dist/core/compaction/branch-summarization.js.map +0 -1
  159. package/dist/core/compaction/compaction.d.ts +0 -145
  160. package/dist/core/compaction/compaction.d.ts.map +0 -1
  161. package/dist/core/compaction/compaction.js +0 -744
  162. package/dist/core/compaction/compaction.js.map +0 -1
  163. package/dist/core/compaction/index.d.ts +0 -7
  164. package/dist/core/compaction/index.d.ts.map +0 -1
  165. package/dist/core/compaction/index.js +0 -7
  166. package/dist/core/compaction/index.js.map +0 -1
  167. package/dist/core/compaction/utils.d.ts +0 -39
  168. package/dist/core/compaction/utils.d.ts.map +0 -1
  169. package/dist/core/compaction/utils.js +0 -149
  170. package/dist/core/compaction/utils.js.map +0 -1
  171. package/dist/core/crash-log.d.ts +0 -27
  172. package/dist/core/crash-log.d.ts.map +0 -1
  173. package/dist/core/crash-log.js +0 -140
  174. package/dist/core/crash-log.js.map +0 -1
  175. package/dist/core/defaults.d.ts +0 -4
  176. package/dist/core/defaults.d.ts.map +0 -1
  177. package/dist/core/defaults.js +0 -11
  178. package/dist/core/defaults.js.map +0 -1
  179. package/dist/core/diagnostics.d.ts +0 -15
  180. package/dist/core/diagnostics.d.ts.map +0 -1
  181. package/dist/core/diagnostics.js +0 -2
  182. package/dist/core/diagnostics.js.map +0 -1
  183. package/dist/core/event-bus.d.ts +0 -9
  184. package/dist/core/event-bus.d.ts.map +0 -1
  185. package/dist/core/event-bus.js +0 -25
  186. package/dist/core/event-bus.js.map +0 -1
  187. package/dist/core/exec.d.ts +0 -29
  188. package/dist/core/exec.d.ts.map +0 -1
  189. package/dist/core/exec.js +0 -75
  190. package/dist/core/exec.js.map +0 -1
  191. package/dist/core/experimental.d.ts +0 -2
  192. package/dist/core/experimental.d.ts.map +0 -1
  193. package/dist/core/experimental.js +0 -6
  194. package/dist/core/experimental.js.map +0 -1
  195. package/dist/core/export-html/ansi-to-html.d.ts +0 -22
  196. package/dist/core/export-html/ansi-to-html.d.ts.map +0 -1
  197. package/dist/core/export-html/ansi-to-html.js +0 -249
  198. package/dist/core/export-html/ansi-to-html.js.map +0 -1
  199. package/dist/core/export-html/index.d.ts +0 -37
  200. package/dist/core/export-html/index.d.ts.map +0 -1
  201. package/dist/core/export-html/index.js +0 -226
  202. package/dist/core/export-html/index.js.map +0 -1
  203. package/dist/core/export-html/tool-renderer.d.ts +0 -34
  204. package/dist/core/export-html/tool-renderer.d.ts.map +0 -1
  205. package/dist/core/export-html/tool-renderer.js +0 -109
  206. package/dist/core/export-html/tool-renderer.js.map +0 -1
  207. package/dist/core/extensions/index.d.ts +0 -12
  208. package/dist/core/extensions/index.d.ts.map +0 -1
  209. package/dist/core/extensions/index.js +0 -9
  210. package/dist/core/extensions/index.js.map +0 -1
  211. package/dist/core/extensions/jiti-loader.d.ts +0 -2
  212. package/dist/core/extensions/jiti-loader.d.ts.map +0 -1
  213. package/dist/core/extensions/jiti-loader.js +0 -4
  214. package/dist/core/extensions/jiti-loader.js.map +0 -1
  215. package/dist/core/extensions/jiti-static-loader.d.ts +0 -2
  216. package/dist/core/extensions/jiti-static-loader.d.ts.map +0 -1
  217. package/dist/core/extensions/jiti-static-loader.js +0 -4
  218. package/dist/core/extensions/jiti-static-loader.js.map +0 -1
  219. package/dist/core/extensions/loader.d.ts +0 -23
  220. package/dist/core/extensions/loader.d.ts.map +0 -1
  221. package/dist/core/extensions/loader.js +0 -667
  222. package/dist/core/extensions/loader.js.map +0 -1
  223. package/dist/core/extensions/runner.d.ts +0 -204
  224. package/dist/core/extensions/runner.d.ts.map +0 -1
  225. package/dist/core/extensions/runner.js +0 -1207
  226. package/dist/core/extensions/runner.js.map +0 -1
  227. package/dist/core/extensions/types.d.ts +0 -1669
  228. package/dist/core/extensions/types.d.ts.map +0 -1
  229. package/dist/core/extensions/types.js +0 -48
  230. package/dist/core/extensions/types.js.map +0 -1
  231. package/dist/core/extensions/virtual-modules.d.ts +0 -3
  232. package/dist/core/extensions/virtual-modules.d.ts.map +0 -1
  233. package/dist/core/extensions/virtual-modules.js +0 -38
  234. package/dist/core/extensions/virtual-modules.js.map +0 -1
  235. package/dist/core/extensions/wrapper.d.ts +0 -20
  236. package/dist/core/extensions/wrapper.d.ts.map +0 -1
  237. package/dist/core/extensions/wrapper.js +0 -22
  238. package/dist/core/extensions/wrapper.js.map +0 -1
  239. package/dist/core/footer-data-provider.d.ts +0 -64
  240. package/dist/core/footer-data-provider.d.ts.map +0 -1
  241. package/dist/core/footer-data-provider.js +0 -338
  242. package/dist/core/footer-data-provider.js.map +0 -1
  243. package/dist/core/http-dispatcher.d.ts +0 -22
  244. package/dist/core/http-dispatcher.d.ts.map +0 -1
  245. package/dist/core/http-dispatcher.js +0 -98
  246. package/dist/core/http-dispatcher.js.map +0 -1
  247. package/dist/core/index.d.ts +0 -14
  248. package/dist/core/index.d.ts.map +0 -1
  249. package/dist/core/index.js +0 -13
  250. package/dist/core/index.js.map +0 -1
  251. package/dist/core/keybindings.d.ts +0 -428
  252. package/dist/core/keybindings.d.ts.map +0 -1
  253. package/dist/core/keybindings.js +0 -321
  254. package/dist/core/keybindings.js.map +0 -1
  255. package/dist/core/messages.d.ts +0 -77
  256. package/dist/core/messages.d.ts.map +0 -1
  257. package/dist/core/messages.js +0 -124
  258. package/dist/core/messages.js.map +0 -1
  259. package/dist/core/model-config.d.ts +0 -760
  260. package/dist/core/model-config.d.ts.map +0 -1
  261. package/dist/core/model-config.js +0 -294
  262. package/dist/core/model-config.js.map +0 -1
  263. package/dist/core/model-registry.d.ts +0 -61
  264. package/dist/core/model-registry.d.ts.map +0 -1
  265. package/dist/core/model-registry.js +0 -140
  266. package/dist/core/model-registry.js.map +0 -1
  267. package/dist/core/model-resolver.d.ts +0 -124
  268. package/dist/core/model-resolver.d.ts.map +0 -1
  269. package/dist/core/model-resolver.js +0 -590
  270. package/dist/core/model-resolver.js.map +0 -1
  271. package/dist/core/model-runtime.d.ts +0 -145
  272. package/dist/core/model-runtime.d.ts.map +0 -1
  273. package/dist/core/model-runtime.js +0 -758
  274. package/dist/core/model-runtime.js.map +0 -1
  275. package/dist/core/models-store.d.ts +0 -22
  276. package/dist/core/models-store.d.ts.map +0 -1
  277. package/dist/core/models-store.js +0 -115
  278. package/dist/core/models-store.js.map +0 -1
  279. package/dist/core/nested-tool-calls.d.ts +0 -102
  280. package/dist/core/nested-tool-calls.d.ts.map +0 -1
  281. package/dist/core/nested-tool-calls.js +0 -178
  282. package/dist/core/nested-tool-calls.js.map +0 -1
  283. package/dist/core/output-guard.d.ts +0 -7
  284. package/dist/core/output-guard.d.ts.map +0 -1
  285. package/dist/core/output-guard.js +0 -89
  286. package/dist/core/output-guard.js.map +0 -1
  287. package/dist/core/package-manager.d.ts +0 -217
  288. package/dist/core/package-manager.d.ts.map +0 -1
  289. package/dist/core/package-manager.js +0 -2224
  290. package/dist/core/package-manager.js.map +0 -1
  291. package/dist/core/pi-manifest.d.ts +0 -8
  292. package/dist/core/pi-manifest.d.ts.map +0 -1
  293. package/dist/core/pi-manifest.js +0 -26
  294. package/dist/core/pi-manifest.js.map +0 -1
  295. package/dist/core/project-trust.d.ts +0 -15
  296. package/dist/core/project-trust.d.ts.map +0 -1
  297. package/dist/core/project-trust.js +0 -59
  298. package/dist/core/project-trust.js.map +0 -1
  299. package/dist/core/prompt-templates.d.ts +0 -59
  300. package/dist/core/prompt-templates.d.ts.map +0 -1
  301. package/dist/core/prompt-templates.js +0 -262
  302. package/dist/core/prompt-templates.js.map +0 -1
  303. package/dist/core/provider-attribution.d.ts +0 -4
  304. package/dist/core/provider-attribution.d.ts.map +0 -1
  305. package/dist/core/provider-attribution.js +0 -72
  306. package/dist/core/provider-attribution.js.map +0 -1
  307. package/dist/core/provider-composer.d.ts +0 -80
  308. package/dist/core/provider-composer.d.ts.map +0 -1
  309. package/dist/core/provider-composer.js +0 -488
  310. package/dist/core/provider-composer.js.map +0 -1
  311. package/dist/core/radius.d.ts +0 -5
  312. package/dist/core/radius.d.ts.map +0 -1
  313. package/dist/core/radius.js +0 -9
  314. package/dist/core/radius.js.map +0 -1
  315. package/dist/core/remote-catalog-provider.d.ts +0 -12
  316. package/dist/core/remote-catalog-provider.d.ts.map +0 -1
  317. package/dist/core/remote-catalog-provider.js +0 -132
  318. package/dist/core/remote-catalog-provider.js.map +0 -1
  319. package/dist/core/resolve-config-value.d.ts +0 -30
  320. package/dist/core/resolve-config-value.d.ts.map +0 -1
  321. package/dist/core/resolve-config-value.js +0 -247
  322. package/dist/core/resolve-config-value.js.map +0 -1
  323. package/dist/core/resource-loader.d.ts +0 -227
  324. package/dist/core/resource-loader.d.ts.map +0 -1
  325. package/dist/core/resource-loader.js +0 -1008
  326. package/dist/core/resource-loader.js.map +0 -1
  327. package/dist/core/runtime-credentials.d.ts +0 -15
  328. package/dist/core/runtime-credentials.d.ts.map +0 -1
  329. package/dist/core/runtime-credentials.js +0 -39
  330. package/dist/core/runtime-credentials.js.map +0 -1
  331. package/dist/core/sdk.d.ts +0 -108
  332. package/dist/core/sdk.d.ts.map +0 -1
  333. package/dist/core/sdk.js +0 -315
  334. package/dist/core/sdk.js.map +0 -1
  335. package/dist/core/session-cwd.d.ts +0 -19
  336. package/dist/core/session-cwd.d.ts.map +0 -1
  337. package/dist/core/session-cwd.js +0 -38
  338. package/dist/core/session-cwd.js.map +0 -1
  339. package/dist/core/session-export.d.ts +0 -8
  340. package/dist/core/session-export.d.ts.map +0 -1
  341. package/dist/core/session-export.js +0 -33
  342. package/dist/core/session-export.js.map +0 -1
  343. package/dist/core/session-manager.d.ts +0 -416
  344. package/dist/core/session-manager.d.ts.map +0 -1
  345. package/dist/core/session-manager.js +0 -1523
  346. package/dist/core/session-manager.js.map +0 -1
  347. package/dist/core/settings-diagnostics.d.ts +0 -9
  348. package/dist/core/settings-diagnostics.d.ts.map +0 -1
  349. package/dist/core/settings-diagnostics.js +0 -21
  350. package/dist/core/settings-diagnostics.js.map +0 -1
  351. package/dist/core/settings-manager.d.ts +0 -362
  352. package/dist/core/settings-manager.d.ts.map +0 -1
  353. package/dist/core/settings-manager.js +0 -1107
  354. package/dist/core/settings-manager.js.map +0 -1
  355. package/dist/core/skills.d.ts +0 -60
  356. package/dist/core/skills.d.ts.map +0 -1
  357. package/dist/core/skills.js +0 -407
  358. package/dist/core/skills.js.map +0 -1
  359. package/dist/core/slash-commands.d.ts +0 -15
  360. package/dist/core/slash-commands.d.ts.map +0 -1
  361. package/dist/core/slash-commands.js +0 -28
  362. package/dist/core/slash-commands.js.map +0 -1
  363. package/dist/core/source-info.d.ts +0 -26
  364. package/dist/core/source-info.d.ts.map +0 -1
  365. package/dist/core/source-info.js +0 -35
  366. package/dist/core/source-info.js.map +0 -1
  367. package/dist/core/system-prompt.d.ts +0 -71
  368. package/dist/core/system-prompt.d.ts.map +0 -1
  369. package/dist/core/system-prompt.js +0 -147
  370. package/dist/core/system-prompt.js.map +0 -1
  371. package/dist/core/telemetry.d.ts +0 -3
  372. package/dist/core/telemetry.d.ts.map +0 -1
  373. package/dist/core/telemetry.js +0 -10
  374. package/dist/core/telemetry.js.map +0 -1
  375. package/dist/core/timings.d.ts +0 -6
  376. package/dist/core/timings.d.ts.map +0 -1
  377. package/dist/core/timings.js +0 -42
  378. package/dist/core/timings.js.map +0 -1
  379. package/dist/core/tools/bash.d.ts +0 -101
  380. package/dist/core/tools/bash.d.ts.map +0 -1
  381. package/dist/core/tools/bash.js +0 -348
  382. package/dist/core/tools/bash.js.map +0 -1
  383. package/dist/core/tools/edit-diff.d.ts +0 -101
  384. package/dist/core/tools/edit-diff.d.ts.map +0 -1
  385. package/dist/core/tools/edit-diff.js +0 -421
  386. package/dist/core/tools/edit-diff.js.map +0 -1
  387. package/dist/core/tools/edit.d.ts +0 -44
  388. package/dist/core/tools/edit.d.ts.map +0 -1
  389. package/dist/core/tools/edit.js +0 -147
  390. package/dist/core/tools/edit.js.map +0 -1
  391. package/dist/core/tools/file-mutation-queue.d.ts +0 -6
  392. package/dist/core/tools/file-mutation-queue.d.ts.map +0 -1
  393. package/dist/core/tools/file-mutation-queue.js +0 -52
  394. package/dist/core/tools/file-mutation-queue.js.map +0 -1
  395. package/dist/core/tools/find.d.ts +0 -42
  396. package/dist/core/tools/find.d.ts.map +0 -1
  397. package/dist/core/tools/find.js +0 -251
  398. package/dist/core/tools/find.js.map +0 -1
  399. package/dist/core/tools/grep.d.ts +0 -41
  400. package/dist/core/tools/grep.d.ts.map +0 -1
  401. package/dist/core/tools/grep.js +0 -252
  402. package/dist/core/tools/grep.js.map +0 -1
  403. package/dist/core/tools/index.d.ts +0 -43
  404. package/dist/core/tools/index.d.ts.map +0 -1
  405. package/dist/core/tools/index.js +0 -129
  406. package/dist/core/tools/index.js.map +0 -1
  407. package/dist/core/tools/ls.d.ts +0 -41
  408. package/dist/core/tools/ls.d.ts.map +0 -1
  409. package/dist/core/tools/ls.js +0 -126
  410. package/dist/core/tools/ls.js.map +0 -1
  411. package/dist/core/tools/output-accumulator.d.ts +0 -63
  412. package/dist/core/tools/output-accumulator.d.ts.map +0 -1
  413. package/dist/core/tools/output-accumulator.js +0 -220
  414. package/dist/core/tools/output-accumulator.js.map +0 -1
  415. package/dist/core/tools/path-utils.d.ts +0 -10
  416. package/dist/core/tools/path-utils.d.ts.map +0 -1
  417. package/dist/core/tools/path-utils.js +0 -99
  418. package/dist/core/tools/path-utils.js.map +0 -1
  419. package/dist/core/tools/powershell.d.ts +0 -16
  420. package/dist/core/tools/powershell.d.ts.map +0 -1
  421. package/dist/core/tools/powershell.js +0 -39
  422. package/dist/core/tools/powershell.js.map +0 -1
  423. package/dist/core/tools/read.d.ts +0 -42
  424. package/dist/core/tools/read.d.ts.map +0 -1
  425. package/dist/core/tools/read.js +0 -169
  426. package/dist/core/tools/read.js.map +0 -1
  427. package/dist/core/tools/render-utils.d.ts +0 -30
  428. package/dist/core/tools/render-utils.d.ts.map +0 -1
  429. package/dist/core/tools/render-utils.js +0 -91
  430. package/dist/core/tools/render-utils.js.map +0 -1
  431. package/dist/core/tools/renderers/bash.d.ts +0 -12
  432. package/dist/core/tools/renderers/bash.d.ts.map +0 -1
  433. package/dist/core/tools/renderers/bash.js +0 -117
  434. package/dist/core/tools/renderers/bash.js.map +0 -1
  435. package/dist/core/tools/renderers/edit.d.ts +0 -23
  436. package/dist/core/tools/renderers/edit.d.ts.map +0 -1
  437. package/dist/core/tools/renderers/edit.js +0 -168
  438. package/dist/core/tools/renderers/edit.js.map +0 -1
  439. package/dist/core/tools/renderers/find.d.ts +0 -10
  440. package/dist/core/tools/renderers/find.d.ts.map +0 -1
  441. package/dist/core/tools/renderers/find.js +0 -64
  442. package/dist/core/tools/renderers/find.js.map +0 -1
  443. package/dist/core/tools/renderers/grep.d.ts +0 -10
  444. package/dist/core/tools/renderers/grep.d.ts.map +0 -1
  445. package/dist/core/tools/renderers/grep.js +0 -69
  446. package/dist/core/tools/renderers/grep.js.map +0 -1
  447. package/dist/core/tools/renderers/index.d.ts +0 -28
  448. package/dist/core/tools/renderers/index.d.ts.map +0 -1
  449. package/dist/core/tools/renderers/index.js +0 -47
  450. package/dist/core/tools/renderers/index.js.map +0 -1
  451. package/dist/core/tools/renderers/ls.d.ts +0 -10
  452. package/dist/core/tools/renderers/ls.d.ts.map +0 -1
  453. package/dist/core/tools/renderers/ls.js +0 -58
  454. package/dist/core/tools/renderers/ls.js.map +0 -1
  455. package/dist/core/tools/renderers/read.d.ts +0 -11
  456. package/dist/core/tools/renderers/read.d.ts.map +0 -1
  457. package/dist/core/tools/renderers/read.js +0 -130
  458. package/dist/core/tools/renderers/read.js.map +0 -1
  459. package/dist/core/tools/renderers/write.d.ts +0 -10
  460. package/dist/core/tools/renderers/write.d.ts.map +0 -1
  461. package/dist/core/tools/renderers/write.js +0 -153
  462. package/dist/core/tools/renderers/write.js.map +0 -1
  463. package/dist/core/tools/tool-definition-wrapper.d.ts +0 -16
  464. package/dist/core/tools/tool-definition-wrapper.d.ts.map +0 -1
  465. package/dist/core/tools/tool-definition-wrapper.js +0 -38
  466. package/dist/core/tools/tool-definition-wrapper.js.map +0 -1
  467. package/dist/core/tools/truncate.d.ts +0 -84
  468. package/dist/core/tools/truncate.d.ts.map +0 -1
  469. package/dist/core/tools/truncate.js +0 -244
  470. package/dist/core/tools/truncate.js.map +0 -1
  471. package/dist/core/tools/write.d.ts +0 -30
  472. package/dist/core/tools/write.d.ts.map +0 -1
  473. package/dist/core/tools/write.js +0 -61
  474. package/dist/core/tools/write.js.map +0 -1
  475. package/dist/core/trust-manager.d.ts +0 -36
  476. package/dist/core/trust-manager.d.ts.map +0 -1
  477. package/dist/core/trust-manager.js +0 -203
  478. package/dist/core/trust-manager.js.map +0 -1
  479. package/dist/core/usage-totals.d.ts +0 -21
  480. package/dist/core/usage-totals.d.ts.map +0 -1
  481. package/dist/core/usage-totals.js +0 -79
  482. package/dist/core/usage-totals.js.map +0 -1
  483. package/dist/core/virtual-models.d.ts +0 -117
  484. package/dist/core/virtual-models.d.ts.map +0 -1
  485. package/dist/core/virtual-models.js +0 -124
  486. package/dist/core/virtual-models.js.map +0 -1
  487. package/dist/extensions/index.d.ts +0 -3
  488. package/dist/extensions/index.d.ts.map +0 -1
  489. package/dist/extensions/index.js +0 -3
  490. package/dist/extensions/index.js.map +0 -1
  491. package/dist/extensions/llama/client.d.ts +0 -69
  492. package/dist/extensions/llama/client.d.ts.map +0 -1
  493. package/dist/extensions/llama/client.js +0 -313
  494. package/dist/extensions/llama/client.js.map +0 -1
  495. package/dist/extensions/llama/huggingface.d.ts +0 -23
  496. package/dist/extensions/llama/huggingface.d.ts.map +0 -1
  497. package/dist/extensions/llama/huggingface.js +0 -141
  498. package/dist/extensions/llama/huggingface.js.map +0 -1
  499. package/dist/extensions/llama/index.d.ts +0 -3
  500. package/dist/extensions/llama/index.d.ts.map +0 -1
  501. package/dist/extensions/llama/index.js +0 -219
  502. package/dist/extensions/llama/index.js.map +0 -1
  503. package/dist/extensions/llama/provider.d.ts +0 -12
  504. package/dist/extensions/llama/provider.d.ts.map +0 -1
  505. package/dist/extensions/llama/provider.js +0 -213
  506. package/dist/extensions/llama/provider.js.map +0 -1
  507. package/dist/extensions/llama/ui.d.ts +0 -42
  508. package/dist/extensions/llama/ui.d.ts.map +0 -1
  509. package/dist/extensions/llama/ui.js +0 -416
  510. package/dist/extensions/llama/ui.js.map +0 -1
  511. package/dist/index.d.ts +0 -38
  512. package/dist/index.d.ts.map +0 -1
  513. package/dist/index.js +0 -49
  514. package/dist/index.js.map +0 -1
  515. package/dist/main.d.ts +0 -16
  516. package/dist/main.d.ts.map +0 -1
  517. package/dist/main.js +0 -819
  518. package/dist/main.js.map +0 -1
  519. package/dist/migrations.d.ts +0 -33
  520. package/dist/migrations.d.ts.map +0 -1
  521. package/dist/migrations.js +0 -282
  522. package/dist/migrations.js.map +0 -1
  523. package/dist/modes/index.d.ts +0 -10
  524. package/dist/modes/index.d.ts.map +0 -1
  525. package/dist/modes/index.js +0 -8
  526. package/dist/modes/index.js.map +0 -1
  527. package/dist/modes/interactive/bug-report.d.ts +0 -16
  528. package/dist/modes/interactive/bug-report.d.ts.map +0 -1
  529. package/dist/modes/interactive/bug-report.js +0 -210
  530. package/dist/modes/interactive/bug-report.js.map +0 -1
  531. package/dist/modes/interactive/chat-viewport.d.ts +0 -20
  532. package/dist/modes/interactive/chat-viewport.d.ts.map +0 -1
  533. package/dist/modes/interactive/chat-viewport.js +0 -28
  534. package/dist/modes/interactive/chat-viewport.js.map +0 -1
  535. package/dist/modes/interactive/components/armin.d.ts +0 -37
  536. package/dist/modes/interactive/components/armin.d.ts.map +0 -1
  537. package/dist/modes/interactive/components/armin.js +0 -335
  538. package/dist/modes/interactive/components/armin.js.map +0 -1
  539. package/dist/modes/interactive/components/assistant-message.d.ts +0 -26
  540. package/dist/modes/interactive/components/assistant-message.d.ts.map +0 -1
  541. package/dist/modes/interactive/components/assistant-message.js +0 -158
  542. package/dist/modes/interactive/components/assistant-message.js.map +0 -1
  543. package/dist/modes/interactive/components/bash-execution.d.ts +0 -38
  544. package/dist/modes/interactive/components/bash-execution.d.ts.map +0 -1
  545. package/dist/modes/interactive/components/bash-execution.js +0 -178
  546. package/dist/modes/interactive/components/bash-execution.js.map +0 -1
  547. package/dist/modes/interactive/components/bordered-loader.d.ts +0 -16
  548. package/dist/modes/interactive/components/bordered-loader.d.ts.map +0 -1
  549. package/dist/modes/interactive/components/bordered-loader.js +0 -54
  550. package/dist/modes/interactive/components/bordered-loader.js.map +0 -1
  551. package/dist/modes/interactive/components/branch-summary-message.d.ts +0 -17
  552. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +0 -1
  553. package/dist/modes/interactive/components/branch-summary-message.js +0 -54
  554. package/dist/modes/interactive/components/branch-summary-message.js.map +0 -1
  555. package/dist/modes/interactive/components/compaction-summary-message.d.ts +0 -17
  556. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +0 -1
  557. package/dist/modes/interactive/components/compaction-summary-message.js +0 -55
  558. package/dist/modes/interactive/components/compaction-summary-message.js.map +0 -1
  559. package/dist/modes/interactive/components/config-selector.d.ts +0 -102
  560. package/dist/modes/interactive/components/config-selector.d.ts.map +0 -1
  561. package/dist/modes/interactive/components/config-selector.js +0 -771
  562. package/dist/modes/interactive/components/config-selector.js.map +0 -1
  563. package/dist/modes/interactive/components/countdown-timer.d.ts +0 -14
  564. package/dist/modes/interactive/components/countdown-timer.d.ts.map +0 -1
  565. package/dist/modes/interactive/components/countdown-timer.js +0 -33
  566. package/dist/modes/interactive/components/countdown-timer.js.map +0 -1
  567. package/dist/modes/interactive/components/custom-editor.d.ts +0 -30
  568. package/dist/modes/interactive/components/custom-editor.d.ts.map +0 -1
  569. package/dist/modes/interactive/components/custom-editor.js +0 -115
  570. package/dist/modes/interactive/components/custom-editor.js.map +0 -1
  571. package/dist/modes/interactive/components/custom-entry.d.ts +0 -21
  572. package/dist/modes/interactive/components/custom-entry.d.ts.map +0 -1
  573. package/dist/modes/interactive/components/custom-entry.js +0 -58
  574. package/dist/modes/interactive/components/custom-entry.js.map +0 -1
  575. package/dist/modes/interactive/components/custom-message.d.ts +0 -22
  576. package/dist/modes/interactive/components/custom-message.d.ts.map +0 -1
  577. package/dist/modes/interactive/components/custom-message.js +0 -88
  578. package/dist/modes/interactive/components/custom-message.js.map +0 -1
  579. package/dist/modes/interactive/components/diff.d.ts +0 -12
  580. package/dist/modes/interactive/components/diff.d.ts.map +0 -1
  581. package/dist/modes/interactive/components/diff.js +0 -133
  582. package/dist/modes/interactive/components/diff.js.map +0 -1
  583. package/dist/modes/interactive/components/dynamic-border.d.ts +0 -15
  584. package/dist/modes/interactive/components/dynamic-border.d.ts.map +0 -1
  585. package/dist/modes/interactive/components/dynamic-border.js +0 -21
  586. package/dist/modes/interactive/components/dynamic-border.js.map +0 -1
  587. package/dist/modes/interactive/components/e-logo.d.ts +0 -16
  588. package/dist/modes/interactive/components/e-logo.d.ts.map +0 -1
  589. package/dist/modes/interactive/components/e-logo.js +0 -29
  590. package/dist/modes/interactive/components/e-logo.js.map +0 -1
  591. package/dist/modes/interactive/components/earendil-announcement.d.ts +0 -5
  592. package/dist/modes/interactive/components/earendil-announcement.d.ts.map +0 -1
  593. package/dist/modes/interactive/components/earendil-announcement.js +0 -40
  594. package/dist/modes/interactive/components/earendil-announcement.js.map +0 -1
  595. package/dist/modes/interactive/components/easter-egg-3d.d.ts +0 -104
  596. package/dist/modes/interactive/components/easter-egg-3d.d.ts.map +0 -1
  597. package/dist/modes/interactive/components/easter-egg-3d.js +0 -1138
  598. package/dist/modes/interactive/components/easter-egg-3d.js.map +0 -1
  599. package/dist/modes/interactive/components/easter-egg-3d.lazy.d.ts +0 -6
  600. package/dist/modes/interactive/components/easter-egg-3d.lazy.d.ts.map +0 -1
  601. package/dist/modes/interactive/components/easter-egg-3d.lazy.js +0 -23
  602. package/dist/modes/interactive/components/easter-egg-3d.lazy.js.map +0 -1
  603. package/dist/modes/interactive/components/extension-editor.d.ts +0 -24
  604. package/dist/modes/interactive/components/extension-editor.d.ts.map +0 -1
  605. package/dist/modes/interactive/components/extension-editor.js +0 -103
  606. package/dist/modes/interactive/components/extension-editor.js.map +0 -1
  607. package/dist/modes/interactive/components/extension-input.d.ts +0 -25
  608. package/dist/modes/interactive/components/extension-input.d.ts.map +0 -1
  609. package/dist/modes/interactive/components/extension-input.js +0 -67
  610. package/dist/modes/interactive/components/extension-input.js.map +0 -1
  611. package/dist/modes/interactive/components/extension-selector.d.ts +0 -27
  612. package/dist/modes/interactive/components/extension-selector.d.ts.map +0 -1
  613. package/dist/modes/interactive/components/extension-selector.js +0 -87
  614. package/dist/modes/interactive/components/extension-selector.js.map +0 -1
  615. package/dist/modes/interactive/components/first-time-setup.d.ts +0 -25
  616. package/dist/modes/interactive/components/first-time-setup.d.ts.map +0 -1
  617. package/dist/modes/interactive/components/first-time-setup.js +0 -109
  618. package/dist/modes/interactive/components/first-time-setup.js.map +0 -1
  619. package/dist/modes/interactive/components/footer.d.ts +0 -39
  620. package/dist/modes/interactive/components/footer.d.ts.map +0 -1
  621. package/dist/modes/interactive/components/footer.js +0 -265
  622. package/dist/modes/interactive/components/footer.js.map +0 -1
  623. package/dist/modes/interactive/components/index.d.ts +0 -33
  624. package/dist/modes/interactive/components/index.d.ts.map +0 -1
  625. package/dist/modes/interactive/components/index.js +0 -34
  626. package/dist/modes/interactive/components/index.js.map +0 -1
  627. package/dist/modes/interactive/components/keybinding-hints.d.ts +0 -13
  628. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +0 -1
  629. package/dist/modes/interactive/components/keybinding-hints.js +0 -36
  630. package/dist/modes/interactive/components/keybinding-hints.js.map +0 -1
  631. package/dist/modes/interactive/components/login-dialog.d.ts +0 -52
  632. package/dist/modes/interactive/components/login-dialog.d.ts.map +0 -1
  633. package/dist/modes/interactive/components/login-dialog.js +0 -188
  634. package/dist/modes/interactive/components/login-dialog.js.map +0 -1
  635. package/dist/modes/interactive/components/markdown-transform.d.ts +0 -3
  636. package/dist/modes/interactive/components/markdown-transform.d.ts.map +0 -1
  637. package/dist/modes/interactive/components/markdown-transform.js +0 -19
  638. package/dist/modes/interactive/components/markdown-transform.js.map +0 -1
  639. package/dist/modes/interactive/components/mermaid.d.ts +0 -11
  640. package/dist/modes/interactive/components/mermaid.d.ts.map +0 -1
  641. package/dist/modes/interactive/components/mermaid.js +0 -75
  642. package/dist/modes/interactive/components/mermaid.js.map +0 -1
  643. package/dist/modes/interactive/components/model-selector.d.ts +0 -60
  644. package/dist/modes/interactive/components/model-selector.d.ts.map +0 -1
  645. package/dist/modes/interactive/components/model-selector.js +0 -361
  646. package/dist/modes/interactive/components/model-selector.js.map +0 -1
  647. package/dist/modes/interactive/components/oauth-selector.d.ts +0 -33
  648. package/dist/modes/interactive/components/oauth-selector.d.ts.map +0 -1
  649. package/dist/modes/interactive/components/oauth-selector.js +0 -163
  650. package/dist/modes/interactive/components/oauth-selector.js.map +0 -1
  651. package/dist/modes/interactive/components/scoped-models-selector.d.ts +0 -46
  652. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +0 -1
  653. package/dist/modes/interactive/components/scoped-models-selector.js +0 -326
  654. package/dist/modes/interactive/components/scoped-models-selector.js.map +0 -1
  655. package/dist/modes/interactive/components/session-selector-search.d.ts +0 -23
  656. package/dist/modes/interactive/components/session-selector-search.d.ts.map +0 -1
  657. package/dist/modes/interactive/components/session-selector-search.js +0 -155
  658. package/dist/modes/interactive/components/session-selector-search.js.map +0 -1
  659. package/dist/modes/interactive/components/session-selector.d.ts +0 -95
  660. package/dist/modes/interactive/components/session-selector.d.ts.map +0 -1
  661. package/dist/modes/interactive/components/session-selector.js +0 -893
  662. package/dist/modes/interactive/components/session-selector.js.map +0 -1
  663. package/dist/modes/interactive/components/settings-selector.d.ts +0 -96
  664. package/dist/modes/interactive/components/settings-selector.d.ts.map +0 -1
  665. package/dist/modes/interactive/components/settings-selector.js +0 -742
  666. package/dist/modes/interactive/components/settings-selector.js.map +0 -1
  667. package/dist/modes/interactive/components/settings-submenu.d.ts +0 -72
  668. package/dist/modes/interactive/components/settings-submenu.d.ts.map +0 -1
  669. package/dist/modes/interactive/components/settings-submenu.js +0 -165
  670. package/dist/modes/interactive/components/settings-submenu.js.map +0 -1
  671. package/dist/modes/interactive/components/show-images-selector.d.ts +0 -10
  672. package/dist/modes/interactive/components/show-images-selector.d.ts.map +0 -1
  673. package/dist/modes/interactive/components/show-images-selector.js +0 -39
  674. package/dist/modes/interactive/components/show-images-selector.js.map +0 -1
  675. package/dist/modes/interactive/components/skill-invocation-message.d.ts +0 -18
  676. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +0 -1
  677. package/dist/modes/interactive/components/skill-invocation-message.js +0 -57
  678. package/dist/modes/interactive/components/skill-invocation-message.js.map +0 -1
  679. package/dist/modes/interactive/components/status-indicator.d.ts +0 -30
  680. package/dist/modes/interactive/components/status-indicator.d.ts.map +0 -1
  681. package/dist/modes/interactive/components/status-indicator.js +0 -67
  682. package/dist/modes/interactive/components/status-indicator.js.map +0 -1
  683. package/dist/modes/interactive/components/theme-selector.d.ts +0 -11
  684. package/dist/modes/interactive/components/theme-selector.d.ts.map +0 -1
  685. package/dist/modes/interactive/components/theme-selector.js +0 -50
  686. package/dist/modes/interactive/components/theme-selector.js.map +0 -1
  687. package/dist/modes/interactive/components/themed-text.d.ts +0 -17
  688. package/dist/modes/interactive/components/themed-text.d.ts.map +0 -1
  689. package/dist/modes/interactive/components/themed-text.js +0 -29
  690. package/dist/modes/interactive/components/themed-text.js.map +0 -1
  691. package/dist/modes/interactive/components/thinking-selector.d.ts +0 -23
  692. package/dist/modes/interactive/components/thinking-selector.d.ts.map +0 -1
  693. package/dist/modes/interactive/components/thinking-selector.js +0 -109
  694. package/dist/modes/interactive/components/thinking-selector.js.map +0 -1
  695. package/dist/modes/interactive/components/tool-execution.d.ts +0 -83
  696. package/dist/modes/interactive/components/tool-execution.d.ts.map +0 -1
  697. package/dist/modes/interactive/components/tool-execution.js +0 -323
  698. package/dist/modes/interactive/components/tool-execution.js.map +0 -1
  699. package/dist/modes/interactive/components/tree-selector.d.ts +0 -94
  700. package/dist/modes/interactive/components/tree-selector.d.ts.map +0 -1
  701. package/dist/modes/interactive/components/tree-selector.js +0 -1254
  702. package/dist/modes/interactive/components/tree-selector.js.map +0 -1
  703. package/dist/modes/interactive/components/trust-selector.d.ts +0 -23
  704. package/dist/modes/interactive/components/trust-selector.d.ts.map +0 -1
  705. package/dist/modes/interactive/components/trust-selector.js +0 -91
  706. package/dist/modes/interactive/components/trust-selector.js.map +0 -1
  707. package/dist/modes/interactive/components/user-message-selector.d.ts +0 -30
  708. package/dist/modes/interactive/components/user-message-selector.d.ts.map +0 -1
  709. package/dist/modes/interactive/components/user-message-selector.js +0 -114
  710. package/dist/modes/interactive/components/user-message-selector.js.map +0 -1
  711. package/dist/modes/interactive/components/user-message.d.ts +0 -16
  712. package/dist/modes/interactive/components/user-message.d.ts.map +0 -1
  713. package/dist/modes/interactive/components/user-message.js +0 -50
  714. package/dist/modes/interactive/components/user-message.js.map +0 -1
  715. package/dist/modes/interactive/components/visual-truncate.d.ts +0 -48
  716. package/dist/modes/interactive/components/visual-truncate.d.ts.map +0 -1
  717. package/dist/modes/interactive/components/visual-truncate.js +0 -66
  718. package/dist/modes/interactive/components/visual-truncate.js.map +0 -1
  719. package/dist/modes/interactive/external-editor.d.ts +0 -12
  720. package/dist/modes/interactive/external-editor.d.ts.map +0 -1
  721. package/dist/modes/interactive/external-editor.js +0 -38
  722. package/dist/modes/interactive/external-editor.js.map +0 -1
  723. package/dist/modes/interactive/interactive-mode.d.ts +0 -470
  724. package/dist/modes/interactive/interactive-mode.d.ts.map +0 -1
  725. package/dist/modes/interactive/interactive-mode.js +0 -5795
  726. package/dist/modes/interactive/interactive-mode.js.map +0 -1
  727. package/dist/modes/interactive/model-catalog-refresh.d.ts +0 -7
  728. package/dist/modes/interactive/model-catalog-refresh.d.ts.map +0 -1
  729. package/dist/modes/interactive/model-catalog-refresh.js +0 -34
  730. package/dist/modes/interactive/model-catalog-refresh.js.map +0 -1
  731. package/dist/modes/interactive/model-search.d.ts +0 -12
  732. package/dist/modes/interactive/model-search.d.ts.map +0 -1
  733. package/dist/modes/interactive/model-search.js +0 -15
  734. package/dist/modes/interactive/model-search.js.map +0 -1
  735. package/dist/modes/interactive/session-share.d.ts +0 -18
  736. package/dist/modes/interactive/session-share.d.ts.map +0 -1
  737. package/dist/modes/interactive/session-share.js +0 -188
  738. package/dist/modes/interactive/session-share.js.map +0 -1
  739. package/dist/modes/interactive/theme/system-theme.d.ts +0 -55
  740. package/dist/modes/interactive/theme/system-theme.d.ts.map +0 -1
  741. package/dist/modes/interactive/theme/system-theme.js +0 -546
  742. package/dist/modes/interactive/theme/system-theme.js.map +0 -1
  743. package/dist/modes/interactive/theme/theme-controller.d.ts +0 -81
  744. package/dist/modes/interactive/theme/theme-controller.d.ts.map +0 -1
  745. package/dist/modes/interactive/theme/theme-controller.js +0 -210
  746. package/dist/modes/interactive/theme/theme-controller.js.map +0 -1
  747. package/dist/modes/interactive/theme/theme-json.d.ts +0 -85
  748. package/dist/modes/interactive/theme/theme-json.d.ts.map +0 -1
  749. package/dist/modes/interactive/theme/theme-json.js +0 -132
  750. package/dist/modes/interactive/theme/theme-json.js.map +0 -1
  751. package/dist/modes/interactive/theme/theme.d.ts +0 -158
  752. package/dist/modes/interactive/theme/theme.d.ts.map +0 -1
  753. package/dist/modes/interactive/theme/theme.js +0 -913
  754. package/dist/modes/interactive/theme/theme.js.map +0 -1
  755. package/dist/modes/interactive/tui-renderer.d.ts +0 -22
  756. package/dist/modes/interactive/tui-renderer.d.ts.map +0 -1
  757. package/dist/modes/interactive/tui-renderer.js +0 -67
  758. package/dist/modes/interactive/tui-renderer.js.map +0 -1
  759. package/dist/modes/json-event.d.ts +0 -34
  760. package/dist/modes/json-event.d.ts.map +0 -1
  761. package/dist/modes/json-event.js +0 -29
  762. package/dist/modes/json-event.js.map +0 -1
  763. package/dist/modes/print-mode.d.ts +0 -28
  764. package/dist/modes/print-mode.d.ts.map +0 -1
  765. package/dist/modes/print-mode.js +0 -142
  766. package/dist/modes/print-mode.js.map +0 -1
  767. package/dist/modes/rpc/jsonl.d.ts +0 -17
  768. package/dist/modes/rpc/jsonl.d.ts.map +0 -1
  769. package/dist/modes/rpc/jsonl.js +0 -49
  770. package/dist/modes/rpc/jsonl.js.map +0 -1
  771. package/dist/modes/rpc/rpc-client.d.ts +0 -254
  772. package/dist/modes/rpc/rpc-client.d.ts.map +0 -1
  773. package/dist/modes/rpc/rpc-client.js +0 -499
  774. package/dist/modes/rpc/rpc-client.js.map +0 -1
  775. package/dist/modes/rpc/rpc-mode.d.ts +0 -20
  776. package/dist/modes/rpc/rpc-mode.d.ts.map +0 -1
  777. package/dist/modes/rpc/rpc-mode.js +0 -655
  778. package/dist/modes/rpc/rpc-mode.js.map +0 -1
  779. package/dist/modes/rpc/rpc-types.d.ts +0 -478
  780. package/dist/modes/rpc/rpc-types.d.ts.map +0 -1
  781. package/dist/modes/rpc/rpc-types.js +0 -8
  782. package/dist/modes/rpc/rpc-types.js.map +0 -1
  783. package/dist/package-manager-cli.d.ts +0 -9
  784. package/dist/package-manager-cli.d.ts.map +0 -1
  785. package/dist/package-manager-cli.js +0 -1000
  786. package/dist/package-manager-cli.js.map +0 -1
  787. package/dist/rpc-entry.d.ts +0 -3
  788. package/dist/rpc-entry.d.ts.map +0 -1
  789. package/dist/rpc-entry.js +0 -11
  790. package/dist/rpc-entry.js.map +0 -1
  791. package/dist/utils/abort.d.ts +0 -5
  792. package/dist/utils/abort.d.ts.map +0 -1
  793. package/dist/utils/abort.js +0 -48
  794. package/dist/utils/abort.js.map +0 -1
  795. package/dist/utils/ansi.d.ts +0 -10
  796. package/dist/utils/ansi.d.ts.map +0 -1
  797. package/dist/utils/ansi.js +0 -71
  798. package/dist/utils/ansi.js.map +0 -1
  799. package/dist/utils/changelog.d.ts +0 -22
  800. package/dist/utils/changelog.d.ts.map +0 -1
  801. package/dist/utils/changelog.js +0 -165
  802. package/dist/utils/changelog.js.map +0 -1
  803. package/dist/utils/child-process.d.ts +0 -18
  804. package/dist/utils/child-process.d.ts.map +0 -1
  805. package/dist/utils/child-process.js +0 -106
  806. package/dist/utils/child-process.js.map +0 -1
  807. package/dist/utils/clipboard-command.d.ts +0 -7
  808. package/dist/utils/clipboard-command.d.ts.map +0 -1
  809. package/dist/utils/clipboard-command.js +0 -45
  810. package/dist/utils/clipboard-command.js.map +0 -1
  811. package/dist/utils/clipboard-image.d.ts +0 -11
  812. package/dist/utils/clipboard-image.d.ts.map +0 -1
  813. package/dist/utils/clipboard-image.js +0 -214
  814. package/dist/utils/clipboard-image.js.map +0 -1
  815. package/dist/utils/clipboard.d.ts +0 -6
  816. package/dist/utils/clipboard.d.ts.map +0 -1
  817. package/dist/utils/clipboard.js +0 -157
  818. package/dist/utils/clipboard.js.map +0 -1
  819. package/dist/utils/deprecation.d.ts +0 -4
  820. package/dist/utils/deprecation.d.ts.map +0 -1
  821. package/dist/utils/deprecation.js +0 -13
  822. package/dist/utils/deprecation.js.map +0 -1
  823. package/dist/utils/exif-orientation.d.ts +0 -5
  824. package/dist/utils/exif-orientation.d.ts.map +0 -1
  825. package/dist/utils/exif-orientation.js +0 -157
  826. package/dist/utils/exif-orientation.js.map +0 -1
  827. package/dist/utils/frontmatter.d.ts +0 -8
  828. package/dist/utils/frontmatter.d.ts.map +0 -1
  829. package/dist/utils/frontmatter.js +0 -27
  830. package/dist/utils/frontmatter.js.map +0 -1
  831. package/dist/utils/fs-watch.d.ts +0 -5
  832. package/dist/utils/fs-watch.d.ts.map +0 -1
  833. package/dist/utils/fs-watch.js +0 -25
  834. package/dist/utils/fs-watch.js.map +0 -1
  835. package/dist/utils/git.d.ts +0 -26
  836. package/dist/utils/git.d.ts.map +0 -1
  837. package/dist/utils/git.js +0 -195
  838. package/dist/utils/git.js.map +0 -1
  839. package/dist/utils/html.d.ts +0 -7
  840. package/dist/utils/html.d.ts.map +0 -1
  841. package/dist/utils/html.js +0 -40
  842. package/dist/utils/html.js.map +0 -1
  843. package/dist/utils/image-convert.d.ts +0 -22
  844. package/dist/utils/image-convert.d.ts.map +0 -1
  845. package/dist/utils/image-convert.js +0 -84
  846. package/dist/utils/image-convert.js.map +0 -1
  847. package/dist/utils/image-process.d.ts +0 -18
  848. package/dist/utils/image-process.d.ts.map +0 -1
  849. package/dist/utils/image-process.js +0 -83
  850. package/dist/utils/image-process.js.map +0 -1
  851. package/dist/utils/image-resize-core.d.ts +0 -42
  852. package/dist/utils/image-resize-core.d.ts.map +0 -1
  853. package/dist/utils/image-resize-core.js +0 -129
  854. package/dist/utils/image-resize-core.js.map +0 -1
  855. package/dist/utils/image-resize-worker.d.ts +0 -2
  856. package/dist/utils/image-resize-worker.d.ts.map +0 -1
  857. package/dist/utils/image-resize-worker.js +0 -32
  858. package/dist/utils/image-resize-worker.js.map +0 -1
  859. package/dist/utils/image-resize.d.ts +0 -16
  860. package/dist/utils/image-resize.d.ts.map +0 -1
  861. package/dist/utils/image-resize.js +0 -96
  862. package/dist/utils/image-resize.js.map +0 -1
  863. package/dist/utils/json.d.ts +0 -3
  864. package/dist/utils/json.d.ts.map +0 -1
  865. package/dist/utils/json.js +0 -7
  866. package/dist/utils/json.js.map +0 -1
  867. package/dist/utils/management-http.d.ts +0 -25
  868. package/dist/utils/management-http.d.ts.map +0 -1
  869. package/dist/utils/management-http.js +0 -54
  870. package/dist/utils/management-http.js.map +0 -1
  871. package/dist/utils/mime.d.ts +0 -3
  872. package/dist/utils/mime.d.ts.map +0 -1
  873. package/dist/utils/mime.js +0 -110
  874. package/dist/utils/mime.js.map +0 -1
  875. package/dist/utils/open-browser.d.ts +0 -9
  876. package/dist/utils/open-browser.d.ts.map +0 -1
  877. package/dist/utils/open-browser.js +0 -22
  878. package/dist/utils/open-browser.js.map +0 -1
  879. package/dist/utils/paths.d.ts +0 -34
  880. package/dist/utils/paths.d.ts.map +0 -1
  881. package/dist/utils/paths.js +0 -115
  882. package/dist/utils/paths.js.map +0 -1
  883. package/dist/utils/photon.d.ts +0 -21
  884. package/dist/utils/photon.d.ts.map +0 -1
  885. package/dist/utils/photon.js +0 -121
  886. package/dist/utils/photon.js.map +0 -1
  887. package/dist/utils/pi-user-agent.d.ts +0 -2
  888. package/dist/utils/pi-user-agent.d.ts.map +0 -1
  889. package/dist/utils/pi-user-agent.js +0 -5
  890. package/dist/utils/pi-user-agent.js.map +0 -1
  891. package/dist/utils/shell.d.ts +0 -32
  892. package/dist/utils/shell.d.ts.map +0 -1
  893. package/dist/utils/shell.js +0 -189
  894. package/dist/utils/shell.js.map +0 -1
  895. package/dist/utils/sleep.d.ts +0 -5
  896. package/dist/utils/sleep.d.ts.map +0 -1
  897. package/dist/utils/sleep.js +0 -17
  898. package/dist/utils/sleep.js.map +0 -1
  899. package/dist/utils/syntax-highlight.d.ts +0 -13
  900. package/dist/utils/syntax-highlight.d.ts.map +0 -1
  901. package/dist/utils/syntax-highlight.js +0 -184
  902. package/dist/utils/syntax-highlight.js.map +0 -1
  903. package/dist/utils/text.d.ts +0 -8
  904. package/dist/utils/text.d.ts.map +0 -1
  905. package/dist/utils/text.js +0 -9
  906. package/dist/utils/text.js.map +0 -1
  907. package/dist/utils/tool-result-images.d.ts +0 -21
  908. package/dist/utils/tool-result-images.d.ts.map +0 -1
  909. package/dist/utils/tool-result-images.js +0 -48
  910. package/dist/utils/tool-result-images.js.map +0 -1
  911. package/dist/utils/tools-manager.d.ts +0 -13
  912. package/dist/utils/tools-manager.d.ts.map +0 -1
  913. package/dist/utils/tools-manager.js +0 -343
  914. package/dist/utils/tools-manager.js.map +0 -1
  915. package/dist/utils/version-check.d.ts +0 -19
  916. package/dist/utils/version-check.d.ts.map +0 -1
  917. package/dist/utils/version-check.js +0 -72
  918. package/dist/utils/version-check.js.map +0 -1
  919. package/dist/utils/windows-self-update.d.ts +0 -3
  920. package/dist/utils/windows-self-update.d.ts.map +0 -1
  921. package/dist/utils/windows-self-update.js +0 -77
  922. package/dist/utils/windows-self-update.js.map +0 -1
  923. package/dist/utils/wsl.d.ts +0 -3
  924. package/dist/utils/wsl.d.ts.map +0 -1
  925. package/dist/utils/wsl.js +0 -15
  926. package/dist/utils/wsl.js.map +0 -1
  927. package/dist/utils/zip.d.ts +0 -7
  928. package/dist/utils/zip.d.ts.map +0 -1
  929. package/dist/utils/zip.js +0 -60
  930. package/dist/utils/zip.js.map +0 -1
@@ -1,758 +0,0 @@
1
- import { dirname, join } from "node:path";
2
- import { clampThinkingLevel, createModels, lazyStream, ModelsError, normalizeContext, } from "@earendil-works/pi-ai";
3
- import * as builtinProviderCatalog from "@earendil-works/pi-ai/providers/all";
4
- import { assertChatModel, assertClassifierModel, assertImageModel, classifierErrorResult, imageErrorResult, } from "@earendil-works/pi-ai/utils/model-operations";
5
- import { getAgentDir, readAppEnv } from "../config.js";
6
- import { operationSignal, raceWithAbortSignal } from "../utils/abort.js";
7
- import { AuthStorage as DefaultAuthStorage } from "./auth-storage.js";
8
- import { ModelConfig } from "./model-config.js";
9
- import { FileModelsStore, InMemoryCodingAgentModelsStore } from "./models-store.js";
10
- import { composeModelProvider, configuredRequestAuthStatus, resolveCompatibilityRequestConfig, resolveConfiguredModelHeaders, validateExtensionProvider, } from "./provider-composer.js";
11
- import { withRemoteCatalog } from "./remote-catalog-provider.js";
12
- import { RuntimeCredentials } from "./runtime-credentials.js";
13
- import { createVirtualModel, findLatestResponse, isVirtualModel, withVirtualModels, } from "./virtual-models.js";
14
- /** Credentials changed successfully, but the local model/auth snapshot could not be synchronized. */
15
- export class CredentialSynchronizationError extends Error {
16
- providerId;
17
- operation;
18
- credential;
19
- constructor(providerId, operation, credential, options) {
20
- super(`Credential ${operation} committed for ${providerId}, but local synchronization failed`, options);
21
- this.name = "CredentialSynchronizationError";
22
- this.providerId = providerId;
23
- this.operation = operation;
24
- this.credential = credential;
25
- }
26
- }
27
- function mergeHeaders(base, override) {
28
- if (!base && !override)
29
- return undefined;
30
- const merged = { ...base };
31
- for (const [name, value] of Object.entries(override ?? {})) {
32
- const lowerName = name.toLowerCase();
33
- for (const existingName of Object.keys(merged)) {
34
- if (existingName.toLowerCase() === lowerName)
35
- delete merged[existingName];
36
- }
37
- merged[name] = value;
38
- }
39
- return merged;
40
- }
41
- /** Configured pi-ai Models collection used by coding-agent and SDK consumers. */
42
- export class ModelRuntime {
43
- models;
44
- credentials;
45
- defaultBuiltins;
46
- builtins = new Map();
47
- nativeExtensionProviders = new Map();
48
- extensionProviders = new Map();
49
- /** Virtual models by provider id, then model id. */
50
- virtualModels = new Map();
51
- compositionErrors = new Map();
52
- modelsPath;
53
- modelNetworkEnabled;
54
- config;
55
- snapshot = {
56
- all: [],
57
- available: [],
58
- configuredProviders: new Set(),
59
- storedProviders: new Set(),
60
- auth: new Map(),
61
- };
62
- availabilityRefreshSeq = 0;
63
- availabilityErrorSeq = 0;
64
- providerAvailabilitySeq = new Map();
65
- availabilityError;
66
- credentialOperations = new Map();
67
- constructor(credentials, config, modelsPath, modelsStore, providers, modelNetworkEnabled) {
68
- this.credentials = credentials;
69
- this.config = config;
70
- this.modelsPath = modelsPath;
71
- this.modelNetworkEnabled = modelNetworkEnabled;
72
- this.defaultBuiltins = new Map(providers.map((provider) => [provider.id, provider]));
73
- for (const [providerId, provider] of this.defaultBuiltins)
74
- this.builtins.set(providerId, provider);
75
- this.models = createModels({ credentials, modelsStore });
76
- this.rebuildProviders();
77
- }
78
- static async create(options = {}) {
79
- const credentials = new RuntimeCredentials(options.credentials ?? DefaultAuthStorage.create(options.authPath));
80
- const modelsPath = options.modelsPath === null ? undefined : (options.modelsPath ?? join(getAgentDir(), "models.json"));
81
- const config = await ModelConfig.load(modelsPath);
82
- const modelsStore = options.modelsStore ??
83
- (modelsPath
84
- ? new FileModelsStore(options.modelsStorePath ?? join(dirname(modelsPath), "models-store.json"))
85
- : new InMemoryCodingAgentModelsStore());
86
- const builtinModelDataGeneratedAt = builtinProviderCatalog.getBuiltinModelDataGeneratedAt();
87
- const providers = builtinProviderCatalog
88
- .builtinProviders()
89
- .map((provider) => provider.id === "radius"
90
- ? provider
91
- : withRemoteCatalog(provider, options.catalogBaseUrl, builtinModelDataGeneratedAt));
92
- const runtime = new ModelRuntime(credentials, config, modelsPath, modelsStore, providers, readAppEnv("OFFLINE") === undefined);
93
- runtime.configureRadiusProviders();
94
- runtime.rebuildProviders();
95
- const refreshFromNetwork = runtime.modelNetworkEnabled && options.allowModelNetwork === true;
96
- const controller = refreshFromNetwork && options.modelRefreshTimeoutMs !== undefined ? new AbortController() : undefined;
97
- const timeout = controller ? setTimeout(() => controller.abort(), options.modelRefreshTimeoutMs) : undefined;
98
- const signal = controller
99
- ? options.signal
100
- ? AbortSignal.any([options.signal, controller.signal])
101
- : controller.signal
102
- : options.signal;
103
- try {
104
- if (options.refreshOnCreate !== false) {
105
- await runtime.refresh({ allowNetwork: refreshFromNetwork, signal });
106
- }
107
- }
108
- finally {
109
- if (timeout)
110
- clearTimeout(timeout);
111
- }
112
- return runtime;
113
- }
114
- configureRadiusProviders() {
115
- this.builtins.clear();
116
- for (const [providerId, provider] of this.defaultBuiltins)
117
- this.builtins.set(providerId, provider);
118
- for (const providerId of this.config.getProviderIds()) {
119
- const config = this.config.getProvider(providerId);
120
- if (config?.oauth !== "radius" || !config.baseUrl)
121
- continue;
122
- this.builtins.set(providerId, builtinProviderCatalog.radiusProvider({
123
- id: providerId,
124
- name: config.name ?? providerId,
125
- gateway: config.baseUrl.replace(/\/v1\/?$/u, ""),
126
- }));
127
- }
128
- }
129
- providerIds() {
130
- return new Set([
131
- ...this.builtins.keys(),
132
- ...this.nativeExtensionProviders.keys(),
133
- ...this.config.getProviderIds(),
134
- ...this.extensionProviders.keys(),
135
- ...this.virtualModels.keys(),
136
- ]);
137
- }
138
- /** Returns the provider without virtual models, or undefined when only virtual models define it. */
139
- recomposeProvider(providerId) {
140
- const provider = this.composeProvider(providerId);
141
- const virtualModels = [...(this.virtualModels.get(providerId)?.values() ?? [])].map((entry) => entry.model);
142
- if (virtualModels.length > 0)
143
- this.models.setProvider(withVirtualModels(providerId, provider, virtualModels));
144
- else if (provider)
145
- this.models.setProvider(provider);
146
- else
147
- this.models.deleteProvider(providerId);
148
- return provider;
149
- }
150
- /** The provider without virtual models, or undefined when nothing defines it. */
151
- composeProvider(providerId) {
152
- const base = this.nativeExtensionProviders.get(providerId) ?? this.builtins.get(providerId);
153
- const extension = this.extensionProviders.get(providerId);
154
- if (!this.config.getProvider(providerId) && !extension) {
155
- // No overlays: use the builtin untouched so its auth/login/stream behavior is exact.
156
- this.compositionErrors.delete(providerId);
157
- return base;
158
- }
159
- try {
160
- const provider = composeModelProvider(providerId, base, this.config, extension);
161
- this.compositionErrors.delete(providerId);
162
- return provider;
163
- }
164
- catch (error) {
165
- this.compositionErrors.set(providerId, error instanceof Error ? error.message : String(error));
166
- return base;
167
- }
168
- }
169
- rebuildProviders() {
170
- this.models.clearProviders();
171
- this.compositionErrors.clear();
172
- for (const providerId of this.providerIds())
173
- this.recomposeProvider(providerId);
174
- this.updateModelSnapshot();
175
- }
176
- updateModelSnapshot() {
177
- const all = [...this.models.getModels()];
178
- this.snapshot = {
179
- ...this.snapshot,
180
- all,
181
- available: all.filter((model) => this.snapshot.configuredProviders.has(model.provider)),
182
- };
183
- }
184
- async runAvailabilityRefresh(seq, errorSeq, signal) {
185
- const providers = this.models.getProviders();
186
- const [available, checks, credentials] = await Promise.all([
187
- this.models.getAvailable(undefined, { signal }),
188
- Promise.all(providers.map(async (provider) => [
189
- provider.id,
190
- await this.models.checkAuth(provider.id, { signal }),
191
- ])),
192
- this.credentials.list({ signal }),
193
- ]);
194
- if (seq !== this.availabilityRefreshSeq)
195
- return;
196
- const auth = new Map(checks);
197
- const configuredProviders = new Set(checks
198
- .filter((entry) => entry[1] !== undefined)
199
- .map(([providerId]) => providerId));
200
- this.snapshot = {
201
- all: [...this.models.getModels()],
202
- available: [...available],
203
- configuredProviders,
204
- storedProviders: new Set(credentials.map((entry) => entry.providerId)),
205
- auth,
206
- };
207
- if (errorSeq === this.availabilityErrorSeq)
208
- this.availabilityError = undefined;
209
- }
210
- queueAvailabilityRefresh(signal) {
211
- const seq = ++this.availabilityRefreshSeq;
212
- for (const [providerId, providerSeq] of this.providerAvailabilitySeq) {
213
- this.providerAvailabilitySeq.set(providerId, providerSeq + 1);
214
- }
215
- const errorSeq = ++this.availabilityErrorSeq;
216
- const effectiveSignal = operationSignal(signal);
217
- return this.runAvailabilityRefresh(seq, errorSeq, effectiveSignal).catch((error) => {
218
- if (errorSeq === this.availabilityErrorSeq && !effectiveSignal.aborted) {
219
- this.availabilityError = error instanceof Error ? error.message : String(error);
220
- }
221
- throw error;
222
- });
223
- }
224
- async refreshProviderAvailability(providerId, signal) {
225
- // Invalidate any full availability pass that started before this credential change.
226
- ++this.availabilityRefreshSeq;
227
- const providerSeq = (this.providerAvailabilitySeq.get(providerId) ?? 0) + 1;
228
- this.providerAvailabilitySeq.set(providerId, providerSeq);
229
- const errorSeq = ++this.availabilityErrorSeq;
230
- try {
231
- const [available, auth, credential] = await Promise.all([
232
- this.models.getAvailable(providerId, { signal }),
233
- this.models.checkAuth(providerId, { signal }),
234
- this.credentials.read(providerId, { signal }),
235
- ]);
236
- signal.throwIfAborted();
237
- if (this.providerAvailabilitySeq.get(providerId) !== providerSeq)
238
- return;
239
- const configuredProviders = new Set(this.snapshot.configuredProviders);
240
- const storedProviders = new Set(this.snapshot.storedProviders);
241
- const authByProvider = new Map(this.snapshot.auth);
242
- if (auth) {
243
- configuredProviders.add(providerId);
244
- authByProvider.set(providerId, auth);
245
- }
246
- else {
247
- configuredProviders.delete(providerId);
248
- authByProvider.delete(providerId);
249
- }
250
- if (credential)
251
- storedProviders.add(providerId);
252
- else
253
- storedProviders.delete(providerId);
254
- const all = [...this.models.getModels()];
255
- const availableById = new Map([...this.snapshot.available.filter((model) => model.provider !== providerId), ...available].map((model) => [
256
- `${model.provider}\0${model.id}`,
257
- model,
258
- ]));
259
- this.snapshot = {
260
- all,
261
- available: all.flatMap((model) => availableById.get(`${model.provider}\0${model.id}`) ?? []),
262
- configuredProviders,
263
- storedProviders,
264
- auth: authByProvider,
265
- };
266
- if (errorSeq === this.availabilityErrorSeq)
267
- this.availabilityError = undefined;
268
- }
269
- catch (error) {
270
- if (this.providerAvailabilitySeq.get(providerId) === providerSeq &&
271
- errorSeq === this.availabilityErrorSeq &&
272
- !signal.aborted) {
273
- this.availabilityError = error instanceof Error ? error.message : String(error);
274
- }
275
- throw error;
276
- }
277
- }
278
- getProviders() {
279
- return this.models.getProviders();
280
- }
281
- getProvider(providerId) {
282
- return this.models.getProvider(providerId);
283
- }
284
- getModels(providerId) {
285
- return this.models.getModels(providerId);
286
- }
287
- getModel(providerId, modelId) {
288
- return this.models.getModel(providerId, modelId);
289
- }
290
- getModelsOfType(type, providerId) {
291
- return this.models.getModelsOfType(type, providerId);
292
- }
293
- getModelOfType(type, providerId, modelId) {
294
- return this.models.getModelOfType(type, providerId, modelId);
295
- }
296
- getAllModels(providerId) {
297
- return this.models.getAllModels(providerId);
298
- }
299
- getAvailableOfType(type, providerId, options) {
300
- return this.models.getAvailableOfType(type, providerId, options);
301
- }
302
- getAllAvailable(providerId, options) {
303
- return this.models.getAllAvailable(providerId, options);
304
- }
305
- async checkAuth(providerId, options) {
306
- return this.models.checkAuth(providerId, options);
307
- }
308
- async getAvailable(providerId, options) {
309
- if (providerId) {
310
- const errorSeq = ++this.availabilityErrorSeq;
311
- try {
312
- const available = await this.models.getAvailable(providerId, options);
313
- if (errorSeq === this.availabilityErrorSeq)
314
- this.availabilityError = undefined;
315
- return available;
316
- }
317
- catch (error) {
318
- if (errorSeq === this.availabilityErrorSeq && !options?.signal?.aborted) {
319
- this.availabilityError = error instanceof Error ? error.message : String(error);
320
- }
321
- throw error;
322
- }
323
- }
324
- await this.queueAvailabilityRefresh(options?.signal);
325
- return this.snapshot.available;
326
- }
327
- getAvailableSnapshot() {
328
- return this.snapshot.available;
329
- }
330
- getError() {
331
- const errors = [];
332
- const configError = this.config.getError();
333
- if (configError)
334
- errors.push(configError);
335
- for (const [providerId, error] of this.compositionErrors) {
336
- errors.push(`Provider "${providerId}": ${error}`);
337
- }
338
- if (this.availabilityError)
339
- errors.push(`Availability refresh: ${this.availabilityError}`);
340
- return errors.length > 0 ? errors.join("\n\n") : undefined;
341
- }
342
- getRegisteredProviderConfig(providerId) {
343
- return this.extensionProviders.get(providerId);
344
- }
345
- getRegisteredProviderIds() {
346
- return [...new Set([...this.extensionProviders.keys(), ...this.nativeExtensionProviders.keys()])];
347
- }
348
- getRegisteredNativeProvider(providerId) {
349
- return this.nativeExtensionProviders.get(providerId);
350
- }
351
- /** @internal Compatibility fallback for ModelRegistry when provider auth is unconfigured. */
352
- getCompatibilityRequestConfig(model) {
353
- return resolveCompatibilityRequestConfig(model, this.config.getProvider(model.provider), this.extensionProviders.get(model.provider));
354
- }
355
- isUsingOAuth(providerId) {
356
- return this.snapshot.auth.get(providerId)?.type === "oauth";
357
- }
358
- isUsingSubscription(providerId) {
359
- return this.isUsingOAuth(providerId) && this.models.getProvider(providerId)?.auth.oauth?.isSubscription === true;
360
- }
361
- hasConfiguredAuth(providerId) {
362
- return this.snapshot.configuredProviders.has(providerId);
363
- }
364
- async getAuth(providerOrModel, overrides = {}) {
365
- if (typeof providerOrModel === "string")
366
- return this.models.getAuth(providerOrModel, overrides);
367
- const resolution = await this.models.getAuth(providerOrModel, overrides);
368
- if (!resolution)
369
- return undefined;
370
- const configuredHeaders = resolveConfiguredModelHeaders(providerOrModel, this.config.getProvider(providerOrModel.provider), this.extensionProviders.get(providerOrModel.provider), { ...(resolution.env ?? {}), ...(overrides.env ?? {}) });
371
- return {
372
- ...resolution,
373
- auth: {
374
- ...resolution.auth,
375
- headers: mergeHeaders(resolution.auth.headers, configuredHeaders),
376
- },
377
- };
378
- }
379
- enqueueCredentialOperation(providerId, signal, task) {
380
- const previous = this.credentialOperations.get(providerId) ?? Promise.resolve();
381
- let markStarted;
382
- const started = new Promise((resolve) => {
383
- markStarted = resolve;
384
- });
385
- const operation = (async () => {
386
- await previous.catch(() => { });
387
- signal.throwIfAborted();
388
- markStarted?.();
389
- return task();
390
- })();
391
- const tail = operation.catch(() => { });
392
- this.credentialOperations.set(providerId, tail);
393
- void tail.then(() => {
394
- if (this.credentialOperations.get(providerId) === tail)
395
- this.credentialOperations.delete(providerId);
396
- });
397
- return raceWithAbortSignal(started, signal).then(() => operation);
398
- }
399
- async synchronizeCredentialState(providerId, operation, credential, signal) {
400
- try {
401
- signal.throwIfAborted();
402
- this.recomposeProvider(providerId);
403
- const compositionError = this.compositionErrors.get(providerId);
404
- if (compositionError)
405
- throw new Error(compositionError);
406
- const result = await this.models.refresh({ allowNetwork: false, providers: [providerId], signal });
407
- if (result.aborted)
408
- signal.throwIfAborted();
409
- const refreshError = result.errors.get(providerId);
410
- if (refreshError)
411
- throw refreshError;
412
- this.updateModelSnapshot();
413
- await this.refreshProviderAvailability(providerId, signal);
414
- }
415
- catch (cause) {
416
- throw new CredentialSynchronizationError(providerId, operation, credential, { cause });
417
- }
418
- }
419
- setRuntimeApiKey(providerId, apiKey, options = {}) {
420
- const signal = operationSignal(options.signal);
421
- return this.enqueueCredentialOperation(providerId, signal, async () => {
422
- this.credentials.setRuntimeApiKey(providerId, apiKey);
423
- await this.synchronizeCredentialState(providerId, "setRuntimeApiKey", { type: "api_key", key: apiKey }, signal);
424
- });
425
- }
426
- removeRuntimeApiKey(providerId, options = {}) {
427
- const signal = operationSignal(options.signal);
428
- return this.enqueueCredentialOperation(providerId, signal, async () => {
429
- this.credentials.removeRuntimeApiKey(providerId);
430
- await this.synchronizeCredentialState(providerId, "removeRuntimeApiKey", undefined, signal);
431
- });
432
- }
433
- listCredentials(options) {
434
- return this.credentials.list(options);
435
- }
436
- getProviderAuthStatus(providerId) {
437
- if (this.credentials.hasRuntimeApiKey(providerId))
438
- return { configured: true, source: "runtime" };
439
- if (this.snapshot.storedProviders.has(providerId))
440
- return { configured: true, source: "stored" };
441
- const configured = configuredRequestAuthStatus(this.config.getProvider(providerId), this.extensionProviders.get(providerId));
442
- if (configured)
443
- return configured;
444
- const check = this.snapshot.auth.get(providerId);
445
- return check ? { configured: true, source: "environment", label: check.source } : { configured: false };
446
- }
447
- async prepareRequest(model, options) {
448
- const provider = this.models.getProvider(model.provider);
449
- if (!provider)
450
- throw new ModelsError("provider", `Unknown provider: ${model.provider}`);
451
- const resolution = await this.getAuth(model, {
452
- apiKey: options?.apiKey,
453
- env: options?.env,
454
- signal: options?.signal,
455
- });
456
- if (!resolution)
457
- throw new ModelsError("auth", `Provider is not configured: ${model.provider}`);
458
- const { transformHeaders, ...rawProviderOptions } = options ?? {};
459
- const providerOptions = rawProviderOptions;
460
- let headers = mergeHeaders(resolution.auth.headers, providerOptions.headers);
461
- if (transformHeaders)
462
- headers = await transformHeaders(headers ?? {});
463
- const env = resolution.env || providerOptions.env
464
- ? { ...(resolution.env ?? {}), ...(providerOptions.env ?? {}) }
465
- : undefined;
466
- const requestModel = resolution.auth.baseUrl ? { ...model, baseUrl: resolution.auth.baseUrl } : model;
467
- return {
468
- provider,
469
- model: requestModel,
470
- options: {
471
- ...providerOptions,
472
- apiKey: providerOptions.apiKey ?? resolution.auth.apiKey,
473
- headers,
474
- env,
475
- },
476
- };
477
- }
478
- stream(model, context, options) {
479
- const transcript = normalizeContext(context);
480
- return lazyStream(model, async () => {
481
- assertChatModel(model);
482
- const prepared = await this.prepareRequest(model, options);
483
- return prepared.provider.stream(prepared.model, transcript, prepared.options);
484
- });
485
- }
486
- complete(model, context, options) {
487
- return this.stream(model, context, options).result();
488
- }
489
- streamSimple(model, context, options) {
490
- const transcript = normalizeContext(context);
491
- if (isVirtualModel(model)) {
492
- // Requests outside the agent loop are routed here. Callers sized them before routing, so
493
- // cap the output budget to the routed model.
494
- return lazyStream(model, async () => {
495
- const route = await this.resolveModel(model, transcript.messages, {
496
- reason: "direct",
497
- thinkingLevel: options?.reasoning ?? "off",
498
- signal: options?.signal,
499
- });
500
- const { maxTokens: limit } = route.model;
501
- const maxTokens = options?.maxTokens && limit > 0 ? Math.min(options.maxTokens, limit) : options?.maxTokens;
502
- const reasoning = route.thinkingLevel === "off" ? undefined : route.thinkingLevel;
503
- // Caller credentials were resolved for the virtual model's provider. Another provider
504
- // resolves its own, so they are not sent to the wrong vendor.
505
- const { apiKey, headers, env, ...rest } = options ?? {};
506
- const auth = route.model.provider === model.provider ? { apiKey, headers, env } : {};
507
- return this.streamSimple(route.model, context, { ...rest, ...auth, maxTokens, reasoning });
508
- });
509
- }
510
- return lazyStream(model, async () => {
511
- assertChatModel(model);
512
- const prepared = await this.prepareRequest(model, options);
513
- return prepared.provider.streamSimple(prepared.model, transcript, prepared.options);
514
- });
515
- }
516
- completeSimple(model, context, options) {
517
- return this.streamSimple(model, context, options).result();
518
- }
519
- streamDeferred(model, handle, options) {
520
- return lazyStream(model, async () => {
521
- assertChatModel(model);
522
- const prepared = await this.prepareRequest(model, options);
523
- if (!prepared.provider.fetchDeferred) {
524
- throw new ModelsError("provider", `Provider ${model.provider} does not support deferred responses`);
525
- }
526
- return prepared.provider.fetchDeferred(prepared.model, handle, prepared.options);
527
- });
528
- }
529
- async fetchDeferred(model, handle, options) {
530
- return this.streamDeferred(model, handle, options).result();
531
- }
532
- async cancelDeferred(model, handle, options) {
533
- assertChatModel(model);
534
- const prepared = await this.prepareRequest(model, options);
535
- if (!prepared.provider.cancelDeferred) {
536
- throw new ModelsError("provider", `Provider ${model.provider} does not support deferred responses`);
537
- }
538
- await prepared.provider.cancelDeferred(prepared.model, handle, prepared.options);
539
- }
540
- async generateImages(model, context, options) {
541
- try {
542
- assertImageModel(model);
543
- const prepared = await this.prepareRequest(model, options);
544
- if (!prepared.provider.generateImages) {
545
- throw new ModelsError("provider", `Provider ${model.provider} does not support image generation`);
546
- }
547
- return await prepared.provider.generateImages(prepared.model, context, prepared.options);
548
- }
549
- catch (error) {
550
- return imageErrorResult(model, error, options?.signal?.aborted);
551
- }
552
- }
553
- async classify(model, context, options) {
554
- try {
555
- assertClassifierModel(model);
556
- const prepared = await this.prepareRequest(model, options);
557
- if (!prepared.provider.classify) {
558
- throw new ModelsError("provider", `Provider ${model.provider} does not support classification`);
559
- }
560
- return await prepared.provider.classify(prepared.model, context, prepared.options);
561
- }
562
- catch (error) {
563
- return classifierErrorResult(model, error, options?.signal?.aborted);
564
- }
565
- }
566
- login(providerId, type, interaction, options) {
567
- const signal = operationSignal(interaction.signal);
568
- return this.enqueueCredentialOperation(providerId, signal, async () => {
569
- const credential = await this.models.login(providerId, type, { ...interaction, signal }, options);
570
- await this.synchronizeCredentialState(providerId, "login", credential, signal);
571
- return credential;
572
- });
573
- }
574
- logout(providerId, options = {}) {
575
- const signal = operationSignal(options.signal);
576
- return this.enqueueCredentialOperation(providerId, signal, async () => {
577
- await this.models.logout(providerId, { signal });
578
- await this.synchronizeCredentialState(providerId, "logout", undefined, signal);
579
- });
580
- }
581
- async refresh(options = {}) {
582
- this.config = await ModelConfig.load(this.modelsPath);
583
- this.configureRadiusProviders();
584
- if (options.providers) {
585
- for (const providerId of new Set(options.providers))
586
- this.recomposeProvider(providerId);
587
- this.updateModelSnapshot();
588
- }
589
- else {
590
- this.rebuildProviders();
591
- }
592
- const refreshOptions = {
593
- ...options,
594
- allowNetwork: options.allowNetwork ?? this.modelNetworkEnabled,
595
- };
596
- // Published pi-ai builds before ModelsStore returned void and accepted a provider ID.
597
- // The fallback keeps source-mode CLI tests working without rebuilding workspace dependencies.
598
- const result = (await this.models.refresh(refreshOptions)) ?? {
599
- aborted: refreshOptions.signal?.aborted ?? false,
600
- errors: new Map(),
601
- };
602
- const errors = new Map(result.errors);
603
- this.updateModelSnapshot();
604
- if (options.providers) {
605
- await Promise.all([...new Set(options.providers)].map(async (providerId) => {
606
- try {
607
- await this.refreshProviderAvailability(providerId, operationSignal(options.signal));
608
- }
609
- catch (error) {
610
- if (!options.signal?.aborted) {
611
- errors.set(providerId, error instanceof Error ? error : new Error(String(error)));
612
- }
613
- }
614
- }));
615
- }
616
- else {
617
- try {
618
- await this.queueAvailabilityRefresh(options.signal);
619
- }
620
- catch {
621
- // Availability errors are recorded by the latest pass; refreshed models remain usable.
622
- }
623
- }
624
- return { aborted: result.aborted || (options.signal?.aborted ?? false), errors };
625
- }
626
- registerNativeProvider(provider) {
627
- if (!provider.id.trim())
628
- throw new Error("Provider id must not be empty.");
629
- this.extensionProviders.delete(provider.id);
630
- this.nativeExtensionProviders.set(provider.id, provider);
631
- this.recomposeProvider(provider.id);
632
- this.updateModelSnapshot();
633
- this.markProvisionallyConfigured(provider.id, configuredRequestAuthStatus(this.config.getProvider(provider.id), undefined), provider.auth.oauth && !provider.auth.apiKey ? "oauth" : "api_key");
634
- void this.refresh({ allowNetwork: false });
635
- }
636
- /**
637
- * Mark a newly registered provider as configured when it has a stored credential or a configured
638
- * API key. Availability checks run asynchronously, and callers such as initial model selection
639
- * read the snapshot before they finish. The next availability pass replaces this entry.
640
- */
641
- markProvisionallyConfigured(providerId, configuredStatus, type) {
642
- if (!this.snapshot.storedProviders.has(providerId) && !configuredStatus?.configured)
643
- return;
644
- const configuredProviders = new Set(this.snapshot.configuredProviders).add(providerId);
645
- const auth = new Map(this.snapshot.auth);
646
- // Never clobber a real check result.
647
- if (!auth.get(providerId))
648
- auth.set(providerId, { type, source: "configured provider" });
649
- this.snapshot = {
650
- ...this.snapshot,
651
- auth,
652
- configuredProviders,
653
- available: this.snapshot.all.filter((model) => configuredProviders.has(model.provider)),
654
- };
655
- }
656
- registerProvider(providerId, config) {
657
- // Validate the incoming registration on its own, like the legacy registry:
658
- // a broken re-registration must throw without touching the stored config.
659
- validateExtensionProvider(providerId, this.builtins.get(providerId), this.config.getProvider(providerId), config);
660
- this.nativeExtensionProviders.delete(providerId);
661
- // Re-registration merges defined values over the previous registration and
662
- // preserves undefined ones, matching the legacy ModelRegistry contract.
663
- const previous = this.extensionProviders.get(providerId);
664
- const effective = { ...previous };
665
- for (const [key, value] of Object.entries(config)) {
666
- if (value !== undefined)
667
- effective[key] = value;
668
- }
669
- this.extensionProviders.set(providerId, effective);
670
- this.recomposeProvider(providerId);
671
- this.updateModelSnapshot();
672
- this.markProvisionallyConfigured(providerId, configuredRequestAuthStatus(this.config.getProvider(providerId), effective), effective.oauth && !effective.apiKey ? "oauth" : "api_key");
673
- void this.refresh({ allowNetwork: false });
674
- }
675
- unregisterProvider(providerId) {
676
- this.extensionProviders.delete(providerId);
677
- this.nativeExtensionProviders.delete(providerId);
678
- this.recomposeProvider(providerId);
679
- this.updateModelSnapshot();
680
- void this.refresh({ allowNetwork: false });
681
- }
682
- /**
683
- * Register a virtual model under `definition.provider`, which may also list physical models or
684
- * several virtual models. Re-registering the same provider and id replaces the virtual model.
685
- * Throws when the id belongs to a physical model of that provider.
686
- */
687
- registerVirtualModel(definition) {
688
- const { provider: providerId, id } = definition;
689
- if (!providerId.trim() || !id.trim())
690
- throw new Error("Virtual model provider and id must not be empty.");
691
- const existing = this.models.getModel(providerId, id);
692
- if (existing && !isVirtualModel(existing)) {
693
- throw new Error(`Virtual model ${providerId}/${id} conflicts with a physical model.`);
694
- }
695
- const models = this.virtualModels.get(providerId) ?? new Map();
696
- models.set(id, { model: createVirtualModel(definition), route: (request) => definition.route(request) });
697
- this.virtualModels.set(providerId, models);
698
- if (!this.recomposeProvider(providerId) && !this.snapshot.configuredProviders.has(providerId)) {
699
- // A provider of only virtual models needs no credentials. Mark it configured now: session
700
- // restore checks auth before the refresh below lands.
701
- const auth = new Map(this.snapshot.auth).set(providerId, { type: "api_key", source: "virtual" });
702
- const configuredProviders = new Set(this.snapshot.configuredProviders).add(providerId);
703
- this.snapshot = { ...this.snapshot, auth, configuredProviders };
704
- }
705
- this.updateModelSnapshot();
706
- void this.refresh({ allowNetwork: false });
707
- }
708
- unregisterVirtualModel(providerId, id) {
709
- const models = this.virtualModels.get(providerId);
710
- if (!models?.delete(id))
711
- return;
712
- if (models.size === 0)
713
- this.virtualModels.delete(providerId);
714
- this.recomposeProvider(providerId);
715
- this.updateModelSnapshot();
716
- void this.refresh({ allowNetwork: false });
717
- }
718
- /**
719
- * Ask a virtual model's router for the model and thinking level of one request. The router must
720
- * return a physical catalog model whose provider has credentials; the thinking level is clamped
721
- * to that model. Throws when routing fails.
722
- *
723
- * `previous` reports the latest successful response in `messages`. A retry passes the failed
724
- * response as `options.failed`; `messages` no longer contains it. `options.state` is the router
725
- * state stored by the caller, which also stores the returned state.
726
- */
727
- async resolveModel(model, messages, options) {
728
- const name = `Virtual model ${model.provider}/${model.id}`;
729
- const virtual = this.virtualModels.get(model.provider)?.get(model.id);
730
- if (!virtual)
731
- throw new Error(`${name} is not registered.`);
732
- const { failed, ...request } = options;
733
- const latest = findLatestResponse(messages);
734
- const previousModel = latest && this.getPhysicalModel(latest.provider, latest.model);
735
- // A failed routing attempt names the virtual model; there is no physical request to report.
736
- const failedModel = failed && this.getPhysicalModel(failed.provider, failed.model);
737
- const route = await virtual.route({
738
- ...request,
739
- model,
740
- previous: previousModel && { model: previousModel, thinkingLevel: latest?.thinkingLevel },
741
- failed: failedModel && failed && { model: failedModel, thinkingLevel: failed.thinkingLevel, message: failed },
742
- messages,
743
- });
744
- const target = this.getPhysicalModel(route.model.provider, route.model.id);
745
- const routed = `${name} routed to ${route.model.provider}/${route.model.id}`;
746
- if (!target)
747
- throw new Error(`${routed}, which is not a physical model.`);
748
- if (!this.hasConfiguredAuth(target.provider))
749
- throw new Error(`${routed}, which has no credentials.`);
750
- return { model: target, thinkingLevel: clampThinkingLevel(target, route.thinkingLevel), state: route.state };
751
- }
752
- /** A catalog chat model that is not virtual. */
753
- getPhysicalModel(providerId, modelId) {
754
- const model = this.models.getModel(providerId, modelId);
755
- return model && !isVirtualModel(model) ? model : undefined;
756
- }
757
- }
758
- //# sourceMappingURL=model-runtime.js.map