@andorra-labs/code 0.0.0-stage → 0.1.5

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 (1847) hide show
  1. package/LICENSE.md +38 -0
  2. package/README.md +231 -3
  3. package/THIRD_PARTY_NOTICES.md +56 -0
  4. package/dist/src/account-presentation.d.ts +53 -0
  5. package/dist/src/account-presentation.js +99 -0
  6. package/dist/src/activity.d.ts +41 -0
  7. package/dist/src/activity.js +79 -0
  8. package/dist/src/agent-definitions.d.ts +61 -0
  9. package/dist/src/agent-definitions.js +303 -0
  10. package/dist/src/agent-execution.d.ts +4 -0
  11. package/dist/src/agent-execution.js +1198 -0
  12. package/dist/src/agent-mcp.d.ts +105 -0
  13. package/dist/src/agent-mcp.js +859 -0
  14. package/dist/src/agent-modifiers.d.ts +8 -0
  15. package/dist/src/agent-modifiers.js +333 -0
  16. package/dist/src/analytics.d.ts +81 -0
  17. package/dist/src/analytics.js +81 -0
  18. package/dist/src/anthropic-console-auth.d.ts +68 -0
  19. package/dist/src/anthropic-console-auth.js +318 -0
  20. package/dist/src/anthropic-credentials.d.ts +41 -0
  21. package/dist/src/anthropic-credentials.js +107 -0
  22. package/dist/src/app-server/protocol.d.ts +500 -0
  23. package/dist/src/app-server/protocol.js +106 -0
  24. package/dist/src/app-server/reasoning.d.ts +43 -0
  25. package/dist/src/app-server/reasoning.js +173 -0
  26. package/dist/src/app-server/terminal.d.ts +77 -0
  27. package/dist/src/app-server/terminal.js +177 -0
  28. package/dist/src/app-server/workspace.d.ts +247 -0
  29. package/dist/src/app-server/workspace.js +1098 -0
  30. package/dist/src/app-server.d.ts +1039 -0
  31. package/dist/src/app-server.js +6594 -0
  32. package/dist/src/artifacts.d.ts +27 -0
  33. package/dist/src/artifacts.js +103 -0
  34. package/dist/src/attachments.d.ts +158 -0
  35. package/dist/src/attachments.js +466 -0
  36. package/dist/src/auth/AuthManager.d.ts +110 -0
  37. package/dist/src/auth/AuthManager.js +435 -0
  38. package/dist/src/auth/callback.d.ts +10 -0
  39. package/dist/src/auth/callback.js +96 -0
  40. package/dist/src/auth/deployment.d.ts +18 -0
  41. package/dist/src/auth/deployment.js +18 -0
  42. package/dist/src/auth/index.d.ts +31 -0
  43. package/dist/src/auth/index.js +27 -0
  44. package/dist/src/auth/lock.d.ts +2 -0
  45. package/dist/src/auth/lock.js +29 -0
  46. package/dist/src/auth/store.d.ts +20 -0
  47. package/dist/src/auth/store.js +93 -0
  48. package/dist/src/auth/types.d.ts +24 -0
  49. package/dist/src/auth/types.js +8 -0
  50. package/dist/src/auth-commands.d.ts +5 -0
  51. package/dist/src/auth-commands.js +28 -0
  52. package/dist/src/automation-runner.d.ts +7 -0
  53. package/dist/src/automation-runner.js +113 -0
  54. package/dist/src/automation-service.d.ts +28 -0
  55. package/dist/src/automation-service.js +299 -0
  56. package/dist/src/automation-tool.d.ts +2 -0
  57. package/dist/src/automation-tool.js +49 -0
  58. package/dist/src/automation-worker-shutdown.d.ts +3 -0
  59. package/dist/src/automation-worker-shutdown.js +13 -0
  60. package/dist/src/automations.d.ts +63 -0
  61. package/dist/src/automations.js +265 -0
  62. package/dist/src/boot-trace.d.ts +15 -0
  63. package/dist/src/boot-trace.js +25 -0
  64. package/dist/src/browser-activity.d.ts +4 -0
  65. package/dist/src/browser-activity.js +18 -0
  66. package/dist/src/browser-bridge.d.ts +56 -0
  67. package/dist/src/browser-bridge.js +372 -0
  68. package/dist/src/browser-observation.d.ts +24 -0
  69. package/dist/src/browser-observation.js +104 -0
  70. package/dist/src/browser-panel-tool.d.ts +39 -0
  71. package/dist/src/browser-panel-tool.js +227 -0
  72. package/dist/src/browser-runner.d.ts +16 -0
  73. package/dist/src/browser-runner.js +302 -0
  74. package/dist/src/browser-server.d.ts +31 -0
  75. package/dist/src/browser-server.js +1189 -0
  76. package/dist/src/browser-session.d.ts +19 -0
  77. package/dist/src/browser-session.js +649 -0
  78. package/dist/src/browser-ui/andorra-logo.png +0 -0
  79. package/dist/src/browser-ui/app.js +419 -0
  80. package/dist/src/browser-ui/index.html +13 -0
  81. package/dist/src/browser-ui/style.css +243 -0
  82. package/dist/src/browser-view.d.ts +348 -0
  83. package/dist/src/browser-view.js +1487 -0
  84. package/dist/src/capabilities.d.ts +9 -0
  85. package/dist/src/capabilities.js +135 -0
  86. package/dist/src/clarification-ui.d.ts +23 -0
  87. package/dist/src/clarification-ui.js +59 -0
  88. package/dist/src/claude-executable.d.ts +6 -0
  89. package/dist/src/claude-executable.js +56 -0
  90. package/dist/src/claude-provider.d.ts +35 -0
  91. package/dist/src/claude-provider.js +391 -0
  92. package/dist/src/cli.d.ts +85 -0
  93. package/dist/src/cli.js +2564 -0
  94. package/dist/src/code-intelligence/CodeIntelligenceManager.d.ts +108 -0
  95. package/dist/src/code-intelligence/CodeIntelligenceManager.js +616 -0
  96. package/dist/src/code-intelligence/ContextLedger.d.ts +32 -0
  97. package/dist/src/code-intelligence/ContextLedger.js +77 -0
  98. package/dist/src/code-intelligence/ContextRouter.d.ts +8 -0
  99. package/dist/src/code-intelligence/ContextRouter.js +18 -0
  100. package/dist/src/code-intelligence/codegraph/CodeGraphProjectSession.d.ts +82 -0
  101. package/dist/src/code-intelligence/codegraph/CodeGraphProjectSession.js +444 -0
  102. package/dist/src/code-intelligence/codegraph/CodeGraphProvider.d.ts +40 -0
  103. package/dist/src/code-intelligence/codegraph/CodeGraphProvider.js +84 -0
  104. package/dist/src/code-intelligence/codegraph/CodeGraphSyncBarrier.d.ts +22 -0
  105. package/dist/src/code-intelligence/codegraph/CodeGraphSyncBarrier.js +71 -0
  106. package/dist/src/code-intelligence/codegraph/repoExploreTool.d.ts +9 -0
  107. package/dist/src/code-intelligence/codegraph/repoExploreTool.js +26 -0
  108. package/dist/src/code-intelligence/repository.d.ts +13 -0
  109. package/dist/src/code-intelligence/repository.js +48 -0
  110. package/dist/src/code-intelligence/types.d.ts +78 -0
  111. package/dist/src/code-intelligence/types.js +3 -0
  112. package/dist/src/codex-auth.d.ts +83 -0
  113. package/dist/src/codex-auth.js +168 -0
  114. package/dist/src/codex-browser-auth.d.ts +74 -0
  115. package/dist/src/codex-browser-auth.js +429 -0
  116. package/dist/src/codex-errors.d.ts +3 -0
  117. package/dist/src/codex-errors.js +50 -0
  118. package/dist/src/codex-executable.d.ts +12 -0
  119. package/dist/src/codex-executable.js +154 -0
  120. package/dist/src/codex-provider.d.ts +25 -0
  121. package/dist/src/codex-provider.js +211 -0
  122. package/dist/src/codex-rpc.d.ts +43 -0
  123. package/dist/src/codex-rpc.js +136 -0
  124. package/dist/src/coding-tools.d.ts +19 -0
  125. package/dist/src/coding-tools.js +875 -0
  126. package/dist/src/command-metrics.d.ts +17 -0
  127. package/dist/src/command-metrics.js +34 -0
  128. package/dist/src/command-screens.d.ts +44 -0
  129. package/dist/src/command-screens.js +601 -0
  130. package/dist/src/commands.d.ts +111 -0
  131. package/dist/src/commands.js +550 -0
  132. package/dist/src/completion.d.ts +45 -0
  133. package/dist/src/completion.js +195 -0
  134. package/dist/src/config.d.ts +163 -0
  135. package/dist/src/config.js +663 -0
  136. package/dist/src/context-budget.d.ts +32 -0
  137. package/dist/src/context-budget.js +151 -0
  138. package/dist/src/context-compaction.d.ts +43 -0
  139. package/dist/src/context-compaction.js +269 -0
  140. package/dist/src/context-selection.d.ts +65 -0
  141. package/dist/src/context-selection.js +130 -0
  142. package/dist/src/dashboard-view.d.ts +37 -0
  143. package/dist/src/dashboard-view.js +254 -0
  144. package/dist/src/dashboard.d.ts +41 -0
  145. package/dist/src/dashboard.js +160 -0
  146. package/dist/src/deadline.d.ts +55 -0
  147. package/dist/src/deadline.js +164 -0
  148. package/dist/src/decision/ContinuationAdapter.d.ts +6 -0
  149. package/dist/src/decision/ContinuationAdapter.js +11 -0
  150. package/dist/src/decision/DecisionEngine.d.ts +23 -0
  151. package/dist/src/decision/DecisionEngine.js +1 -0
  152. package/dist/src/decision/DecisionManager.d.ts +47 -0
  153. package/dist/src/decision/DecisionManager.js +280 -0
  154. package/dist/src/decision/DecisionPolicy.d.ts +8 -0
  155. package/dist/src/decision/DecisionPolicy.js +54 -0
  156. package/dist/src/decision/FactContinuations.d.ts +147 -0
  157. package/dist/src/decision/FactContinuations.js +472 -0
  158. package/dist/src/decision/FactServiceGate.d.ts +12 -0
  159. package/dist/src/decision/FactServiceGate.js +37 -0
  160. package/dist/src/decision/PreparedSteps.d.ts +51 -0
  161. package/dist/src/decision/PreparedSteps.js +147 -0
  162. package/dist/src/decision/applyToolMenu.d.ts +3 -0
  163. package/dist/src/decision/applyToolMenu.js +61 -0
  164. package/dist/src/decision/checks.d.ts +13 -0
  165. package/dist/src/decision/checks.js +104 -0
  166. package/dist/src/decision/facts.d.ts +64 -0
  167. package/dist/src/decision/facts.js +90 -0
  168. package/dist/src/decision/guidancePolicy.d.ts +3 -0
  169. package/dist/src/decision/guidancePolicy.js +10 -0
  170. package/dist/src/decision/hostedPolicy.d.ts +14 -0
  171. package/dist/src/decision/hostedPolicy.js +21 -0
  172. package/dist/src/decision/index.d.ts +6 -0
  173. package/dist/src/decision/index.js +6 -0
  174. package/dist/src/decision/optimizationPolicy.d.ts +26 -0
  175. package/dist/src/decision/optimizationPolicy.js +38 -0
  176. package/dist/src/decision/providers/AndorraDecisionProvider.d.ts +17 -0
  177. package/dist/src/decision/providers/AndorraDecisionProvider.js +251 -0
  178. package/dist/src/decision/providers/HttpDecisionProvider.d.ts +16 -0
  179. package/dist/src/decision/providers/HttpDecisionProvider.js +105 -0
  180. package/dist/src/decision/providers/NoOpDecisionProvider.d.ts +4 -0
  181. package/dist/src/decision/providers/NoOpDecisionProvider.js +3 -0
  182. package/dist/src/decision/providers/index.d.ts +3 -0
  183. package/dist/src/decision/providers/index.js +13 -0
  184. package/dist/src/decision/providers/questions.d.ts +3 -0
  185. package/dist/src/decision/providers/questions.js +31 -0
  186. package/dist/src/decision/routeTools.d.ts +59 -0
  187. package/dist/src/decision/routeTools.js +131 -0
  188. package/dist/src/decision/toolFamilies.d.ts +7 -0
  189. package/dist/src/decision/toolFamilies.js +55 -0
  190. package/dist/src/decision/toolMenu.d.ts +35 -0
  191. package/dist/src/decision/toolMenu.js +73 -0
  192. package/dist/src/decision/types.d.ts +99 -0
  193. package/dist/src/decision/types.js +1 -0
  194. package/dist/src/diff-preview.d.ts +6 -0
  195. package/dist/src/diff-preview.js +120 -0
  196. package/dist/src/duration.d.ts +44 -0
  197. package/dist/src/duration.js +72 -0
  198. package/dist/src/efficiency.d.ts +101 -0
  199. package/dist/src/efficiency.js +104 -0
  200. package/dist/src/engine/protocol.d.ts +11 -0
  201. package/dist/src/engine/protocol.js +51 -0
  202. package/dist/src/extensions.d.ts +46 -0
  203. package/dist/src/extensions.js +846 -0
  204. package/dist/src/favicons.d.ts +37 -0
  205. package/dist/src/favicons.js +216 -0
  206. package/dist/src/file-read-state.d.ts +8 -0
  207. package/dist/src/file-read-state.js +31 -0
  208. package/dist/src/git-summary.d.ts +67 -0
  209. package/dist/src/git-summary.js +461 -0
  210. package/dist/src/goal-completion-verification.d.ts +18 -0
  211. package/dist/src/goal-completion-verification.js +43 -0
  212. package/dist/src/graph-account.d.ts +31 -0
  213. package/dist/src/graph-account.js +57 -0
  214. package/dist/src/graph-editor-session.d.ts +15 -0
  215. package/dist/src/graph-editor-session.js +70 -0
  216. package/dist/src/graph-health.d.ts +88 -0
  217. package/dist/src/graph-health.js +243 -0
  218. package/dist/src/graph-provider-portability.d.ts +30 -0
  219. package/dist/src/graph-provider-portability.js +197 -0
  220. package/dist/src/graph-quota.d.ts +55 -0
  221. package/dist/src/graph-quota.js +131 -0
  222. package/dist/src/graph-runner.d.ts +4 -0
  223. package/dist/src/graph-runner.js +1356 -0
  224. package/dist/src/graph-selection.d.ts +17 -0
  225. package/dist/src/graph-selection.js +31 -0
  226. package/dist/src/graph-server.d.ts +13 -0
  227. package/dist/src/graph-server.js +483 -0
  228. package/dist/src/graph-studio-features.d.ts +61 -0
  229. package/dist/src/graph-studio-features.js +348 -0
  230. package/dist/src/graph-sync.d.ts +76 -0
  231. package/dist/src/graph-sync.js +619 -0
  232. package/dist/src/graph-ui/andorra-logo.png +0 -0
  233. package/dist/src/graph-ui/app.js +1803 -0
  234. package/dist/src/graph-ui/compat.js +43 -0
  235. package/dist/src/graph-ui/controls.css +190 -0
  236. package/dist/src/graph-ui/controls.js +567 -0
  237. package/dist/src/graph-ui/edge-router.js +117 -0
  238. package/dist/src/graph-ui/embed.js +324 -0
  239. package/dist/src/graph-ui/fonts/geist-mono-latin-400-normal.woff2 +0 -0
  240. package/dist/src/graph-ui/fonts/geist-sans-latin-400-normal.woff2 +0 -0
  241. package/dist/src/graph-ui/fonts/geist-sans-latin-500-normal.woff2 +0 -0
  242. package/dist/src/graph-ui/icons.js +117 -0
  243. package/dist/src/graph-ui/index.html +7 -0
  244. package/dist/src/graph-ui/library.css +26 -0
  245. package/dist/src/graph-ui/sidebar.js +61 -0
  246. package/dist/src/graph-ui/studio-canvas.js +454 -0
  247. package/dist/src/graph-ui/studio.css +110 -0
  248. package/dist/src/graph-ui/studio.js +720 -0
  249. package/dist/src/graph-ui/style.css +477 -0
  250. package/dist/src/graph-ui/theme.js +92 -0
  251. package/dist/src/graph-ui/tokens.css +187 -0
  252. package/dist/src/graphs.d.ts +270 -0
  253. package/dist/src/graphs.js +1102 -0
  254. package/dist/src/grep-regex-worker.d.ts +1 -0
  255. package/dist/src/grep-regex-worker.js +20 -0
  256. package/dist/src/grep-regex.d.ts +11 -0
  257. package/dist/src/grep-regex.js +64 -0
  258. package/dist/src/handoffs.d.ts +34 -0
  259. package/dist/src/handoffs.js +229 -0
  260. package/dist/src/hardened-runtime.d.ts +14 -0
  261. package/dist/src/hardened-runtime.js +264 -0
  262. package/dist/src/limits.d.ts +77 -0
  263. package/dist/src/limits.js +88 -0
  264. package/dist/src/markdown.d.ts +31 -0
  265. package/dist/src/markdown.js +553 -0
  266. package/dist/src/mcp.d.ts +11 -0
  267. package/dist/src/mcp.js +175 -0
  268. package/dist/src/membership-errors.d.ts +4 -0
  269. package/dist/src/membership-errors.js +4 -0
  270. package/dist/src/membership.d.ts +81 -0
  271. package/dist/src/membership.js +247 -0
  272. package/dist/src/memory/LocalToolMemory.d.ts +20 -0
  273. package/dist/src/memory/LocalToolMemory.js +114 -0
  274. package/dist/src/memory/MemoryDistiller.d.ts +35 -0
  275. package/dist/src/memory/MemoryDistiller.js +216 -0
  276. package/dist/src/memory/MemoryManager.d.ts +76 -0
  277. package/dist/src/memory/MemoryManager.js +386 -0
  278. package/dist/src/memory/MemoryPolicy.d.ts +30 -0
  279. package/dist/src/memory/MemoryPolicy.js +96 -0
  280. package/dist/src/memory/MemoryProvider.d.ts +18 -0
  281. package/dist/src/memory/MemoryProvider.js +1 -0
  282. package/dist/src/memory/MemoryRetriever.d.ts +27 -0
  283. package/dist/src/memory/MemoryRetriever.js +149 -0
  284. package/dist/src/memory/PermissionMemoryProvider.d.ts +22 -0
  285. package/dist/src/memory/PermissionMemoryProvider.js +50 -0
  286. package/dist/src/memory/ToolFailureLessons.d.ts +39 -0
  287. package/dist/src/memory/ToolFailureLessons.js +167 -0
  288. package/dist/src/memory/index.d.ts +12 -0
  289. package/dist/src/memory/index.js +11 -0
  290. package/dist/src/memory/providers/NoOpMemoryProvider.d.ts +13 -0
  291. package/dist/src/memory/providers/NoOpMemoryProvider.js +15 -0
  292. package/dist/src/memory/providers/graphiti/GraphitiClient.d.ts +27 -0
  293. package/dist/src/memory/providers/graphiti/GraphitiClient.js +76 -0
  294. package/dist/src/memory/providers/graphiti/GraphitiMapper.d.ts +6 -0
  295. package/dist/src/memory/providers/graphiti/GraphitiMapper.js +116 -0
  296. package/dist/src/memory/providers/graphiti/GraphitiMemoryProvider.d.ts +27 -0
  297. package/dist/src/memory/providers/graphiti/GraphitiMemoryProvider.js +137 -0
  298. package/dist/src/memory/providers/graphiti/GraphitiTypes.d.ts +57 -0
  299. package/dist/src/memory/providers/graphiti/GraphitiTypes.js +2 -0
  300. package/dist/src/memory/redaction.d.ts +11 -0
  301. package/dist/src/memory/redaction.js +58 -0
  302. package/dist/src/memory/repository.d.ts +11 -0
  303. package/dist/src/memory/repository.js +74 -0
  304. package/dist/src/memory/tools/memorySearchTool.d.ts +4 -0
  305. package/dist/src/memory/tools/memorySearchTool.js +77 -0
  306. package/dist/src/memory/types.d.ts +112 -0
  307. package/dist/src/memory/types.js +7 -0
  308. package/dist/src/model-metadata.d.ts +28 -0
  309. package/dist/src/model-metadata.js +274 -0
  310. package/dist/src/model-override.d.ts +60 -0
  311. package/dist/src/model-override.js +146 -0
  312. package/dist/src/model-tiers.d.ts +61 -0
  313. package/dist/src/model-tiers.js +109 -0
  314. package/dist/src/opencode-catalog.d.ts +16 -0
  315. package/dist/src/opencode-catalog.js +135 -0
  316. package/dist/src/opencode-provider.d.ts +10 -0
  317. package/dist/src/opencode-provider.js +525 -0
  318. package/dist/src/paged-transcript.d.ts +58 -0
  319. package/dist/src/paged-transcript.js +205 -0
  320. package/dist/src/palette.d.ts +61 -0
  321. package/dist/src/palette.js +63 -0
  322. package/dist/src/permissions.d.ts +36 -0
  323. package/dist/src/permissions.js +93 -0
  324. package/dist/src/powershell-pool.d.ts +26 -0
  325. package/dist/src/powershell-pool.js +235 -0
  326. package/dist/src/profile.d.ts +80 -0
  327. package/dist/src/profile.js +200 -0
  328. package/dist/src/provider-connection.d.ts +36 -0
  329. package/dist/src/provider-connection.js +222 -0
  330. package/dist/src/provider-engine.d.ts +37 -0
  331. package/dist/src/provider-engine.js +401 -0
  332. package/dist/src/provider-import.d.ts +68 -0
  333. package/dist/src/provider-import.js +355 -0
  334. package/dist/src/provider-settings.d.ts +8 -0
  335. package/dist/src/provider-settings.js +451 -0
  336. package/dist/src/providers.d.ts +219 -0
  337. package/dist/src/providers.js +1230 -0
  338. package/dist/src/pull-requests.d.ts +195 -0
  339. package/dist/src/pull-requests.js +514 -0
  340. package/dist/src/qa/api/http-runner.d.ts +3 -0
  341. package/dist/src/qa/api/http-runner.js +47 -0
  342. package/dist/src/qa/browser/PlaywrightRunner.d.ts +21 -0
  343. package/dist/src/qa/browser/PlaywrightRunner.js +190 -0
  344. package/dist/src/qa/command-policy.d.ts +28 -0
  345. package/dist/src/qa/command-policy.js +122 -0
  346. package/dist/src/qa/git/ChangeDetector.d.ts +26 -0
  347. package/dist/src/qa/git/ChangeDetector.js +177 -0
  348. package/dist/src/qa/git/DiffReviewer.d.ts +28 -0
  349. package/dist/src/qa/git/DiffReviewer.js +115 -0
  350. package/dist/src/qa/index.d.ts +11 -0
  351. package/dist/src/qa/index.js +19 -0
  352. package/dist/src/qa/orchestrator/ChangeClassifier.d.ts +14 -0
  353. package/dist/src/qa/orchestrator/ChangeClassifier.js +28 -0
  354. package/dist/src/qa/orchestrator/MergeGate.d.ts +14 -0
  355. package/dist/src/qa/orchestrator/MergeGate.js +40 -0
  356. package/dist/src/qa/orchestrator/QaOrchestrator.d.ts +79 -0
  357. package/dist/src/qa/orchestrator/QaOrchestrator.js +373 -0
  358. package/dist/src/qa/profile/ProjectInspector.d.ts +9 -0
  359. package/dist/src/qa/profile/ProjectInspector.js +295 -0
  360. package/dist/src/qa/profile/QaConfigLoader.d.ts +43 -0
  361. package/dist/src/qa/profile/QaConfigLoader.js +261 -0
  362. package/dist/src/qa/profile/QaProfile.d.ts +17 -0
  363. package/dist/src/qa/profile/QaProfile.js +15 -0
  364. package/dist/src/qa/profile/yaml.d.ts +12 -0
  365. package/dist/src/qa/profile/yaml.js +203 -0
  366. package/dist/src/qa/qa-authorize.d.ts +25 -0
  367. package/dist/src/qa/qa-authorize.js +82 -0
  368. package/dist/src/qa/runners/CommandRunner.d.ts +22 -0
  369. package/dist/src/qa/runners/CommandRunner.js +96 -0
  370. package/dist/src/qa/runners/TestRunner.d.ts +21 -0
  371. package/dist/src/qa/runners/TestRunner.js +66 -0
  372. package/dist/src/qa/runtime/ProcessManager.d.ts +53 -0
  373. package/dist/src/qa/runtime/ProcessManager.js +225 -0
  374. package/dist/src/qa/runtime/PtyManager.d.ts +57 -0
  375. package/dist/src/qa/runtime/PtyManager.js +338 -0
  376. package/dist/src/qa/runtime/RuntimeSmoke.d.ts +11 -0
  377. package/dist/src/qa/runtime/RuntimeSmoke.js +78 -0
  378. package/dist/src/qa/runtime-detect.d.ts +10 -0
  379. package/dist/src/qa/runtime-detect.js +72 -0
  380. package/dist/src/qa/security/DependencyScanner.d.ts +19 -0
  381. package/dist/src/qa/security/DependencyScanner.js +167 -0
  382. package/dist/src/qa/security/SecretScanner.d.ts +3 -0
  383. package/dist/src/qa/security/SecretScanner.js +55 -0
  384. package/dist/src/qa/tools.d.ts +3 -0
  385. package/dist/src/qa/tools.js +301 -0
  386. package/dist/src/qa/types.d.ts +134 -0
  387. package/dist/src/qa/types.js +3 -0
  388. package/dist/src/react-runtime.d.ts +53 -0
  389. package/dist/src/react-runtime.js +1753 -0
  390. package/dist/src/remote/cert.d.ts +29 -0
  391. package/dist/src/remote/cert.js +136 -0
  392. package/dist/src/remote/client.d.ts +189 -0
  393. package/dist/src/remote/client.js +659 -0
  394. package/dist/src/remote/command.d.ts +4 -0
  395. package/dist/src/remote/command.js +211 -0
  396. package/dist/src/remote/engine-pool.d.ts +230 -0
  397. package/dist/src/remote/engine-pool.js +1160 -0
  398. package/dist/src/remote/errors.d.ts +26 -0
  399. package/dist/src/remote/errors.js +21 -0
  400. package/dist/src/remote/network.d.ts +48 -0
  401. package/dist/src/remote/network.js +135 -0
  402. package/dist/src/remote/pairing.d.ts +98 -0
  403. package/dist/src/remote/pairing.js +306 -0
  404. package/dist/src/remote/roots.d.ts +29 -0
  405. package/dist/src/remote/roots.js +44 -0
  406. package/dist/src/remote/serve.d.ts +115 -0
  407. package/dist/src/remote/serve.js +274 -0
  408. package/dist/src/remote/server.d.ts +35 -0
  409. package/dist/src/remote/server.js +484 -0
  410. package/dist/src/remote/types.d.ts +86 -0
  411. package/dist/src/remote/types.js +11 -0
  412. package/dist/src/run-control.d.ts +17 -0
  413. package/dist/src/run-control.js +52 -0
  414. package/dist/src/run-progress.d.ts +226 -0
  415. package/dist/src/run-progress.js +724 -0
  416. package/dist/src/run-records.d.ts +500 -0
  417. package/dist/src/run-records.js +1678 -0
  418. package/dist/src/runtime.d.ts +418 -0
  419. package/dist/src/runtime.js +247 -0
  420. package/dist/src/sandbox-child.d.ts +1 -0
  421. package/dist/src/sandbox-child.js +14 -0
  422. package/dist/src/save-lock.d.ts +9 -0
  423. package/dist/src/save-lock.js +186 -0
  424. package/dist/src/session-monitor.d.ts +98 -0
  425. package/dist/src/session-monitor.js +323 -0
  426. package/dist/src/session-reaper.d.ts +23 -0
  427. package/dist/src/session-reaper.js +33 -0
  428. package/dist/src/session-summary.d.ts +27 -0
  429. package/dist/src/session-summary.js +66 -0
  430. package/dist/src/session-title.d.ts +18 -0
  431. package/dist/src/session-title.js +54 -0
  432. package/dist/src/sessions.d.ts +211 -0
  433. package/dist/src/sessions.js +620 -0
  434. package/dist/src/shell.d.ts +40 -0
  435. package/dist/src/shell.js +504 -0
  436. package/dist/src/side-panel.d.ts +144 -0
  437. package/dist/src/side-panel.js +366 -0
  438. package/dist/src/skill-commands.d.ts +1 -0
  439. package/dist/src/skill-commands.js +11 -0
  440. package/dist/src/skills/bundled/ai-elements/SKILL.md +155 -0
  441. package/dist/src/skills/bundled/ai-elements/references/agent.md +138 -0
  442. package/dist/src/skills/bundled/ai-elements/references/artifact.md +91 -0
  443. package/dist/src/skills/bundled/ai-elements/references/attachments.md +197 -0
  444. package/dist/src/skills/bundled/ai-elements/references/audio-player.md +141 -0
  445. package/dist/src/skills/bundled/ai-elements/references/canvas.md +39 -0
  446. package/dist/src/skills/bundled/ai-elements/references/chain-of-thought.md +88 -0
  447. package/dist/src/skills/bundled/ai-elements/references/checkpoint.md +171 -0
  448. package/dist/src/skills/bundled/ai-elements/references/code-block.md +177 -0
  449. package/dist/src/skills/bundled/ai-elements/references/commit.md +184 -0
  450. package/dist/src/skills/bundled/ai-elements/references/confirmation.md +268 -0
  451. package/dist/src/skills/bundled/ai-elements/references/connection.md +39 -0
  452. package/dist/src/skills/bundled/ai-elements/references/context.md +133 -0
  453. package/dist/src/skills/bundled/ai-elements/references/controls.md +37 -0
  454. package/dist/src/skills/bundled/ai-elements/references/conversation.md +224 -0
  455. package/dist/src/skills/bundled/ai-elements/references/edge.md +57 -0
  456. package/dist/src/skills/bundled/ai-elements/references/environment-variables.md +109 -0
  457. package/dist/src/skills/bundled/ai-elements/references/file-tree.md +79 -0
  458. package/dist/src/skills/bundled/ai-elements/references/image.md +150 -0
  459. package/dist/src/skills/bundled/ai-elements/references/inline-citation.md +300 -0
  460. package/dist/src/skills/bundled/ai-elements/references/jsx-preview.md +108 -0
  461. package/dist/src/skills/bundled/ai-elements/references/message.md +231 -0
  462. package/dist/src/skills/bundled/ai-elements/references/mic-selector.md +193 -0
  463. package/dist/src/skills/bundled/ai-elements/references/model-selector.md +119 -0
  464. package/dist/src/skills/bundled/ai-elements/references/node.md +78 -0
  465. package/dist/src/skills/bundled/ai-elements/references/open-in-chat.md +74 -0
  466. package/dist/src/skills/bundled/ai-elements/references/package-info.md +102 -0
  467. package/dist/src/skills/bundled/ai-elements/references/panel.md +38 -0
  468. package/dist/src/skills/bundled/ai-elements/references/persona.md +173 -0
  469. package/dist/src/skills/bundled/ai-elements/references/plan.md +86 -0
  470. package/dist/src/skills/bundled/ai-elements/references/prompt-input.md +572 -0
  471. package/dist/src/skills/bundled/ai-elements/references/queue.md +179 -0
  472. package/dist/src/skills/bundled/ai-elements/references/reasoning.md +226 -0
  473. package/dist/src/skills/bundled/ai-elements/references/sandbox.md +133 -0
  474. package/dist/src/skills/bundled/ai-elements/references/schema-display.md +109 -0
  475. package/dist/src/skills/bundled/ai-elements/references/shimmer.md +55 -0
  476. package/dist/src/skills/bundled/ai-elements/references/snippet.md +71 -0
  477. package/dist/src/skills/bundled/ai-elements/references/sources.md +200 -0
  478. package/dist/src/skills/bundled/ai-elements/references/speech-input.md +167 -0
  479. package/dist/src/skills/bundled/ai-elements/references/stack-trace.md +225 -0
  480. package/dist/src/skills/bundled/ai-elements/references/suggestion.md +128 -0
  481. package/dist/src/skills/bundled/ai-elements/references/task.md +222 -0
  482. package/dist/src/skills/bundled/ai-elements/references/terminal.md +110 -0
  483. package/dist/src/skills/bundled/ai-elements/references/test-results.md +164 -0
  484. package/dist/src/skills/bundled/ai-elements/references/tool.md +282 -0
  485. package/dist/src/skills/bundled/ai-elements/references/toolbar.md +37 -0
  486. package/dist/src/skills/bundled/ai-elements/references/transcription.md +127 -0
  487. package/dist/src/skills/bundled/ai-elements/references/voice-selector.md +248 -0
  488. package/dist/src/skills/bundled/ai-elements/references/web-preview.md +204 -0
  489. package/dist/src/skills/bundled/ai-elements/scripts/agent.tsx +67 -0
  490. package/dist/src/skills/bundled/ai-elements/scripts/artifact.tsx +117 -0
  491. package/dist/src/skills/bundled/ai-elements/scripts/attachments-inline.tsx +123 -0
  492. package/dist/src/skills/bundled/ai-elements/scripts/attachments-list.tsx +94 -0
  493. package/dist/src/skills/bundled/ai-elements/scripts/attachments.tsx +84 -0
  494. package/dist/src/skills/bundled/ai-elements/scripts/audio-player-remote.tsx +35 -0
  495. package/dist/src/skills/bundled/ai-elements/scripts/audio-player.tsx +74 -0
  496. package/dist/src/skills/bundled/ai-elements/scripts/chain-of-thought.tsx +80 -0
  497. package/dist/src/skills/bundled/ai-elements/scripts/checkpoint.tsx +96 -0
  498. package/dist/src/skills/bundled/ai-elements/scripts/code-block-dark.tsx +46 -0
  499. package/dist/src/skills/bundled/ai-elements/scripts/code-block.tsx +120 -0
  500. package/dist/src/skills/bundled/ai-elements/scripts/commit.tsx +94 -0
  501. package/dist/src/skills/bundled/ai-elements/scripts/confirmation-accepted.tsx +41 -0
  502. package/dist/src/skills/bundled/ai-elements/scripts/confirmation-rejected.tsx +41 -0
  503. package/dist/src/skills/bundled/ai-elements/scripts/confirmation-request.tsx +54 -0
  504. package/dist/src/skills/bundled/ai-elements/scripts/confirmation.tsx +59 -0
  505. package/dist/src/skills/bundled/ai-elements/scripts/context.tsx +45 -0
  506. package/dist/src/skills/bundled/ai-elements/scripts/conversation.tsx +182 -0
  507. package/dist/src/skills/bundled/ai-elements/scripts/environment-variables.tsx +61 -0
  508. package/dist/src/skills/bundled/ai-elements/scripts/file-tree-basic.tsx +20 -0
  509. package/dist/src/skills/bundled/ai-elements/scripts/file-tree-expanded.tsx +23 -0
  510. package/dist/src/skills/bundled/ai-elements/scripts/file-tree-selection.tsx +26 -0
  511. package/dist/src/skills/bundled/ai-elements/scripts/file-tree.tsx +44 -0
  512. package/dist/src/skills/bundled/ai-elements/scripts/image.tsx +20 -0
  513. package/dist/src/skills/bundled/ai-elements/scripts/inline-citation.tsx +101 -0
  514. package/dist/src/skills/bundled/ai-elements/scripts/jsx-preview.tsx +105 -0
  515. package/dist/src/skills/bundled/ai-elements/scripts/message.tsx +330 -0
  516. package/dist/src/skills/bundled/ai-elements/scripts/mic-selector.tsx +52 -0
  517. package/dist/src/skills/bundled/ai-elements/scripts/model-selector.tsx +368 -0
  518. package/dist/src/skills/bundled/ai-elements/scripts/open-in-chat.tsx +33 -0
  519. package/dist/src/skills/bundled/ai-elements/scripts/package-info.tsx +52 -0
  520. package/dist/src/skills/bundled/ai-elements/scripts/persona-command.tsx +101 -0
  521. package/dist/src/skills/bundled/ai-elements/scripts/persona-glint.tsx +101 -0
  522. package/dist/src/skills/bundled/ai-elements/scripts/persona-halo.tsx +101 -0
  523. package/dist/src/skills/bundled/ai-elements/scripts/persona-mana.tsx +101 -0
  524. package/dist/src/skills/bundled/ai-elements/scripts/persona-obsidian.tsx +101 -0
  525. package/dist/src/skills/bundled/ai-elements/scripts/persona-opal.tsx +101 -0
  526. package/dist/src/skills/bundled/ai-elements/scripts/plan.tsx +69 -0
  527. package/dist/src/skills/bundled/ai-elements/scripts/prompt-input-cursor.tsx +462 -0
  528. package/dist/src/skills/bundled/ai-elements/scripts/prompt-input-tooltip.tsx +46 -0
  529. package/dist/src/skills/bundled/ai-elements/scripts/prompt-input.tsx +254 -0
  530. package/dist/src/skills/bundled/ai-elements/scripts/queue-prompt-input.tsx +372 -0
  531. package/dist/src/skills/bundled/ai-elements/scripts/queue.tsx +281 -0
  532. package/dist/src/skills/bundled/ai-elements/scripts/reasoning.tsx +73 -0
  533. package/dist/src/skills/bundled/ai-elements/scripts/sandbox.tsx +171 -0
  534. package/dist/src/skills/bundled/ai-elements/scripts/schema-display-basic.tsx +13 -0
  535. package/dist/src/skills/bundled/ai-elements/scripts/schema-display-body.tsx +20 -0
  536. package/dist/src/skills/bundled/ai-elements/scripts/schema-display-nested.tsx +23 -0
  537. package/dist/src/skills/bundled/ai-elements/scripts/schema-display-params.tsx +16 -0
  538. package/dist/src/skills/bundled/ai-elements/scripts/schema-display.tsx +110 -0
  539. package/dist/src/skills/bundled/ai-elements/scripts/shimmer-duration.tsx +35 -0
  540. package/dist/src/skills/bundled/ai-elements/scripts/shimmer-elements.tsx +45 -0
  541. package/dist/src/skills/bundled/ai-elements/scripts/shimmer.tsx +17 -0
  542. package/dist/src/skills/bundled/ai-elements/scripts/snippet-plain.tsx +19 -0
  543. package/dist/src/skills/bundled/ai-elements/scripts/snippet.tsx +25 -0
  544. package/dist/src/skills/bundled/ai-elements/scripts/sources-custom.tsx +40 -0
  545. package/dist/src/skills/bundled/ai-elements/scripts/sources.tsx +33 -0
  546. package/dist/src/skills/bundled/ai-elements/scripts/speech-input.tsx +85 -0
  547. package/dist/src/skills/bundled/ai-elements/scripts/stack-trace-collapsed.tsx +39 -0
  548. package/dist/src/skills/bundled/ai-elements/scripts/stack-trace-no-internal.tsx +41 -0
  549. package/dist/src/skills/bundled/ai-elements/scripts/stack-trace.tsx +60 -0
  550. package/dist/src/skills/bundled/ai-elements/scripts/suggestion-input.tsx +142 -0
  551. package/dist/src/skills/bundled/ai-elements/scripts/suggestion.tsx +34 -0
  552. package/dist/src/skills/bundled/ai-elements/scripts/task.tsx +59 -0
  553. package/dist/src/skills/bundled/ai-elements/scripts/terminal-basic.tsx +7 -0
  554. package/dist/src/skills/bundled/ai-elements/scripts/terminal-clear.tsx +19 -0
  555. package/dist/src/skills/bundled/ai-elements/scripts/terminal-streaming.tsx +38 -0
  556. package/dist/src/skills/bundled/ai-elements/scripts/terminal.tsx +83 -0
  557. package/dist/src/skills/bundled/ai-elements/scripts/test-results-basic.tsx +27 -0
  558. package/dist/src/skills/bundled/ai-elements/scripts/test-results-errors.tsx +51 -0
  559. package/dist/src/skills/bundled/ai-elements/scripts/test-results-suites.tsx +40 -0
  560. package/dist/src/skills/bundled/ai-elements/scripts/test-results.tsx +84 -0
  561. package/dist/src/skills/bundled/ai-elements/scripts/tool-input-available.tsx +31 -0
  562. package/dist/src/skills/bundled/ai-elements/scripts/tool-input-streaming.tsx +30 -0
  563. package/dist/src/skills/bundled/ai-elements/scripts/tool-output-available.tsx +81 -0
  564. package/dist/src/skills/bundled/ai-elements/scripts/tool-output-error.tsx +50 -0
  565. package/dist/src/skills/bundled/ai-elements/scripts/tool.tsx +210 -0
  566. package/dist/src/skills/bundled/ai-elements/scripts/transcription.tsx +289 -0
  567. package/dist/src/skills/bundled/ai-elements/scripts/voice-selector.tsx +233 -0
  568. package/dist/src/skills/bundled/ai-elements/scripts/web-preview.tsx +105 -0
  569. package/dist/src/skills/bundled/control-browser/SKILL.md +21 -0
  570. package/dist/src/skills/bundled/dynamic-workflows/SKILL.md +1520 -0
  571. package/dist/src/skills/bundled/dynamic-workflows/examples.md +801 -0
  572. package/dist/src/skills/bundled/dynamic-workflows/patterns.md +460 -0
  573. package/dist/src/skills/bundled/provenance.json +684 -0
  574. package/dist/src/skills/bundled/web-gui-tester/SKILL.md +159 -0
  575. package/dist/src/skills/project-skills.d.ts +11 -0
  576. package/dist/src/skills/project-skills.js +132 -0
  577. package/dist/src/skills/runtime-skills.d.ts +10 -0
  578. package/dist/src/skills/runtime-skills.js +237 -0
  579. package/dist/src/subagent-run.d.ts +278 -0
  580. package/dist/src/subagent-run.js +930 -0
  581. package/dist/src/telemetry/aggregate.d.ts +80 -0
  582. package/dist/src/telemetry/aggregate.js +217 -0
  583. package/dist/src/telemetry/capture-core.d.ts +190 -0
  584. package/dist/src/telemetry/capture-core.js +374 -0
  585. package/dist/src/telemetry/capture.d.ts +5 -0
  586. package/dist/src/telemetry/capture.js +16 -0
  587. package/dist/src/telemetry/classify.d.ts +102 -0
  588. package/dist/src/telemetry/classify.js +252 -0
  589. package/dist/src/telemetry/decision-capture.d.ts +13 -0
  590. package/dist/src/telemetry/decision-capture.js +40 -0
  591. package/dist/src/telemetry/emitter.d.ts +77 -0
  592. package/dist/src/telemetry/emitter.js +279 -0
  593. package/dist/src/telemetry/gate.d.ts +48 -0
  594. package/dist/src/telemetry/gate.js +55 -0
  595. package/dist/src/telemetry/identity.d.ts +19 -0
  596. package/dist/src/telemetry/identity.js +109 -0
  597. package/dist/src/telemetry/outbox.d.ts +91 -0
  598. package/dist/src/telemetry/outbox.js +356 -0
  599. package/dist/src/telemetry/schema.d.ts +184 -0
  600. package/dist/src/telemetry/schema.js +492 -0
  601. package/dist/src/telemetry/state.d.ts +90 -0
  602. package/dist/src/telemetry/state.js +195 -0
  603. package/dist/src/telemetry/surface.d.ts +76 -0
  604. package/dist/src/telemetry/surface.js +116 -0
  605. package/dist/src/telemetry/uploader.d.ts +29 -0
  606. package/dist/src/telemetry/uploader.js +151 -0
  607. package/dist/src/telemetry/uploads.d.ts +13 -0
  608. package/dist/src/telemetry/uploads.js +19 -0
  609. package/dist/src/telemetry/version.d.ts +5 -0
  610. package/dist/src/telemetry/version.js +25 -0
  611. package/dist/src/telemetry/workspace.d.ts +14 -0
  612. package/dist/src/telemetry/workspace.js +93 -0
  613. package/dist/src/terminal-ui.d.ts +744 -0
  614. package/dist/src/terminal-ui.js +3012 -0
  615. package/dist/src/text.d.ts +2 -0
  616. package/dist/src/text.js +8 -0
  617. package/dist/src/timers.d.ts +189 -0
  618. package/dist/src/timers.js +244 -0
  619. package/dist/src/todos.d.ts +12 -0
  620. package/dist/src/todos.js +33 -0
  621. package/dist/src/token-rate.d.ts +119 -0
  622. package/dist/src/token-rate.js +287 -0
  623. package/dist/src/tool-activity.d.ts +20 -0
  624. package/dist/src/tool-activity.js +76 -0
  625. package/dist/src/tool-call-clock.d.ts +32 -0
  626. package/dist/src/tool-call-clock.js +157 -0
  627. package/dist/src/tool-catalog.d.ts +40 -0
  628. package/dist/src/tool-catalog.js +100 -0
  629. package/dist/src/tool-dependencies.d.ts +23 -0
  630. package/dist/src/tool-dependencies.js +36 -0
  631. package/dist/src/tool-diff-stats.d.ts +24 -0
  632. package/dist/src/tool-diff-stats.js +122 -0
  633. package/dist/src/tool-errors.d.ts +12 -0
  634. package/dist/src/tool-errors.js +13 -0
  635. package/dist/src/tool-failure-tracker.d.ts +17 -0
  636. package/dist/src/tool-failure-tracker.js +71 -0
  637. package/dist/src/tool-names.d.ts +16 -0
  638. package/dist/src/tool-names.js +75 -0
  639. package/dist/src/tool-result-filter.d.ts +65 -0
  640. package/dist/src/tool-result-filter.js +447 -0
  641. package/dist/src/tool-schema-compatibility.d.ts +2 -0
  642. package/dist/src/tool-schema-compatibility.js +42 -0
  643. package/dist/src/tools.d.ts +3 -0
  644. package/dist/src/tools.js +663 -0
  645. package/dist/src/trajectory.d.ts +34 -0
  646. package/dist/src/trajectory.js +426 -0
  647. package/dist/src/transcript.d.ts +45 -0
  648. package/dist/src/transcript.js +228 -0
  649. package/dist/src/types.d.ts +248 -0
  650. package/dist/src/types.js +1 -0
  651. package/dist/src/update.d.ts +58 -0
  652. package/dist/src/update.js +571 -0
  653. package/dist/src/usage-analytics.d.ts +48 -0
  654. package/dist/src/usage-analytics.js +663 -0
  655. package/dist/src/widgets.d.ts +45 -0
  656. package/dist/src/widgets.js +71 -0
  657. package/dist/src/workspace-facts.d.ts +35 -0
  658. package/dist/src/workspace-facts.js +85 -0
  659. package/dist/src/workspace-git-metadata.d.ts +6 -0
  660. package/dist/src/workspace-git-metadata.js +114 -0
  661. package/dist/src/workspace-instructions.d.ts +7 -0
  662. package/dist/src/workspace-instructions.js +46 -0
  663. package/dist/vendor/engine/LICENSE.upstream +21 -0
  664. package/dist/vendor/engine/provenance.json +17923 -0
  665. package/dist/vendor/engine/runtime/agent/agent-loop.d.ts +23 -0
  666. package/dist/vendor/engine/runtime/agent/agent-loop.js +601 -0
  667. package/dist/vendor/engine/runtime/agent/agent.d.ts +130 -0
  668. package/dist/vendor/engine/runtime/agent/agent.js +430 -0
  669. package/dist/vendor/engine/runtime/agent/harness/agent-harness.d.ts +715 -0
  670. package/dist/vendor/engine/runtime/agent/harness/agent-harness.js +5 -0
  671. package/dist/vendor/engine/runtime/agent/harness/compaction/branch-summarization.d.ts +67 -0
  672. package/dist/vendor/engine/runtime/agent/harness/compaction/branch-summarization.js +175 -0
  673. package/dist/vendor/engine/runtime/agent/harness/compaction/compaction.d.ts +125 -0
  674. package/dist/vendor/engine/runtime/agent/harness/compaction/compaction.js +559 -0
  675. package/dist/vendor/engine/runtime/agent/harness/compaction/utils.d.ts +24 -0
  676. package/dist/vendor/engine/runtime/agent/harness/compaction/utils.js +119 -0
  677. package/dist/vendor/engine/runtime/agent/harness/config.d.ts +8 -0
  678. package/dist/vendor/engine/runtime/agent/harness/config.js +34 -0
  679. package/dist/vendor/engine/runtime/agent/harness/context.d.ts +8 -0
  680. package/dist/vendor/engine/runtime/agent/harness/context.js +12 -0
  681. package/dist/vendor/engine/runtime/agent/harness/events.d.ts +24 -0
  682. package/dist/vendor/engine/runtime/agent/harness/events.js +249 -0
  683. package/dist/vendor/engine/runtime/agent/harness/execution/assistant.d.ts +41 -0
  684. package/dist/vendor/engine/runtime/agent/harness/execution/assistant.js +81 -0
  685. package/dist/vendor/engine/runtime/agent/harness/execution/effect-gate.d.ts +21 -0
  686. package/dist/vendor/engine/runtime/agent/harness/execution/effect-gate.js +48 -0
  687. package/dist/vendor/engine/runtime/agent/harness/execution/tools.d.ts +66 -0
  688. package/dist/vendor/engine/runtime/agent/harness/execution/tools.js +118 -0
  689. package/dist/vendor/engine/runtime/agent/harness/hooks.d.ts +37 -0
  690. package/dist/vendor/engine/runtime/agent/harness/hooks.js +405 -0
  691. package/dist/vendor/engine/runtime/agent/harness/messages.d.ts +50 -0
  692. package/dist/vendor/engine/runtime/agent/harness/messages.js +102 -0
  693. package/dist/vendor/engine/runtime/agent/harness/prompt-templates.d.ts +48 -0
  694. package/dist/vendor/engine/runtime/agent/harness/prompt-templates.js +224 -0
  695. package/dist/vendor/engine/runtime/agent/harness/result.d.ts +132 -0
  696. package/dist/vendor/engine/runtime/agent/harness/result.js +80 -0
  697. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/boundary.d.ts +27 -0
  698. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/boundary.js +172 -0
  699. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/checkpoint.d.ts +7 -0
  700. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/checkpoint.js +132 -0
  701. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/deferred.d.ts +14 -0
  702. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/deferred.js +178 -0
  703. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/generation.d.ts +7 -0
  704. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/generation.js +204 -0
  705. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/reconcile.d.ts +4 -0
  706. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/reconcile.js +139 -0
  707. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/recovery.d.ts +7 -0
  708. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/recovery.js +84 -0
  709. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/response.d.ts +22 -0
  710. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/response.js +393 -0
  711. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/retry.d.ts +3 -0
  712. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/retry.js +33 -0
  713. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/structural.d.ts +31 -0
  714. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/structural.js +928 -0
  715. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/terminal.d.ts +6 -0
  716. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/terminal.js +48 -0
  717. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/tool-placement.d.ts +13 -0
  718. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/tool-placement.js +218 -0
  719. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/tools.d.ts +5 -0
  720. package/dist/vendor/engine/runtime/agent/harness/runtime/drive/tools.js +448 -0
  721. package/dist/vendor/engine/runtime/agent/harness/runtime/drive.d.ts +5 -0
  722. package/dist/vendor/engine/runtime/agent/harness/runtime/drive.js +92 -0
  723. package/dist/vendor/engine/runtime/agent/harness/runtime/harness.d.ts +58 -0
  724. package/dist/vendor/engine/runtime/agent/harness/runtime/harness.js +310 -0
  725. package/dist/vendor/engine/runtime/agent/harness/runtime/lane.d.ts +117 -0
  726. package/dist/vendor/engine/runtime/agent/harness/runtime/lane.js +1574 -0
  727. package/dist/vendor/engine/runtime/agent/harness/runtime/progress.d.ts +14 -0
  728. package/dist/vendor/engine/runtime/agent/harness/runtime/progress.js +65 -0
  729. package/dist/vendor/engine/runtime/agent/harness/runtime/reducer.d.ts +4 -0
  730. package/dist/vendor/engine/runtime/agent/harness/runtime/reducer.js +239 -0
  731. package/dist/vendor/engine/runtime/agent/harness/runtime/restore.d.ts +23 -0
  732. package/dist/vendor/engine/runtime/agent/harness/runtime/restore.js +116 -0
  733. package/dist/vendor/engine/runtime/agent/harness/runtime/transcript.d.ts +20 -0
  734. package/dist/vendor/engine/runtime/agent/harness/runtime/transcript.js +71 -0
  735. package/dist/vendor/engine/runtime/agent/harness/runtime/types.d.ts +104 -0
  736. package/dist/vendor/engine/runtime/agent/harness/runtime/types.js +60 -0
  737. package/dist/vendor/engine/runtime/agent/harness/session/commit.d.ts +52 -0
  738. package/dist/vendor/engine/runtime/agent/harness/session/commit.js +56 -0
  739. package/dist/vendor/engine/runtime/agent/harness/session/context.d.ts +9 -0
  740. package/dist/vendor/engine/runtime/agent/harness/session/context.js +48 -0
  741. package/dist/vendor/engine/runtime/agent/harness/session/fork-policy.d.ts +20 -0
  742. package/dist/vendor/engine/runtime/agent/harness/session/fork-policy.js +54 -0
  743. package/dist/vendor/engine/runtime/agent/harness/session/fork.d.ts +15 -0
  744. package/dist/vendor/engine/runtime/agent/harness/session/fork.js +78 -0
  745. package/dist/vendor/engine/runtime/agent/harness/session/in-memory-storage-state.d.ts +38 -0
  746. package/dist/vendor/engine/runtime/agent/harness/session/in-memory-storage-state.js +275 -0
  747. package/dist/vendor/engine/runtime/agent/harness/session/index.d.ts +10 -0
  748. package/dist/vendor/engine/runtime/agent/harness/session/index.js +8 -0
  749. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/codec.d.ts +20 -0
  750. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/codec.js +44 -0
  751. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/fork.d.ts +37 -0
  752. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/fork.js +263 -0
  753. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/index.d.ts +3 -0
  754. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/index.js +3 -0
  755. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/io.d.ts +13 -0
  756. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/io.js +85 -0
  757. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/legacy-v3.d.ts +43 -0
  758. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/legacy-v3.js +461 -0
  759. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/repo.d.ts +34 -0
  760. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/repo.js +300 -0
  761. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/storage.d.ts +40 -0
  762. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/storage.js +199 -0
  763. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/types.d.ts +38 -0
  764. package/dist/vendor/engine/runtime/agent/harness/session/jsonl/types.js +2 -0
  765. package/dist/vendor/engine/runtime/agent/harness/session/memory.d.ts +47 -0
  766. package/dist/vendor/engine/runtime/agent/harness/session/memory.js +368 -0
  767. package/dist/vendor/engine/runtime/agent/harness/session/mutation-line.d.ts +7 -0
  768. package/dist/vendor/engine/runtime/agent/harness/session/mutation-line.js +20 -0
  769. package/dist/vendor/engine/runtime/agent/harness/session/session.d.ts +81 -0
  770. package/dist/vendor/engine/runtime/agent/harness/session/session.js +360 -0
  771. package/dist/vendor/engine/runtime/agent/harness/session/types.d.ts +511 -0
  772. package/dist/vendor/engine/runtime/agent/harness/session/types.js +8 -0
  773. package/dist/vendor/engine/runtime/agent/harness/session/values.d.ts +94 -0
  774. package/dist/vendor/engine/runtime/agent/harness/session/values.js +80 -0
  775. package/dist/vendor/engine/runtime/agent/harness/skills.d.ts +45 -0
  776. package/dist/vendor/engine/runtime/agent/harness/skills.js +325 -0
  777. package/dist/vendor/engine/runtime/agent/harness/system-prompt.d.ts +2 -0
  778. package/dist/vendor/engine/runtime/agent/harness/system-prompt.js +29 -0
  779. package/dist/vendor/engine/runtime/agent/harness/telemetry.d.ts +1241 -0
  780. package/dist/vendor/engine/runtime/agent/harness/telemetry.js +526 -0
  781. package/dist/vendor/engine/runtime/agent/harness/tools/bash.d.ts +26 -0
  782. package/dist/vendor/engine/runtime/agent/harness/tools/bash.js +104 -0
  783. package/dist/vendor/engine/runtime/agent/harness/tools/edit-diff.d.ts +88 -0
  784. package/dist/vendor/engine/runtime/agent/harness/tools/edit-diff.js +385 -0
  785. package/dist/vendor/engine/runtime/agent/harness/tools/edit.d.ts +18 -0
  786. package/dist/vendor/engine/runtime/agent/harness/tools/edit.js +107 -0
  787. package/dist/vendor/engine/runtime/agent/harness/tools/file-mutation-queue.d.ts +4 -0
  788. package/dist/vendor/engine/runtime/agent/harness/tools/file-mutation-queue.js +45 -0
  789. package/dist/vendor/engine/runtime/agent/harness/tools/image.d.ts +2 -0
  790. package/dist/vendor/engine/runtime/agent/harness/tools/image.js +105 -0
  791. package/dist/vendor/engine/runtime/agent/harness/tools/index.d.ts +5 -0
  792. package/dist/vendor/engine/runtime/agent/harness/tools/index.js +4 -0
  793. package/dist/vendor/engine/runtime/agent/harness/tools/path-utils.d.ts +4 -0
  794. package/dist/vendor/engine/runtime/agent/harness/tools/path-utils.js +25 -0
  795. package/dist/vendor/engine/runtime/agent/harness/tools/read.d.ts +34 -0
  796. package/dist/vendor/engine/runtime/agent/harness/tools/read.js +107 -0
  797. package/dist/vendor/engine/runtime/agent/harness/tools/tool-context.d.ts +5 -0
  798. package/dist/vendor/engine/runtime/agent/harness/tools/tool-context.js +1 -0
  799. package/dist/vendor/engine/runtime/agent/harness/tools/write.d.ts +10 -0
  800. package/dist/vendor/engine/runtime/agent/harness/tools/write.js +30 -0
  801. package/dist/vendor/engine/runtime/agent/harness/types.d.ts +304 -0
  802. package/dist/vendor/engine/runtime/agent/harness/types.js +74 -0
  803. package/dist/vendor/engine/runtime/agent/harness/utils/adaptive-publisher.d.ts +23 -0
  804. package/dist/vendor/engine/runtime/agent/harness/utils/adaptive-publisher.js +78 -0
  805. package/dist/vendor/engine/runtime/agent/harness/utils/output-capture.d.ts +30 -0
  806. package/dist/vendor/engine/runtime/agent/harness/utils/output-capture.js +216 -0
  807. package/dist/vendor/engine/runtime/agent/harness/utils/shell-output.d.ts +28 -0
  808. package/dist/vendor/engine/runtime/agent/harness/utils/shell-output.js +70 -0
  809. package/dist/vendor/engine/runtime/agent/harness/utils/truncate.d.ts +70 -0
  810. package/dist/vendor/engine/runtime/agent/harness/utils/truncate.js +295 -0
  811. package/dist/vendor/engine/runtime/agent/harness/utils/usage.d.ts +3 -0
  812. package/dist/vendor/engine/runtime/agent/harness/utils/usage.js +32 -0
  813. package/dist/vendor/engine/runtime/agent/index.d.ts +27 -0
  814. package/dist/vendor/engine/runtime/agent/index.js +25 -0
  815. package/dist/vendor/engine/runtime/agent/proxy.d.ts +71 -0
  816. package/dist/vendor/engine/runtime/agent/proxy.js +309 -0
  817. package/dist/vendor/engine/runtime/agent/search/index.d.ts +28 -0
  818. package/dist/vendor/engine/runtime/agent/search/index.js +1 -0
  819. package/dist/vendor/engine/runtime/agent/stream-fn.d.ts +9 -0
  820. package/dist/vendor/engine/runtime/agent/stream-fn.js +16 -0
  821. package/dist/vendor/engine/runtime/agent/types.d.ts +431 -0
  822. package/dist/vendor/engine/runtime/agent/types.js +1 -0
  823. package/dist/vendor/engine/runtime/ai/api/anthropic-messages.d.ts +70 -0
  824. package/dist/vendor/engine/runtime/ai/api/anthropic-messages.js +1204 -0
  825. package/dist/vendor/engine/runtime/ai/api/anthropic-messages.lazy.d.ts +2 -0
  826. package/dist/vendor/engine/runtime/ai/api/anthropic-messages.lazy.js +2 -0
  827. package/dist/vendor/engine/runtime/ai/api/azure-openai-responses.d.ts +16 -0
  828. package/dist/vendor/engine/runtime/ai/api/azure-openai-responses.js +260 -0
  829. package/dist/vendor/engine/runtime/ai/api/azure-openai-responses.lazy.d.ts +2 -0
  830. package/dist/vendor/engine/runtime/ai/api/azure-openai-responses.lazy.js +2 -0
  831. package/dist/vendor/engine/runtime/ai/api/bedrock-converse-stream.d.ts +37 -0
  832. package/dist/vendor/engine/runtime/ai/api/bedrock-converse-stream.js +1091 -0
  833. package/dist/vendor/engine/runtime/ai/api/bedrock-converse-stream.lazy.d.ts +9 -0
  834. package/dist/vendor/engine/runtime/ai/api/bedrock-converse-stream.lazy.js +21 -0
  835. package/dist/vendor/engine/runtime/ai/api/constrained-sampling.d.ts +19 -0
  836. package/dist/vendor/engine/runtime/ai/api/constrained-sampling.js +221 -0
  837. package/dist/vendor/engine/runtime/ai/api/github-copilot-headers.d.ts +7 -0
  838. package/dist/vendor/engine/runtime/ai/api/github-copilot-headers.js +28 -0
  839. package/dist/vendor/engine/runtime/ai/api/google-generative-ai.d.ts +12 -0
  840. package/dist/vendor/engine/runtime/ai/api/google-generative-ai.js +368 -0
  841. package/dist/vendor/engine/runtime/ai/api/google-generative-ai.lazy.d.ts +2 -0
  842. package/dist/vendor/engine/runtime/ai/api/google-generative-ai.lazy.js +2 -0
  843. package/dist/vendor/engine/runtime/ai/api/google-shared.d.ts +92 -0
  844. package/dist/vendor/engine/runtime/ai/api/google-shared.js +450 -0
  845. package/dist/vendor/engine/runtime/ai/api/google-vertex.d.ts +14 -0
  846. package/dist/vendor/engine/runtime/ai/api/google-vertex.js +429 -0
  847. package/dist/vendor/engine/runtime/ai/api/google-vertex.lazy.d.ts +2 -0
  848. package/dist/vendor/engine/runtime/ai/api/google-vertex.lazy.js +2 -0
  849. package/dist/vendor/engine/runtime/ai/api/lazy.d.ts +24 -0
  850. package/dist/vendor/engine/runtime/ai/api/lazy.js +69 -0
  851. package/dist/vendor/engine/runtime/ai/api/mistral-conversations.d.ts +24 -0
  852. package/dist/vendor/engine/runtime/ai/api/mistral-conversations.js +747 -0
  853. package/dist/vendor/engine/runtime/ai/api/mistral-conversations.lazy.d.ts +2 -0
  854. package/dist/vendor/engine/runtime/ai/api/mistral-conversations.lazy.js +2 -0
  855. package/dist/vendor/engine/runtime/ai/api/openai-codex-responses.d.ts +30 -0
  856. package/dist/vendor/engine/runtime/ai/api/openai-codex-responses.js +1302 -0
  857. package/dist/vendor/engine/runtime/ai/api/openai-codex-responses.lazy.d.ts +2 -0
  858. package/dist/vendor/engine/runtime/ai/api/openai-codex-responses.lazy.js +2 -0
  859. package/dist/vendor/engine/runtime/ai/api/openai-completions.d.ts +25 -0
  860. package/dist/vendor/engine/runtime/ai/api/openai-completions.js +1339 -0
  861. package/dist/vendor/engine/runtime/ai/api/openai-completions.lazy.d.ts +2 -0
  862. package/dist/vendor/engine/runtime/ai/api/openai-completions.lazy.js +2 -0
  863. package/dist/vendor/engine/runtime/ai/api/openai-prompt-cache.d.ts +2 -0
  864. package/dist/vendor/engine/runtime/ai/api/openai-prompt-cache.js +9 -0
  865. package/dist/vendor/engine/runtime/ai/api/openai-responses-shared.d.ts +27 -0
  866. package/dist/vendor/engine/runtime/ai/api/openai-responses-shared.js +688 -0
  867. package/dist/vendor/engine/runtime/ai/api/openai-responses.d.ts +13 -0
  868. package/dist/vendor/engine/runtime/ai/api/openai-responses.js +292 -0
  869. package/dist/vendor/engine/runtime/ai/api/openai-responses.lazy.d.ts +2 -0
  870. package/dist/vendor/engine/runtime/ai/api/openai-responses.lazy.js +2 -0
  871. package/dist/vendor/engine/runtime/ai/api/openrouter-images.d.ts +2 -0
  872. package/dist/vendor/engine/runtime/ai/api/openrouter-images.js +131 -0
  873. package/dist/vendor/engine/runtime/ai/api/openrouter-images.lazy.d.ts +2 -0
  874. package/dist/vendor/engine/runtime/ai/api/openrouter-images.lazy.js +3 -0
  875. package/dist/vendor/engine/runtime/ai/api/pi-messages.d.ts +98 -0
  876. package/dist/vendor/engine/runtime/ai/api/pi-messages.js +312 -0
  877. package/dist/vendor/engine/runtime/ai/api/pi-messages.lazy.d.ts +2 -0
  878. package/dist/vendor/engine/runtime/ai/api/pi-messages.lazy.js +2 -0
  879. package/dist/vendor/engine/runtime/ai/api/simple-options.d.ts +14 -0
  880. package/dist/vendor/engine/runtime/ai/api/simple-options.js +65 -0
  881. package/dist/vendor/engine/runtime/ai/api/transform-messages.d.ts +7 -0
  882. package/dist/vendor/engine/runtime/ai/api/transform-messages.js +200 -0
  883. package/dist/vendor/engine/runtime/ai/auth/context.d.ts +6 -0
  884. package/dist/vendor/engine/runtime/ai/auth/context.js +33 -0
  885. package/dist/vendor/engine/runtime/ai/auth/credential-store.d.ts +16 -0
  886. package/dist/vendor/engine/runtime/ai/auth/credential-store.js +50 -0
  887. package/dist/vendor/engine/runtime/ai/auth/helpers.d.ts +21 -0
  888. package/dist/vendor/engine/runtime/ai/auth/helpers.js +52 -0
  889. package/dist/vendor/engine/runtime/ai/auth/oauth/load.d.ts +28 -0
  890. package/dist/vendor/engine/runtime/ai/auth/oauth/load.js +55 -0
  891. package/dist/vendor/engine/runtime/ai/auth/resolve.d.ts +26 -0
  892. package/dist/vendor/engine/runtime/ai/auth/resolve.js +131 -0
  893. package/dist/vendor/engine/runtime/ai/auth/types.d.ts +230 -0
  894. package/dist/vendor/engine/runtime/ai/auth/types.js +1 -0
  895. package/dist/vendor/engine/runtime/ai/compat/extension-oauth-types.d.ts +38 -0
  896. package/dist/vendor/engine/runtime/ai/compat/extension-oauth-types.js +1 -0
  897. package/dist/vendor/engine/runtime/ai/compat.d.ts +66 -0
  898. package/dist/vendor/engine/runtime/ai/compat.js +201 -0
  899. package/dist/vendor/engine/runtime/ai/env-api-keys.d.ts +20 -0
  900. package/dist/vendor/engine/runtime/ai/env-api-keys.js +148 -0
  901. package/dist/vendor/engine/runtime/ai/image-models.d.ts +9 -0
  902. package/dist/vendor/engine/runtime/ai/image-models.generated.d.ts +814 -0
  903. package/dist/vendor/engine/runtime/ai/image-models.generated.js +816 -0
  904. package/dist/vendor/engine/runtime/ai/image-models.js +22 -0
  905. package/dist/vendor/engine/runtime/ai/images-api-registry.d.ts +13 -0
  906. package/dist/vendor/engine/runtime/ai/images-api-registry.js +21 -0
  907. package/dist/vendor/engine/runtime/ai/images-models.d.ts +94 -0
  908. package/dist/vendor/engine/runtime/ai/images-models.js +142 -0
  909. package/dist/vendor/engine/runtime/ai/images.d.ts +3 -0
  910. package/dist/vendor/engine/runtime/ai/images.js +13 -0
  911. package/dist/vendor/engine/runtime/ai/index.d.ts +36 -0
  912. package/dist/vendor/engine/runtime/ai/index.js +23 -0
  913. package/dist/vendor/engine/runtime/ai/legacy-api-aliases.d.ts +41 -0
  914. package/dist/vendor/engine/runtime/ai/legacy-api-aliases.js +48 -0
  915. package/dist/vendor/engine/runtime/ai/model-catalog.d.ts +16 -0
  916. package/dist/vendor/engine/runtime/ai/model-catalog.js +3 -0
  917. package/dist/vendor/engine/runtime/ai/models-store.d.ts +28 -0
  918. package/dist/vendor/engine/runtime/ai/models-store.js +16 -0
  919. package/dist/vendor/engine/runtime/ai/models.d.ts +201 -0
  920. package/dist/vendor/engine/runtime/ai/models.generated.d.ts +84 -0
  921. package/dist/vendor/engine/runtime/ai/models.generated.js +86 -0
  922. package/dist/vendor/engine/runtime/ai/models.js +593 -0
  923. package/dist/vendor/engine/runtime/ai/oauth.d.ts +2 -0
  924. package/dist/vendor/engine/runtime/ai/oauth.js +1 -0
  925. package/dist/vendor/engine/runtime/ai/providers/all.d.ts +27 -0
  926. package/dist/vendor/engine/runtime/ai/providers/all.js +132 -0
  927. package/dist/vendor/engine/runtime/ai/providers/amazon-bedrock.d.ts +2 -0
  928. package/dist/vendor/engine/runtime/ai/providers/amazon-bedrock.js +92 -0
  929. package/dist/vendor/engine/runtime/ai/providers/amazon-bedrock.models.d.ts +3 -0
  930. package/dist/vendor/engine/runtime/ai/providers/amazon-bedrock.models.js +5 -0
  931. package/dist/vendor/engine/runtime/ai/providers/ant-ling.d.ts +2 -0
  932. package/dist/vendor/engine/runtime/ai/providers/ant-ling.js +14 -0
  933. package/dist/vendor/engine/runtime/ai/providers/ant-ling.models.d.ts +3 -0
  934. package/dist/vendor/engine/runtime/ai/providers/ant-ling.models.js +5 -0
  935. package/dist/vendor/engine/runtime/ai/providers/anthropic.d.ts +2 -0
  936. package/dist/vendor/engine/runtime/ai/providers/anthropic.js +55 -0
  937. package/dist/vendor/engine/runtime/ai/providers/anthropic.models.d.ts +3 -0
  938. package/dist/vendor/engine/runtime/ai/providers/anthropic.models.js +5 -0
  939. package/dist/vendor/engine/runtime/ai/providers/azure-openai-responses.d.ts +2 -0
  940. package/dist/vendor/engine/runtime/ai/providers/azure-openai-responses.js +13 -0
  941. package/dist/vendor/engine/runtime/ai/providers/azure-openai-responses.models.d.ts +3 -0
  942. package/dist/vendor/engine/runtime/ai/providers/azure-openai-responses.models.js +5 -0
  943. package/dist/vendor/engine/runtime/ai/providers/baseten.d.ts +2 -0
  944. package/dist/vendor/engine/runtime/ai/providers/baseten.js +14 -0
  945. package/dist/vendor/engine/runtime/ai/providers/baseten.models.d.ts +3 -0
  946. package/dist/vendor/engine/runtime/ai/providers/baseten.models.js +5 -0
  947. package/dist/vendor/engine/runtime/ai/providers/cerebras.d.ts +2 -0
  948. package/dist/vendor/engine/runtime/ai/providers/cerebras.js +14 -0
  949. package/dist/vendor/engine/runtime/ai/providers/cerebras.models.d.ts +3 -0
  950. package/dist/vendor/engine/runtime/ai/providers/cerebras.models.js +5 -0
  951. package/dist/vendor/engine/runtime/ai/providers/cloudflare-ai-gateway.d.ts +4 -0
  952. package/dist/vendor/engine/runtime/ai/providers/cloudflare-ai-gateway.js +24 -0
  953. package/dist/vendor/engine/runtime/ai/providers/cloudflare-ai-gateway.models.d.ts +3 -0
  954. package/dist/vendor/engine/runtime/ai/providers/cloudflare-ai-gateway.models.js +5 -0
  955. package/dist/vendor/engine/runtime/ai/providers/cloudflare-auth.d.ts +3 -0
  956. package/dist/vendor/engine/runtime/ai/providers/cloudflare-auth.js +85 -0
  957. package/dist/vendor/engine/runtime/ai/providers/cloudflare-stream.d.ts +7 -0
  958. package/dist/vendor/engine/runtime/ai/providers/cloudflare-stream.js +20 -0
  959. package/dist/vendor/engine/runtime/ai/providers/cloudflare-workers-ai.d.ts +2 -0
  960. package/dist/vendor/engine/runtime/ai/providers/cloudflare-workers-ai.js +14 -0
  961. package/dist/vendor/engine/runtime/ai/providers/cloudflare-workers-ai.models.d.ts +3 -0
  962. package/dist/vendor/engine/runtime/ai/providers/cloudflare-workers-ai.models.js +5 -0
  963. package/dist/vendor/engine/runtime/ai/providers/data/.manifest.json +1 -0
  964. package/dist/vendor/engine/runtime/ai/providers/data/amazon-bedrock.json +1 -0
  965. package/dist/vendor/engine/runtime/ai/providers/data/ant-ling.json +1 -0
  966. package/dist/vendor/engine/runtime/ai/providers/data/anthropic.json +1 -0
  967. package/dist/vendor/engine/runtime/ai/providers/data/azure-openai-responses.json +1 -0
  968. package/dist/vendor/engine/runtime/ai/providers/data/baseten.json +1 -0
  969. package/dist/vendor/engine/runtime/ai/providers/data/cerebras.json +1 -0
  970. package/dist/vendor/engine/runtime/ai/providers/data/cloudflare-ai-gateway.json +1 -0
  971. package/dist/vendor/engine/runtime/ai/providers/data/cloudflare-workers-ai.json +1 -0
  972. package/dist/vendor/engine/runtime/ai/providers/data/deepseek.json +1 -0
  973. package/dist/vendor/engine/runtime/ai/providers/data/fireworks.json +1 -0
  974. package/dist/vendor/engine/runtime/ai/providers/data/github-copilot.json +1 -0
  975. package/dist/vendor/engine/runtime/ai/providers/data/google-vertex.json +1 -0
  976. package/dist/vendor/engine/runtime/ai/providers/data/google.json +1 -0
  977. package/dist/vendor/engine/runtime/ai/providers/data/groq.json +1 -0
  978. package/dist/vendor/engine/runtime/ai/providers/data/huggingface.json +1 -0
  979. package/dist/vendor/engine/runtime/ai/providers/data/kimi-coding.json +1 -0
  980. package/dist/vendor/engine/runtime/ai/providers/data/meta.json +1 -0
  981. package/dist/vendor/engine/runtime/ai/providers/data/minimax-cn.json +1 -0
  982. package/dist/vendor/engine/runtime/ai/providers/data/minimax.json +1 -0
  983. package/dist/vendor/engine/runtime/ai/providers/data/mistral.json +1 -0
  984. package/dist/vendor/engine/runtime/ai/providers/data/moonshotai-cn.json +1 -0
  985. package/dist/vendor/engine/runtime/ai/providers/data/moonshotai.json +1 -0
  986. package/dist/vendor/engine/runtime/ai/providers/data/nvidia.json +1 -0
  987. package/dist/vendor/engine/runtime/ai/providers/data/openai-codex.json +1 -0
  988. package/dist/vendor/engine/runtime/ai/providers/data/openai.json +1 -0
  989. package/dist/vendor/engine/runtime/ai/providers/data/opencode-go.json +1 -0
  990. package/dist/vendor/engine/runtime/ai/providers/data/opencode.json +1 -0
  991. package/dist/vendor/engine/runtime/ai/providers/data/openrouter.json +1 -0
  992. package/dist/vendor/engine/runtime/ai/providers/data/qwen-token-plan-cn.json +1 -0
  993. package/dist/vendor/engine/runtime/ai/providers/data/qwen-token-plan-individual.json +1 -0
  994. package/dist/vendor/engine/runtime/ai/providers/data/qwen-token-plan.json +1 -0
  995. package/dist/vendor/engine/runtime/ai/providers/data/radius.json +1 -0
  996. package/dist/vendor/engine/runtime/ai/providers/data/together.json +1 -0
  997. package/dist/vendor/engine/runtime/ai/providers/data/vercel-ai-gateway.json +1 -0
  998. package/dist/vendor/engine/runtime/ai/providers/data/xai.json +1 -0
  999. package/dist/vendor/engine/runtime/ai/providers/data/xiaomi-token-plan-ams.json +1 -0
  1000. package/dist/vendor/engine/runtime/ai/providers/data/xiaomi-token-plan-cn.json +1 -0
  1001. package/dist/vendor/engine/runtime/ai/providers/data/xiaomi-token-plan-sgp.json +1 -0
  1002. package/dist/vendor/engine/runtime/ai/providers/data/xiaomi.json +1 -0
  1003. package/dist/vendor/engine/runtime/ai/providers/data/zai-coding-cn.json +1 -0
  1004. package/dist/vendor/engine/runtime/ai/providers/data/zai.json +1 -0
  1005. package/dist/vendor/engine/runtime/ai/providers/deepseek.d.ts +2 -0
  1006. package/dist/vendor/engine/runtime/ai/providers/deepseek.js +14 -0
  1007. package/dist/vendor/engine/runtime/ai/providers/deepseek.models.d.ts +3 -0
  1008. package/dist/vendor/engine/runtime/ai/providers/deepseek.models.js +5 -0
  1009. package/dist/vendor/engine/runtime/ai/providers/faux.d.ts +102 -0
  1010. package/dist/vendor/engine/runtime/ai/providers/faux.js +488 -0
  1011. package/dist/vendor/engine/runtime/ai/providers/fireworks.d.ts +2 -0
  1012. package/dist/vendor/engine/runtime/ai/providers/fireworks.js +18 -0
  1013. package/dist/vendor/engine/runtime/ai/providers/fireworks.models.d.ts +3 -0
  1014. package/dist/vendor/engine/runtime/ai/providers/fireworks.models.js +5 -0
  1015. package/dist/vendor/engine/runtime/ai/providers/github-copilot.d.ts +2 -0
  1016. package/dist/vendor/engine/runtime/ai/providers/github-copilot.js +34 -0
  1017. package/dist/vendor/engine/runtime/ai/providers/github-copilot.models.d.ts +3 -0
  1018. package/dist/vendor/engine/runtime/ai/providers/github-copilot.models.js +5 -0
  1019. package/dist/vendor/engine/runtime/ai/providers/google-vertex.d.ts +2 -0
  1020. package/dist/vendor/engine/runtime/ai/providers/google-vertex.js +93 -0
  1021. package/dist/vendor/engine/runtime/ai/providers/google-vertex.models.d.ts +3 -0
  1022. package/dist/vendor/engine/runtime/ai/providers/google-vertex.models.js +5 -0
  1023. package/dist/vendor/engine/runtime/ai/providers/google.d.ts +2 -0
  1024. package/dist/vendor/engine/runtime/ai/providers/google.js +14 -0
  1025. package/dist/vendor/engine/runtime/ai/providers/google.models.d.ts +3 -0
  1026. package/dist/vendor/engine/runtime/ai/providers/google.models.js +5 -0
  1027. package/dist/vendor/engine/runtime/ai/providers/groq.d.ts +2 -0
  1028. package/dist/vendor/engine/runtime/ai/providers/groq.js +14 -0
  1029. package/dist/vendor/engine/runtime/ai/providers/groq.models.d.ts +3 -0
  1030. package/dist/vendor/engine/runtime/ai/providers/groq.models.js +5 -0
  1031. package/dist/vendor/engine/runtime/ai/providers/huggingface.d.ts +2 -0
  1032. package/dist/vendor/engine/runtime/ai/providers/huggingface.js +14 -0
  1033. package/dist/vendor/engine/runtime/ai/providers/huggingface.models.d.ts +3 -0
  1034. package/dist/vendor/engine/runtime/ai/providers/huggingface.models.js +5 -0
  1035. package/dist/vendor/engine/runtime/ai/providers/images/register-builtins.d.ts +3 -0
  1036. package/dist/vendor/engine/runtime/ai/providers/images/register-builtins.js +33 -0
  1037. package/dist/vendor/engine/runtime/ai/providers/kimi-coding.d.ts +2 -0
  1038. package/dist/vendor/engine/runtime/ai/providers/kimi-coding.js +23 -0
  1039. package/dist/vendor/engine/runtime/ai/providers/kimi-coding.models.d.ts +3 -0
  1040. package/dist/vendor/engine/runtime/ai/providers/kimi-coding.models.js +5 -0
  1041. package/dist/vendor/engine/runtime/ai/providers/meta.d.ts +2 -0
  1042. package/dist/vendor/engine/runtime/ai/providers/meta.js +23 -0
  1043. package/dist/vendor/engine/runtime/ai/providers/meta.models.d.ts +3 -0
  1044. package/dist/vendor/engine/runtime/ai/providers/meta.models.js +5 -0
  1045. package/dist/vendor/engine/runtime/ai/providers/minimax-cn.d.ts +2 -0
  1046. package/dist/vendor/engine/runtime/ai/providers/minimax-cn.js +14 -0
  1047. package/dist/vendor/engine/runtime/ai/providers/minimax-cn.models.d.ts +3 -0
  1048. package/dist/vendor/engine/runtime/ai/providers/minimax-cn.models.js +5 -0
  1049. package/dist/vendor/engine/runtime/ai/providers/minimax.d.ts +2 -0
  1050. package/dist/vendor/engine/runtime/ai/providers/minimax.js +14 -0
  1051. package/dist/vendor/engine/runtime/ai/providers/minimax.models.d.ts +3 -0
  1052. package/dist/vendor/engine/runtime/ai/providers/minimax.models.js +5 -0
  1053. package/dist/vendor/engine/runtime/ai/providers/mistral.d.ts +2 -0
  1054. package/dist/vendor/engine/runtime/ai/providers/mistral.js +14 -0
  1055. package/dist/vendor/engine/runtime/ai/providers/mistral.models.d.ts +3 -0
  1056. package/dist/vendor/engine/runtime/ai/providers/mistral.models.js +5 -0
  1057. package/dist/vendor/engine/runtime/ai/providers/moonshotai-cn.d.ts +2 -0
  1058. package/dist/vendor/engine/runtime/ai/providers/moonshotai-cn.js +14 -0
  1059. package/dist/vendor/engine/runtime/ai/providers/moonshotai-cn.models.d.ts +3 -0
  1060. package/dist/vendor/engine/runtime/ai/providers/moonshotai-cn.models.js +5 -0
  1061. package/dist/vendor/engine/runtime/ai/providers/moonshotai.d.ts +2 -0
  1062. package/dist/vendor/engine/runtime/ai/providers/moonshotai.js +14 -0
  1063. package/dist/vendor/engine/runtime/ai/providers/moonshotai.models.d.ts +3 -0
  1064. package/dist/vendor/engine/runtime/ai/providers/moonshotai.models.js +5 -0
  1065. package/dist/vendor/engine/runtime/ai/providers/nvidia.d.ts +2 -0
  1066. package/dist/vendor/engine/runtime/ai/providers/nvidia.js +14 -0
  1067. package/dist/vendor/engine/runtime/ai/providers/nvidia.models.d.ts +3 -0
  1068. package/dist/vendor/engine/runtime/ai/providers/nvidia.models.js +5 -0
  1069. package/dist/vendor/engine/runtime/ai/providers/openai-codex.d.ts +2 -0
  1070. package/dist/vendor/engine/runtime/ai/providers/openai-codex.js +21 -0
  1071. package/dist/vendor/engine/runtime/ai/providers/openai-codex.models.d.ts +3 -0
  1072. package/dist/vendor/engine/runtime/ai/providers/openai-codex.models.js +5 -0
  1073. package/dist/vendor/engine/runtime/ai/providers/openai.d.ts +2 -0
  1074. package/dist/vendor/engine/runtime/ai/providers/openai.js +14 -0
  1075. package/dist/vendor/engine/runtime/ai/providers/openai.models.d.ts +3 -0
  1076. package/dist/vendor/engine/runtime/ai/providers/openai.models.js +5 -0
  1077. package/dist/vendor/engine/runtime/ai/providers/opencode-go.d.ts +2 -0
  1078. package/dist/vendor/engine/runtime/ai/providers/opencode-go.js +20 -0
  1079. package/dist/vendor/engine/runtime/ai/providers/opencode-go.models.d.ts +3 -0
  1080. package/dist/vendor/engine/runtime/ai/providers/opencode-go.models.js +5 -0
  1081. package/dist/vendor/engine/runtime/ai/providers/opencode-headers.d.ts +3 -0
  1082. package/dist/vendor/engine/runtime/ai/providers/opencode-headers.js +21 -0
  1083. package/dist/vendor/engine/runtime/ai/providers/opencode.d.ts +2 -0
  1084. package/dist/vendor/engine/runtime/ai/providers/opencode.js +22 -0
  1085. package/dist/vendor/engine/runtime/ai/providers/opencode.models.d.ts +3 -0
  1086. package/dist/vendor/engine/runtime/ai/providers/opencode.models.js +5 -0
  1087. package/dist/vendor/engine/runtime/ai/providers/openrouter-images.d.ts +2 -0
  1088. package/dist/vendor/engine/runtime/ai/providers/openrouter-images.js +21 -0
  1089. package/dist/vendor/engine/runtime/ai/providers/openrouter.d.ts +2 -0
  1090. package/dist/vendor/engine/runtime/ai/providers/openrouter.js +26 -0
  1091. package/dist/vendor/engine/runtime/ai/providers/openrouter.models.d.ts +3 -0
  1092. package/dist/vendor/engine/runtime/ai/providers/openrouter.models.js +5 -0
  1093. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-cn.d.ts +2 -0
  1094. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-cn.js +14 -0
  1095. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-cn.models.d.ts +3 -0
  1096. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-cn.models.js +5 -0
  1097. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-individual.d.ts +2 -0
  1098. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-individual.js +14 -0
  1099. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-individual.models.d.ts +3 -0
  1100. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan-individual.models.js +5 -0
  1101. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan.d.ts +2 -0
  1102. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan.js +14 -0
  1103. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan.models.d.ts +3 -0
  1104. package/dist/vendor/engine/runtime/ai/providers/qwen-token-plan.models.js +5 -0
  1105. package/dist/vendor/engine/runtime/ai/providers/radius-config.d.ts +25 -0
  1106. package/dist/vendor/engine/runtime/ai/providers/radius-config.js +62 -0
  1107. package/dist/vendor/engine/runtime/ai/providers/radius.d.ts +8 -0
  1108. package/dist/vendor/engine/runtime/ai/providers/radius.js +77 -0
  1109. package/dist/vendor/engine/runtime/ai/providers/radius.models.d.ts +3 -0
  1110. package/dist/vendor/engine/runtime/ai/providers/radius.models.js +5 -0
  1111. package/dist/vendor/engine/runtime/ai/providers/together.d.ts +2 -0
  1112. package/dist/vendor/engine/runtime/ai/providers/together.js +14 -0
  1113. package/dist/vendor/engine/runtime/ai/providers/together.models.d.ts +3 -0
  1114. package/dist/vendor/engine/runtime/ai/providers/together.models.js +5 -0
  1115. package/dist/vendor/engine/runtime/ai/providers/vercel-ai-gateway.d.ts +2 -0
  1116. package/dist/vendor/engine/runtime/ai/providers/vercel-ai-gateway.js +14 -0
  1117. package/dist/vendor/engine/runtime/ai/providers/vercel-ai-gateway.models.d.ts +3 -0
  1118. package/dist/vendor/engine/runtime/ai/providers/vercel-ai-gateway.models.js +5 -0
  1119. package/dist/vendor/engine/runtime/ai/providers/xai.d.ts +2 -0
  1120. package/dist/vendor/engine/runtime/ai/providers/xai.js +23 -0
  1121. package/dist/vendor/engine/runtime/ai/providers/xai.models.d.ts +3 -0
  1122. package/dist/vendor/engine/runtime/ai/providers/xai.models.js +5 -0
  1123. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-ams.d.ts +2 -0
  1124. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-ams.js +14 -0
  1125. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-ams.models.d.ts +3 -0
  1126. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-ams.models.js +5 -0
  1127. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-cn.d.ts +2 -0
  1128. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-cn.js +14 -0
  1129. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-cn.models.d.ts +3 -0
  1130. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-cn.models.js +5 -0
  1131. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-sgp.d.ts +2 -0
  1132. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-sgp.js +14 -0
  1133. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-sgp.models.d.ts +3 -0
  1134. package/dist/vendor/engine/runtime/ai/providers/xiaomi-token-plan-sgp.models.js +5 -0
  1135. package/dist/vendor/engine/runtime/ai/providers/xiaomi.d.ts +2 -0
  1136. package/dist/vendor/engine/runtime/ai/providers/xiaomi.js +14 -0
  1137. package/dist/vendor/engine/runtime/ai/providers/xiaomi.models.d.ts +3 -0
  1138. package/dist/vendor/engine/runtime/ai/providers/xiaomi.models.js +5 -0
  1139. package/dist/vendor/engine/runtime/ai/providers/zai-coding-cn.d.ts +2 -0
  1140. package/dist/vendor/engine/runtime/ai/providers/zai-coding-cn.js +14 -0
  1141. package/dist/vendor/engine/runtime/ai/providers/zai-coding-cn.models.d.ts +3 -0
  1142. package/dist/vendor/engine/runtime/ai/providers/zai-coding-cn.models.js +5 -0
  1143. package/dist/vendor/engine/runtime/ai/providers/zai.d.ts +2 -0
  1144. package/dist/vendor/engine/runtime/ai/providers/zai.js +14 -0
  1145. package/dist/vendor/engine/runtime/ai/providers/zai.models.d.ts +3 -0
  1146. package/dist/vendor/engine/runtime/ai/providers/zai.models.js +5 -0
  1147. package/dist/vendor/engine/runtime/ai/session-resources.d.ts +3 -0
  1148. package/dist/vendor/engine/runtime/ai/session-resources.js +21 -0
  1149. package/dist/vendor/engine/runtime/ai/types.d.ts +835 -0
  1150. package/dist/vendor/engine/runtime/ai/types.js +1 -0
  1151. package/dist/vendor/engine/runtime/ai/utils/abort-signals.d.ts +5 -0
  1152. package/dist/vendor/engine/runtime/ai/utils/abort-signals.js +33 -0
  1153. package/dist/vendor/engine/runtime/ai/utils/abort.d.ts +7 -0
  1154. package/dist/vendor/engine/runtime/ai/utils/abort.js +48 -0
  1155. package/dist/vendor/engine/runtime/ai/utils/assistant-message-frame.d.ts +76 -0
  1156. package/dist/vendor/engine/runtime/ai/utils/assistant-message-frame.js +424 -0
  1157. package/dist/vendor/engine/runtime/ai/utils/diagnostics.d.ts +19 -0
  1158. package/dist/vendor/engine/runtime/ai/utils/diagnostics.js +24 -0
  1159. package/dist/vendor/engine/runtime/ai/utils/error-body.d.ts +24 -0
  1160. package/dist/vendor/engine/runtime/ai/utils/error-body.js +132 -0
  1161. package/dist/vendor/engine/runtime/ai/utils/estimate.d.ts +16 -0
  1162. package/dist/vendor/engine/runtime/ai/utils/estimate.js +94 -0
  1163. package/dist/vendor/engine/runtime/ai/utils/event-stream.d.ts +20 -0
  1164. package/dist/vendor/engine/runtime/ai/utils/event-stream.js +98 -0
  1165. package/dist/vendor/engine/runtime/ai/utils/hash.d.ts +2 -0
  1166. package/dist/vendor/engine/runtime/ai/utils/hash.js +13 -0
  1167. package/dist/vendor/engine/runtime/ai/utils/headers.d.ts +3 -0
  1168. package/dist/vendor/engine/runtime/ai/utils/headers.js +17 -0
  1169. package/dist/vendor/engine/runtime/ai/utils/json-parse.d.ts +15 -0
  1170. package/dist/vendor/engine/runtime/ai/utils/json-parse.js +112 -0
  1171. package/dist/vendor/engine/runtime/ai/utils/node-http-proxy.d.ts +3 -0
  1172. package/dist/vendor/engine/runtime/ai/utils/node-http-proxy.js +132 -0
  1173. package/dist/vendor/engine/runtime/ai/utils/overflow.d.ts +68 -0
  1174. package/dist/vendor/engine/runtime/ai/utils/overflow.js +177 -0
  1175. package/dist/vendor/engine/runtime/ai/utils/pi-user-agent.d.ts +1 -0
  1176. package/dist/vendor/engine/runtime/ai/utils/pi-user-agent.js +11 -0
  1177. package/dist/vendor/engine/runtime/ai/utils/provider-env.d.ts +6 -0
  1178. package/dist/vendor/engine/runtime/ai/utils/provider-env.js +43 -0
  1179. package/dist/vendor/engine/runtime/ai/utils/provider-retry.d.ts +15 -0
  1180. package/dist/vendor/engine/runtime/ai/utils/provider-retry.js +93 -0
  1181. package/dist/vendor/engine/runtime/ai/utils/retry.d.ts +57 -0
  1182. package/dist/vendor/engine/runtime/ai/utils/retry.js +182 -0
  1183. package/dist/vendor/engine/runtime/ai/utils/sanitize-unicode.d.ts +21 -0
  1184. package/dist/vendor/engine/runtime/ai/utils/sanitize-unicode.js +25 -0
  1185. package/dist/vendor/engine/runtime/ai/utils/text.d.ts +13 -0
  1186. package/dist/vendor/engine/runtime/ai/utils/text.js +35 -0
  1187. package/dist/vendor/engine/runtime/ai/utils/transcript.d.ts +83 -0
  1188. package/dist/vendor/engine/runtime/ai/utils/transcript.js +203 -0
  1189. package/dist/vendor/engine/runtime/ai/utils/typebox-helpers.d.ts +16 -0
  1190. package/dist/vendor/engine/runtime/ai/utils/typebox-helpers.js +20 -0
  1191. package/dist/vendor/engine/runtime/ai/utils/uuid.d.ts +2 -0
  1192. package/dist/vendor/engine/runtime/ai/utils/uuid.js +41 -0
  1193. package/dist/vendor/engine/runtime/ai/utils/validation.d.ts +17 -0
  1194. package/dist/vendor/engine/runtime/ai/utils/validation.js +308 -0
  1195. package/dist/vendor/engine/runtime/chord/api.d.ts +14 -0
  1196. package/dist/vendor/engine/runtime/chord/api.js +71 -0
  1197. package/dist/vendor/engine/runtime/chord/context/index.d.ts +23 -0
  1198. package/dist/vendor/engine/runtime/chord/context/index.js +96 -0
  1199. package/dist/vendor/engine/runtime/chord/delta/index.d.ts +118 -0
  1200. package/dist/vendor/engine/runtime/chord/delta/index.js +1903 -0
  1201. package/dist/vendor/engine/runtime/chord/facets/host.d.ts +11 -0
  1202. package/dist/vendor/engine/runtime/chord/facets/host.js +762 -0
  1203. package/dist/vendor/engine/runtime/chord/facets/loader.d.ts +2 -0
  1204. package/dist/vendor/engine/runtime/chord/facets/loader.js +4 -0
  1205. package/dist/vendor/engine/runtime/chord/index.d.ts +10 -0
  1206. package/dist/vendor/engine/runtime/chord/index.js +9 -0
  1207. package/dist/vendor/engine/runtime/chord/json.d.ts +3 -0
  1208. package/dist/vendor/engine/runtime/chord/json.js +56 -0
  1209. package/dist/vendor/engine/runtime/chord/services/consumer.d.ts +10 -0
  1210. package/dist/vendor/engine/runtime/chord/services/consumer.js +536 -0
  1211. package/dist/vendor/engine/runtime/chord/services/errors.d.ts +7 -0
  1212. package/dist/vendor/engine/runtime/chord/services/errors.js +21 -0
  1213. package/dist/vendor/engine/runtime/chord/services/handle.d.ts +14 -0
  1214. package/dist/vendor/engine/runtime/chord/services/handle.js +100 -0
  1215. package/dist/vendor/engine/runtime/chord/services/instances.d.ts +24 -0
  1216. package/dist/vendor/engine/runtime/chord/services/instances.js +136 -0
  1217. package/dist/vendor/engine/runtime/chord/services/loopback.d.ts +4 -0
  1218. package/dist/vendor/engine/runtime/chord/services/loopback.js +14 -0
  1219. package/dist/vendor/engine/runtime/chord/services/provider.d.ts +36 -0
  1220. package/dist/vendor/engine/runtime/chord/services/provider.js +471 -0
  1221. package/dist/vendor/engine/runtime/chord/services/state-codec.d.ts +14 -0
  1222. package/dist/vendor/engine/runtime/chord/services/state-codec.js +114 -0
  1223. package/dist/vendor/engine/runtime/chord/services/state-internals.d.ts +10 -0
  1224. package/dist/vendor/engine/runtime/chord/services/state-internals.js +9 -0
  1225. package/dist/vendor/engine/runtime/chord/services/state.d.ts +22 -0
  1226. package/dist/vendor/engine/runtime/chord/services/state.js +123 -0
  1227. package/dist/vendor/engine/runtime/chord/services/wire.d.ts +59 -0
  1228. package/dist/vendor/engine/runtime/chord/services/wire.js +172 -0
  1229. package/dist/vendor/engine/runtime/chord/types.d.ts +202 -0
  1230. package/dist/vendor/engine/runtime/chord/types.js +1 -0
  1231. package/dist/vendor/engine/runtime/coding-agent/cli/args.d.ts +60 -0
  1232. package/dist/vendor/engine/runtime/coding-agent/cli/args.js +439 -0
  1233. package/dist/vendor/engine/runtime/coding-agent/cli/auth-check.d.ts +18 -0
  1234. package/dist/vendor/engine/runtime/coding-agent/cli/auth-check.js +49 -0
  1235. package/dist/vendor/engine/runtime/coding-agent/cli/auth-command.d.ts +23 -0
  1236. package/dist/vendor/engine/runtime/coding-agent/cli/auth-command.js +102 -0
  1237. package/dist/vendor/engine/runtime/coding-agent/cli/config-selector.d.ts +15 -0
  1238. package/dist/vendor/engine/runtime/coding-agent/cli/config-selector.js +31 -0
  1239. package/dist/vendor/engine/runtime/coding-agent/cli/credential-print.d.ts +12 -0
  1240. package/dist/vendor/engine/runtime/coding-agent/cli/credential-print.js +75 -0
  1241. package/dist/vendor/engine/runtime/coding-agent/cli/file-processor.d.ts +14 -0
  1242. package/dist/vendor/engine/runtime/coding-agent/cli/file-processor.js +70 -0
  1243. package/dist/vendor/engine/runtime/coding-agent/cli/initial-message.d.ts +17 -0
  1244. package/dist/vendor/engine/runtime/coding-agent/cli/initial-message.js +21 -0
  1245. package/dist/vendor/engine/runtime/coding-agent/cli/list-models.d.ts +8 -0
  1246. package/dist/vendor/engine/runtime/coding-agent/cli/list-models.js +97 -0
  1247. package/dist/vendor/engine/runtime/coding-agent/cli/project-trust.d.ts +9 -0
  1248. package/dist/vendor/engine/runtime/coding-agent/cli/project-trust.js +47 -0
  1249. package/dist/vendor/engine/runtime/coding-agent/cli/session-picker.d.ts +9 -0
  1250. package/dist/vendor/engine/runtime/coding-agent/cli/session-picker.js +35 -0
  1251. package/dist/vendor/engine/runtime/coding-agent/cli/startup-ui.d.ts +19 -0
  1252. package/dist/vendor/engine/runtime/coding-agent/cli/startup-ui.js +184 -0
  1253. package/dist/vendor/engine/runtime/coding-agent/config.d.ts +97 -0
  1254. package/dist/vendor/engine/runtime/coding-agent/config.js +463 -0
  1255. package/dist/vendor/engine/runtime/coding-agent/core/agent-session-runtime.d.ts +118 -0
  1256. package/dist/vendor/engine/runtime/coding-agent/core/agent-session-runtime.js +316 -0
  1257. package/dist/vendor/engine/runtime/coding-agent/core/agent-session-services.d.ts +85 -0
  1258. package/dist/vendor/engine/runtime/coding-agent/core/agent-session-services.js +133 -0
  1259. package/dist/vendor/engine/runtime/coding-agent/core/agent-session.d.ts +771 -0
  1260. package/dist/vendor/engine/runtime/coding-agent/core/agent-session.js +2990 -0
  1261. package/dist/vendor/engine/runtime/coding-agent/core/auth-guidance.d.ts +4 -0
  1262. package/dist/vendor/engine/runtime/coding-agent/core/auth-guidance.js +20 -0
  1263. package/dist/vendor/engine/runtime/coding-agent/core/auth-storage.d.ts +71 -0
  1264. package/dist/vendor/engine/runtime/coding-agent/core/auth-storage.js +425 -0
  1265. package/dist/vendor/engine/runtime/coding-agent/core/bash-executor.d.ts +31 -0
  1266. package/dist/vendor/engine/runtime/coding-agent/core/bash-executor.js +110 -0
  1267. package/dist/vendor/engine/runtime/coding-agent/core/bug-report-upload.d.ts +11 -0
  1268. package/dist/vendor/engine/runtime/coding-agent/core/bug-report-upload.js +21 -0
  1269. package/dist/vendor/engine/runtime/coding-agent/core/bug-report.d.ts +175 -0
  1270. package/dist/vendor/engine/runtime/coding-agent/core/bug-report.js +291 -0
  1271. package/dist/vendor/engine/runtime/coding-agent/core/cache-stats.d.ts +48 -0
  1272. package/dist/vendor/engine/runtime/coding-agent/core/cache-stats.js +111 -0
  1273. package/dist/vendor/engine/runtime/coding-agent/core/cache-warmer.d.ts +102 -0
  1274. package/dist/vendor/engine/runtime/coding-agent/core/cache-warmer.js +355 -0
  1275. package/dist/vendor/engine/runtime/coding-agent/core/compaction/branch-summarization.d.ts +97 -0
  1276. package/dist/vendor/engine/runtime/coding-agent/core/compaction/branch-summarization.js +250 -0
  1277. package/dist/vendor/engine/runtime/coding-agent/core/compaction/compaction.d.ts +142 -0
  1278. package/dist/vendor/engine/runtime/coding-agent/core/compaction/compaction.js +666 -0
  1279. package/dist/vendor/engine/runtime/coding-agent/core/compaction/index.d.ts +6 -0
  1280. package/dist/vendor/engine/runtime/coding-agent/core/compaction/index.js +6 -0
  1281. package/dist/vendor/engine/runtime/coding-agent/core/compaction/utils.d.ts +37 -0
  1282. package/dist/vendor/engine/runtime/coding-agent/core/compaction/utils.js +141 -0
  1283. package/dist/vendor/engine/runtime/coding-agent/core/crash-log.d.ts +26 -0
  1284. package/dist/vendor/engine/runtime/coding-agent/core/crash-log.js +138 -0
  1285. package/dist/vendor/engine/runtime/coding-agent/core/defaults.d.ts +3 -0
  1286. package/dist/vendor/engine/runtime/coding-agent/core/defaults.js +10 -0
  1287. package/dist/vendor/engine/runtime/coding-agent/core/diagnostics.d.ts +14 -0
  1288. package/dist/vendor/engine/runtime/coding-agent/core/diagnostics.js +1 -0
  1289. package/dist/vendor/engine/runtime/coding-agent/core/event-bus.d.ts +8 -0
  1290. package/dist/vendor/engine/runtime/coding-agent/core/event-bus.js +24 -0
  1291. package/dist/vendor/engine/runtime/coding-agent/core/exec.d.ts +28 -0
  1292. package/dist/vendor/engine/runtime/coding-agent/core/exec.js +74 -0
  1293. package/dist/vendor/engine/runtime/coding-agent/core/experimental.d.ts +1 -0
  1294. package/dist/vendor/engine/runtime/coding-agent/core/experimental.js +3 -0
  1295. package/dist/vendor/engine/runtime/coding-agent/core/export-html/ansi-to-html.d.ts +21 -0
  1296. package/dist/vendor/engine/runtime/coding-agent/core/export-html/ansi-to-html.js +248 -0
  1297. package/dist/vendor/engine/runtime/coding-agent/core/export-html/index.d.ts +36 -0
  1298. package/dist/vendor/engine/runtime/coding-agent/core/export-html/index.js +225 -0
  1299. package/dist/vendor/engine/runtime/coding-agent/core/export-html/template.css +1066 -0
  1300. package/dist/vendor/engine/runtime/coding-agent/core/export-html/template.html +55 -0
  1301. package/dist/vendor/engine/runtime/coding-agent/core/export-html/template.js +1864 -0
  1302. package/dist/vendor/engine/runtime/coding-agent/core/export-html/tool-renderer.d.ts +33 -0
  1303. package/dist/vendor/engine/runtime/coding-agent/core/export-html/tool-renderer.js +107 -0
  1304. package/dist/vendor/engine/runtime/coding-agent/core/export-html/vendor/highlight.min.js +1213 -0
  1305. package/dist/vendor/engine/runtime/coding-agent/core/export-html/vendor/marked.min.js +78 -0
  1306. package/dist/vendor/engine/runtime/coding-agent/core/extensions/index.d.ts +11 -0
  1307. package/dist/vendor/engine/runtime/coding-agent/core/extensions/index.js +8 -0
  1308. package/dist/vendor/engine/runtime/coding-agent/core/extensions/jiti-loader.d.ts +1 -0
  1309. package/dist/vendor/engine/runtime/coding-agent/core/extensions/jiti-loader.js +3 -0
  1310. package/dist/vendor/engine/runtime/coding-agent/core/extensions/jiti-static-loader.d.ts +1 -0
  1311. package/dist/vendor/engine/runtime/coding-agent/core/extensions/jiti-static-loader.js +3 -0
  1312. package/dist/vendor/engine/runtime/coding-agent/core/extensions/loader.d.ts +22 -0
  1313. package/dist/vendor/engine/runtime/coding-agent/core/extensions/loader.js +633 -0
  1314. package/dist/vendor/engine/runtime/coding-agent/core/extensions/runner.d.ts +180 -0
  1315. package/dist/vendor/engine/runtime/coding-agent/core/extensions/runner.js +1028 -0
  1316. package/dist/vendor/engine/runtime/coding-agent/core/extensions/types.d.ts +1362 -0
  1317. package/dist/vendor/engine/runtime/coding-agent/core/extensions/types.js +47 -0
  1318. package/dist/vendor/engine/runtime/coding-agent/core/extensions/virtual-modules.d.ts +2 -0
  1319. package/dist/vendor/engine/runtime/coding-agent/core/extensions/virtual-modules.js +37 -0
  1320. package/dist/vendor/engine/runtime/coding-agent/core/extensions/wrapper.d.ts +19 -0
  1321. package/dist/vendor/engine/runtime/coding-agent/core/extensions/wrapper.js +21 -0
  1322. package/dist/vendor/engine/runtime/coding-agent/core/footer-data-provider.d.ts +63 -0
  1323. package/dist/vendor/engine/runtime/coding-agent/core/footer-data-provider.js +337 -0
  1324. package/dist/vendor/engine/runtime/coding-agent/core/http-dispatcher.d.ts +21 -0
  1325. package/dist/vendor/engine/runtime/coding-agent/core/http-dispatcher.js +97 -0
  1326. package/dist/vendor/engine/runtime/coding-agent/core/keybindings.d.ts +427 -0
  1327. package/dist/vendor/engine/runtime/coding-agent/core/keybindings.js +320 -0
  1328. package/dist/vendor/engine/runtime/coding-agent/core/messages.d.ts +76 -0
  1329. package/dist/vendor/engine/runtime/coding-agent/core/messages.js +123 -0
  1330. package/dist/vendor/engine/runtime/coding-agent/core/model-config.d.ts +723 -0
  1331. package/dist/vendor/engine/runtime/coding-agent/core/model-config.js +281 -0
  1332. package/dist/vendor/engine/runtime/coding-agent/core/model-registry.d.ts +48 -0
  1333. package/dist/vendor/engine/runtime/coding-agent/core/model-registry.js +114 -0
  1334. package/dist/vendor/engine/runtime/coding-agent/core/model-resolver.d.ts +123 -0
  1335. package/dist/vendor/engine/runtime/coding-agent/core/model-resolver.js +589 -0
  1336. package/dist/vendor/engine/runtime/coding-agent/core/model-runtime.d.ts +100 -0
  1337. package/dist/vendor/engine/runtime/coding-agent/core/model-runtime.js +603 -0
  1338. package/dist/vendor/engine/runtime/coding-agent/core/models-store.d.ts +21 -0
  1339. package/dist/vendor/engine/runtime/coding-agent/core/models-store.js +114 -0
  1340. package/dist/vendor/engine/runtime/coding-agent/core/output-guard.d.ts +6 -0
  1341. package/dist/vendor/engine/runtime/coding-agent/core/output-guard.js +88 -0
  1342. package/dist/vendor/engine/runtime/coding-agent/core/package-manager.d.ts +212 -0
  1343. package/dist/vendor/engine/runtime/coding-agent/core/package-manager.js +2176 -0
  1344. package/dist/vendor/engine/runtime/coding-agent/core/pi-manifest.d.ts +7 -0
  1345. package/dist/vendor/engine/runtime/coding-agent/core/pi-manifest.js +25 -0
  1346. package/dist/vendor/engine/runtime/coding-agent/core/project-trust.d.ts +14 -0
  1347. package/dist/vendor/engine/runtime/coding-agent/core/project-trust.js +58 -0
  1348. package/dist/vendor/engine/runtime/coding-agent/core/prompt-templates.d.ts +53 -0
  1349. package/dist/vendor/engine/runtime/coding-agent/core/prompt-templates.js +235 -0
  1350. package/dist/vendor/engine/runtime/coding-agent/core/provider-attribution.d.ts +3 -0
  1351. package/dist/vendor/engine/runtime/coding-agent/core/provider-attribution.js +71 -0
  1352. package/dist/vendor/engine/runtime/coding-agent/core/provider-composer.d.ts +59 -0
  1353. package/dist/vendor/engine/runtime/coding-agent/core/provider-composer.js +422 -0
  1354. package/dist/vendor/engine/runtime/coding-agent/core/radius.d.ts +4 -0
  1355. package/dist/vendor/engine/runtime/coding-agent/core/radius.js +7 -0
  1356. package/dist/vendor/engine/runtime/coding-agent/core/remote-catalog-provider.d.ts +4 -0
  1357. package/dist/vendor/engine/runtime/coding-agent/core/remote-catalog-provider.js +121 -0
  1358. package/dist/vendor/engine/runtime/coding-agent/core/resolve-config-value.d.ts +29 -0
  1359. package/dist/vendor/engine/runtime/coding-agent/core/resolve-config-value.js +246 -0
  1360. package/dist/vendor/engine/runtime/coding-agent/core/resource-loader.d.ts +220 -0
  1361. package/dist/vendor/engine/runtime/coding-agent/core/resource-loader.js +874 -0
  1362. package/dist/vendor/engine/runtime/coding-agent/core/runtime-credentials.d.ts +14 -0
  1363. package/dist/vendor/engine/runtime/coding-agent/core/runtime-credentials.js +38 -0
  1364. package/dist/vendor/engine/runtime/coding-agent/core/sdk.d.ts +107 -0
  1365. package/dist/vendor/engine/runtime/coding-agent/core/sdk.js +296 -0
  1366. package/dist/vendor/engine/runtime/coding-agent/core/session-cwd.d.ts +18 -0
  1367. package/dist/vendor/engine/runtime/coding-agent/core/session-cwd.js +37 -0
  1368. package/dist/vendor/engine/runtime/coding-agent/core/session-export.d.ts +7 -0
  1369. package/dist/vendor/engine/runtime/coding-agent/core/session-export.js +32 -0
  1370. package/dist/vendor/engine/runtime/coding-agent/core/session-manager.d.ts +379 -0
  1371. package/dist/vendor/engine/runtime/coding-agent/core/session-manager.js +1432 -0
  1372. package/dist/vendor/engine/runtime/coding-agent/core/settings-diagnostics.d.ts +8 -0
  1373. package/dist/vendor/engine/runtime/coding-agent/core/settings-diagnostics.js +20 -0
  1374. package/dist/vendor/engine/runtime/coding-agent/core/settings-manager.d.ts +346 -0
  1375. package/dist/vendor/engine/runtime/coding-agent/core/settings-manager.js +1032 -0
  1376. package/dist/vendor/engine/runtime/coding-agent/core/skills.d.ts +59 -0
  1377. package/dist/vendor/engine/runtime/coding-agent/core/skills.js +406 -0
  1378. package/dist/vendor/engine/runtime/coding-agent/core/slash-commands.d.ts +14 -0
  1379. package/dist/vendor/engine/runtime/coding-agent/core/slash-commands.js +27 -0
  1380. package/dist/vendor/engine/runtime/coding-agent/core/source-info.d.ts +17 -0
  1381. package/dist/vendor/engine/runtime/coding-agent/core/source-info.js +18 -0
  1382. package/dist/vendor/engine/runtime/coding-agent/core/system-prompt.d.ts +70 -0
  1383. package/dist/vendor/engine/runtime/coding-agent/core/system-prompt.js +146 -0
  1384. package/dist/vendor/engine/runtime/coding-agent/core/telemetry.d.ts +2 -0
  1385. package/dist/vendor/engine/runtime/coding-agent/core/telemetry.js +8 -0
  1386. package/dist/vendor/engine/runtime/coding-agent/core/timings.d.ts +9 -0
  1387. package/dist/vendor/engine/runtime/coding-agent/core/timings.js +40 -0
  1388. package/dist/vendor/engine/runtime/coding-agent/core/tools/bash.d.ts +89 -0
  1389. package/dist/vendor/engine/runtime/coding-agent/core/tools/bash.js +303 -0
  1390. package/dist/vendor/engine/runtime/coding-agent/core/tools/edit-diff.d.ts +100 -0
  1391. package/dist/vendor/engine/runtime/coding-agent/core/tools/edit-diff.js +420 -0
  1392. package/dist/vendor/engine/runtime/coding-agent/core/tools/edit.d.ts +43 -0
  1393. package/dist/vendor/engine/runtime/coding-agent/core/tools/edit.js +146 -0
  1394. package/dist/vendor/engine/runtime/coding-agent/core/tools/file-mutation-queue.d.ts +5 -0
  1395. package/dist/vendor/engine/runtime/coding-agent/core/tools/file-mutation-queue.js +51 -0
  1396. package/dist/vendor/engine/runtime/coding-agent/core/tools/find.d.ts +41 -0
  1397. package/dist/vendor/engine/runtime/coding-agent/core/tools/find.js +250 -0
  1398. package/dist/vendor/engine/runtime/coding-agent/core/tools/grep.d.ts +40 -0
  1399. package/dist/vendor/engine/runtime/coding-agent/core/tools/grep.js +251 -0
  1400. package/dist/vendor/engine/runtime/coding-agent/core/tools/index.d.ts +42 -0
  1401. package/dist/vendor/engine/runtime/coding-agent/core/tools/index.js +128 -0
  1402. package/dist/vendor/engine/runtime/coding-agent/core/tools/ls.d.ts +40 -0
  1403. package/dist/vendor/engine/runtime/coding-agent/core/tools/ls.js +125 -0
  1404. package/dist/vendor/engine/runtime/coding-agent/core/tools/output-accumulator.d.ts +54 -0
  1405. package/dist/vendor/engine/runtime/coding-agent/core/tools/output-accumulator.js +189 -0
  1406. package/dist/vendor/engine/runtime/coding-agent/core/tools/path-utils.d.ts +9 -0
  1407. package/dist/vendor/engine/runtime/coding-agent/core/tools/path-utils.js +98 -0
  1408. package/dist/vendor/engine/runtime/coding-agent/core/tools/powershell.d.ts +15 -0
  1409. package/dist/vendor/engine/runtime/coding-agent/core/tools/powershell.js +38 -0
  1410. package/dist/vendor/engine/runtime/coding-agent/core/tools/read.d.ts +41 -0
  1411. package/dist/vendor/engine/runtime/coding-agent/core/tools/read.js +168 -0
  1412. package/dist/vendor/engine/runtime/coding-agent/core/tools/render-utils.d.ts +23 -0
  1413. package/dist/vendor/engine/runtime/coding-agent/core/tools/render-utils.js +64 -0
  1414. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/bash.d.ts +11 -0
  1415. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/bash.js +137 -0
  1416. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/edit.d.ts +22 -0
  1417. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/edit.js +166 -0
  1418. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/find.d.ts +9 -0
  1419. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/find.js +63 -0
  1420. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/grep.d.ts +9 -0
  1421. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/grep.js +68 -0
  1422. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/index.d.ts +27 -0
  1423. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/index.js +46 -0
  1424. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/ls.d.ts +9 -0
  1425. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/ls.js +57 -0
  1426. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/read.d.ts +10 -0
  1427. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/read.js +128 -0
  1428. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/write.d.ts +9 -0
  1429. package/dist/vendor/engine/runtime/coding-agent/core/tools/renderers/write.js +152 -0
  1430. package/dist/vendor/engine/runtime/coding-agent/core/tools/tool-definition-wrapper.d.ts +13 -0
  1431. package/dist/vendor/engine/runtime/coding-agent/core/tools/tool-definition-wrapper.js +35 -0
  1432. package/dist/vendor/engine/runtime/coding-agent/core/tools/truncate.d.ts +69 -0
  1433. package/dist/vendor/engine/runtime/coding-agent/core/tools/truncate.js +214 -0
  1434. package/dist/vendor/engine/runtime/coding-agent/core/tools/write.d.ts +29 -0
  1435. package/dist/vendor/engine/runtime/coding-agent/core/tools/write.js +60 -0
  1436. package/dist/vendor/engine/runtime/coding-agent/core/trust-manager.d.ts +35 -0
  1437. package/dist/vendor/engine/runtime/coding-agent/core/trust-manager.js +202 -0
  1438. package/dist/vendor/engine/runtime/coding-agent/core/usage-totals.d.ts +18 -0
  1439. package/dist/vendor/engine/runtime/coding-agent/core/usage-totals.js +55 -0
  1440. package/dist/vendor/engine/runtime/coding-agent/extensions/index.d.ts +2 -0
  1441. package/dist/vendor/engine/runtime/coding-agent/extensions/index.js +2 -0
  1442. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/client.d.ts +68 -0
  1443. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/client.js +312 -0
  1444. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/huggingface.d.ts +22 -0
  1445. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/huggingface.js +140 -0
  1446. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/index.d.ts +2 -0
  1447. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/index.js +218 -0
  1448. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/provider.d.ts +11 -0
  1449. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/provider.js +160 -0
  1450. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/ui.d.ts +41 -0
  1451. package/dist/vendor/engine/runtime/coding-agent/extensions/llama/ui.js +415 -0
  1452. package/dist/vendor/engine/runtime/coding-agent/index.d.ts +36 -0
  1453. package/dist/vendor/engine/runtime/coding-agent/index.js +47 -0
  1454. package/dist/vendor/engine/runtime/coding-agent/main.d.ts +15 -0
  1455. package/dist/vendor/engine/runtime/coding-agent/main.js +808 -0
  1456. package/dist/vendor/engine/runtime/coding-agent/migrations.d.ts +32 -0
  1457. package/dist/vendor/engine/runtime/coding-agent/migrations.js +281 -0
  1458. package/dist/vendor/engine/runtime/coding-agent/modes/index.d.ts +9 -0
  1459. package/dist/vendor/engine/runtime/coding-agent/modes/index.js +7 -0
  1460. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/bug-report.d.ts +15 -0
  1461. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/bug-report.js +209 -0
  1462. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/chat-viewport.d.ts +19 -0
  1463. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/chat-viewport.js +27 -0
  1464. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/armin.d.ts +33 -0
  1465. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/armin.js +332 -0
  1466. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/assistant-message.d.ts +25 -0
  1467. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/assistant-message.js +157 -0
  1468. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/bash-execution.d.ts +33 -0
  1469. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/bash-execution.js +174 -0
  1470. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/bordered-loader.d.ts +15 -0
  1471. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/bordered-loader.js +53 -0
  1472. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/branch-summary-message.d.ts +15 -0
  1473. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/branch-summary-message.js +50 -0
  1474. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/compaction-summary-message.d.ts +15 -0
  1475. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/compaction-summary-message.js +51 -0
  1476. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/config-selector.d.ts +101 -0
  1477. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/config-selector.js +760 -0
  1478. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/countdown-timer.d.ts +13 -0
  1479. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/countdown-timer.js +32 -0
  1480. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/custom-editor.d.ts +29 -0
  1481. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/custom-editor.js +114 -0
  1482. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/custom-entry.d.ts +18 -0
  1483. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/custom-entry.js +51 -0
  1484. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/custom-message.d.ts +21 -0
  1485. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/custom-message.js +86 -0
  1486. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/daxnuts.d.ts +22 -0
  1487. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/daxnuts.js +139 -0
  1488. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/diff.d.ts +11 -0
  1489. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/diff.js +132 -0
  1490. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/dynamic-border.d.ts +14 -0
  1491. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/dynamic-border.js +20 -0
  1492. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/earendil-announcement.d.ts +4 -0
  1493. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/earendil-announcement.js +39 -0
  1494. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/extension-editor.d.ts +23 -0
  1495. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/extension-editor.js +102 -0
  1496. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/extension-input.d.ts +24 -0
  1497. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/extension-input.js +66 -0
  1498. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/extension-selector.d.ts +26 -0
  1499. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/extension-selector.js +86 -0
  1500. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/first-time-setup.d.ts +24 -0
  1501. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/first-time-setup.js +102 -0
  1502. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/footer.d.ts +31 -0
  1503. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/footer.js +224 -0
  1504. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/index.d.ts +33 -0
  1505. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/index.js +34 -0
  1506. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/keybinding-hints.d.ts +12 -0
  1507. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/keybinding-hints.js +35 -0
  1508. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/login-dialog.d.ts +51 -0
  1509. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/login-dialog.js +187 -0
  1510. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/markdown-transform.d.ts +2 -0
  1511. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/markdown-transform.js +18 -0
  1512. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/mermaid.d.ts +10 -0
  1513. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/mermaid.js +74 -0
  1514. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/model-selector.d.ts +59 -0
  1515. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/model-selector.js +360 -0
  1516. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/oauth-selector.d.ts +32 -0
  1517. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/oauth-selector.js +162 -0
  1518. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/scoped-models-selector.d.ts +45 -0
  1519. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/scoped-models-selector.js +325 -0
  1520. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/session-selector-search.d.ts +22 -0
  1521. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/session-selector-search.js +154 -0
  1522. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/session-selector.d.ts +94 -0
  1523. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/session-selector.js +892 -0
  1524. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/settings-selector.d.ts +93 -0
  1525. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/settings-selector.js +719 -0
  1526. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/settings-submenu.d.ts +71 -0
  1527. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/settings-submenu.js +164 -0
  1528. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/show-images-selector.d.ts +9 -0
  1529. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/show-images-selector.js +38 -0
  1530. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/skill-invocation-message.d.ts +16 -0
  1531. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/skill-invocation-message.js +53 -0
  1532. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/status-indicator.d.ts +29 -0
  1533. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/status-indicator.js +66 -0
  1534. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/theme-selector.d.ts +10 -0
  1535. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/theme-selector.js +49 -0
  1536. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/thinking-selector.d.ts +22 -0
  1537. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/thinking-selector.js +108 -0
  1538. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/tool-execution.d.ts +79 -0
  1539. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/tool-execution.js +336 -0
  1540. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/tree-selector.d.ts +93 -0
  1541. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/tree-selector.js +1246 -0
  1542. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/trust-selector.d.ts +22 -0
  1543. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/trust-selector.js +90 -0
  1544. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/user-message-selector.d.ts +29 -0
  1545. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/user-message-selector.js +113 -0
  1546. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/user-message.d.ts +15 -0
  1547. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/user-message.js +48 -0
  1548. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/visual-truncate.d.ts +23 -0
  1549. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/components/visual-truncate.js +32 -0
  1550. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/external-editor.d.ts +11 -0
  1551. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/external-editor.js +37 -0
  1552. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/interactive-mode.d.ts +467 -0
  1553. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/interactive-mode.js +5720 -0
  1554. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/model-catalog-refresh.d.ts +6 -0
  1555. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/model-catalog-refresh.js +33 -0
  1556. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/model-search.d.ts +11 -0
  1557. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/model-search.js +14 -0
  1558. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/session-share.d.ts +17 -0
  1559. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/session-share.js +187 -0
  1560. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/dark.json +91 -0
  1561. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/light.json +90 -0
  1562. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme-controller.d.ts +40 -0
  1563. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme-controller.js +129 -0
  1564. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme-json.d.ts +83 -0
  1565. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme-json.js +129 -0
  1566. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme-schema.json +356 -0
  1567. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme.d.ts +130 -0
  1568. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/theme/theme.js +990 -0
  1569. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/tui-renderer.d.ts +20 -0
  1570. package/dist/vendor/engine/runtime/coding-agent/modes/interactive/tui-renderer.js +65 -0
  1571. package/dist/vendor/engine/runtime/coding-agent/modes/json-event.d.ts +33 -0
  1572. package/dist/vendor/engine/runtime/coding-agent/modes/json-event.js +28 -0
  1573. package/dist/vendor/engine/runtime/coding-agent/modes/print-mode.d.ts +27 -0
  1574. package/dist/vendor/engine/runtime/coding-agent/modes/print-mode.js +141 -0
  1575. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/jsonl.d.ts +16 -0
  1576. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/jsonl.js +48 -0
  1577. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/rpc-client.d.ts +253 -0
  1578. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/rpc-client.js +494 -0
  1579. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/rpc-mode.d.ts +19 -0
  1580. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/rpc-mode.js +656 -0
  1581. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/rpc-types.d.ts +468 -0
  1582. package/dist/vendor/engine/runtime/coding-agent/modes/rpc/rpc-types.js +7 -0
  1583. package/dist/vendor/engine/runtime/coding-agent/package-manager-cli.d.ts +8 -0
  1584. package/dist/vendor/engine/runtime/coding-agent/package-manager-cli.js +960 -0
  1585. package/dist/vendor/engine/runtime/coding-agent/utils/abort.d.ts +4 -0
  1586. package/dist/vendor/engine/runtime/coding-agent/utils/abort.js +47 -0
  1587. package/dist/vendor/engine/runtime/coding-agent/utils/ansi.d.ts +1 -0
  1588. package/dist/vendor/engine/runtime/coding-agent/utils/ansi.js +51 -0
  1589. package/dist/vendor/engine/runtime/coding-agent/utils/changelog.d.ts +21 -0
  1590. package/dist/vendor/engine/runtime/coding-agent/utils/changelog.js +164 -0
  1591. package/dist/vendor/engine/runtime/coding-agent/utils/child-process.d.ts +17 -0
  1592. package/dist/vendor/engine/runtime/coding-agent/utils/child-process.js +105 -0
  1593. package/dist/vendor/engine/runtime/coding-agent/utils/clipboard-command.d.ts +6 -0
  1594. package/dist/vendor/engine/runtime/coding-agent/utils/clipboard-command.js +44 -0
  1595. package/dist/vendor/engine/runtime/coding-agent/utils/clipboard-image.d.ts +10 -0
  1596. package/dist/vendor/engine/runtime/coding-agent/utils/clipboard-image.js +216 -0
  1597. package/dist/vendor/engine/runtime/coding-agent/utils/clipboard.d.ts +3 -0
  1598. package/dist/vendor/engine/runtime/coding-agent/utils/clipboard.js +150 -0
  1599. package/dist/vendor/engine/runtime/coding-agent/utils/exif-orientation.d.ts +4 -0
  1600. package/dist/vendor/engine/runtime/coding-agent/utils/exif-orientation.js +156 -0
  1601. package/dist/vendor/engine/runtime/coding-agent/utils/frontmatter.d.ts +7 -0
  1602. package/dist/vendor/engine/runtime/coding-agent/utils/frontmatter.js +26 -0
  1603. package/dist/vendor/engine/runtime/coding-agent/utils/fs-watch.d.ts +4 -0
  1604. package/dist/vendor/engine/runtime/coding-agent/utils/fs-watch.js +24 -0
  1605. package/dist/vendor/engine/runtime/coding-agent/utils/git.d.ts +25 -0
  1606. package/dist/vendor/engine/runtime/coding-agent/utils/git.js +194 -0
  1607. package/dist/vendor/engine/runtime/coding-agent/utils/html.d.ts +6 -0
  1608. package/dist/vendor/engine/runtime/coding-agent/utils/html.js +39 -0
  1609. package/dist/vendor/engine/runtime/coding-agent/utils/image-convert.d.ts +9 -0
  1610. package/dist/vendor/engine/runtime/coding-agent/utils/image-convert.js +44 -0
  1611. package/dist/vendor/engine/runtime/coding-agent/utils/image-process.d.ts +17 -0
  1612. package/dist/vendor/engine/runtime/coding-agent/utils/image-process.js +82 -0
  1613. package/dist/vendor/engine/runtime/coding-agent/utils/image-resize-core.d.ts +29 -0
  1614. package/dist/vendor/engine/runtime/coding-agent/utils/image-resize-core.js +123 -0
  1615. package/dist/vendor/engine/runtime/coding-agent/utils/image-resize-worker.d.ts +1 -0
  1616. package/dist/vendor/engine/runtime/coding-agent/utils/image-resize-worker.js +30 -0
  1617. package/dist/vendor/engine/runtime/coding-agent/utils/image-resize.d.ts +15 -0
  1618. package/dist/vendor/engine/runtime/coding-agent/utils/image-resize.js +96 -0
  1619. package/dist/vendor/engine/runtime/coding-agent/utils/json.d.ts +2 -0
  1620. package/dist/vendor/engine/runtime/coding-agent/utils/json.js +6 -0
  1621. package/dist/vendor/engine/runtime/coding-agent/utils/management-http.d.ts +24 -0
  1622. package/dist/vendor/engine/runtime/coding-agent/utils/management-http.js +53 -0
  1623. package/dist/vendor/engine/runtime/coding-agent/utils/mime.d.ts +2 -0
  1624. package/dist/vendor/engine/runtime/coding-agent/utils/mime.js +109 -0
  1625. package/dist/vendor/engine/runtime/coding-agent/utils/open-browser.d.ts +8 -0
  1626. package/dist/vendor/engine/runtime/coding-agent/utils/open-browser.js +21 -0
  1627. package/dist/vendor/engine/runtime/coding-agent/utils/paths.d.ts +33 -0
  1628. package/dist/vendor/engine/runtime/coding-agent/utils/paths.js +113 -0
  1629. package/dist/vendor/engine/runtime/coding-agent/utils/photon.d.ts +20 -0
  1630. package/dist/vendor/engine/runtime/coding-agent/utils/photon.js +120 -0
  1631. package/dist/vendor/engine/runtime/coding-agent/utils/pi-user-agent.d.ts +1 -0
  1632. package/dist/vendor/engine/runtime/coding-agent/utils/pi-user-agent.js +4 -0
  1633. package/dist/vendor/engine/runtime/coding-agent/utils/shell.d.ts +33 -0
  1634. package/dist/vendor/engine/runtime/coding-agent/utils/shell.js +215 -0
  1635. package/dist/vendor/engine/runtime/coding-agent/utils/sleep.d.ts +4 -0
  1636. package/dist/vendor/engine/runtime/coding-agent/utils/sleep.js +16 -0
  1637. package/dist/vendor/engine/runtime/coding-agent/utils/syntax-highlight.d.ts +12 -0
  1638. package/dist/vendor/engine/runtime/coding-agent/utils/syntax-highlight.js +176 -0
  1639. package/dist/vendor/engine/runtime/coding-agent/utils/text.d.ts +7 -0
  1640. package/dist/vendor/engine/runtime/coding-agent/utils/text.js +8 -0
  1641. package/dist/vendor/engine/runtime/coding-agent/utils/tool-result-images.d.ts +20 -0
  1642. package/dist/vendor/engine/runtime/coding-agent/utils/tool-result-images.js +47 -0
  1643. package/dist/vendor/engine/runtime/coding-agent/utils/tools-manager.d.ts +12 -0
  1644. package/dist/vendor/engine/runtime/coding-agent/utils/tools-manager.js +308 -0
  1645. package/dist/vendor/engine/runtime/coding-agent/utils/version-check.d.ts +18 -0
  1646. package/dist/vendor/engine/runtime/coding-agent/utils/version-check.js +78 -0
  1647. package/dist/vendor/engine/runtime/coding-agent/utils/windows-self-update.d.ts +2 -0
  1648. package/dist/vendor/engine/runtime/coding-agent/utils/windows-self-update.js +76 -0
  1649. package/dist/vendor/engine/runtime/coding-agent/utils/wsl.d.ts +2 -0
  1650. package/dist/vendor/engine/runtime/coding-agent/utils/wsl.js +14 -0
  1651. package/dist/vendor/engine/runtime/coding-agent/utils/zip.d.ts +6 -0
  1652. package/dist/vendor/engine/runtime/coding-agent/utils/zip.js +59 -0
  1653. package/dist/vendor/engine/runtime/package.json +9 -0
  1654. package/dist/vendor/engine/runtime/telemetry/index.d.ts +193 -0
  1655. package/dist/vendor/engine/runtime/telemetry/index.js +17 -0
  1656. package/dist/vendor/engine/runtime/telemetry/memory.d.ts +25 -0
  1657. package/dist/vendor/engine/runtime/telemetry/memory.js +153 -0
  1658. package/dist/vendor/engine/runtime/telemetry/noop.d.ts +3 -0
  1659. package/dist/vendor/engine/runtime/telemetry/noop.js +17 -0
  1660. package/dist/vendor/engine/runtime/tui/alt-screen-search.d.ts +45 -0
  1661. package/dist/vendor/engine/runtime/tui/alt-screen-search.js +281 -0
  1662. package/dist/vendor/engine/runtime/tui/autocomplete.d.ts +56 -0
  1663. package/dist/vendor/engine/runtime/tui/autocomplete.js +671 -0
  1664. package/dist/vendor/engine/runtime/tui/components/alt-screen-flash.d.ts +12 -0
  1665. package/dist/vendor/engine/runtime/tui/components/alt-screen-flash.js +36 -0
  1666. package/dist/vendor/engine/runtime/tui/components/box.d.ts +23 -0
  1667. package/dist/vendor/engine/runtime/tui/components/box.js +132 -0
  1668. package/dist/vendor/engine/runtime/tui/components/cancellable-loader.d.ts +21 -0
  1669. package/dist/vendor/engine/runtime/tui/components/cancellable-loader.js +34 -0
  1670. package/dist/vendor/engine/runtime/tui/components/editor.d.ts +259 -0
  1671. package/dist/vendor/engine/runtime/tui/components/editor.js +2041 -0
  1672. package/dist/vendor/engine/runtime/tui/components/h-stack.d.ts +6 -0
  1673. package/dist/vendor/engine/runtime/tui/components/h-stack.js +42 -0
  1674. package/dist/vendor/engine/runtime/tui/components/image.d.ts +27 -0
  1675. package/dist/vendor/engine/runtime/tui/components/image.js +89 -0
  1676. package/dist/vendor/engine/runtime/tui/components/input.d.ts +47 -0
  1677. package/dist/vendor/engine/runtime/tui/components/input.js +416 -0
  1678. package/dist/vendor/engine/runtime/tui/components/loader.d.ts +32 -0
  1679. package/dist/vendor/engine/runtime/tui/components/loader.js +75 -0
  1680. package/dist/vendor/engine/runtime/tui/components/markdown.d.ts +102 -0
  1681. package/dist/vendor/engine/runtime/tui/components/markdown.js +810 -0
  1682. package/dist/vendor/engine/runtime/tui/components/mouse-region.d.ts +11 -0
  1683. package/dist/vendor/engine/runtime/tui/components/mouse-region.js +20 -0
  1684. package/dist/vendor/engine/runtime/tui/components/scroll-view.d.ts +58 -0
  1685. package/dist/vendor/engine/runtime/tui/components/scroll-view.js +194 -0
  1686. package/dist/vendor/engine/runtime/tui/components/select-list.d.ts +52 -0
  1687. package/dist/vendor/engine/runtime/tui/components/select-list.js +205 -0
  1688. package/dist/vendor/engine/runtime/tui/components/settings-list.d.ts +59 -0
  1689. package/dist/vendor/engine/runtime/tui/components/settings-list.js +251 -0
  1690. package/dist/vendor/engine/runtime/tui/components/spacer.d.ts +11 -0
  1691. package/dist/vendor/engine/runtime/tui/components/spacer.js +22 -0
  1692. package/dist/vendor/engine/runtime/tui/components/stack.d.ts +31 -0
  1693. package/dist/vendor/engine/runtime/tui/components/stack.js +110 -0
  1694. package/dist/vendor/engine/runtime/tui/components/text.d.ts +18 -0
  1695. package/dist/vendor/engine/runtime/tui/components/text.js +89 -0
  1696. package/dist/vendor/engine/runtime/tui/components/truncated-text.d.ts +12 -0
  1697. package/dist/vendor/engine/runtime/tui/components/truncated-text.js +50 -0
  1698. package/dist/vendor/engine/runtime/tui/components/v-stack.d.ts +7 -0
  1699. package/dist/vendor/engine/runtime/tui/components/v-stack.js +25 -0
  1700. package/dist/vendor/engine/runtime/tui/editor-component.d.ts +38 -0
  1701. package/dist/vendor/engine/runtime/tui/editor-component.js +1 -0
  1702. package/dist/vendor/engine/runtime/tui/fuzzy.d.ts +15 -0
  1703. package/dist/vendor/engine/runtime/tui/fuzzy.js +110 -0
  1704. package/dist/vendor/engine/runtime/tui/index.d.ts +32 -0
  1705. package/dist/vendor/engine/runtime/tui/index.js +44 -0
  1706. package/dist/vendor/engine/runtime/tui/keybindings.d.ts +272 -0
  1707. package/dist/vendor/engine/runtime/tui/keybindings.js +232 -0
  1708. package/dist/vendor/engine/runtime/tui/keys.d.ts +183 -0
  1709. package/dist/vendor/engine/runtime/tui/keys.js +1173 -0
  1710. package/dist/vendor/engine/runtime/tui/kill-ring.d.ts +27 -0
  1711. package/dist/vendor/engine/runtime/tui/kill-ring.js +43 -0
  1712. package/dist/vendor/engine/runtime/tui/latex.d.ts +9 -0
  1713. package/dist/vendor/engine/runtime/tui/latex.js +1377 -0
  1714. package/dist/vendor/engine/runtime/tui/layout-node.d.ts +39 -0
  1715. package/dist/vendor/engine/runtime/tui/layout-node.js +5 -0
  1716. package/dist/vendor/engine/runtime/tui/layout.d.ts +41 -0
  1717. package/dist/vendor/engine/runtime/tui/layout.js +343 -0
  1718. package/dist/vendor/engine/runtime/tui/native-modifiers.d.ts +3 -0
  1719. package/dist/vendor/engine/runtime/tui/native-modifiers.js +12 -0
  1720. package/dist/vendor/engine/runtime/tui/native-module-path.d.ts +6 -0
  1721. package/dist/vendor/engine/runtime/tui/native-module-path.js +18 -0
  1722. package/dist/vendor/engine/runtime/tui/native-platform.d.ts +17 -0
  1723. package/dist/vendor/engine/runtime/tui/native-platform.js +41 -0
  1724. package/dist/vendor/engine/runtime/tui/stdin-buffer.d.ts +55 -0
  1725. package/dist/vendor/engine/runtime/tui/stdin-buffer.js +365 -0
  1726. package/dist/vendor/engine/runtime/tui/terminal-colors.d.ts +9 -0
  1727. package/dist/vendor/engine/runtime/tui/terminal-colors.js +58 -0
  1728. package/dist/vendor/engine/runtime/tui/terminal-image.d.ts +117 -0
  1729. package/dist/vendor/engine/runtime/tui/terminal-image.js +549 -0
  1730. package/dist/vendor/engine/runtime/tui/terminal.d.ts +122 -0
  1731. package/dist/vendor/engine/runtime/tui/terminal.js +441 -0
  1732. package/dist/vendor/engine/runtime/tui/tui-alt-screen.d.ts +159 -0
  1733. package/dist/vendor/engine/runtime/tui/tui-alt-screen.js +1507 -0
  1734. package/dist/vendor/engine/runtime/tui/tui-main-screen.d.ts +38 -0
  1735. package/dist/vendor/engine/runtime/tui/tui-main-screen.js +593 -0
  1736. package/dist/vendor/engine/runtime/tui/tui.d.ts +385 -0
  1737. package/dist/vendor/engine/runtime/tui/tui.js +1054 -0
  1738. package/dist/vendor/engine/runtime/tui/undo-stack.d.ts +16 -0
  1739. package/dist/vendor/engine/runtime/tui/undo-stack.js +24 -0
  1740. package/dist/vendor/engine/runtime/tui/utils.d.ts +100 -0
  1741. package/dist/vendor/engine/runtime/tui/utils.js +1203 -0
  1742. package/dist/vendor/engine/runtime/tui/word-navigation.d.ts +24 -0
  1743. package/dist/vendor/engine/runtime/tui/word-navigation.js +95 -0
  1744. package/dist/vendor/zcode/LICENSE.upstream +202 -0
  1745. package/dist/vendor/zcode/provenance.json +141 -0
  1746. package/dist/vendor/zcode/source/agent/turn-machine.d.ts +56 -0
  1747. package/dist/vendor/zcode/source/agent/turn-machine.js +214 -0
  1748. package/dist/vendor/zcode/source/agent/turn-state.d.ts +118 -0
  1749. package/dist/vendor/zcode/source/agent/turn-state.js +93 -0
  1750. package/dist/vendor/zcode/source/compact/manual.d.ts +11 -0
  1751. package/dist/vendor/zcode/source/compact/manual.js +38 -0
  1752. package/dist/vendor/zcode/source/compact/microcompact.d.ts +47 -0
  1753. package/dist/vendor/zcode/source/compact/microcompact.js +194 -0
  1754. package/dist/vendor/zcode/source/compact/policy.d.ts +59 -0
  1755. package/dist/vendor/zcode/source/compact/policy.js +89 -0
  1756. package/dist/vendor/zcode/source/compact/selection.d.ts +6 -0
  1757. package/dist/vendor/zcode/source/compact/selection.js +12 -0
  1758. package/dist/vendor/zcode/source/contracts.d.ts +52 -0
  1759. package/dist/vendor/zcode/source/contracts.js +9 -0
  1760. package/dist/vendor/zcode/source/runtime/goal-completion-verification.d.ts +17 -0
  1761. package/dist/vendor/zcode/source/runtime/goal-completion-verification.js +138 -0
  1762. package/dist/vendor/zcode/source/runtime/turn-loop.d.ts +3 -0
  1763. package/dist/vendor/zcode/source/runtime/turn-loop.js +21 -0
  1764. package/dist/vendor/zcode/source/runtime/turn-model-step.d.ts +54 -0
  1765. package/dist/vendor/zcode/source/runtime/turn-model-step.js +97 -0
  1766. package/dist/vendor/zcode/source/runtime/turn-output-token-continuation.d.ts +8 -0
  1767. package/dist/vendor/zcode/source/runtime/turn-output-token-continuation.js +15 -0
  1768. package/dist/vendor/zcode/source/runtime/turn-stop.d.ts +6 -0
  1769. package/dist/vendor/zcode/source/runtime/turn-stop.js +18 -0
  1770. package/dist/vendor/zcode/source/tool/executor/validation.d.ts +6 -0
  1771. package/dist/vendor/zcode/source/tool/executor/validation.js +76 -0
  1772. package/dist/vendor/zcode/source/tool/input-normalization.d.ts +16 -0
  1773. package/dist/vendor/zcode/source/tool/input-normalization.js +62 -0
  1774. package/dist/vendor/zcode/source/tool/input-validation-model-content.d.ts +4 -0
  1775. package/dist/vendor/zcode/source/tool/input-validation-model-content.js +263 -0
  1776. package/dist/vendor/zcode/source/tool/json-schema.d.ts +9 -0
  1777. package/dist/vendor/zcode/source/tool/json-schema.js +230 -0
  1778. package/dist/vendor/zcode/source/tool/scheduler.d.ts +43 -0
  1779. package/dist/vendor/zcode/source/tool/scheduler.js +167 -0
  1780. package/dist/vendor/zcode/source/tool/tool-input-validation-issues.d.ts +76 -0
  1781. package/dist/vendor/zcode/source/tool/tool-input-validation-issues.js +148 -0
  1782. package/dist/vendor/zcode/source/tool/validation-contracts.d.ts +27 -0
  1783. package/dist/vendor/zcode/source/tool/validation-contracts.js +8 -0
  1784. package/docs/README.md +36 -0
  1785. package/docs/agents/README.md +62 -0
  1786. package/docs/agents/install-for-agents.md +55 -0
  1787. package/docs/agents/mcp-server.md +187 -0
  1788. package/docs/agents/subagent-mode.md +146 -0
  1789. package/docs/concepts/README.md +47 -0
  1790. package/docs/concepts/jev-actionable-routing.md +113 -0
  1791. package/docs/concepts/jev-decision-thresholds.md +412 -0
  1792. package/docs/concepts/jev-efficiency.md +216 -0
  1793. package/docs/concepts/jev-eval-2026-11-01.md +78 -0
  1794. package/docs/concepts/limits.md +43 -0
  1795. package/docs/concepts/memory.md +30 -0
  1796. package/docs/concepts/security.md +40 -0
  1797. package/docs/concepts/workspace-instructions.md +28 -0
  1798. package/docs/getting-started/README.md +82 -0
  1799. package/docs/getting-started/accounts.md +67 -0
  1800. package/docs/getting-started/configure-providers.md +103 -0
  1801. package/docs/guides/README.md +12 -0
  1802. package/docs/guides/browser.md +15 -0
  1803. package/docs/guides/desktop-app.md +354 -0
  1804. package/docs/guides/extensions.md +100 -0
  1805. package/docs/guides/graph-builder.md +93 -0
  1806. package/docs/guides/headless.md +45 -0
  1807. package/docs/guides/tui.md +75 -0
  1808. package/docs/guides/update.md +68 -0
  1809. package/docs/guides/windows-code-signing.md +316 -0
  1810. package/docs/llms.txt +45 -0
  1811. package/docs/reference/README.md +7 -0
  1812. package/docs/reference/cli.md +70 -0
  1813. package/docs/reference/config.md +85 -0
  1814. package/docs/reference/slash-commands.md +54 -0
  1815. package/docs/superpowers/plans/2026-11-01-claude-console-sign-in.md +111 -0
  1816. package/docs/superpowers/plans/2026-11-01-jev-node-opt-in.md +910 -0
  1817. package/docs/superpowers/plans/2026-11-02-workflow-pane.md +398 -0
  1818. package/docs/superpowers/specs/2026-10-31-work-line-summary-design.md +50 -0
  1819. package/docs/superpowers/specs/2026-11-01-claude-console-sign-in-design.md +176 -0
  1820. package/docs/superpowers/specs/2026-11-01-jev-node-opt-in-design.md +164 -0
  1821. package/docs/superpowers/specs/2026-11-01-pr-section-design.md +104 -0
  1822. package/docs/superpowers/specs/2026-11-02-workflow-pane-design.md +130 -0
  1823. package/licenses/GEIST-OFL-1.1.txt +92 -0
  1824. package/licenses/ZCODE-APACHE-2.0.txt +202 -0
  1825. package/package.json +118 -6
  1826. package/scripts/jev-efficiency-eval.mjs +187 -0
  1827. package/scripts/jev-efficiency-live.mjs +193 -0
  1828. package/scripts/zcode-engine-replay.mjs +223 -0
  1829. package/tests/agent-centric-mcp-test-plan.md +208 -0
  1830. package/tests/analytics-settings-test-plan.md +165 -0
  1831. package/tests/browser-cli-smoke.mjs +276 -0
  1832. package/tests/browser-test-plan.md +280 -0
  1833. package/tests/chat-side-panel-test-plan.md +309 -0
  1834. package/tests/decision-engine-test-plan.md +163 -0
  1835. package/tests/default-active-jev-test-plan.md +85 -0
  1836. package/tests/graphiti-test-plan.md +359 -0
  1837. package/tests/harness-extensions-test-plan.md +110 -0
  1838. package/tests/jev-all-decisions-test-plan.md +156 -0
  1839. package/tests/jev-efficiency/criteria.json +158 -0
  1840. package/tests/jev-efficiency/workloads.mjs +242 -0
  1841. package/tests/jev-efficiency-test-plan.md +198 -0
  1842. package/tests/mock-graphiti.mjs +106 -0
  1843. package/tests/permissions-sandbox-probe.mjs +74 -0
  1844. package/tests/permissions-test-plan.md +190 -0
  1845. package/tests/product-telemetry-test-plan.md +536 -0
  1846. package/tests/thinking-stream-preview-test-plan.md +136 -0
  1847. package/tests/zcode-react-engine-test-plan.md +396 -0
@@ -0,0 +1,1230 @@
1
+ import { setTimeout as delay } from 'node:timers/promises';
2
+ import { COMPLETION_TOOL } from './completion.js';
3
+ import { createCodexAdapter } from './codex-provider.js';
4
+ import { createClaudeAdapter } from './claude-provider.js';
5
+ import { createOpenCodeAdapter } from './opencode-provider.js';
6
+ import { providerAuthHeaders } from './anthropic-credentials.js';
7
+ import { generateEngineResponse, isEngineContextOverflow } from './provider-engine.js';
8
+ export const REASONING_EFFORTS = ['none', 'minimal', 'low', 'medium', 'high', 'xhigh', 'max'];
9
+ /**
10
+ * Inactivity bound for inference, and wall-clock bound for other HTTP requests,
11
+ * in milliseconds, when a provider does not configure its own.
12
+ *
13
+ * Its job is to end a request that will never be answered — a wedged server, a black-holed
14
+ * connection — never to cap a slow model. One inference call is bounded by the tokens it must
15
+ * decode, and the request asks for thousands of them, so a bound short enough to fire on a
16
+ * healthy self-hosted endpoint converts completed work into `infrastructure_error`. Inference
17
+ * refreshes this timer whenever response bytes arrive; active decoding may run longer. A
18
+ * provider that needs longer silent intervals raises it, and
19
+ * `0` removes it entirely for a caller that is bounded some other way.
20
+ */
21
+ export const DEFAULT_REQUEST_TIMEOUT_MS = 10 * 60_000;
22
+ /**
23
+ * The largest per-request bound a provider may configure: one day.
24
+ *
25
+ * Node's timers accept only a signed 32-bit millisecond delay. A larger value is reduced to a
26
+ * 1 ms timer with a `TimeoutOverflowWarning` — and above `2 ** 32 - 1` `AbortSignal.timeout`
27
+ * throws — so a bound meant to be generous would instead fail every request almost immediately.
28
+ * Configuration and the exported adapter constructor enforce this same ceiling: a consumer that
29
+ * builds an adapter directly must not be able to arm that timer.
30
+ */
31
+ export const MAX_REQUEST_TIMEOUT_MS = 86_400_000;
32
+ /**
33
+ * The single validation of a configured request bound, shared by the configuration loader and
34
+ * {@link createAdapter} so the two can never disagree about what a provider will honour.
35
+ *
36
+ * It rejects the whole override, not just an out-of-range value: a Codex provider applies its own
37
+ * fixed bound, so accepting `requestTimeoutMs` here would silently ignore what the caller asked
38
+ * for.
39
+ * @param provider - the provider whose bound is being checked.
40
+ */
41
+ export function assertRequestTimeout(provider) {
42
+ const value = provider.requestTimeoutMs;
43
+ if (value === undefined)
44
+ return;
45
+ if (provider.type === 'codex')
46
+ throw new Error('Codex providers bound each request at ten minutes; requestTimeoutMs is not supported');
47
+ if (provider.type === 'claude')
48
+ throw new Error('Claude providers bound each request at ten minutes; requestTimeoutMs is not supported');
49
+ if (typeof value !== 'number' || !Number.isSafeInteger(value) || value < 0 || value > MAX_REQUEST_TIMEOUT_MS) {
50
+ throw new Error(`Provider requestTimeoutMs must be 0 (no timeout) or an integer of milliseconds up to ${MAX_REQUEST_TIMEOUT_MS}`);
51
+ }
52
+ }
53
+ /**
54
+ * The single validation of a configured inference inactivity bound, shared by the configuration
55
+ * loader and {@link createAdapter} so the two can never disagree about what a provider honours.
56
+ *
57
+ * `streamIdleTimeoutMs` separates the bound on a silent inference exchange from
58
+ * `requestTimeoutMs`: a provider that removed the request bound to tolerate a slow prefill can
59
+ * still end a stream that stopped delivering bytes. Like the request bound it accepts `0` to
60
+ * remove the bound; Codex owns its fixed bound, so the override is rejected rather than ignored.
61
+ * @param provider - the provider whose inactivity bound is being checked.
62
+ */
63
+ export function assertStreamIdleTimeout(provider) {
64
+ const value = provider.streamIdleTimeoutMs;
65
+ if (value === undefined)
66
+ return;
67
+ if (provider.type === 'codex')
68
+ throw new Error('Codex providers bound each request at ten minutes; streamIdleTimeoutMs is not supported');
69
+ if (provider.type === 'claude')
70
+ throw new Error('Claude providers bound each request at ten minutes; streamIdleTimeoutMs is not supported');
71
+ if (typeof value !== 'number' || !Number.isSafeInteger(value) || value < 0 || value > MAX_REQUEST_TIMEOUT_MS) {
72
+ throw new Error(`Provider streamIdleTimeoutMs must be 0 (no bound) or an integer of milliseconds up to ${MAX_REQUEST_TIMEOUT_MS}`);
73
+ }
74
+ }
75
+ /**
76
+ * Bound for model listing, which is a discovery GET rather than inference.
77
+ *
78
+ * A listing is never worth the inference bound: an endpoint that accepts the connection and never
79
+ * answers must not leave the model screen loading for minutes, and a provider that removed its
80
+ * inference bound with `requestTimeoutMs: 0` must still not make discovery unbounded. A caller
81
+ * may pass a shorter bound of its own; this is a ceiling, not a floor.
82
+ *
83
+ * Callers pass their *cancellation* signal only. A deadline the caller arms here would fire before
84
+ * this one, and a caller's signal aborting is reported as a cancellation — so wrapping this call
85
+ * in `AbortSignal.timeout` would report a stalled endpoint as something the user did.
86
+ */
87
+ export const MODEL_LISTING_TIMEOUT_MS = 30_000;
88
+ /** How a deadline reads in the phrase that reports it hitting: "15 seconds", "1 second", "40 milliseconds". */
89
+ export function deadlinePhrase(ms) {
90
+ if (ms % 1000 !== 0)
91
+ return `${ms} milliseconds`;
92
+ const seconds = ms / 1000;
93
+ return `${seconds} second${seconds === 1 ? '' : 's'}`;
94
+ }
95
+ /**
96
+ * The name a person reads for a provider in a list or picker.
97
+ *
98
+ * An explicit {@link ProviderConfig.name} wins everywhere: the id is an immutable identity, so the
99
+ * editable name is the only way a provider can be renamed, and preferring it here is what makes a
100
+ * rename reach records that still carry the old identity. Codex entries are otherwise the one case
101
+ * where the id is not the name: several ChatGPT accounts can be configured at once, and the label
102
+ * carries the account's email localpart so the rows are told apart. A configuration holding a
103
+ * single Codex provider keeps the plain `codex` name, and a provider whose sign-in never reported
104
+ * an email falls back to its id. The selection value stays the provider id everywhere; only the
105
+ * text changes.
106
+ */
107
+ export function providerLabel(provider, providers) {
108
+ if (provider.name?.trim())
109
+ return provider.name.trim();
110
+ if (provider.type !== 'codex')
111
+ return provider.id;
112
+ if (providers.filter(item => item.type === 'codex').length <= 1)
113
+ return 'codex';
114
+ const local = provider.codexEmail?.split('@')[0] || provider.id;
115
+ return `codex - ${local.length > 32 ? `${local.slice(0, 31)}…` : local}`;
116
+ }
117
+ /** The longest account-slot key validation accepts; the key names a directory under the config home. */
118
+ export const MAX_CODEX_ACCOUNT_KEY_LENGTH = 100;
119
+ /** The longest display name validation accepts; the name is text a list row or picker renders. */
120
+ export const MAX_PROVIDER_NAME_LENGTH = 64;
121
+ /**
122
+ * An account-slot key no configured provider binds yet, based on the entry's identifier.
123
+ *
124
+ * The key becomes a directory name, so it is compared case-insensitively, exactly as validation
125
+ * compares it: `work-fast` may already be bound to the key `work`, and a new provider whose own id
126
+ * is `work` must not take that account over. The first free `id`, `id-2`, `id-3`… is returned.
127
+ *
128
+ * A provider id may be longer than a slot key validation accepts, and appending a collision suffix
129
+ * to a key already at the limit would overrun it, so the base is trimmed to leave the suffix room:
130
+ * allocating an account must never produce a key the configuration it is written into rejects.
131
+ */
132
+ export function freeCodexAccountSlot(base, providers) {
133
+ const taken = new Set(providers.flatMap(provider => provider.codexAccount === undefined ? [] : [provider.codexAccount.toLowerCase()]));
134
+ const key = (suffix) => `${base.slice(0, MAX_CODEX_ACCOUNT_KEY_LENGTH - suffix.length)}${suffix}`;
135
+ let slot = key('');
136
+ for (let suffix = 2; taken.has(slot.toLowerCase()); suffix++)
137
+ slot = key(`-${suffix}`);
138
+ return slot;
139
+ }
140
+ /**
141
+ * A free slot key for an entry a draft is adding, reserving the saved configuration as well.
142
+ *
143
+ * A draft may remove a slot-bearing entry and add a new Codex provider in the same save. The
144
+ * removed home outlives the draft until its retirement completes, so a key computed against the
145
+ * draft alone can be handed to the newcomer: that entry would sign in as the removed account, and
146
+ * the retirement would find the key bound and skip it. Reserving both sets closes that path for
147
+ * every draft editor, since the engine only allocates for writes that arrive without a key.
148
+ */
149
+ export function freeDraftCodexAccountSlot(base, draft, saved) {
150
+ return freeCodexAccountSlot(base, [...draft, ...saved]);
151
+ }
152
+ /**
153
+ * Give every Codex entry that is a later account binding its own slot key.
154
+ *
155
+ * An entry binds an account when it is Codex now but was not Codex before — a new entry, or another
156
+ * type converted. A configuration that held no Codex provider keeps its inherited sign-in on the
157
+ * first Codex entry this write leaves; every other new binding gets a free key. An entry that was
158
+ * already Codex keeps whatever binding (or lack of one) it had: a save is not a migration. Allocation
159
+ * happens here rather than in each client so no two clients can disagree about which keys are taken,
160
+ * and a bulk write orders the entries exactly as adding them one at a time would.
161
+ */
162
+ export function allocateCodexAccountSlots(stored, next) {
163
+ const storedHadCodex = stored.some(item => item.type === 'codex');
164
+ const firstCodexId = next.find(item => item.type === 'codex')?.id;
165
+ const result = [];
166
+ for (const [index, provider] of next.entries()) {
167
+ if (provider.type !== 'codex' || provider.codexAccount !== undefined) {
168
+ result.push(provider);
169
+ continue;
170
+ }
171
+ const previous = stored.find(item => item.id === provider.id);
172
+ if (previous?.type === 'codex' || (!storedHadCodex && provider.id === firstCodexId)) {
173
+ result.push(provider);
174
+ continue;
175
+ }
176
+ // The key is chosen against everything this write leaves configured: entries already placed and
177
+ // entries still to come, and `freeCodexAccountSlot` reads every binding among them. Bindings the
178
+ // write removes are reserved too, because their homes outlive the write until retirement
179
+ // completes: reusing a removed key here would hand the new entry an account it never signed in
180
+ // to, and the retirement would then find the key bound and skip it.
181
+ result.push({ ...provider, codexAccount: freeCodexAccountSlot(provider.id, [...result, ...next.slice(index + 1), ...stored]) });
182
+ }
183
+ return result;
184
+ }
185
+ /** The models a provider is configured to offer: the saved list, or the active model alone. */
186
+ export function providerModels(provider) {
187
+ if (provider.models !== undefined)
188
+ return provider.models.filter(model => model.trim());
189
+ return provider.model.trim() ? [provider.model] : [];
190
+ }
191
+ /**
192
+ * The context window saved for one model, if the provider has one.
193
+ *
194
+ * `Object.hasOwn` rather than a plain lookup: a model id is user input, so `constructor` or
195
+ * `toString` must read as "no saved window" instead of an inherited member. Values are required to
196
+ * be positive safe integers because a hand-edited configuration can reach this before validation
197
+ * runs in an adapter built directly.
198
+ */
199
+ export function configuredContextWindow(provider, model) {
200
+ const id = model ?? provider.model;
201
+ if (!provider.modelContextWindows || !Object.hasOwn(provider.modelContextWindows, id))
202
+ return undefined;
203
+ const window = provider.modelContextWindows[id];
204
+ return Number.isSafeInteger(window) && window > 0 ? window : undefined;
205
+ }
206
+ /**
207
+ * Point a provider's own window at one model's saved limit.
208
+ *
209
+ * A model switch must not keep the previous model's limit, and a model with no saved entry must
210
+ * not inherit one: the saved window for the target model is applied when the map holds it, and the
211
+ * provider-level value is dropped when it does not. `/status` and the run budget read
212
+ * `contextWindow` directly, so a switch that only deleted it would report an unknown limit for a
213
+ * model whose limit the provider already knows.
214
+ */
215
+ export function applyModelContextWindow(provider, model) {
216
+ const saved = configuredContextWindow(provider, model);
217
+ if (saved !== undefined)
218
+ provider.contextWindow = saved;
219
+ else
220
+ delete provider.contextWindow;
221
+ }
222
+ /**
223
+ * Raw provider secrets: stored API keys plus the current values of their named environment
224
+ * variables. The trajectory's own credential-name heuristic cannot know an arbitrary
225
+ * `apiKeyEnv` name, so every place providers (re)register secrets uses this helper — initial
226
+ * config load and mid-session provider edits alike.
227
+ */
228
+ export function providerSecrets(providers, env = process.env) {
229
+ return providers.flatMap(provider => [provider.apiKey, provider.apiKeyEnv ? env[provider.apiKeyEnv] : undefined].filter((key) => !!key));
230
+ }
231
+ /**
232
+ * Record one model as configured for the provider, keeping the saved list consistent with it.
233
+ *
234
+ * The list is materialized only once it holds more than the active model, or once it exists at all:
235
+ * a provider edited without ever touching its model list keeps the configuration shape it had.
236
+ */
237
+ export function recordProviderModel(provider, model) {
238
+ const list = providerModels(provider);
239
+ if (!list.includes(model))
240
+ list.push(model);
241
+ if (list.length > 1 || provider.models !== undefined)
242
+ provider.models = list;
243
+ }
244
+ /** Validate credentials without including their contents in errors. */
245
+ export function assertProviderCredentials(provider) {
246
+ if (provider.anthropicAuth !== undefined && (provider.type !== 'anthropic' || provider.anthropicAuth !== 'console')) {
247
+ throw new Error('anthropicAuth is an Anthropic-only setting whose only value is console.');
248
+ }
249
+ if (provider.anthropicAuth === 'console' && (provider.apiKey !== undefined || provider.apiKeyEnv !== undefined)) {
250
+ throw new Error('Claude Console sign-in replaces the API key; remove the key or the sign-in.');
251
+ }
252
+ if (provider.type === 'codex' && (provider.apiKey !== undefined || provider.apiKeyEnv !== undefined)) {
253
+ throw new Error('Codex providers use Codex sign-in; API key overrides are not supported.');
254
+ }
255
+ if (provider.type === 'claude' && (provider.apiKey !== undefined || provider.apiKeyEnv !== undefined)) {
256
+ throw new Error('Claude providers use Claude Code sign-in; API key overrides are not supported.');
257
+ }
258
+ if (provider.apiKey !== undefined && (typeof provider.apiKey !== 'string' || !/^[\x21-\x7e]+$/.test(provider.apiKey))) {
259
+ throw new Error('API key must be nonempty and contain no whitespace or control characters.');
260
+ }
261
+ if (provider.apiKeyEnv !== undefined && (typeof provider.apiKeyEnv !== 'string' || !/^[A-Za-z_][A-Za-z0-9_]*$/.test(provider.apiKeyEnv))) {
262
+ throw new Error('Invalid API key environment variable name.');
263
+ }
264
+ }
265
+ /** Shared credential precedence for inference and model discovery. */
266
+ export function resolveProviderApiKey(provider) {
267
+ assertProviderCredentials(provider);
268
+ if (provider.apiKey !== undefined)
269
+ return provider.apiKey;
270
+ if (provider.apiKeyEnv === undefined)
271
+ return undefined;
272
+ const key = process.env[provider.apiKeyEnv];
273
+ if (!key)
274
+ throw new Error(`Set ${provider.apiKeyEnv} or save an API key in /providers before using this provider.`);
275
+ if (!/^[\x21-\x7e]+$/.test(key))
276
+ throw new Error('The configured API key environment variable contains an invalid credential.');
277
+ return key;
278
+ }
279
+ export function defaultProviders() {
280
+ return [
281
+ { id: 'openai', type: 'openai-compatible', baseUrl: 'https://api.openai.com/v1', apiKeyEnv: 'OPENAI_API_KEY', model: 'gpt-4.1' },
282
+ { id: 'anthropic', type: 'anthropic', baseUrl: 'https://api.anthropic.com/v1', apiKeyEnv: 'ANTHROPIC_API_KEY', model: 'claude-opus-5-5' },
283
+ { id: 'local', type: 'openai-compatible', baseUrl: 'http://127.0.0.1:1234/v1', model: 'local-model' },
284
+ ];
285
+ }
286
+ const MAX_REQUEST_RETRIES = 3;
287
+ const REQUEST_RETRY_DELAYS_MS = [1_000, 30_000, 120_000];
288
+ const MALFORMED_STREAM_RETRY_DELAYS_MS = [1_000, 3_000, 10_000];
289
+ const MAX_AUTOMATIC_RETRY_AFTER_MS = REQUEST_RETRY_DELAYS_MS.at(-1);
290
+ export class ProviderRequestError extends Error {
291
+ contextOverflow;
292
+ /**
293
+ * Set when this request was classified as exceeding the context window. It travels structured so
294
+ * telemetry reports a limit without re-deriving one from an error message, and so a provider
295
+ * failure rate never absorbs an input that was simply too large.
296
+ */
297
+ constructor(message, contextOverflow = false) {
298
+ super(message);
299
+ this.contextOverflow = contextOverflow;
300
+ this.name = 'Error';
301
+ }
302
+ }
303
+ class RetryableProviderError extends ProviderRequestError {
304
+ retryAfterMs;
305
+ retryDelaysMs;
306
+ constructor(message, retryAfterMs = 0, retryDelaysMs = REQUEST_RETRY_DELAYS_MS) {
307
+ super(message);
308
+ this.retryAfterMs = retryAfterMs;
309
+ this.retryDelaysMs = retryDelaysMs;
310
+ this.name = 'Error';
311
+ }
312
+ }
313
+ /** A malformed SSE completion is safe to replay because no tool from that response has executed. */
314
+ class MalformedStreamProviderError extends RetryableProviderError {
315
+ constructor() { super('Provider returned a malformed response.', 0, MALFORMED_STREAM_RETRY_DELAYS_MS); }
316
+ }
317
+ /** A completed HTTP exchange the provider refused outright; `status` drives compatibility fallbacks. */
318
+ class HttpProviderError extends ProviderRequestError {
319
+ status;
320
+ constructor(message, status) {
321
+ super(message);
322
+ this.status = status;
323
+ this.name = 'Error';
324
+ }
325
+ }
326
+ function retryAfter(value) {
327
+ if (!value)
328
+ return 0;
329
+ const seconds = Number(value);
330
+ const ms = Number.isFinite(seconds) ? seconds * 1000 : Date.parse(value) - Date.now();
331
+ return Number.isFinite(ms) ? Math.max(0, ms) : 0;
332
+ }
333
+ function permanentConnectionFailure(error) {
334
+ if (!error || typeof error !== 'object')
335
+ return false;
336
+ const failure = error;
337
+ return /^(?:ERR_TLS_|CERT_|DEPTH_ZERO_SELF_SIGNED_CERT$|SELF_SIGNED_CERT_IN_CHAIN$|UNABLE_TO_VERIFY_LEAF_SIGNATURE$|UNABLE_TO_GET_ISSUER_CERT|ERR_INVALID_|ENOTFOUND$)/.test(failure.code ?? '')
338
+ || /^(?:unexpected redirect|redirect count exceeded|bad port|unknown scheme|invalid redirect|URL scheme must be)/i.test(failure.message ?? '')
339
+ || (failure.cause !== error && permanentConnectionFailure(failure.cause));
340
+ }
341
+ /**
342
+ * The transport code behind a failed fetch, preferring the cause's over the wrapper's.
343
+ *
344
+ * Only the code is surfaced. An exception's message is free text that has been seen to embed
345
+ * credentials, while the code is the part that tells an operator whether this is DNS, TLS, a
346
+ * refused port or a bad certificate anyway.
347
+ */
348
+ function connectionFailureDetail(error) {
349
+ if (!error || typeof error !== 'object')
350
+ return undefined;
351
+ const failure = error;
352
+ const cause = failure.cause && typeof failure.cause === 'object' ? failure.cause : undefined;
353
+ const code = typeof cause?.code === 'string' && cause.code ? cause.code : typeof failure.code === 'string' && failure.code ? failure.code : undefined;
354
+ // Transport codes are errno-style (ENOTFOUND, ECONNRESET, ERR_TLS_...). Anything else is an
355
+ // arbitrary string some library attached, and echoing it would expose whatever it put there.
356
+ return code && /^[A-Z][A-Z0-9_]*$/.test(code) ? code : undefined;
357
+ }
358
+ function cancelled() { throw new Error('Provider request cancelled.'); }
359
+ function malformed() { throw new Error('Provider returned a malformed response.'); }
360
+ class ResponseTooLargeError extends Error {
361
+ constructor() { super('Provider response exceeds the 4 MiB limit.'); }
362
+ }
363
+ async function boundedJson(response) {
364
+ if (!response.body)
365
+ return malformed();
366
+ const reader = response.body.getReader();
367
+ const buffer = Buffer.allocUnsafe(4 * 1024 * 1024);
368
+ let bytes = 0;
369
+ try {
370
+ while (true) {
371
+ const chunk = await reader.read().catch(() => { throw new RetryableProviderError('Provider connection failed while reading its response.'); });
372
+ if (chunk.done)
373
+ break;
374
+ if (chunk.value.byteLength > buffer.length - bytes) {
375
+ await reader.cancel().catch(() => { });
376
+ throw new ResponseTooLargeError();
377
+ }
378
+ buffer.set(chunk.value, bytes);
379
+ bytes += chunk.value.byteLength;
380
+ }
381
+ return JSON.parse(new TextDecoder('utf-8', { fatal: true }).decode(buffer.subarray(0, bytes)));
382
+ }
383
+ finally {
384
+ reader.releaseLock();
385
+ }
386
+ }
387
+ function record(value) {
388
+ if (!value || typeof value !== 'object' || Array.isArray(value))
389
+ return malformed();
390
+ return value;
391
+ }
392
+ /**
393
+ * The provider's own explanation of a rejected request, from its bounded error body.
394
+ *
395
+ * Envelopes differ: OpenAI and DeepSeek nest `{error:{message}}`, Anthropic adds its own
396
+ * `{type,error}`, and vLLM's proxy puts a JSON string in `detail`. Only message-bearing fields
397
+ * are read, because the rest of an error body can echo request content or credentials and belongs
398
+ * in the provider's logs, not in the run record the person keeps.
399
+ */
400
+ function providerErrorDetail(value, depth = 0) {
401
+ if (!value || typeof value !== 'object' || Array.isArray(value) || depth > 2)
402
+ return undefined;
403
+ const record = value;
404
+ const error = record.error;
405
+ const nested = error && typeof error === 'object' && !Array.isArray(error) ? error : undefined;
406
+ for (const candidate of [nested?.message, nested?.detail, record.message, record.detail, typeof error === 'string' ? error : undefined, nested]) {
407
+ if (candidate && typeof candidate === 'object') {
408
+ const detail = providerErrorDetail(candidate, depth + 1);
409
+ if (detail)
410
+ return detail;
411
+ continue;
412
+ }
413
+ if (typeof candidate !== 'string' || !candidate.trim())
414
+ continue;
415
+ const trimmed = candidate.trim();
416
+ if (trimmed.startsWith('{') || trimmed.startsWith('[')) {
417
+ const detail = providerErrorDetail(safeJson(trimmed), depth + 1);
418
+ if (detail)
419
+ return detail;
420
+ // A structured payload is subject to the same allowlist as a structured body: without an
421
+ // approved message field inside it, the serialized text stays in the provider's logs.
422
+ continue;
423
+ }
424
+ return boundedProviderDetail(trimmed);
425
+ }
426
+ return undefined;
427
+ }
428
+ function safeJson(text) {
429
+ try {
430
+ return JSON.parse(text);
431
+ }
432
+ catch {
433
+ return undefined;
434
+ }
435
+ }
436
+ function boundedProviderDetail(text) {
437
+ const collapsed = text.replace(/\s+/g, ' ').trim().replace(/[.!?]+$/, '');
438
+ if (!collapsed)
439
+ return undefined;
440
+ return collapsed.length > 400 ? `${collapsed.slice(0, 397)}...` : collapsed;
441
+ }
442
+ /** Masks the configured credential, which providers have been seen to echo back in error bodies. */
443
+ function redactCredential(text, key) {
444
+ return key ? text.split(key).join('[redacted]') : text;
445
+ }
446
+ function nonempty(value) {
447
+ if (typeof value !== 'string' || !value.trim())
448
+ return malformed();
449
+ return value;
450
+ }
451
+ function tokenCount(value) {
452
+ return typeof value === 'number' && Number.isSafeInteger(value) && value >= 0 ? value : undefined;
453
+ }
454
+ function usage(value, anthropic) {
455
+ const data = value && typeof value === 'object' ? value : {};
456
+ const details = data.prompt_tokens_details && typeof data.prompt_tokens_details === 'object' && !Array.isArray(data.prompt_tokens_details)
457
+ ? data.prompt_tokens_details : {};
458
+ const input = tokenCount(anthropic ? data.input_tokens : data.prompt_tokens);
459
+ // Anthropic omits cache counts when caching is unused. Missing base usage is
460
+ // unavailable, whereas an explicitly reported zero is a valid measurement.
461
+ // OpenAI-compatible cache reads follow the vendored parser's precedence:
462
+ // prompt_tokens_details.cached_tokens (OpenAI/vLLM), prompt_cache_hit_tokens
463
+ // (DeepSeek) or top-level cached_tokens (Kimi). prompt_tokens is already
464
+ // inclusive of cache traffic, so inputTokens needs no adjustment.
465
+ // Reported means the field was there: an explicit zero is a measurement, and dropping it would make
466
+ // "we measured nothing cached" indistinguishable from "caching was never mentioned". Surfaces that
467
+ // show cache figures key on that presence, so it has to survive this mapping.
468
+ const created = anthropic ? tokenCount(data.cache_creation_input_tokens) : tokenCount(details.cache_write_tokens);
469
+ const read = anthropic ? tokenCount(data.cache_read_input_tokens) : tokenCount(details.cached_tokens ?? data.prompt_cache_hit_tokens ?? data.cached_tokens);
470
+ const inputTokens = anthropic
471
+ ? input === undefined ? undefined : input + (created ?? 0) + (read ?? 0)
472
+ : input;
473
+ const outputTokens = tokenCount(anthropic ? data.output_tokens : data.completion_tokens);
474
+ return {
475
+ ...(inputTokens === undefined ? {} : { inputTokens }),
476
+ ...(outputTokens === undefined ? {} : { outputTokens }),
477
+ ...(read === undefined ? {} : { cacheRead: read }),
478
+ ...(created === undefined ? {} : { cacheWrite: created }), requests: 1,
479
+ };
480
+ }
481
+ function argumentsObject(value) {
482
+ if (typeof value !== 'string')
483
+ return malformed();
484
+ try {
485
+ return record(JSON.parse(value));
486
+ }
487
+ catch {
488
+ return malformed();
489
+ }
490
+ }
491
+ function checkCalls(calls, completionAdvertised) {
492
+ // Names are authorized by the executor so unadvertised calls become repairable observations.
493
+ const ids = new Set();
494
+ for (const call of calls) {
495
+ if (ids.has(call.id))
496
+ malformed();
497
+ ids.add(call.id);
498
+ // Completion is control data validated by the bounded runtime repair loop.
499
+ // Executable tools retain strict adapter validation before any side effects.
500
+ if (call.name !== COMPLETION_TOOL || !completionAdvertised)
501
+ argumentsObject(call.arguments);
502
+ }
503
+ return calls;
504
+ }
505
+ /**
506
+ * Validate one whole-body chat completion into a {@link ModelResponse}.
507
+ *
508
+ * Shared by the unstreamed request path and by the streaming path's whole-body fallback,
509
+ * so a server that answers `stream: true` with plain JSON is held to exactly the checks a
510
+ * server that never streamed must pass.
511
+ */
512
+ function wholeBodyCompletion(data, requests, completionAdvertised) {
513
+ if (!Array.isArray(data.choices) || data.choices.length !== 1)
514
+ return malformed();
515
+ const choice = record(data.choices[0]), message = record(choice.message);
516
+ if (message.content != null && typeof message.content !== 'string')
517
+ return malformed();
518
+ if (message.refusal != null && typeof message.refusal !== 'string')
519
+ return malformed();
520
+ for (const key of ['reasoning_content', 'reasoning', 'reasoning_text']) {
521
+ if (message[key] != null && typeof message[key] !== 'string')
522
+ return malformed();
523
+ }
524
+ const reasoningText = [message.reasoning_content, message.reasoning, message.reasoning_text]
525
+ .find((value) => typeof value === 'string' && value.length > 0)
526
+ ?? (typeof message.reasoning_content === 'string' ? message.reasoning_content : undefined);
527
+ const reasoning = reasoningText !== undefined ? { reasoningContent: reasoningText } : {};
528
+ // Refusals are valid model output, even when content is null. Preserve the
529
+ // text for normal bounded completion handling instead of a transport error.
530
+ const text = [message.content, message.refusal].filter((value) => typeof value === 'string' && value.length > 0).join('\n');
531
+ if (message.tool_calls != null && !Array.isArray(message.tool_calls))
532
+ return malformed();
533
+ // Truncated function arguments may not be JSON (or even contain a name yet).
534
+ // Discard the entire batch and let the runtime apply its bounded repair policy.
535
+ if (choice.finish_reason === 'length' || choice.finish_reason === 'content_filter') {
536
+ return { text, toolCalls: [], usage: { ...usage(data.usage, false), requests }, stopReason: choice.finish_reason };
537
+ }
538
+ const calls = (message.tool_calls ?? []).map(raw => {
539
+ const call = record(raw), fn = record(call.function);
540
+ if (call.type !== 'function')
541
+ return malformed();
542
+ const name = nonempty(fn.name);
543
+ const repairableCompletion = name === COMPLETION_TOOL && completionAdvertised;
544
+ if (repairableCompletion && typeof fn.arguments !== 'string')
545
+ return malformed();
546
+ return { id: nonempty(call.id), name, arguments: repairableCompletion ? fn.arguments : nonempty(fn.arguments) };
547
+ });
548
+ if ((choice.finish_reason === 'tool_calls' && !calls.length) || (message.content == null && message.refusal == null && !calls.length))
549
+ return malformed();
550
+ return { text, toolCalls: checkCalls(calls, completionAdvertised), usage: { ...usage(data.usage, false), requests }, stopReason: nonempty(choice.finish_reason), ...reasoning };
551
+ }
552
+ /**
553
+ * Assemble a streamed chat completion, validating it to the same rules as the whole-body path.
554
+ *
555
+ * Every streamed fragment type is checked as it arrives, so a malformed stream fails at the
556
+ * offending chunk rather than after silently accumulating garbage. Tool-call fragments are
557
+ * keyed by their `index` and concatenated in arrival order, which is how every
558
+ * OpenAI-compatible server splits them.
559
+ */
560
+ function createStreamAccumulator(onReasoning, now = Date.now) {
561
+ let content = '', refusal, reasoning = '', finishReason, chunkUsage;
562
+ let sawChoice = false, sawText = false;
563
+ let firstOutputAt, lastOutputAt;
564
+ const fragments = [];
565
+ const text = (value) => {
566
+ if (value == null)
567
+ return null;
568
+ if (typeof value !== 'string')
569
+ return malformed();
570
+ return value;
571
+ };
572
+ // The decode window opens at the first generated fragment and closes at the last: prompt
573
+ // processing ends where the first stamp falls, and everything between requests (tool runs,
574
+ // retries, the usage tail) is outside the pair. A stream that answers in a single fragment
575
+ // leaves the pair collapsed, and no window is claimed.
576
+ const stampOutput = () => {
577
+ const at = now();
578
+ if (firstOutputAt === undefined)
579
+ firstOutputAt = at;
580
+ lastOutputAt = at;
581
+ };
582
+ const decodeWindow = () => firstOutputAt !== undefined && lastOutputAt !== undefined && lastOutputAt > firstOutputAt ? lastOutputAt - firstOutputAt : undefined;
583
+ return {
584
+ /** Whether the stream delivered a choice with a finish reason, i.e. truly completed. */
585
+ get completed() { return sawChoice && finishReason !== undefined; },
586
+ /** The measured decode window, or undefined when the stream never gave one. */
587
+ get decodeMs() { return decodeWindow(); },
588
+ event(data) {
589
+ if (data === '[DONE]')
590
+ return;
591
+ let parsed;
592
+ try {
593
+ parsed = JSON.parse(data);
594
+ }
595
+ catch {
596
+ return malformed();
597
+ }
598
+ const chunk = record(parsed);
599
+ if (chunk.usage != null) {
600
+ if (typeof chunk.usage !== 'object' || Array.isArray(chunk.usage))
601
+ return malformed();
602
+ chunkUsage = chunk.usage;
603
+ }
604
+ const choices = chunk.choices;
605
+ if (choices === undefined) {
606
+ // The usage-only final chunk carries no choices; a chunk without either is malformed.
607
+ if (chunkUsage === undefined)
608
+ return malformed();
609
+ return;
610
+ }
611
+ if (!Array.isArray(choices) || choices.length > 1)
612
+ return malformed();
613
+ if (!choices.length)
614
+ return;
615
+ sawChoice = true;
616
+ const choice = record(choices[0]);
617
+ if (choice.finish_reason != null && typeof choice.finish_reason !== 'string')
618
+ return malformed();
619
+ if (typeof choice.finish_reason === 'string' && choice.finish_reason)
620
+ finishReason = choice.finish_reason;
621
+ const delta = record(choice.delta ?? {});
622
+ const reasoningDelta = text(delta.reasoning_content);
623
+ if (reasoningDelta) {
624
+ reasoning += reasoningDelta;
625
+ onReasoning(reasoningDelta);
626
+ }
627
+ // The decode window counts every representation the production parser streams as thinking:
628
+ // openai-completions.ts takes the first non-empty of reasoning_content, reasoning, and
629
+ // reasoning_text, so a model that answers its reasoning through the other fields is still
630
+ // generating, and its window must open at that first fragment rather than at the answer.
631
+ if (reasoningDelta || text(delta.reasoning) || text(delta.reasoning_text))
632
+ stampOutput();
633
+ const contentDelta = text(delta.content);
634
+ // An empty content string still records the field's presence: the whole-body path
635
+ // distinguishes `content: ""` from `null`, and the streamed answer must keep that
636
+ // distinction so an empty completion reaches the runtime's bounded repair loop
637
+ // instead of failing as a malformed response.
638
+ if (contentDelta !== null) {
639
+ sawText = true;
640
+ if (contentDelta) {
641
+ content += contentDelta;
642
+ stampOutput();
643
+ }
644
+ }
645
+ const refusalDelta = text(delta.refusal);
646
+ if (refusalDelta !== null) {
647
+ refusal = (refusal ?? '') + refusalDelta;
648
+ if (refusalDelta)
649
+ stampOutput();
650
+ }
651
+ if (delta.tool_calls === undefined)
652
+ return;
653
+ if (!Array.isArray(delta.tool_calls))
654
+ return malformed();
655
+ if (delta.tool_calls.length > 0)
656
+ stampOutput();
657
+ for (const raw of delta.tool_calls) {
658
+ const fragment = record(raw);
659
+ if (typeof fragment.index !== 'number' || !Number.isSafeInteger(fragment.index) || fragment.index < 0)
660
+ return malformed();
661
+ if (fragment.type !== undefined && fragment.type !== 'function')
662
+ return malformed();
663
+ if (fragment.id !== undefined && typeof fragment.id !== 'string')
664
+ return malformed();
665
+ const fn = fragment.function === undefined ? {} : record(fragment.function);
666
+ if (fn.name !== undefined && typeof fn.name !== 'string')
667
+ return malformed();
668
+ if (fn.arguments !== undefined && typeof fn.arguments !== 'string')
669
+ return malformed();
670
+ let call = fragments.find(existing => existing.index === fragment.index);
671
+ if (!call) {
672
+ call = { index: fragment.index, id: '', name: '', arguments: '' };
673
+ fragments.push(call);
674
+ }
675
+ if (typeof fragment.id === 'string')
676
+ call.id += fragment.id;
677
+ if (typeof fn.name === 'string')
678
+ call.name += fn.name;
679
+ if (typeof fn.arguments === 'string')
680
+ call.arguments += fn.arguments;
681
+ }
682
+ },
683
+ finish(requests, completionAdvertised) {
684
+ if (!sawChoice)
685
+ return malformed();
686
+ // Refusals are valid model output, even when content is null. Preserve the
687
+ // text for normal bounded completion handling instead of a transport error.
688
+ const body = [content, refusal].filter((value) => typeof value === 'string' && value.length > 0).join('\n');
689
+ const measured = decodeWindow();
690
+ // Truncated function arguments may not be JSON (or even contain a name yet).
691
+ // Discard the entire batch and let the runtime apply its bounded repair policy.
692
+ if (finishReason === 'length' || finishReason === 'content_filter') {
693
+ return { text: body, toolCalls: [], usage: { ...usage(chunkUsage, false), requests, ...(measured === undefined ? {} : { decodeMs: measured }) }, stopReason: finishReason };
694
+ }
695
+ const calls = [...fragments].sort((a, b) => a.index - b.index).map(fragment => {
696
+ const name = nonempty(fragment.name);
697
+ const repairableCompletion = name === COMPLETION_TOOL && completionAdvertised;
698
+ return { id: nonempty(fragment.id), name, arguments: repairableCompletion ? fragment.arguments : nonempty(fragment.arguments) };
699
+ });
700
+ if ((finishReason === 'tool_calls' && !calls.length) || (!sawText && refusal === undefined && !calls.length))
701
+ return malformed();
702
+ return { text: body, toolCalls: checkCalls(calls, completionAdvertised), usage: { ...usage(chunkUsage, false), requests, ...(measured === undefined ? {} : { decodeMs: measured }) }, stopReason: nonempty(finishReason), ...(reasoning ? { reasoningContent: reasoning } : {}) };
703
+ },
704
+ };
705
+ }
706
+ /** Validate original Anthropic JSON fragments before upstream's display-oriented JSON salvage. */
707
+ function createAnthropicStreamAccumulator(now = Date.now) {
708
+ const blocks = new Map();
709
+ let started = false, stopped = false, finishReason;
710
+ let firstOutputAt, lastOutputAt;
711
+ const blockAt = (index) => {
712
+ if (!Number.isSafeInteger(index) || index < 0)
713
+ return malformed();
714
+ const block = blocks.get(index);
715
+ if (!block || block.stopped)
716
+ return malformed();
717
+ return block;
718
+ };
719
+ // Same decode-window rule as the OpenAI-compatible accumulator: the first generated fragment
720
+ // opens the window and the last closes it, so prompt processing and inter-request time stay out.
721
+ const stampOutput = () => {
722
+ const at = now();
723
+ if (firstOutputAt === undefined)
724
+ firstOutputAt = at;
725
+ lastOutputAt = at;
726
+ };
727
+ const decodeWindow = () => firstOutputAt !== undefined && lastOutputAt !== undefined && lastOutputAt > firstOutputAt ? lastOutputAt - firstOutputAt : undefined;
728
+ return {
729
+ /** The measured decode window, or undefined when the stream never gave one. */
730
+ get decodeMs() { return decodeWindow(); },
731
+ event(data) {
732
+ let parsed;
733
+ try {
734
+ parsed = JSON.parse(data);
735
+ }
736
+ catch {
737
+ return malformed();
738
+ }
739
+ const event = record(parsed);
740
+ if (event.type === 'ping')
741
+ return;
742
+ if (stopped)
743
+ return malformed();
744
+ if (event.type === 'message_start') {
745
+ if (started)
746
+ return malformed();
747
+ started = true;
748
+ return;
749
+ }
750
+ if (!started)
751
+ return malformed();
752
+ if (event.type === 'content_block_start') {
753
+ if (!Number.isSafeInteger(event.index) || event.index < 0 || blocks.has(event.index))
754
+ return malformed();
755
+ const input = record(event.content_block);
756
+ const type = nonempty(input.type);
757
+ if (!['text', 'tool_use', 'thinking', 'redacted_thinking'].includes(type))
758
+ return malformed();
759
+ if (type === 'text' && typeof input.text !== 'string')
760
+ return malformed();
761
+ blocks.set(event.index, { type, stopped: false, text: type === 'text' ? input.text : '', fragments: '', sawInputDelta: false,
762
+ ...(type === 'tool_use' ? { id: nonempty(input.id), name: nonempty(input.name), input: record(input.input) } : {}) });
763
+ return;
764
+ }
765
+ if (event.type === 'content_block_delta') {
766
+ const block = blockAt(event.index), delta = record(event.delta);
767
+ if (block.type === 'tool_use' && delta.type === 'input_json_delta') {
768
+ if (typeof delta.partial_json !== 'string')
769
+ return malformed();
770
+ block.fragments += delta.partial_json;
771
+ block.sawInputDelta = true;
772
+ if (delta.partial_json)
773
+ stampOutput();
774
+ }
775
+ else if (block.type === 'text' && delta.type === 'text_delta') {
776
+ if (typeof delta.text !== 'string')
777
+ return malformed();
778
+ block.text += delta.text;
779
+ if (delta.text)
780
+ stampOutput();
781
+ }
782
+ else if (block.type === 'thinking' && ['thinking_delta', 'signature_delta'].includes(String(delta.type))) {
783
+ const piece = delta[delta.type === 'thinking_delta' ? 'thinking' : 'signature'];
784
+ if (typeof piece !== 'string')
785
+ return malformed();
786
+ if (piece)
787
+ stampOutput();
788
+ }
789
+ else
790
+ return malformed();
791
+ return;
792
+ }
793
+ if (event.type === 'content_block_stop') {
794
+ blockAt(event.index).stopped = true;
795
+ return;
796
+ }
797
+ if (event.type === 'message_delta') {
798
+ const delta = record(event.delta);
799
+ if (delta.stop_reason != null)
800
+ finishReason = nonempty(delta.stop_reason);
801
+ return;
802
+ }
803
+ if (event.type === 'message_stop') {
804
+ stopped = true;
805
+ return;
806
+ }
807
+ return malformed();
808
+ },
809
+ finish(requests, completionAdvertised) {
810
+ if (!started || !stopped || !finishReason)
811
+ throw new RetryableProviderError('Provider closed the stream before the response completed.');
812
+ const ordered = [...blocks.entries()].sort(([a], [b]) => a - b).map(([, block]) => block);
813
+ const text = ordered.filter(block => block.type === 'text').map(block => block.text).join('\n');
814
+ const measured = decodeWindow();
815
+ const measuredUsage = { requests, ...(measured === undefined ? {} : { decodeMs: measured }) };
816
+ // An explicit output limit discards the entire tool batch, including unfinished fragments.
817
+ if (finishReason === 'max_tokens')
818
+ return { text, toolCalls: [], stopReason: 'length', usage: { ...measuredUsage } };
819
+ if (ordered.some(block => !block.stopped))
820
+ return malformed();
821
+ const calls = ordered.filter(block => block.type === 'tool_use').map(block => ({ id: block.id, name: block.name,
822
+ arguments: block.sawInputDelta ? block.fragments : JSON.stringify(block.input) }));
823
+ if (finishReason === 'tool_use' && !calls.length)
824
+ return malformed();
825
+ return { text, toolCalls: checkCalls(calls, completionAdvertised), stopReason: finishReason, usage: { ...measuredUsage } };
826
+ },
827
+ };
828
+ }
829
+ export function createAdapter(config) {
830
+ if (config.reasoningEffort !== undefined && (!['openai-compatible', 'opencode-go'].includes(config.type) || !REASONING_EFFORTS.includes(config.reasoningEffort)))
831
+ throw new Error('Reasoning effort overrides require an OpenAI-compatible or OpenCode Go provider and a supported effort value.');
832
+ assertRequestTimeout(config);
833
+ assertStreamIdleTimeout(config);
834
+ assertProviderCredentials(config);
835
+ if (config.type === 'codex')
836
+ return createCodexAdapter(config);
837
+ if (config.type === 'claude')
838
+ return createClaudeAdapter(config);
839
+ if (config.type === 'opencode-go')
840
+ return createOpenCodeAdapter(config);
841
+ let base;
842
+ try {
843
+ base = new URL(config.baseUrl);
844
+ }
845
+ catch {
846
+ throw new Error('Provider base URL is invalid.');
847
+ }
848
+ if (!['https:', 'http:'].includes(base.protocol) || base.username || base.password || base.search || base.hash) {
849
+ throw new Error('Provider base URL must be HTTP(S) without credentials, query, or fragment.');
850
+ }
851
+ if (config.type !== 'openai-compatible' && config.type !== 'anthropic')
852
+ throw new Error('Unsupported provider type.');
853
+ const anthropic = config.type === 'anthropic';
854
+ // Resolved once per adapter: `0` is the explicit "no bound" spelling, so the caller's signal
855
+ // stays the only abort source and a slow-but-working request is never cut short.
856
+ const requestTimeoutMs = config.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
857
+ // Discovery keeps its own bound even when inference has none, but a provider that asked for
858
+ // something shorter than that still gets it.
859
+ const listingTimeoutMs = requestTimeoutMs > 0 ? Math.min(requestTimeoutMs, MODEL_LISTING_TIMEOUT_MS) : MODEL_LISTING_TIMEOUT_MS;
860
+ // A configured stream inactivity bound owns inference idleness on its own, so a provider that
861
+ // removed `requestTimeoutMs` for a slow prefill still ends a stream that stops delivering bytes.
862
+ const inferenceTimeoutMs = config.streamIdleTimeoutMs ?? requestTimeoutMs;
863
+ /**
864
+ * One HTTP exchange under the caller's signal plus this call's own deadline.
865
+ *
866
+ * The deadline is kept separate from the caller's signal rather than pre-combined, because the
867
+ * two failures must not be confused: a caller that cancelled is a cancellation, while a deadline
868
+ * this adapter armed is a timeout. Collapsing them reported a stalled endpoint as a user
869
+ * cancellation. The deadline is returned so a failure while reading the body afterwards can
870
+ * still be told apart the same way.
871
+ */
872
+ async function send(path, signal, body, timeoutMs, inference = false, forceRefresh = false) {
873
+ if (signal.aborted)
874
+ cancelled();
875
+ // Credentials can need a token refresh, which is bounded by this request's own deadline too.
876
+ const authDeadline = timeoutMs > 0 ? AbortSignal.timeout(timeoutMs) : undefined;
877
+ let credential;
878
+ try {
879
+ credential = await providerAuthHeaders(config, { forceRefresh, signal: authDeadline ? AbortSignal.any([signal, authDeadline]) : signal });
880
+ }
881
+ catch (error) {
882
+ if (signal.aborted)
883
+ cancelled();
884
+ if (authDeadline?.aborted)
885
+ throw new RetryableProviderError('Provider request timed out.');
886
+ throw error;
887
+ }
888
+ const headers = { 'content-type': 'application/json', ...credential };
889
+ // The credential this request carries, whichever header holds it, so a rejection that echoes it is redacted.
890
+ const key = headers['x-api-key'] ?? headers.authorization?.replace(/^Bearer /, '');
891
+ const idle = inference && timeoutMs > 0 ? new AbortController() : undefined;
892
+ let timer;
893
+ const refresh = () => {
894
+ if (!idle || idle.signal.aborted)
895
+ return;
896
+ clearTimeout(timer);
897
+ timer = setTimeout(() => idle.abort(new DOMException('Provider request timed out.', 'TimeoutError')), timeoutMs);
898
+ };
899
+ let dispose = () => { clearTimeout(timer); };
900
+ const deadline = idle?.signal ?? (timeoutMs > 0 ? AbortSignal.timeout(timeoutMs) : undefined);
901
+ const combined = deadline ? AbortSignal.any([signal, deadline]) : signal;
902
+ const serializedBody = body === undefined ? undefined : JSON.stringify(body);
903
+ refresh();
904
+ let response;
905
+ try {
906
+ response = await fetch(`${base.href.replace(/\/$/, '')}/${path}`, {
907
+ method: body === undefined ? 'GET' : 'POST', headers, redirect: 'error', signal: combined,
908
+ ...(serializedBody === undefined ? {} : { body: serializedBody }),
909
+ });
910
+ }
911
+ catch (error) {
912
+ dispose();
913
+ if (signal.aborted)
914
+ throw new Error('Provider request cancelled.');
915
+ if (deadline?.aborted)
916
+ throw new RetryableProviderError('Provider request timed out.');
917
+ // The transport's own code is what tells an operator whether this is DNS, TLS, a refused
918
+ // port or a bad certificate; without it the sentence repeats the base URL they already know.
919
+ const cause = connectionFailureDetail(error);
920
+ const message = `Provider connection failed${cause ? ` (${cause})` : ''}. Check its URL and network connection.`;
921
+ if (permanentConnectionFailure(error))
922
+ throw new ProviderRequestError(message);
923
+ throw new RetryableProviderError(message);
924
+ }
925
+ // A Console token can be revoked before its recorded expiry; one refresh tells that apart from a
926
+ // login that is really gone, which then fails below like any other rejected credential.
927
+ if (response.status === 401 && config.anthropicAuth === 'console' && !forceRefresh) {
928
+ dispose();
929
+ await response.body?.cancel().catch(() => { });
930
+ return send(path, signal, body, timeoutMs, inference, true);
931
+ }
932
+ if (!response.ok) {
933
+ try {
934
+ // HTTP 413 is sufficient evidence that this payload exceeds the gateway's
935
+ // allowance. Do not depend on error-body format or read an unbounded body.
936
+ if (response.status === 413) {
937
+ await response.body?.cancel().catch(() => { });
938
+ throw new ProviderRequestError('Provider input exceeds the context window.', true);
939
+ }
940
+ const errorData = await boundedJson(response).catch(() => undefined);
941
+ // Context overflow is a classification, not a provider message: reporting it the same
942
+ // way every time keeps retry policy and the run record stable across providers.
943
+ if ([400, 422].includes(response.status) && errorData !== undefined && isEngineContextOverflow(JSON.stringify(errorData))) {
944
+ throw new ProviderRequestError('Provider input exceeds the context window.', true);
945
+ }
946
+ await response.body?.cancel().catch(() => { });
947
+ // A provider that echoes the submitted key back in its rejection message must not have it
948
+ // copied into the thrown error, which lands in the run record outside the trajectory
949
+ // sanitizer's reach.
950
+ const detail = providerErrorDetail(errorData);
951
+ const shown = detail === undefined ? undefined : redactCredential(detail, key);
952
+ const message = `Provider request failed (HTTP ${response.status})${shown ? `: ${shown}` : ''}. Check credentials, model, and provider availability.`;
953
+ if ([408, 409, 429, 500, 502, 503, 504, 529].includes(response.status)) {
954
+ throw new RetryableProviderError(message, retryAfter(response.headers.get('retry-after')));
955
+ }
956
+ throw new HttpProviderError(message, response.status);
957
+ }
958
+ finally {
959
+ dispose();
960
+ }
961
+ }
962
+ if (inference && response.body) {
963
+ refresh();
964
+ const reader = response.body.getReader();
965
+ let ended = false;
966
+ const cleanup = () => {
967
+ clearTimeout(timer);
968
+ combined.removeEventListener('abort', abort);
969
+ };
970
+ const cancelReader = () => { void reader.cancel().catch(() => { }).finally(() => reader.releaseLock()); };
971
+ let streamController;
972
+ const abort = () => {
973
+ if (ended)
974
+ return;
975
+ ended = true;
976
+ cleanup();
977
+ streamController.error(combined.reason);
978
+ cancelReader();
979
+ };
980
+ const stream = new ReadableStream({
981
+ start(controller) {
982
+ streamController = controller;
983
+ combined.addEventListener('abort', abort, { once: true });
984
+ if (combined.aborted)
985
+ abort();
986
+ },
987
+ async pull(controller) {
988
+ try {
989
+ const chunk = await reader.read();
990
+ if (ended)
991
+ return;
992
+ if (chunk.done) {
993
+ ended = true;
994
+ cleanup();
995
+ reader.releaseLock();
996
+ controller.close();
997
+ }
998
+ else {
999
+ if (chunk.value.byteLength)
1000
+ refresh();
1001
+ controller.enqueue(chunk.value);
1002
+ }
1003
+ }
1004
+ catch (error) {
1005
+ if (ended)
1006
+ return;
1007
+ ended = true;
1008
+ cleanup();
1009
+ controller.error(error);
1010
+ cancelReader();
1011
+ }
1012
+ },
1013
+ cancel() {
1014
+ if (ended)
1015
+ return;
1016
+ ended = true;
1017
+ cleanup();
1018
+ return reader.cancel().catch(() => { }).finally(() => reader.releaseLock());
1019
+ },
1020
+ }, { highWaterMark: 0 });
1021
+ dispose = () => {
1022
+ if (ended)
1023
+ return;
1024
+ ended = true;
1025
+ cleanup();
1026
+ cancelReader();
1027
+ };
1028
+ response = new Response(stream, { status: response.status, statusText: response.statusText, headers: response.headers });
1029
+ }
1030
+ return { response, deadline, dispose };
1031
+ }
1032
+ async function request(path, signal, body, timeoutMs = requestTimeoutMs, onRequest) {
1033
+ onRequest?.();
1034
+ const { response, deadline } = await send(path, signal, body, timeoutMs);
1035
+ try {
1036
+ return record(await boundedJson(response));
1037
+ }
1038
+ catch (error) {
1039
+ if (signal.aborted)
1040
+ throw new Error('Provider request cancelled.');
1041
+ if (deadline?.aborted)
1042
+ throw new RetryableProviderError('Provider request timed out.');
1043
+ if (error instanceof ResponseTooLargeError || error instanceof RetryableProviderError)
1044
+ throw error;
1045
+ return malformed();
1046
+ }
1047
+ }
1048
+ /**
1049
+ * Run one serialized inference attempt under the shared retry policy; never re-enter the
1050
+ * agent/tool loop. Both the whole-body and the streaming request use it, so a connection
1051
+ * that drops mid-stream restarts the same request exactly like a failed handshake.
1052
+ */
1053
+ async function withRetries(attempt, signal, onRetry, prepareRetry) {
1054
+ for (let retry = 0;; retry++) {
1055
+ if (signal.aborted)
1056
+ cancelled();
1057
+ try {
1058
+ return await attempt();
1059
+ }
1060
+ catch (error) {
1061
+ if (signal.aborted)
1062
+ cancelled();
1063
+ if (!(error instanceof RetryableProviderError))
1064
+ throw error;
1065
+ // Record request-local recovery state even when this was the final allowed attempt.
1066
+ // In particular, a malformed fourth response must still trip the adapter's sticky
1067
+ // whole-body circuit breaker for the next independent generation.
1068
+ prepareRetry?.(error);
1069
+ if (retry >= MAX_REQUEST_RETRIES)
1070
+ throw error;
1071
+ // Never retry earlier than the server requests. The staged schedule gives transient
1072
+ // local/network failures time to recover without hammering the endpoint.
1073
+ if (error.retryAfterMs > MAX_AUTOMATIC_RETRY_AFTER_MS)
1074
+ throw new ProviderRequestError(`${error.message} Retry-After exceeds the 120-second automatic retry limit.`);
1075
+ const delayMs = Math.max(error.retryDelaysMs[retry] ?? error.retryDelaysMs.at(-1) ?? 0, error.retryAfterMs);
1076
+ const reason = error instanceof MalformedStreamProviderError
1077
+ ? 'Provider returned a malformed streamed response; retrying without streaming.'
1078
+ : error.message;
1079
+ await onRetry?.({ retry: retry + 1, maxRetries: MAX_REQUEST_RETRIES, delayMs, reason });
1080
+ try {
1081
+ await delay(delayMs, undefined, { signal });
1082
+ }
1083
+ catch {
1084
+ cancelled();
1085
+ }
1086
+ }
1087
+ }
1088
+ }
1089
+ // A provider that emits malformed SSE is kept on whole-body responses for this adapter's
1090
+ // lifetime. Recreating/switching the provider probes streaming again without repeatedly
1091
+ // sacrificing long generations to a known-bad stream path.
1092
+ let preferNonStreaming = false;
1093
+ return {
1094
+ async generate(input) {
1095
+ const { model, tools, signal, onRetry, onRequest } = input;
1096
+ let requests = 0;
1097
+ let deadline;
1098
+ let dispose;
1099
+ let forceNonStreaming = preferNonStreaming;
1100
+ let currentRequestNonStreaming = false;
1101
+ const advertised = tools.some(tool => tool.name === COMPLETION_TOOL);
1102
+ try {
1103
+ const result = await withRetries(() => generateEngineResponse(input, {
1104
+ providerId: config.id, baseUrl: base.href.replace(/\/$/, ''), anthropic,
1105
+ contextWindow: model === config.model ? config.contextWindow ?? 128_000 : 128_000,
1106
+ reasoningEffort: model === config.model ? config.reasoningEffort : undefined,
1107
+ async send(body) {
1108
+ // A failed send must not inherit an expired deadline from an earlier response.
1109
+ deadline = undefined;
1110
+ dispose?.();
1111
+ dispose = undefined;
1112
+ requests++;
1113
+ onRequest?.();
1114
+ // Re-read the adapter-wide breaker for every attempt: another concurrent
1115
+ // invocation may have discovered a broken stream while this one was backing off.
1116
+ currentRequestNonStreaming = forceNonStreaming || preferNonStreaming;
1117
+ const requestBody = currentRequestNonStreaming
1118
+ ? (() => { const plain = { ...body }; delete plain.stream_options; plain.stream = false; return plain; })()
1119
+ : body;
1120
+ const sent = await send(anthropic ? 'messages' : 'chat/completions', signal, requestBody, inferenceTimeoutMs, true);
1121
+ deadline = sent.deadline;
1122
+ dispose = sent.dispose;
1123
+ return sent.response;
1124
+ },
1125
+ async parseWhole(response) {
1126
+ let data;
1127
+ try {
1128
+ data = record(await boundedJson(response));
1129
+ }
1130
+ catch (error) {
1131
+ if (signal.aborted)
1132
+ cancelled();
1133
+ if (deadline?.aborted)
1134
+ throw new RetryableProviderError('Provider request timed out.');
1135
+ if (error instanceof ResponseTooLargeError || error instanceof RetryableProviderError)
1136
+ throw error;
1137
+ return malformed();
1138
+ }
1139
+ if (!anthropic)
1140
+ return wholeBodyCompletion(data, requests, advertised);
1141
+ if (!Array.isArray(data.content) || !data.content.length)
1142
+ return malformed();
1143
+ const text = [], calls = [];
1144
+ const thinking = [];
1145
+ for (const raw of data.content) {
1146
+ const block = record(raw);
1147
+ if (block.type === 'text') {
1148
+ if (typeof block.text !== 'string')
1149
+ return malformed();
1150
+ text.push(block.text);
1151
+ }
1152
+ else if (block.type === 'tool_use') {
1153
+ calls.push({ id: nonempty(block.id), name: nonempty(block.name), arguments: JSON.stringify(record(block.input)) });
1154
+ }
1155
+ else if (block.type === 'thinking') {
1156
+ if (typeof block.thinking !== 'string' || typeof block.signature !== 'string')
1157
+ return malformed();
1158
+ thinking.push({ type: 'thinking', thinking: block.thinking, thinkingSignature: block.signature });
1159
+ }
1160
+ else if (block.type === 'redacted_thinking') {
1161
+ if (typeof block.data !== 'string')
1162
+ return malformed();
1163
+ thinking.push({ type: 'thinking', thinking: '[Reasoning redacted]', thinkingSignature: block.data, redacted: true });
1164
+ }
1165
+ else
1166
+ return malformed();
1167
+ }
1168
+ const stopReason = nonempty(data.stop_reason);
1169
+ if (stopReason === 'tool_use' && !calls.length)
1170
+ return malformed();
1171
+ return { text: text.join('\n'), toolCalls: stopReason === 'max_tokens' ? [] : checkCalls(calls, advertised),
1172
+ usage: { ...usage(data.usage, true), requests }, stopReason: stopReason === 'max_tokens' ? 'length' : stopReason,
1173
+ ...(thinking.length ? { providerContinuation: { api: 'anthropic-messages', provider: config.id, model, thinking } } : {}) };
1174
+ },
1175
+ checkCalls: calls => checkCalls(calls, advertised),
1176
+ streamReadError: () => new RetryableProviderError('Provider connection failed while reading its response.'),
1177
+ streamMalformedError: () => new MalformedStreamProviderError(),
1178
+ streamingDisabled: () => currentRequestNonStreaming,
1179
+ ...(anthropic ? { streamValidator() {
1180
+ const validator = createAnthropicStreamAccumulator();
1181
+ return { event: validator.event, finish: () => validator.finish(requests, advertised) };
1182
+ } } : { streamValidator() {
1183
+ const validator = createStreamAccumulator(() => { });
1184
+ return { event: validator.event, finish() {
1185
+ if (!validator.completed)
1186
+ throw new RetryableProviderError('Provider closed the stream before the response completed.');
1187
+ return validator.finish(requests, advertised);
1188
+ } };
1189
+ } }),
1190
+ }).catch(error => {
1191
+ if (signal.aborted)
1192
+ cancelled();
1193
+ if (deadline?.aborted)
1194
+ throw new RetryableProviderError('Provider request timed out.');
1195
+ throw error;
1196
+ }).finally(() => { dispose?.(); dispose = undefined; }), signal, onRetry, error => {
1197
+ if (error instanceof MalformedStreamProviderError) {
1198
+ forceNonStreaming = true;
1199
+ preferNonStreaming = true;
1200
+ }
1201
+ });
1202
+ return { ...result, usage: { ...result.usage, requests } };
1203
+ }
1204
+ catch (error) {
1205
+ if (error instanceof ProviderRequestError)
1206
+ throw error;
1207
+ throw new ProviderRequestError(error instanceof Error ? error.message : 'Provider request failed.');
1208
+ }
1209
+ },
1210
+ async listModels(signal) {
1211
+ const ids = [];
1212
+ let path = 'models';
1213
+ const seen = new Set();
1214
+ for (let page = 0; page < 100; page++) {
1215
+ const data = await request(path, signal, undefined, listingTimeoutMs);
1216
+ if (!Array.isArray(data.data))
1217
+ return malformed();
1218
+ ids.push(...data.data.map(item => nonempty(record(item).id)));
1219
+ if (!anthropic || !data.has_more)
1220
+ return [...new Set(ids)].sort();
1221
+ const cursor = nonempty(data.last_id);
1222
+ if (seen.has(cursor))
1223
+ return malformed();
1224
+ seen.add(cursor);
1225
+ path = `models?after_id=${encodeURIComponent(cursor)}`;
1226
+ }
1227
+ throw new Error('Provider model listing exceeded the pagination limit.');
1228
+ },
1229
+ };
1230
+ }