experimental-ash 0.25.2 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (765) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/bin/ash.d.ts +4 -4
  3. package/bin/ash.js +12 -8
  4. package/dist/docs/public/channels/README.md +26 -2
  5. package/dist/docs/public/channels/discord.md +159 -0
  6. package/dist/docs/public/channels/slack.md +14 -2
  7. package/dist/docs/public/subagents.md +38 -0
  8. package/dist/src/_virtual/_rolldown/runtime.js +1 -0
  9. package/dist/src/channel/adapter-context.js +1 -24
  10. package/dist/src/channel/adapter.js +1 -62
  11. package/dist/src/channel/compiled-channel.js +1 -6
  12. package/dist/src/channel/cross-channel-receive.js +2 -108
  13. package/dist/src/channel/http.js +1 -30
  14. package/dist/src/channel/receive-args.js +1 -1
  15. package/dist/src/channel/resolve-text.js +1 -59
  16. package/dist/src/channel/routes.js +1 -15
  17. package/dist/src/channel/schedule.js +1 -81
  18. package/dist/src/channel/send.js +1 -81
  19. package/dist/src/channel/session-callback.js +1 -65
  20. package/dist/src/channel/session.js +1 -58
  21. package/dist/src/channel/types.js +1 -1
  22. package/dist/src/cli/commands/channels.d.ts +15 -0
  23. package/dist/src/cli/commands/channels.js +3 -0
  24. package/dist/src/cli/commands/info.js +2 -2
  25. package/dist/src/cli/dev/environment.js +1 -1
  26. package/dist/src/cli/dev/input-requests.js +1 -1
  27. package/dist/src/cli/dev/input.js +1 -1
  28. package/dist/src/cli/dev/repl.js +2 -3
  29. package/dist/src/cli/dev/terminal.js +5 -5
  30. package/dist/src/cli/dev/url.js +1 -1
  31. package/dist/src/cli/run.js +2 -2
  32. package/dist/src/cli/ui/output.js +8 -8
  33. package/dist/src/client/client-error.js +1 -19
  34. package/dist/src/client/client.js +1 -128
  35. package/dist/src/client/index.js +1 -11
  36. package/dist/src/client/message-reducer-types.js +1 -1
  37. package/dist/src/client/message-reducer.js +1 -456
  38. package/dist/src/client/message-response.js +1 -55
  39. package/dist/src/client/ndjson.js +3 -62
  40. package/dist/src/client/open-stream.js +1 -45
  41. package/dist/src/client/reducer.js +1 -1
  42. package/dist/src/client/session-utils.js +1 -62
  43. package/dist/src/client/session.js +1 -206
  44. package/dist/src/client/types.js +1 -1
  45. package/dist/src/client/url.js +1 -34
  46. package/dist/src/compiled/.vendor-stamp.json +6 -1
  47. package/dist/src/compiled/@vercel/oidc/LICENSE +202 -0
  48. package/dist/src/compiled/@vercel/oidc/index.d.ts +21 -0
  49. package/dist/src/compiled/@vercel/oidc/index.js +2 -0
  50. package/dist/src/compiled/@vercel/oidc/package.json +7 -0
  51. package/dist/src/compiled/chokidar/LICENSE +21 -0
  52. package/dist/src/compiled/chokidar/index.d.ts +33 -0
  53. package/dist/src/compiled/chokidar/index.js +1 -0
  54. package/dist/src/compiled/chokidar/package.json +7 -0
  55. package/dist/src/compiled/commander/LICENSE +22 -0
  56. package/dist/src/compiled/commander/index.d.ts +1113 -0
  57. package/dist/src/{chunks/url-JdCGA634.js → compiled/commander/index.js} +10 -10
  58. package/dist/src/compiled/commander/package.json +7 -0
  59. package/dist/src/compiled/gray-matter/LICENSE +21 -0
  60. package/dist/src/compiled/gray-matter/index.d.ts +62 -0
  61. package/dist/src/{chunks/gray-matter-D-9jHwOT.js → compiled/gray-matter/index.js} +2 -2
  62. package/dist/src/compiled/gray-matter/package.json +7 -0
  63. package/dist/src/compiled/picocolors/LICENSE +15 -0
  64. package/dist/src/compiled/picocolors/index.d.ts +55 -0
  65. package/dist/src/compiled/picocolors/index.js +1 -0
  66. package/dist/src/compiled/picocolors/package.json +7 -0
  67. package/dist/src/compiler/artifacts.js +1 -147
  68. package/dist/src/compiler/compile-agent.js +3 -76
  69. package/dist/src/compiler/compile-from-memory.js +1 -59
  70. package/dist/src/compiler/manifest.js +1 -424
  71. package/dist/src/compiler/model-catalog.js +1 -224
  72. package/dist/src/compiler/module-map.js +5 -295
  73. package/dist/src/compiler/normalize-agent-config.js +1 -157
  74. package/dist/src/compiler/normalize-channel.js +1 -51
  75. package/dist/src/compiler/normalize-connection.js +1 -58
  76. package/dist/src/compiler/normalize-helpers.js +1 -23
  77. package/dist/src/compiler/normalize-hook.js +1 -19
  78. package/dist/src/compiler/normalize-instructions.js +1 -28
  79. package/dist/src/compiler/normalize-manifest.js +1 -79
  80. package/dist/src/compiler/normalize-sandbox.js +1 -20
  81. package/dist/src/compiler/normalize-schedule.js +1 -38
  82. package/dist/src/compiler/normalize-skill.js +1 -60
  83. package/dist/src/compiler/normalize-subagent.js +1 -174
  84. package/dist/src/compiler/normalize-tool.js +1 -40
  85. package/dist/src/compiler/remote-agent-node.js +1 -19
  86. package/dist/src/compiler/workspace-resources.js +1 -85
  87. package/dist/src/context/accessors.js +1 -93
  88. package/dist/src/context/container.js +1 -89
  89. package/dist/src/context/hook-lifecycle.js +1 -242
  90. package/dist/src/context/key.js +1 -39
  91. package/dist/src/context/keys.js +1 -43
  92. package/dist/src/context/node.js +1 -9
  93. package/dist/src/context/provider.js +1 -1
  94. package/dist/src/context/providers/connection.js +1 -17
  95. package/dist/src/context/providers/sandbox.js +1 -46
  96. package/dist/src/context/providers/session.js +1 -18
  97. package/dist/src/context/run-step.js +1 -51
  98. package/dist/src/context/seed-keys.js +1 -37
  99. package/dist/src/context/serialize.js +1 -44
  100. package/dist/src/discover/connections.js +1 -153
  101. package/dist/src/discover/diagnostics.js +1 -82
  102. package/dist/src/discover/discover-agent.js +1 -159
  103. package/dist/src/discover/discover-subagent.js +1 -223
  104. package/dist/src/discover/filesystem.js +1 -215
  105. package/dist/src/discover/grammar.js +1 -371
  106. package/dist/src/discover/lib.js +1 -34
  107. package/dist/src/discover/manifest.js +1 -136
  108. package/dist/src/discover/markdown.js +1 -17
  109. package/dist/src/discover/named-source-directory.js +1 -188
  110. package/dist/src/discover/project-source.js +1 -152
  111. package/dist/src/discover/project.js +1 -117
  112. package/dist/src/discover/sandbox.js +1 -220
  113. package/dist/src/discover/schedules.js +1 -41
  114. package/dist/src/discover/skills.js +1 -274
  115. package/dist/src/discover/slots.js +1 -68
  116. package/dist/src/evals/cli/eval.js +1 -1
  117. package/dist/src/evals/define-eval-suite.js +1 -1
  118. package/dist/src/evals/index.js +1 -1
  119. package/dist/src/evals/loaders/index.js +1 -1
  120. package/dist/src/evals/loaders/json.js +1 -1
  121. package/dist/src/evals/loaders/yaml.js +1 -1
  122. package/dist/src/evals/reporters/index.js +1 -1
  123. package/dist/src/evals/runner/artifacts.js +3 -3
  124. package/dist/src/evals/runner/derive-run-facts.js +1 -1
  125. package/dist/src/evals/runner/discover.js +1 -1
  126. package/dist/src/evals/runner/execute-case.js +1 -1
  127. package/dist/src/evals/runner/execute-suite.js +1 -1
  128. package/dist/src/evals/runner/reporters/braintrust.js +2 -2
  129. package/dist/src/evals/runner/reporters/console.js +1 -1
  130. package/dist/src/evals/runner/resolve-git-metadata.js +1 -1
  131. package/dist/src/evals/scorers/autoevals-client.js +2 -2
  132. package/dist/src/evals/scorers/autoevals.js +1 -1
  133. package/dist/src/evals/scorers/json.js +1 -1
  134. package/dist/src/evals/scorers/run.js +1 -1
  135. package/dist/src/evals/scorers/sql.js +1 -1
  136. package/dist/src/evals/scorers/text.js +1 -1
  137. package/dist/src/evals/scores/index.js +1 -1
  138. package/dist/src/execution/authorization-challenge-defaults.js +1 -60
  139. package/dist/src/execution/await-authorization-orchestrator.js +1 -192
  140. package/dist/src/execution/await-authorization-splice.js +1 -66
  141. package/dist/src/execution/connection-auth-steps.js +1 -338
  142. package/dist/src/execution/node-step.js +1 -146
  143. package/dist/src/execution/remote-agent-dispatch.js +1 -79
  144. package/dist/src/execution/runtime-context.js +1 -26
  145. package/dist/src/execution/runtime-errors.js +1 -19
  146. package/dist/src/execution/sandbox/bash-tool.js +1 -42
  147. package/dist/src/execution/sandbox/bindings/local.js +1 -296
  148. package/dist/src/execution/sandbox/bindings/vercel.js +1 -363
  149. package/dist/src/execution/sandbox/ensure.js +1 -91
  150. package/dist/src/execution/sandbox/glob-tool.js +3 -146
  151. package/dist/src/execution/sandbox/grep-tool.js +3 -183
  152. package/dist/src/execution/sandbox/lazy-backend.js +1 -33
  153. package/dist/src/execution/sandbox/prewarm.js +1 -132
  154. package/dist/src/execution/sandbox/read-file-tool.js +3 -118
  155. package/dist/src/execution/sandbox/require-sandbox.js +1 -32
  156. package/dist/src/execution/sandbox/ripgrep-probe.js +1 -36
  157. package/dist/src/execution/sandbox/session.js +3 -158
  158. package/dist/src/execution/sandbox/shell-quote.js +1 -14
  159. package/dist/src/execution/sandbox/stream-utils.js +1 -22
  160. package/dist/src/execution/sandbox/truncate-output.js +3 -110
  161. package/dist/src/execution/sandbox/write-file-tool.js +1 -62
  162. package/dist/src/execution/session-callback-step.js +1 -72
  163. package/dist/src/execution/session.js +3 -94
  164. package/dist/src/execution/skills/instructions.js +2 -30
  165. package/dist/src/execution/skills/types.js +1 -1
  166. package/dist/src/execution/subagent-adapter.js +1 -94
  167. package/dist/src/execution/subagent-hitl-proxy.js +1 -81
  168. package/dist/src/execution/subagent-invocation.js +2 -16
  169. package/dist/src/execution/subagent-tool.js +1 -48
  170. package/dist/src/execution/tool-compaction.js +1 -54
  171. package/dist/src/execution/turn-workflow.js +1 -95
  172. package/dist/src/execution/web-fetch/html.js +7 -60
  173. package/dist/src/execution/web-fetch/tool.js +1 -90
  174. package/dist/src/execution/workflow-entry.js +1 -494
  175. package/dist/src/execution/workflow-errors.js +1 -54
  176. package/dist/src/execution/workflow-runtime.js +3 -161
  177. package/dist/src/execution/workflow-steps.js +1 -467
  178. package/dist/src/harness/action-result-helpers.js +1 -82
  179. package/dist/src/harness/attachment-staging.js +1 -303
  180. package/dist/src/harness/compaction.js +4 -221
  181. package/dist/src/harness/emission.js +1 -323
  182. package/dist/src/harness/execute-tool.js +1 -1
  183. package/dist/src/harness/input-extraction.js +1 -62
  184. package/dist/src/harness/input-requests.js +1 -306
  185. package/dist/src/harness/instrumentation-config.js +1 -42
  186. package/dist/src/harness/messages.js +1 -144
  187. package/dist/src/harness/model-call-error.js +1 -368
  188. package/dist/src/harness/otel-integration.js +1 -18
  189. package/dist/src/harness/prompt-cache.js +1 -137
  190. package/dist/src/harness/provider-tools.js +1 -137
  191. package/dist/src/harness/proxy-input-requests.js +1 -91
  192. package/dist/src/harness/runtime-actions.js +1 -321
  193. package/dist/src/harness/step-hooks.js +1 -192
  194. package/dist/src/harness/tool-loop.js +1 -877
  195. package/dist/src/harness/tool-result-pruning.js +1 -124
  196. package/dist/src/harness/tools.js +1 -98
  197. package/dist/src/harness/types.js +1 -1
  198. package/dist/src/index.js +1 -1
  199. package/dist/src/internal/application/cache-metadata.js +1 -42
  200. package/dist/src/internal/application/compiled-artifacts.js +4 -114
  201. package/dist/src/internal/application/import-specifier.js +1 -58
  202. package/dist/src/internal/application/package.js +1 -196
  203. package/dist/src/internal/application/paths.js +1 -117
  204. package/dist/src/internal/application/runtime-compiled-artifacts-source.js +1 -11
  205. package/dist/src/internal/attachments/data.js +1 -127
  206. package/dist/src/internal/attachments/errors.js +1 -26
  207. package/dist/src/internal/attachments/refs.js +1 -94
  208. package/dist/src/internal/attachments/sandbox-refs.js +1 -78
  209. package/dist/src/internal/attachments/url-refs.js +1 -20
  210. package/dist/src/internal/authored-asset-import-plugin.js +1 -141
  211. package/dist/src/internal/authored-definition/channel.js +1 -21
  212. package/dist/src/internal/authored-definition/connection.js +1 -148
  213. package/dist/src/internal/authored-definition/core.js +1 -180
  214. package/dist/src/internal/authored-definition/sandbox.js +1 -47
  215. package/dist/src/internal/authored-definition/schema-backed.js +1 -56
  216. package/dist/src/internal/authored-module-bundle.js +2 -19
  217. package/dist/src/internal/authored-module-loader.js +2 -263
  218. package/dist/src/internal/authored-module-map-loader.js +1 -53
  219. package/dist/src/internal/authored-module.js +1 -81
  220. package/dist/src/internal/authored-package-tsconfig-paths.js +1 -209
  221. package/dist/src/internal/bundler/nitro-rolldown.js +1 -42
  222. package/dist/src/internal/helpers/markdown.js +3 -174
  223. package/dist/src/internal/json-schema.js +1 -13
  224. package/dist/src/internal/logging.js +1 -226
  225. package/dist/src/internal/nitro/host/artifacts-config.js +1 -17
  226. package/dist/src/internal/nitro/host/build-application.js +1 -177
  227. package/dist/src/internal/nitro/host/build-vercel-agent-summary.js +1 -140
  228. package/dist/src/internal/nitro/host/channel-routes.js +2 -126
  229. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.js +2 -28
  230. package/dist/src/internal/nitro/host/configure-nitro-routes.js +4 -272
  231. package/dist/src/internal/nitro/host/create-application-nitro.js +1 -491
  232. package/dist/src/internal/nitro/host/cron-handler-route.js +1 -49
  233. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +1 -390
  234. package/dist/src/internal/nitro/host/nitro-bundler-config.js +1 -10
  235. package/dist/src/internal/nitro/host/nitro-routing-import-specifier-plugin.js +1 -28
  236. package/dist/src/internal/nitro/host/prepare-application-host.js +1 -32
  237. package/dist/src/internal/nitro/host/schedule-task-routes.js +2 -148
  238. package/dist/src/internal/nitro/host/server-external-packages.js +1 -107
  239. package/dist/src/internal/nitro/host/start-development-server.js +1 -223
  240. package/dist/src/internal/nitro/host/types.js +1 -1
  241. package/dist/src/internal/nitro/host/vercel-build-output-config.js +1 -14
  242. package/dist/src/internal/nitro/host/vercel-build-prewarm.js +1 -30
  243. package/dist/src/internal/nitro/host.js +1 -2
  244. package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response.js +2 -180
  245. package/dist/src/internal/nitro/routes/agent-info/load-agent-info-data.js +1 -46
  246. package/dist/src/internal/nitro/routes/channel-dispatch.js +1 -74
  247. package/dist/src/internal/nitro/routes/health.js +1 -17
  248. package/dist/src/internal/nitro/routes/index.js +2 -89
  249. package/dist/src/internal/nitro/routes/info.js +1 -50
  250. package/dist/src/internal/nitro/routes/runtime-artifacts.js +1 -24
  251. package/dist/src/internal/nitro/routes/runtime-stack.js +1 -23
  252. package/dist/src/internal/nitro/routes/schedule-task.js +1 -57
  253. package/dist/src/internal/nitro/routes/workflow-data.js +1 -141
  254. package/dist/src/internal/nitro/routes/workflow-route-helpers.js +1 -137
  255. package/dist/src/internal/nitro/routes/workflow-run-events.js +1 -41
  256. package/dist/src/internal/nitro/routes/workflow-run-steps.js +1 -41
  257. package/dist/src/internal/nitro/routes/workflow-run.js +1 -34
  258. package/dist/src/internal/nitro/routes/workflow-runs.js +1 -28
  259. package/dist/src/internal/node-esm-compat-banner.js +2 -65
  260. package/dist/src/internal/package-name.js +1 -8
  261. package/dist/src/internal/process/pnpm.d.ts +28 -0
  262. package/dist/src/internal/process/pnpm.js +1 -0
  263. package/dist/src/internal/runtime-model.js +1 -24
  264. package/dist/src/internal/runtime-registry.js +1 -93
  265. package/dist/src/internal/vercel-agent-summary.js +1 -72
  266. package/dist/src/internal/workflow/builtins.js +1 -18
  267. package/dist/src/internal/workflow/index.js +1 -9
  268. package/dist/src/internal/workflow-bundle/ash-service-route-output.js +3 -93
  269. package/dist/src/internal/workflow-bundle/builder-support.js +5 -372
  270. package/dist/src/internal/workflow-bundle/builder.js +5 -472
  271. package/dist/src/internal/workflow-bundle/nitro-step-entry.js +2 -132
  272. package/dist/src/internal/workflow-bundle/vercel-workflow-output.js +3 -494
  273. package/dist/src/internal/workflow-bundle/workflow-builders.js +1 -292
  274. package/dist/src/internal/workflow-bundle/workflow-core-shim.js +1 -84
  275. package/dist/src/internal/workflow-bundle/workflow-transformer.js +5 -318
  276. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/ajv.js +1 -0
  277. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js +1 -0
  278. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js +2 -0
  279. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js +1 -0
  280. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js +1 -0
  281. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/index.js +1 -0
  282. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/names.js +1 -0
  283. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js +1 -0
  284. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js +1 -0
  285. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js +1 -0
  286. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/util.js +1 -0
  287. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/applicability.js +1 -0
  288. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js +1 -0
  289. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js +4 -0
  290. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js +1 -0
  291. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js +1 -0
  292. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js +1 -0
  293. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js +1 -0
  294. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/core.js +1 -0
  295. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/data.js +1 -0
  296. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-draft-07.js +1 -0
  297. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js +1 -0
  298. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/ucs2length.js +1 -0
  299. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js +1 -0
  300. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/validation_error.js +1 -0
  301. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +1 -0
  302. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +1 -0
  303. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js +1 -0
  304. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +1 -0
  305. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js +1 -0
  306. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +4 -0
  307. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js +1 -0
  308. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js +1 -0
  309. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js +1 -0
  310. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js +1 -0
  311. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js +1 -0
  312. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +1 -0
  313. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +1 -0
  314. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +1 -0
  315. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js +1 -0
  316. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +1 -0
  317. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +1 -0
  318. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js +1 -0
  319. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/id.js +1 -0
  320. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js +1 -0
  321. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js +1 -0
  322. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js +1 -0
  323. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/types.js +1 -0
  324. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js +1 -0
  325. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js +1 -0
  326. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/index.js +1 -0
  327. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/metadata.js +1 -0
  328. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js +1 -0
  329. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js +1 -0
  330. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js +1 -0
  331. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js +1 -0
  332. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js +1 -0
  333. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +1 -0
  334. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +1 -0
  335. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +1 -0
  336. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js +1 -0
  337. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js +1 -0
  338. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +1 -0
  339. package/dist/src/node_modules/.pnpm/autoevals@0.0.132_ws@8.21.0/node_modules/autoevals/jsdist/index.js +384 -0
  340. package/dist/src/node_modules/.pnpm/compute-cosine-similarity@1.1.0/node_modules/compute-cosine-similarity/lib/index.js +1 -0
  341. package/dist/src/node_modules/.pnpm/compute-dot@1.1.0/node_modules/compute-dot/lib/index.js +1 -0
  342. package/dist/src/node_modules/.pnpm/compute-l2norm@1.1.0/node_modules/compute-l2norm/lib/index.js +1 -0
  343. package/dist/src/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +1 -0
  344. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/index.js +1 -0
  345. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/schemes.js +1 -0
  346. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/utils.js +1 -0
  347. package/dist/src/node_modules/.pnpm/js-levenshtein@1.1.6/node_modules/js-levenshtein/index.js +1 -0
  348. package/dist/src/node_modules/.pnpm/js-yaml@4.1.1/node_modules/js-yaml/dist/js-yaml.js +32 -0
  349. package/dist/src/node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js +1 -0
  350. package/dist/src/node_modules/.pnpm/mustache@4.2.0/node_modules/mustache/mustache.js +4 -0
  351. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/_vendor/partial-json-parser/parser.js +2 -0
  352. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/auth/workload-identity-auth.js +1 -0
  353. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/azure.js +1 -0
  354. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/client.js +11 -0
  355. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/api-promise.js +1 -0
  356. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/error.js +1 -0
  357. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/pagination.js +1 -0
  358. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/resource.js +1 -0
  359. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/streaming.js +3 -0
  360. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/uploads.js +1 -0
  361. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/error.js +1 -0
  362. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/index.js +1 -0
  363. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/decoders/line.js +3 -0
  364. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/detect-platform.js +1 -0
  365. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/errors.js +1 -0
  366. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/headers.js +1 -0
  367. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/parse.js +1 -0
  368. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/formats.js +1 -0
  369. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/stringify.js +1 -0
  370. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/utils.js +1 -0
  371. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/request-options.js +1 -0
  372. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/shims.js +1 -0
  373. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/to-file.js +1 -0
  374. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/tslib.js +1 -0
  375. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/uploads.js +1 -0
  376. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/base64.js +1 -0
  377. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/bytes.js +1 -0
  378. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/env.js +1 -0
  379. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/log.js +1 -0
  380. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/path.js +2 -0
  381. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/query.js +1 -0
  382. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/sleep.js +1 -0
  383. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/uuid.js +1 -0
  384. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/values.js +1 -0
  385. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils.js +1 -0
  386. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/AbstractChatCompletionRunner.js +1 -0
  387. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/AssistantStream.js +1 -0
  388. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ChatCompletionRunner.js +1 -0
  389. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ChatCompletionStream.js +1 -0
  390. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ChatCompletionStreamingRunner.js +1 -0
  391. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/EventStream.js +1 -0
  392. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ResponsesParser.js +1 -0
  393. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/RunnableFunction.js +1 -0
  394. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/Util.js +1 -0
  395. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/chatCompletionUtils.js +1 -0
  396. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/parser.js +1 -0
  397. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/responses/ResponseStream.js +1 -0
  398. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/admin.js +1 -0
  399. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/admin-api-keys.js +1 -0
  400. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/audit-logs.js +1 -0
  401. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/certificates.js +1 -0
  402. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/data-retention.js +1 -0
  403. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/groups/groups.js +1 -0
  404. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/groups/roles.js +1 -0
  405. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/groups/users.js +1 -0
  406. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/invites.js +1 -0
  407. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/organization.js +1 -0
  408. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/api-keys.js +1 -0
  409. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/certificates.js +1 -0
  410. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/data-retention.js +1 -0
  411. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/groups/groups.js +1 -0
  412. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/groups/roles.js +1 -0
  413. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/hosted-tool-permissions.js +1 -0
  414. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/model-permissions.js +1 -0
  415. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/projects.js +1 -0
  416. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/rate-limits.js +1 -0
  417. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/roles.js +1 -0
  418. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/service-accounts.js +1 -0
  419. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/spend-alerts.js +1 -0
  420. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/users/roles.js +1 -0
  421. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/users/users.js +1 -0
  422. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/roles.js +1 -0
  423. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/spend-alerts.js +1 -0
  424. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/usage.js +1 -0
  425. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/users/roles.js +1 -0
  426. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/users/users.js +1 -0
  427. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/audio.js +1 -0
  428. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/speech.js +1 -0
  429. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/transcriptions.js +1 -0
  430. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/translations.js +1 -0
  431. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/batches.js +1 -0
  432. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/assistants.js +1 -0
  433. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/beta.js +1 -0
  434. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/chatkit/chatkit.js +1 -0
  435. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/chatkit/sessions.js +1 -0
  436. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/chatkit/threads.js +1 -0
  437. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/realtime/realtime.js +1 -0
  438. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/realtime/sessions.js +1 -0
  439. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/realtime/transcription-sessions.js +1 -0
  440. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/messages.js +1 -0
  441. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/runs/runs.js +1 -0
  442. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/runs/steps.js +1 -0
  443. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/threads.js +1 -0
  444. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/chat.js +1 -0
  445. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/completions/completions.js +1 -0
  446. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/completions/index.js +1 -0
  447. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/completions/messages.js +1 -0
  448. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/index.js +1 -0
  449. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/completions.js +1 -0
  450. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/containers/containers.js +1 -0
  451. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/containers/files/content.js +1 -0
  452. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/containers/files/files.js +1 -0
  453. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/conversations/conversations.js +1 -0
  454. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/conversations/items.js +1 -0
  455. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/embeddings.js +1 -0
  456. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/evals/evals.js +1 -0
  457. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/evals/runs/output-items.js +1 -0
  458. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/evals/runs/runs.js +1 -0
  459. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/files.js +1 -0
  460. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/alpha/alpha.js +1 -0
  461. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/alpha/graders.js +1 -0
  462. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/checkpoints/checkpoints.js +1 -0
  463. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/checkpoints/permissions.js +1 -0
  464. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/fine-tuning.js +1 -0
  465. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/jobs/checkpoints.js +1 -0
  466. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/jobs/jobs.js +1 -0
  467. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/methods.js +1 -0
  468. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/graders/grader-models.js +1 -0
  469. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/graders/graders.js +1 -0
  470. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/images.js +1 -0
  471. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/index.js +1 -0
  472. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/models.js +1 -0
  473. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/moderations.js +1 -0
  474. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/realtime/calls.js +1 -0
  475. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/realtime/client-secrets.js +1 -0
  476. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/realtime/realtime.js +1 -0
  477. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/responses/input-items.js +1 -0
  478. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/responses/input-tokens.js +1 -0
  479. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/responses/responses.js +1 -0
  480. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/shared.js +1 -0
  481. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/content.js +1 -0
  482. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/skills.js +1 -0
  483. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/versions/content.js +1 -0
  484. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/versions/versions.js +1 -0
  485. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/uploads/parts.js +1 -0
  486. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/uploads/uploads.js +1 -0
  487. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/vector-stores/file-batches.js +1 -0
  488. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/vector-stores/files.js +1 -0
  489. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/vector-stores/vector-stores.js +1 -0
  490. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/videos.js +1 -0
  491. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/webhooks/index.js +1 -0
  492. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/webhooks/webhooks.js +1 -0
  493. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/webhooks.js +1 -0
  494. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/streaming.js +1 -0
  495. package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/version.js +1 -0
  496. package/dist/src/node_modules/.pnpm/validate.io-array@1.0.6/node_modules/validate.io-array/lib/index.js +1 -0
  497. package/dist/src/node_modules/.pnpm/validate.io-function@1.0.2/node_modules/validate.io-function/lib/index.js +1 -0
  498. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js +1 -0
  499. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js +1 -0
  500. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +1 -0
  501. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +1 -0
  502. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/index.js +1 -0
  503. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js +1 -0
  504. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseTypes.js +1 -0
  505. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +1 -0
  506. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +1 -0
  507. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +1 -0
  508. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +1 -0
  509. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +1 -0
  510. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +1 -0
  511. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +1 -0
  512. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +1 -0
  513. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +1 -0
  514. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +1 -0
  515. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +1 -0
  516. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +1 -0
  517. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +1 -0
  518. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +1 -0
  519. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +1 -0
  520. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +1 -0
  521. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +1 -0
  522. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +1 -0
  523. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +1 -0
  524. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +1 -0
  525. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +1 -0
  526. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +1 -0
  527. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +1 -0
  528. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +1 -0
  529. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +1 -0
  530. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +3 -0
  531. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +1 -0
  532. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +1 -0
  533. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +1 -0
  534. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +1 -0
  535. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js +1 -0
  536. package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +1 -0
  537. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/index.js +1 -0
  538. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +1 -0
  539. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +1 -0
  540. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/external.js +1 -0
  541. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js +1 -0
  542. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +1 -0
  543. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  544. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +1 -0
  545. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/index.js +1 -0
  546. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +1 -0
  547. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +1 -0
  548. package/dist/src/packages/ash-scaffold/src/channels.js +7 -0
  549. package/dist/src/packages/ash-scaffold/src/files.js +1 -0
  550. package/dist/src/packages/ash-scaffold/src/index.js +1 -0
  551. package/dist/src/packages/ash-scaffold/src/module-files.js +1 -0
  552. package/dist/src/packages/ash-scaffold/src/package-json.js +1 -0
  553. package/dist/src/packages/ash-scaffold/src/project.js +1 -0
  554. package/dist/src/protocol/message.js +2 -501
  555. package/dist/src/protocol/routes.js +1 -85
  556. package/dist/src/public/agents/auth.js +1 -37
  557. package/dist/src/public/channels/ash.js +2 -346
  558. package/dist/src/public/channels/auth.js +1 -414
  559. package/dist/src/public/channels/discord/api.d.ts +99 -0
  560. package/dist/src/public/channels/discord/api.js +2 -0
  561. package/dist/src/public/channels/discord/defaults.d.ts +9 -0
  562. package/dist/src/public/channels/discord/defaults.js +3 -0
  563. package/dist/src/public/channels/discord/discordChannel.d.ts +132 -0
  564. package/dist/src/public/channels/discord/discordChannel.js +1 -0
  565. package/dist/src/public/channels/discord/hitl.d.ts +34 -0
  566. package/dist/src/public/channels/discord/hitl.js +1 -0
  567. package/dist/src/public/channels/discord/inbound.d.ts +97 -0
  568. package/dist/src/public/channels/discord/inbound.js +2 -0
  569. package/dist/src/public/channels/discord/index.d.ts +7 -0
  570. package/dist/src/public/channels/discord/index.js +1 -0
  571. package/dist/src/public/channels/discord/responses.d.ts +11 -0
  572. package/dist/src/public/channels/discord/responses.js +1 -0
  573. package/dist/src/public/channels/discord/verify.d.ts +38 -0
  574. package/dist/src/public/channels/discord/verify.js +1 -0
  575. package/dist/src/public/channels/discord/verifyInbound.d.ts +6 -0
  576. package/dist/src/public/channels/discord/verifyInbound.js +1 -0
  577. package/dist/src/public/channels/index.js +1 -1
  578. package/dist/src/public/channels/slack/api-encoding.js +1 -40
  579. package/dist/src/public/channels/slack/api.js +1 -333
  580. package/dist/src/public/channels/slack/attachments.js +1 -156
  581. package/dist/src/public/channels/slack/blocks.js +3 -266
  582. package/dist/src/public/channels/slack/connections.js +1 -70
  583. package/dist/src/public/channels/slack/constants.d.ts +7 -0
  584. package/dist/src/public/channels/slack/constants.js +1 -0
  585. package/dist/src/public/channels/slack/defaults.js +4 -211
  586. package/dist/src/public/channels/slack/hitl.js +1 -242
  587. package/dist/src/public/channels/slack/inbound.js +2 -149
  588. package/dist/src/public/channels/slack/index.js +1 -13
  589. package/dist/src/public/channels/slack/interactions.js +1 -315
  590. package/dist/src/public/channels/slack/limits.js +1 -75
  591. package/dist/src/public/channels/slack/mrkdwn.js +1 -89
  592. package/dist/src/public/channels/slack/slackChannel.js +1 -250
  593. package/dist/src/public/channels/slack/thread.js +1 -45
  594. package/dist/src/public/channels/slack/verify.js +1 -70
  595. package/dist/src/public/channels/twilio/api.js +1 -103
  596. package/dist/src/public/channels/twilio/defaults.js +3 -69
  597. package/dist/src/public/channels/twilio/inbound.js +2 -123
  598. package/dist/src/public/channels/twilio/index.js +1 -4
  599. package/dist/src/public/channels/twilio/twilioChannel.js +1 -316
  600. package/dist/src/public/channels/twilio/twiml.js +1 -58
  601. package/dist/src/public/channels/twilio/verify.js +1 -73
  602. package/dist/src/public/channels/upload-policy.js +1 -170
  603. package/dist/src/public/connections/errors.js +1 -53
  604. package/dist/src/public/connections/index.js +1 -6
  605. package/dist/src/public/context/index.js +1 -13
  606. package/dist/src/public/definitions/agent.js +1 -6
  607. package/dist/src/public/definitions/channel.js +1 -24
  608. package/dist/src/public/definitions/connections/mcp.js +1 -20
  609. package/dist/src/public/definitions/defineChannel.js +1 -74
  610. package/dist/src/public/definitions/hook.js +1 -11
  611. package/dist/src/public/definitions/instructions.js +1 -7
  612. package/dist/src/public/definitions/instrumentation.js +1 -13
  613. package/dist/src/public/definitions/remote-agent.js +1 -11
  614. package/dist/src/public/definitions/sandbox-backend.js +1 -13
  615. package/dist/src/public/definitions/sandbox.js +1 -6
  616. package/dist/src/public/definitions/schedule.js +1 -32
  617. package/dist/src/public/definitions/skill.js +1 -7
  618. package/dist/src/public/definitions/source.js +1 -1
  619. package/dist/src/public/definitions/state.js +1 -34
  620. package/dist/src/public/definitions/tool.js +1 -27
  621. package/dist/src/public/hooks/index.js +1 -9
  622. package/dist/src/public/index.js +1 -5
  623. package/dist/src/public/instructions/index.js +1 -4
  624. package/dist/src/public/instrumentation/index.js +1 -4
  625. package/dist/src/public/next/index.js +1 -148
  626. package/dist/src/public/next/server.js +1 -348
  627. package/dist/src/public/next/vercel-json.js +1 -77
  628. package/dist/src/public/sandbox/backends/default.js +1 -15
  629. package/dist/src/public/sandbox/backends/local.js +1 -18
  630. package/dist/src/public/sandbox/backends/vercel.js +1 -25
  631. package/dist/src/public/sandbox/index.js +1 -10
  632. package/dist/src/public/sandbox/local-sandbox.js +1 -1
  633. package/dist/src/public/sandbox/vercel-sandbox.js +1 -1
  634. package/dist/src/public/schedules/index.js +1 -4
  635. package/dist/src/public/skills/index.js +1 -5
  636. package/dist/src/public/tool-result-narrowing.js +1 -87
  637. package/dist/src/public/tools/approval/approval-helpers.js +1 -22
  638. package/dist/src/public/tools/approval/index.js +1 -4
  639. package/dist/src/public/tools/defaults.js +1 -70
  640. package/dist/src/public/tools/define-bash-tool.js +1 -14
  641. package/dist/src/public/tools/define-glob-tool.js +1 -21
  642. package/dist/src/public/tools/define-grep-tool.js +1 -21
  643. package/dist/src/public/tools/define-read-file-tool.js +1 -27
  644. package/dist/src/public/tools/define-write-file-tool.js +1 -21
  645. package/dist/src/public/tools/index.js +1 -10
  646. package/dist/src/public/tools/internal.js +1 -24
  647. package/dist/src/public/types/json.js +1 -13
  648. package/dist/src/react/index.js +1 -3
  649. package/dist/src/react/use-ash-agent.js +2 -348
  650. package/dist/src/runtime/actions/keys.js +1 -30
  651. package/dist/src/runtime/actions/types.js +1 -99
  652. package/dist/src/runtime/agent/bootstrap-model-utils.js +1 -148
  653. package/dist/src/runtime/agent/bootstrap-model.js +1 -36
  654. package/dist/src/runtime/agent/bootstrap.js +1 -49
  655. package/dist/src/runtime/agent/mock-model-adapter.js +7 -358
  656. package/dist/src/runtime/agent/resolve-model.js +1 -48
  657. package/dist/src/runtime/cache-key.js +1 -52
  658. package/dist/src/runtime/channels/registry.js +1 -133
  659. package/dist/src/runtime/compiled-artifacts-source.js +1 -42
  660. package/dist/src/runtime/connections/authorization-complete-page.js +2 -21
  661. package/dist/src/runtime/connections/authorization-tokens.js +1 -66
  662. package/dist/src/runtime/connections/callback-route.js +1 -139
  663. package/dist/src/runtime/connections/mcp-client.js +1 -307
  664. package/dist/src/runtime/connections/principal-context.js +1 -111
  665. package/dist/src/runtime/connections/principal.js +1 -106
  666. package/dist/src/runtime/connections/registry.js +1 -61
  667. package/dist/src/runtime/connections/types.js +1 -41
  668. package/dist/src/runtime/connections/validate-authorization.js +1 -92
  669. package/dist/src/runtime/framework-channels/index.js +1 -38
  670. package/dist/src/runtime/framework-tools/ask-question.js +1 -30
  671. package/dist/src/runtime/framework-tools/bash.js +1 -40
  672. package/dist/src/runtime/framework-tools/connection-search.js +1 -224
  673. package/dist/src/runtime/framework-tools/connection-tools.js +1 -103
  674. package/dist/src/runtime/framework-tools/file-state.js +1 -71
  675. package/dist/src/runtime/framework-tools/glob.js +2 -56
  676. package/dist/src/runtime/framework-tools/grep.js +2 -75
  677. package/dist/src/runtime/framework-tools/index.js +1 -52
  678. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.js +1 -63
  679. package/dist/src/runtime/framework-tools/read-file.js +2 -64
  680. package/dist/src/runtime/framework-tools/skill.js +1 -47
  681. package/dist/src/runtime/framework-tools/todo.js +3 -122
  682. package/dist/src/runtime/framework-tools/web-fetch.js +2 -42
  683. package/dist/src/runtime/framework-tools/web-search.js +1 -15
  684. package/dist/src/runtime/framework-tools/write-file.js +2 -48
  685. package/dist/src/runtime/governance/auth/http-basic.js +1 -63
  686. package/dist/src/runtime/governance/auth/jwt-ecdsa.js +1 -69
  687. package/dist/src/runtime/governance/auth/jwt-hmac.js +1 -39
  688. package/dist/src/runtime/governance/auth/oidc.js +1 -126
  689. package/dist/src/runtime/governance/auth/token-claims.js +1 -84
  690. package/dist/src/runtime/governance/auth/types.js +1 -14
  691. package/dist/src/runtime/governance/network/ip-allow-list.js +1 -66
  692. package/dist/src/runtime/graph.js +1 -17
  693. package/dist/src/runtime/hooks/registry.js +1 -55
  694. package/dist/src/runtime/input/types.js +1 -63
  695. package/dist/src/runtime/loaders/artifact-paths.js +1 -26
  696. package/dist/src/runtime/loaders/bundled-artifacts.js +1 -21
  697. package/dist/src/runtime/loaders/compile-metadata.js +1 -92
  698. package/dist/src/runtime/loaders/manifest.js +1 -56
  699. package/dist/src/runtime/loaders/module-map.js +1 -64
  700. package/dist/src/runtime/prompt/compose.js +2 -47
  701. package/dist/src/runtime/prompt/connections.js +2 -23
  702. package/dist/src/runtime/resolve-agent-graph.js +1 -287
  703. package/dist/src/runtime/resolve-agent.js +1 -134
  704. package/dist/src/runtime/resolve-channel.js +1 -62
  705. package/dist/src/runtime/resolve-connection.js +1 -72
  706. package/dist/src/runtime/resolve-helpers.js +1 -58
  707. package/dist/src/runtime/resolve-hook.js +1 -67
  708. package/dist/src/runtime/resolve-sandbox.js +1 -65
  709. package/dist/src/runtime/resolve-tool.js +1 -110
  710. package/dist/src/runtime/sandbox/keys.js +1 -72
  711. package/dist/src/runtime/sandbox/registry.js +1 -42
  712. package/dist/src/runtime/schedules/register.js +1 -62
  713. package/dist/src/runtime/schedules/resolve-schedule.js +1 -66
  714. package/dist/src/runtime/session-callback-route.js +1 -87
  715. package/dist/src/runtime/sessions/auth.js +1 -18
  716. package/dist/src/runtime/sessions/compiled-agent-cache.js +1 -125
  717. package/dist/src/runtime/sessions/runtime-session.js +1 -50
  718. package/dist/src/runtime/sessions/turn.js +1 -1
  719. package/dist/src/runtime/skills/fragment-context.js +1 -4
  720. package/dist/src/runtime/skills/sandbox-access.js +1 -85
  721. package/dist/src/runtime/subagents/registry.js +1 -62
  722. package/dist/src/runtime/tools/registry.js +1 -40
  723. package/dist/src/runtime/types.js +1 -1
  724. package/dist/src/runtime/validation.js +1 -7
  725. package/dist/src/runtime/workspace/seed-files.js +1 -42
  726. package/dist/src/runtime/workspace/spec.js +2 -22
  727. package/dist/src/runtime/workspace/types.js +1 -9
  728. package/dist/src/sandbox/state.js +1 -1
  729. package/dist/src/services/dev-client/request-headers.js +1 -197
  730. package/dist/src/services/dev-client/stream.js +1 -7
  731. package/dist/src/services/dev-client/url.js +1 -25
  732. package/dist/src/services/dev-client/vercel-auth-error.js +2 -98
  733. package/dist/src/services/dev-client.js +1 -48
  734. package/dist/src/services/inspect-application.js +1 -45
  735. package/dist/src/shared/agent-definition.js +1 -1
  736. package/dist/src/shared/errors.js +1 -66
  737. package/dist/src/shared/guards.js +1 -35
  738. package/dist/src/shared/json-schemas.js +1 -41
  739. package/dist/src/shared/json.js +1 -80
  740. package/dist/src/shared/node.js +1 -1
  741. package/dist/src/shared/optional.js +1 -1
  742. package/dist/src/shared/run-mode.js +1 -1
  743. package/dist/src/shared/sandbox-backend.js +1 -1
  744. package/dist/src/shared/sandbox-definition.js +1 -1
  745. package/dist/src/shared/sandbox-session.js +1 -1
  746. package/dist/src/shared/skill-definition.js +1 -1
  747. package/dist/src/shared/skill-package.js +1 -100
  748. package/dist/src/shared/source-ref.js +1 -1
  749. package/dist/src/shared/tool-definition.js +1 -1
  750. package/package.json +12 -6
  751. package/dist/src/chunks/authored-module-loader-DcCfCiBm.js +0 -4
  752. package/dist/src/chunks/chunk-DSjMdhoD.js +0 -1
  753. package/dist/src/chunks/client-ZqNLLMZB.js +0 -4
  754. package/dist/src/chunks/compile-agent-C4OrJW6C.js +0 -5
  755. package/dist/src/chunks/dev-authored-source-watcher-PwAxalwl.js +0 -1
  756. package/dist/src/chunks/errors-HYWjHxV6.js +0 -1
  757. package/dist/src/chunks/guards-26p6sOw3.js +0 -1
  758. package/dist/src/chunks/host-F-DkwYJK.js +0 -70
  759. package/dist/src/chunks/input-requests-DJiy6dG9.js +0 -1
  760. package/dist/src/chunks/jsdist-BkeWZ7EZ.js +0 -443
  761. package/dist/src/chunks/paths-DnlVBqHu.js +0 -85
  762. package/dist/src/chunks/picocolors-aAkqW4On.js +0 -1
  763. package/dist/src/chunks/runtime-model-Dh0Nz64z.js +0 -1
  764. package/dist/src/chunks/token-YW4VSeBB.js +0 -1
  765. package/dist/src/chunks/types-BJSR0JNV.js +0 -1
@@ -1,158 +1,3 @@
1
- import { bufferToStream, streamToBuffer } from "./stream-utils.js";
2
- /**
3
- * Builds a public {@link SandboxSession} from backend-specific primitives.
4
- *
5
- * Encoding handling, line-range slicing, and the binary/text/stream
6
- * variants live here so each backend only has to implement byte-oriented
7
- * read/write primitives.
8
- */
9
- export function buildSandboxSession(primitives) {
10
- return {
11
- id: primitives.id,
12
- resolvePath(path) {
13
- return primitives.resolvePath(path);
14
- },
15
- async runCommand(options) {
16
- return await primitives.runCommand(options);
17
- },
18
- async readFile(options) {
19
- return await primitives.readFile({
20
- abortSignal: options.abortSignal,
21
- path: primitives.resolvePath(options.path),
22
- });
23
- },
24
- async readBinaryFile(options) {
25
- const stream = await primitives.readFile({
26
- abortSignal: options.abortSignal,
27
- path: primitives.resolvePath(options.path),
28
- });
29
- if (stream === null) {
30
- return null;
31
- }
32
- return await streamToBuffer(stream);
33
- },
34
- async readTextFile(options) {
35
- validateReadTextFileOptions(options);
36
- const stream = await primitives.readFile({
37
- abortSignal: options.abortSignal,
38
- path: primitives.resolvePath(options.path),
39
- });
40
- if (stream === null) {
41
- return null;
42
- }
43
- const buf = await streamToBuffer(stream);
44
- const text = decodeBytes(buf, options.encoding ?? "utf-8");
45
- return applyLineRange(text, options);
46
- },
47
- async writeFile(options) {
48
- await primitives.writeFile({
49
- abortSignal: options.abortSignal,
50
- content: options.content,
51
- path: primitives.resolvePath(options.path),
52
- });
53
- },
54
- async writeBinaryFile(options) {
55
- await primitives.writeFile({
56
- abortSignal: options.abortSignal,
57
- content: bufferToStream(options.content),
58
- path: primitives.resolvePath(options.path),
59
- });
60
- },
61
- async writeTextFile(options) {
62
- const buf = encodeString(options.content, options.encoding ?? "utf-8");
63
- await primitives.writeFile({
64
- abortSignal: options.abortSignal,
65
- content: bufferToStream(buf),
66
- path: primitives.resolvePath(options.path),
67
- });
68
- },
69
- };
70
- }
71
- /**
72
- * Validates the optional line-range options for
73
- * {@link SandboxSession.readTextFile}.
74
- *
75
- * Throws a descriptive error when values are non-integer, less than 1,
76
- * or when `startLine` exceeds `endLine`.
77
- */
78
- function validateReadTextFileOptions(options) {
79
- const { startLine, endLine } = options;
80
- if (startLine !== undefined && (!Number.isInteger(startLine) || startLine < 1)) {
81
- throw new Error("startLine must be a positive integer (1-based).");
82
- }
83
- if (endLine !== undefined && (!Number.isInteger(endLine) || endLine < 1)) {
84
- throw new Error("endLine must be a positive integer (1-based).");
85
- }
86
- if (startLine !== undefined && endLine !== undefined && startLine > endLine) {
87
- throw new Error("startLine must not be greater than endLine.");
88
- }
89
- }
90
- /**
91
- * Splits content into lines preserving original line endings.
92
- */
93
- function splitLinesPreservingEndings(content) {
94
- const lines = [];
95
- let start = 0;
96
- for (let i = 0; i < content.length; i++) {
97
- if (content[i] === "\r") {
98
- if (i + 1 < content.length && content[i + 1] === "\n") {
99
- lines.push(content.slice(start, i + 2));
100
- start = i + 2;
101
- i++;
102
- }
103
- else {
104
- lines.push(content.slice(start, i + 1));
105
- start = i + 1;
106
- }
107
- }
108
- else if (content[i] === "\n") {
109
- lines.push(content.slice(start, i + 1));
110
- start = i + 1;
111
- }
112
- }
113
- if (start < content.length) {
114
- lines.push(content.slice(start));
115
- }
116
- return lines;
117
- }
118
- /**
119
- * Returns the line-range slice of `content`, preserving original line
120
- * endings.
121
- */
122
- function applyLineRange(content, options) {
123
- if (options.startLine === undefined && options.endLine === undefined) {
124
- return content;
125
- }
126
- const lines = splitLinesPreservingEndings(content);
127
- const totalLines = lines.length;
128
- const startLine = options.startLine ?? 1;
129
- const endLine = Math.min(options.endLine ?? totalLines, totalLines);
130
- if (startLine > totalLines) {
131
- return "";
132
- }
133
- return lines.slice(startLine - 1, endLine).join("");
134
- }
135
- /**
136
- * Decodes raw bytes to a string using the given encoding.
137
- *
138
- * `"utf-8"` uses `TextDecoder` in fatal mode so malformed sequences
139
- * throw. Other encodings fall back to Node's `Buffer.toString`.
140
- */
141
- function decodeBytes(buf, encoding) {
142
- if (encoding === "utf-8" || encoding === "utf8") {
143
- return new TextDecoder("utf-8", { fatal: true }).decode(buf);
144
- }
145
- return Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);
146
- }
147
- /**
148
- * Encodes a string to raw bytes using the given encoding.
149
- *
150
- * `"utf-8"` uses `TextEncoder`; other encodings fall back to
151
- * `Buffer.from(str, encoding)`.
152
- */
153
- function encodeString(str, encoding) {
154
- if (encoding === "utf-8" || encoding === "utf8") {
155
- return new TextEncoder().encode(str);
156
- }
157
- return Buffer.from(str, encoding);
158
- }
1
+ import{bufferToStream,streamToBuffer}from"./stream-utils.js";function buildSandboxSession(n){return{id:n.id,resolvePath(e){return n.resolvePath(e)},async runCommand(e){return await n.runCommand(e)},async readFile(e){return await n.readFile({abortSignal:e.abortSignal,path:n.resolvePath(e.path)})},async readBinaryFile(e){let r=await n.readFile({abortSignal:e.abortSignal,path:n.resolvePath(e.path)});return r===null?null:await streamToBuffer(r)},async readTextFile(e){validateReadTextFileOptions(e);let r=await n.readFile({abortSignal:e.abortSignal,path:n.resolvePath(e.path)});return r===null?null:applyLineRange(decodeBytes(await streamToBuffer(r),e.encoding??`utf-8`),e)},async writeFile(e){await n.writeFile({abortSignal:e.abortSignal,content:e.content,path:n.resolvePath(e.path)})},async writeBinaryFile(t){await n.writeFile({abortSignal:t.abortSignal,content:bufferToStream(t.content),path:n.resolvePath(t.path)})},async writeTextFile(t){let r=encodeString(t.content,t.encoding??`utf-8`);await n.writeFile({abortSignal:t.abortSignal,content:bufferToStream(r),path:n.resolvePath(t.path)})}}}function validateReadTextFileOptions(e){let{startLine:t,endLine:n}=e;if(t!==void 0&&(!Number.isInteger(t)||t<1))throw Error(`startLine must be a positive integer (1-based).`);if(n!==void 0&&(!Number.isInteger(n)||n<1))throw Error(`endLine must be a positive integer (1-based).`);if(t!==void 0&&n!==void 0&&t>n)throw Error(`startLine must not be greater than endLine.`)}function splitLinesPreservingEndings(e){let t=[],n=0;for(let r=0;r<e.length;r++)e[r]===`\r`?r+1<e.length&&e[r+1]===`
2
+ `?(t.push(e.slice(n,r+2)),n=r+2,r++):(t.push(e.slice(n,r+1)),n=r+1):e[r]===`
3
+ `&&(t.push(e.slice(n,r+1)),n=r+1);return n<e.length&&t.push(e.slice(n)),t}function applyLineRange(e,t){if(t.startLine===void 0&&t.endLine===void 0)return e;let n=splitLinesPreservingEndings(e),r=n.length,i=t.startLine??1,a=Math.min(t.endLine??r,r);return i>r?``:n.slice(i-1,a).join(``)}function decodeBytes(e,t){return t===`utf-8`||t===`utf8`?new TextDecoder(`utf-8`,{fatal:!0}).decode(e):Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString(t)}function encodeString(e,t){return t===`utf-8`||t===`utf8`?new TextEncoder().encode(e):Buffer.from(e,t)}export{buildSandboxSession};
@@ -1,14 +1 @@
1
- /**
2
- * Wraps a value in POSIX single-quotes, escaping any embedded single-quotes.
3
- *
4
- * Used by the `glob` and `grep` execution cores to safely embed model-supplied
5
- * patterns, paths, and globs into shell commands run via `sandbox.runCommand`.
6
- *
7
- * The quoting strategy is the standard POSIX approach: wrap the value in
8
- * single-quotes and replace each embedded `'` with `'\''` (end the
9
- * single-quoted string, insert an escaped single-quote, re-open
10
- * single-quoting).
11
- */
12
- export function shellQuote(value) {
13
- return `'${value.replace(/'/g, "'\\''")}'`;
14
- }
1
+ function shellQuote(e){return`'${e.replace(/'/g,`'\\''`)}'`}export{shellQuote};
@@ -1,22 +1 @@
1
- /**
2
- * Collects all chunks of a `ReadableStream<Uint8Array>` into a single
3
- * Buffer.
4
- */
5
- export async function streamToBuffer(stream) {
6
- const chunks = [];
7
- for await (const chunk of stream) {
8
- chunks.push(chunk);
9
- }
10
- return Buffer.concat(chunks);
11
- }
12
- /**
13
- * Wraps a byte buffer as a single-chunk `ReadableStream<Uint8Array>`.
14
- */
15
- export function bufferToStream(buf) {
16
- return new ReadableStream({
17
- start(controller) {
18
- controller.enqueue(buf);
19
- controller.close();
20
- },
21
- });
22
- }
1
+ async function streamToBuffer(e){let t=[];for await(let n of e)t.push(n);return Buffer.concat(t)}function bufferToStream(e){return new ReadableStream({start(t){t.enqueue(e),t.close()}})}export{bufferToStream,streamToBuffer};
@@ -1,110 +1,3 @@
1
- /**
2
- * Shared output truncation utilities for framework tool executors.
3
- *
4
- * Every framework tool that can return unbounded text output (bash,
5
- * grep, glob, read_file, web_fetch) uses these helpers to enforce
6
- * consistent size limits inside its executor before the result enters
7
- * conversation history. Authored tools are expected to do the same —
8
- * bounding at the source keeps the contract simple: whatever `execute`
9
- * returns is what the model sees.
10
- */
11
- /**
12
- * Maximum number of lines kept after truncation.
13
- */
14
- export const MAX_OUTPUT_LINES = 2000;
15
- /**
16
- * Maximum byte size of the truncated output.
17
- */
18
- export const MAX_OUTPUT_BYTES = 50 * 1024;
19
- /**
20
- * Maximum length of a single line before it is truncated.
21
- */
22
- export const MAX_LINE_LENGTH = 2000;
23
- /**
24
- * Suffix appended to lines exceeding {@link MAX_LINE_LENGTH}.
25
- */
26
- export const LINE_TRUNCATION_SUFFIX = " [truncated]";
27
- /**
28
- * Keeps the **first** lines of `text` that fit within the line and byte
29
- * budgets. This is the default shape of tool-result truncation — most
30
- * tool output (file contents, grep results, web fetches) is more
31
- * informative at the beginning.
32
- *
33
- * Each included line is individually capped at {@link MAX_LINE_LENGTH}
34
- * characters. Iteration starts from the beginning and stops when either
35
- * the line count reaches {@link MAX_OUTPUT_LINES} or cumulative byte
36
- * size would exceed {@link MAX_OUTPUT_BYTES}.
37
- */
38
- export function truncateHead(text) {
39
- return truncateByDirection(text, "head");
40
- }
41
- /**
42
- * Keeps the **last** lines of `text` that fit within the line and byte
43
- * budgets. Useful for bash output where errors and results appear at
44
- * the end.
45
- *
46
- * Each included line is individually capped at {@link MAX_LINE_LENGTH}
47
- * characters. Iteration starts from the end and stops when either the
48
- * line count reaches {@link MAX_OUTPUT_LINES} or cumulative byte size
49
- * would exceed {@link MAX_OUTPUT_BYTES}.
50
- */
51
- export function truncateTail(text) {
52
- return truncateByDirection(text, "tail");
53
- }
54
- /**
55
- * Shared truncation loop used by {@link truncateHead} and
56
- * {@link truncateTail}. The only difference between the two is the
57
- * iteration direction; all other budgeting logic is identical.
58
- */
59
- function truncateByDirection(text, direction) {
60
- const rawLines = text.split("\n");
61
- const totalLines = countLogicalLines(rawLines);
62
- const fromStart = direction === "head";
63
- const kept = [];
64
- let bytes = 0;
65
- const start = fromStart ? 0 : rawLines.length - 1;
66
- const step = fromStart ? 1 : -1;
67
- for (let i = start; i >= 0 && i < rawLines.length && kept.length < MAX_OUTPUT_LINES; i += step) {
68
- const line = capLineLength(rawLines[i] ?? "");
69
- const lineBytes = Buffer.byteLength(line, "utf8") + 1;
70
- if (bytes + lineBytes > MAX_OUTPUT_BYTES && kept.length > 0) {
71
- break;
72
- }
73
- kept.push(line);
74
- bytes += lineBytes;
75
- }
76
- if (!fromStart) {
77
- kept.reverse();
78
- }
79
- return {
80
- output: kept.join("\n"),
81
- outputLines: kept.length,
82
- totalLines,
83
- truncated: kept.length < totalLines,
84
- };
85
- }
86
- /**
87
- * Caps a single line at {@link MAX_LINE_LENGTH} characters, appending
88
- * {@link LINE_TRUNCATION_SUFFIX} when truncated.
89
- *
90
- * Exported for tools that build their own output line-by-line (e.g.
91
- * `read_file` prepends line numbers, `grep` counts matches) so they
92
- * share the same per-line cap as {@link truncateHead} / {@link truncateTail}
93
- * without re-implementing the slice+suffix pattern.
94
- */
95
- export function capLineLength(line) {
96
- if (line.length <= MAX_LINE_LENGTH) {
97
- return line;
98
- }
99
- return line.slice(0, MAX_LINE_LENGTH) + LINE_TRUNCATION_SUFFIX;
100
- }
101
- /**
102
- * Counts logical lines, treating a trailing empty element from
103
- * `split("\n")` as not a separate line (consistent with read-file-tool).
104
- */
105
- function countLogicalLines(lines) {
106
- if (lines.length > 0 && lines[lines.length - 1] === "") {
107
- return lines.length - 1;
108
- }
109
- return lines.length;
110
- }
1
+ var MAX_OUTPUT_LINES=2e3,MAX_OUTPUT_BYTES=50*1024,MAX_LINE_LENGTH=2e3,LINE_TRUNCATION_SUFFIX=` [truncated]`;function truncateHead(e){return truncateByDirection(e,`head`)}function truncateTail(e){return truncateByDirection(e,`tail`)}function truncateByDirection(e,t){let n=e.split(`
2
+ `),r=countLogicalLines(n),i=t===`head`,a=[],o=0,s=i?0:n.length-1,c=i?1:-1;for(let e=s;e>=0&&e<n.length&&a.length<2e3;e+=c){let t=capLineLength(n[e]??``),r=Buffer.byteLength(t,`utf8`)+1;if(o+r>51200&&a.length>0)break;a.push(t),o+=r}return i||a.reverse(),{output:a.join(`
3
+ `),outputLines:a.length,totalLines:r,truncated:a.length<r}}function capLineLength(e){return e.length<=2e3?e:e.slice(0,MAX_LINE_LENGTH)+LINE_TRUNCATION_SUFFIX}function countLogicalLines(e){return e.length>0&&e[e.length-1]===``?e.length-1:e.length}export{LINE_TRUNCATION_SUFFIX,MAX_LINE_LENGTH,MAX_OUTPUT_BYTES,MAX_OUTPUT_LINES,capLineLength,truncateHead,truncateTail};
@@ -1,62 +1 @@
1
- import { loadContext } from "#context/container.js";
2
- import { buildReadFileTargetKey, createReadFileStamp, normalizeModelPath, ReadFileStateKey, setReadFileStamp, } from "#runtime/framework-tools/file-state.js";
3
- import { requireSandboxSession, validateAbsoluteFilePath, } from "#execution/sandbox/require-sandbox.js";
4
- // ---------------------------------------------------------------------------
5
- // Executor
6
- // ---------------------------------------------------------------------------
7
- /**
8
- * Writes one text file to the sandbox with read-before-write
9
- * enforcement and stale-read detection for existing files.
10
- *
11
- * Used by the framework `write_file` tool and by author tools
12
- * constructed via `defineWriteFileTool`.
13
- */
14
- export async function executeWriteFileOnSandbox(args) {
15
- const { filePath, content } = args;
16
- validateAbsoluteFilePath(filePath);
17
- const sandbox = await requireSandboxSession();
18
- const ctx = loadContext();
19
- const normalizedPath = normalizeModelPath(filePath);
20
- const targetKey = buildReadFileTargetKey(normalizedPath);
21
- // ── Read current file ───────────────────────────────────────────────
22
- // The full read is required even for new-file detection because
23
- // stale-write detection hashes the current content. This is a known
24
- // cost: the entire file is read and hashed before every write. A
25
- // separate `exists()` primitive would avoid this for new files but
26
- // would require a sandbox session API change.
27
- const currentContent = await sandbox.readTextFile({ path: filePath });
28
- if (currentContent === null) {
29
- // ── File does not exist — write immediately, no prior read needed ──
30
- await sandbox.writeTextFile({ content, path: filePath });
31
- const freshStamp = createReadFileStamp({
32
- content,
33
- filePath: normalizedPath,
34
- });
35
- setReadFileStamp(ctx, targetKey, freshStamp);
36
- return { existed: false, path: normalizedPath };
37
- }
38
- // ── File exists — enforce read-before-write ─────────────────────────
39
- const state = ctx.ensure(ReadFileStateKey, () => ({ byTarget: {} }));
40
- const storedStamp = state.byTarget[targetKey];
41
- if (storedStamp === undefined) {
42
- throw new Error(`You must read file ${filePath} before overwriting it. Use the read_file tool first.`);
43
- }
44
- // ── Stale-read detection ────────────────────────────────────────────
45
- const currentStamp = createReadFileStamp({
46
- content: currentContent,
47
- filePath: normalizedPath,
48
- });
49
- if (currentStamp.contentHash !== storedStamp.contentHash ||
50
- currentStamp.byteLength !== storedStamp.byteLength) {
51
- throw new Error(`File ${filePath} has been modified since it was last read. ` +
52
- "Please read the file again before modifying it.");
53
- }
54
- // ── Write and refresh stamp ─────────────────────────────────────────
55
- await sandbox.writeTextFile({ content, path: filePath });
56
- const freshStamp = createReadFileStamp({
57
- content,
58
- filePath: normalizedPath,
59
- });
60
- setReadFileStamp(ctx, targetKey, freshStamp);
61
- return { existed: true, path: normalizedPath };
62
- }
1
+ import{loadContext}from"#context/container.js";import{requireSandboxSession,validateAbsoluteFilePath}from"#execution/sandbox/require-sandbox.js";import{ReadFileStateKey,buildReadFileTargetKey,createReadFileStamp,normalizeModelPath,setReadFileStamp}from"#runtime/framework-tools/file-state.js";async function executeWriteFileOnSandbox(e){let{filePath:t,content:n}=e;validateAbsoluteFilePath(t);let r=await requireSandboxSession(),i=loadContext(),a=normalizeModelPath(t),o=buildReadFileTargetKey(a),s=await r.readTextFile({path:t});if(s===null)return await r.writeTextFile({content:n,path:t}),setReadFileStamp(i,o,createReadFileStamp({content:n,filePath:a})),{existed:!1,path:a};let c=i.ensure(ReadFileStateKey,()=>({byTarget:{}})).byTarget[o];if(c===void 0)throw Error(`You must read file ${t} before overwriting it. Use the read_file tool first.`);let l=createReadFileStamp({content:s,filePath:a});if(l.contentHash!==c.contentHash||l.byteLength!==c.byteLength)throw Error(`File ${t} has been modified since it was last read. Please read the file again before modifying it.`);return await r.writeTextFile({content:n,path:t}),setReadFileStamp(i,o,createReadFileStamp({content:n,filePath:a})),{existed:!0,path:a}}export{executeWriteFileOnSandbox};
@@ -1,72 +1 @@
1
- import { parseSessionCallback } from "#channel/session-callback.js";
2
- import { SessionCallbackKey } from "#context/keys.js";
3
- import { createLogger } from "#internal/logging.js";
4
- import { toErrorMessage } from "#shared/errors.js";
5
- const SESSION_CALLBACK_TIMEOUT_MS = 30_000;
6
- const log = createLogger("execution.session-callback");
7
- /**
8
- * Sends the configured session terminal callback.
9
- *
10
- * Absence is a no-op. Once callback metadata is present, delivery is part of
11
- * the remote delegation result path, so failures are logged and rethrown
12
- * instead of being reported as a successful terminal step. Throwing is
13
- * intentional: this function runs as a durable Workflow step, so rejection
14
- * hands retry/failure policy back to the Workflow orchestrator rather than
15
- * letting Ash falsely mark the callback delivery as complete.
16
- */
17
- export async function fireSessionCallbackStep(input) {
18
- "use step";
19
- const sessionId = input.serializedContext["ash.sessionId"] ?? "";
20
- const value = input.serializedContext[SessionCallbackKey.name];
21
- if (value === undefined) {
22
- return;
23
- }
24
- try {
25
- const callback = parseSerializedSessionCallback(value);
26
- const body = input.status === "completed"
27
- ? {
28
- callId: callback.callId,
29
- kind: "session.completed",
30
- output: input.output ?? "",
31
- sessionId,
32
- subagentName: callback.subagentName,
33
- }
34
- : {
35
- callId: callback.callId,
36
- error: {
37
- code: "SESSION_FAILED",
38
- message: toErrorMessage(input.error),
39
- },
40
- kind: "session.failed",
41
- sessionId,
42
- subagentName: callback.subagentName,
43
- };
44
- const response = await fetch(callback.url, {
45
- body: JSON.stringify(body),
46
- headers: {
47
- "content-type": "application/json",
48
- },
49
- method: "POST",
50
- signal: AbortSignal.timeout(SESSION_CALLBACK_TIMEOUT_MS),
51
- });
52
- if (!response.ok) {
53
- throw new Error(`Session callback failed with HTTP ${response.status}.`);
54
- }
55
- }
56
- catch (error) {
57
- log.error("failed to post session callback", {
58
- error,
59
- sessionId,
60
- });
61
- throw error;
62
- }
63
- }
64
- function parseSerializedSessionCallback(value) {
65
- const parsed = parseSessionCallback(value);
66
- if (!parsed.ok) {
67
- throw new Error("Serialized session callback is invalid.", {
68
- cause: parsed.cause,
69
- });
70
- }
71
- return parsed.callback;
72
- }
1
+ import{createLogger}from"#internal/logging.js";import{toErrorMessage}from"#shared/errors.js";import{SessionCallbackKey}from"#context/keys.js";import{parseSessionCallback}from"#channel/session-callback.js";var SESSION_CALLBACK_TIMEOUT_MS=3e4,log=createLogger(`execution.session-callback`);async function fireSessionCallbackStep(e){"use step";let r=e.serializedContext[`ash.sessionId`]??``,a=e.serializedContext[SessionCallbackKey.name];if(a!==void 0)try{let n=parseSerializedSessionCallback(a),i=e.status===`completed`?{callId:n.callId,kind:`session.completed`,output:e.output??``,sessionId:r,subagentName:n.subagentName}:{callId:n.callId,error:{code:`SESSION_FAILED`,message:toErrorMessage(e.error)},kind:`session.failed`,sessionId:r,subagentName:n.subagentName},o=await fetch(n.url,{body:JSON.stringify(i),headers:{"content-type":`application/json`},method:`POST`,signal:AbortSignal.timeout(SESSION_CALLBACK_TIMEOUT_MS)});if(!o.ok)throw Error(`Session callback failed with HTTP ${o.status}.`)}catch(e){throw log.error(`failed to post session callback`,{error:e,sessionId:r}),e}}function parseSerializedSessionCallback(e){let t=parseSessionCallback(e);if(!t.ok)throw Error(`Serialized session callback is invalid.`,{cause:t.cause});return t.callback}export{fireSessionCallbackStep};
@@ -1,94 +1,3 @@
1
- const DEFAULT_COMPACTION_RECENT_WINDOW_SIZE = 10;
2
- const DEFAULT_COMPACTION_THRESHOLD_PERCENT = 0.9;
3
- const FALLBACK_COMPACTION_THRESHOLD = 100_000;
4
- /**
5
- * Creates the durable compaction configuration used by one harness session.
6
- */
7
- export function createCompactionConfig(input = {}) {
8
- const thresholdPercent = input.thresholdPercent ?? DEFAULT_COMPACTION_THRESHOLD_PERCENT;
9
- const threshold = input.contextWindowTokens === undefined
10
- ? FALLBACK_COMPACTION_THRESHOLD
11
- : Math.max(1, Math.floor(input.contextWindowTokens * thresholdPercent));
12
- const config = {
13
- recentWindowSize: DEFAULT_COMPACTION_RECENT_WINDOW_SIZE,
14
- threshold,
15
- };
16
- if (input.lastKnownInputTokens !== undefined) {
17
- return {
18
- ...config,
19
- lastKnownInputTokens: input.lastKnownInputTokens,
20
- lastKnownPromptMessageCount: input.lastKnownPromptMessageCount,
21
- };
22
- }
23
- return config;
24
- }
25
- /**
26
- * Creates a fresh serializable {@link HarnessSession} for a harness run.
27
- *
28
- * This is the only place that derives `session.agent.system` from a
29
- * `turnAgent`. The system prompt is a session-start snapshot: once
30
- * created here it is preserved unchanged for every subsequent turn.
31
- * Use {@link refreshSessionFromTurnAgent} to update model/tool metadata
32
- * on an existing session without touching the system prompt.
33
- */
34
- export function createSession(input) {
35
- const { turnAgent } = input;
36
- const tools = createSessionToolDefinitions(turnAgent);
37
- return {
38
- agent: {
39
- compactionModelReference: turnAgent.compactionModel,
40
- modelReference: turnAgent.model,
41
- system: turnAgent.instructions.join("\n\n"),
42
- tools,
43
- },
44
- compaction: createCompactionConfig({
45
- contextWindowTokens: turnAgent.model.contextWindowTokens,
46
- thresholdPercent: input.compactionOverrides?.thresholdPercent,
47
- }),
48
- continuationToken: input.continuationToken,
49
- history: [],
50
- sessionId: input.sessionId,
51
- };
52
- }
53
- /**
54
- * Refreshes one existing session with the latest resolved turn-agent shape.
55
- *
56
- * Preserves durable history, state, and the system prompt while replacing
57
- * model/tool metadata and recalculating compaction thresholds from current
58
- * authored config. The system prompt is a session-start snapshot set by
59
- * {@link createSession} and is never rebuilt during refresh.
60
- */
61
- export function refreshSessionFromTurnAgent(input) {
62
- return {
63
- ...input.session,
64
- agent: {
65
- compactionModelReference: input.turnAgent.compactionModel,
66
- modelReference: input.turnAgent.model,
67
- system: input.session.agent.system,
68
- tools: createSessionToolDefinitions(input.turnAgent),
69
- },
70
- compaction: createCompactionConfig({
71
- contextWindowTokens: input.turnAgent.model.contextWindowTokens,
72
- lastKnownInputTokens: input.session.compaction.lastKnownInputTokens,
73
- lastKnownPromptMessageCount: input.session.compaction.lastKnownPromptMessageCount,
74
- thresholdPercent: input.compactionOverrides?.thresholdPercent,
75
- }),
76
- };
77
- }
78
- /**
79
- * Mints a continuation token for a delegated subagent session.
80
- *
81
- * The `subagent:` prefix identifies the token as a child run handle. The
82
- * token is deterministic per parent call when `suffix` is provided so runtime
83
- * retries can address the same delegated child hook token.
84
- */
85
- export function mintSubagentContinuationToken(suffix) {
86
- return `subagent:${suffix ?? crypto.randomUUID()}`;
87
- }
88
- function createSessionToolDefinitions(turnAgent) {
89
- return turnAgent.tools.map((tool) => ({
90
- description: tool.description ?? "",
91
- inputSchema: tool.inputSchema,
92
- name: tool.name,
93
- }));
94
- }
1
+ var DEFAULT_COMPACTION_RECENT_WINDOW_SIZE=10,DEFAULT_COMPACTION_THRESHOLD_PERCENT=.9,FALLBACK_COMPACTION_THRESHOLD=1e5;function createCompactionConfig(r={}){let i=r.thresholdPercent??DEFAULT_COMPACTION_THRESHOLD_PERCENT,a={recentWindowSize:DEFAULT_COMPACTION_RECENT_WINDOW_SIZE,threshold:r.contextWindowTokens===void 0?FALLBACK_COMPACTION_THRESHOLD:Math.max(1,Math.floor(r.contextWindowTokens*i))};return r.lastKnownInputTokens===void 0?a:{...a,lastKnownInputTokens:r.lastKnownInputTokens,lastKnownPromptMessageCount:r.lastKnownPromptMessageCount}}function createSession(e){let{turnAgent:t}=e,n=createSessionToolDefinitions(t);return{agent:{compactionModelReference:t.compactionModel,modelReference:t.model,system:t.instructions.join(`
2
+
3
+ `),tools:n},compaction:createCompactionConfig({contextWindowTokens:t.model.contextWindowTokens,thresholdPercent:e.compactionOverrides?.thresholdPercent}),continuationToken:e.continuationToken,history:[],sessionId:e.sessionId}}function refreshSessionFromTurnAgent(e){return{...e.session,agent:{compactionModelReference:e.turnAgent.compactionModel,modelReference:e.turnAgent.model,system:e.session.agent.system,tools:createSessionToolDefinitions(e.turnAgent)},compaction:createCompactionConfig({contextWindowTokens:e.turnAgent.model.contextWindowTokens,lastKnownInputTokens:e.session.compaction.lastKnownInputTokens,lastKnownPromptMessageCount:e.session.compaction.lastKnownPromptMessageCount,thresholdPercent:e.compactionOverrides?.thresholdPercent})}}function mintSubagentContinuationToken(e){return`subagent:${e??crypto.randomUUID()}`}function createSessionToolDefinitions(e){return e.tools.map(e=>({description:e.description??``,inputSchema:e.inputSchema,name:e.name}))}export{createCompactionConfig,createSession,mintSubagentContinuationToken,refreshSessionFromTurnAgent};
@@ -1,30 +1,2 @@
1
- import { WORKSPACE_ROOT } from "#runtime/workspace/types.js";
2
- /**
3
- * Formats the "Available skills" system prompt section.
4
- *
5
- * All skills are always listed regardless of activation state. Active skill
6
- * instructions are never injected into the system prompt — the model already
7
- * has them from the `load_skill` tool result. This keeps the system
8
- * prompt identical across the entire session, preserving prompt caching.
9
- *
10
- * Authored skills call this at graph resolution time so the section is
11
- * part of the turn agent's static instructions. Hook-contributed skills
12
- * reuse the same formatter for durable history announcements.
13
- */
14
- export function formatAvailableSkillsSection(skills) {
15
- if (skills.length === 0) {
16
- return null;
17
- }
18
- const lines = [
19
- "Available skills",
20
- "Listed skills are available in this run. Do not claim a listed skill is inaccessible unless activation or workspace inspection actually fails.",
21
- "If the user names a skill or the request clearly matches one of the descriptions below, call load_skill before proceeding.",
22
- "If multiple skills match, activate the minimal set that covers the task. After activation, follow the returned instructions instead of improvising around them.",
23
- "If activation fails, say so briefly and continue with the best fallback. Packaged sibling files under a skill path can be inspected with bash or read_file when needed.",
24
- ...skills.map((skill) => formatAvailableSkillLine(skill)),
25
- ];
26
- return lines.join("\n");
27
- }
28
- function formatAvailableSkillLine(skill) {
29
- return `- ${skill.name}: ${skill.description} (path: ${WORKSPACE_ROOT}/skills/${skill.name}/SKILL.md)`;
30
- }
1
+ import{WORKSPACE_ROOT}from"#runtime/workspace/types.js";function formatAvailableSkillsSection(e){return e.length===0?null:[`Available skills`,`Listed skills are available in this run. Do not claim a listed skill is inaccessible unless activation or workspace inspection actually fails.`,`If the user names a skill or the request clearly matches one of the descriptions below, call load_skill before proceeding.`,`If multiple skills match, activate the minimal set that covers the task. After activation, follow the returned instructions instead of improvising around them.`,`If activation fails, say so briefly and continue with the best fallback. Packaged sibling files under a skill path can be inspected with bash or read_file when needed.`,...e.map(e=>formatAvailableSkillLine(e))].join(`
2
+ `)}function formatAvailableSkillLine(t){return`- ${t.name}: ${t.description} (path: ${WORKSPACE_ROOT}/skills/${t.name}/SKILL.md)`}export{formatAvailableSkillsSection};
@@ -1 +1 @@
1
- export {};
1
+ export{};