experimental-ash 0.26.0 → 0.28.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 (787) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/docs/public/channels/README.md +50 -2
  3. package/dist/docs/public/channels/discord.md +15 -7
  4. package/dist/docs/public/channels/teams.md +121 -0
  5. package/dist/docs/public/channels/telegram.md +201 -0
  6. package/dist/docs/public/subagents.md +38 -0
  7. package/dist/docs/public/typescript-api.md +41 -1
  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.js +3 -9
  23. package/dist/src/cli/commands/info.js +2 -2
  24. package/dist/src/cli/dev/environment.js +1 -1
  25. package/dist/src/cli/dev/input-requests.js +1 -1
  26. package/dist/src/cli/dev/input.js +1 -1
  27. package/dist/src/cli/dev/repl.js +2 -3
  28. package/dist/src/cli/dev/terminal.js +5 -5
  29. package/dist/src/cli/dev/url.js +1 -1
  30. package/dist/src/cli/run.js +2 -2
  31. package/dist/src/cli/ui/output.js +8 -8
  32. package/dist/src/client/client-error.js +1 -19
  33. package/dist/src/client/client.js +1 -128
  34. package/dist/src/client/index.js +1 -11
  35. package/dist/src/client/message-reducer-types.js +1 -1
  36. package/dist/src/client/message-reducer.js +1 -456
  37. package/dist/src/client/message-response.js +1 -55
  38. package/dist/src/client/ndjson.js +3 -62
  39. package/dist/src/client/open-stream.js +1 -45
  40. package/dist/src/client/reducer.js +1 -1
  41. package/dist/src/client/session-utils.js +1 -62
  42. package/dist/src/client/session.js +1 -206
  43. package/dist/src/client/types.js +1 -1
  44. package/dist/src/client/url.js +1 -34
  45. package/dist/src/compiled/.vendor-stamp.json +6 -1
  46. package/dist/src/compiled/@vercel/oidc/LICENSE +202 -0
  47. package/dist/src/compiled/@vercel/oidc/index.d.ts +21 -0
  48. package/dist/src/compiled/@vercel/oidc/index.js +2 -0
  49. package/dist/src/compiled/@vercel/oidc/package.json +7 -0
  50. package/dist/src/compiled/chokidar/LICENSE +21 -0
  51. package/dist/src/compiled/chokidar/index.d.ts +33 -0
  52. package/dist/src/compiled/chokidar/index.js +1 -0
  53. package/dist/src/compiled/chokidar/package.json +7 -0
  54. package/dist/src/compiled/commander/LICENSE +22 -0
  55. package/dist/src/compiled/commander/index.d.ts +1113 -0
  56. package/dist/src/{chunks/url-JdCGA634.js → compiled/commander/index.js} +10 -10
  57. package/dist/src/compiled/commander/package.json +7 -0
  58. package/dist/src/compiled/gray-matter/LICENSE +21 -0
  59. package/dist/src/compiled/gray-matter/index.d.ts +62 -0
  60. package/dist/src/{chunks/gray-matter-D-9jHwOT.js → compiled/gray-matter/index.js} +2 -2
  61. package/dist/src/compiled/gray-matter/package.json +7 -0
  62. package/dist/src/compiled/picocolors/LICENSE +15 -0
  63. package/dist/src/compiled/picocolors/index.d.ts +55 -0
  64. package/dist/src/compiled/picocolors/index.js +1 -0
  65. package/dist/src/compiled/picocolors/package.json +7 -0
  66. package/dist/src/compiler/artifacts.js +1 -147
  67. package/dist/src/compiler/compile-agent.js +3 -76
  68. package/dist/src/compiler/compile-from-memory.js +1 -59
  69. package/dist/src/compiler/manifest.js +1 -424
  70. package/dist/src/compiler/model-catalog.js +1 -224
  71. package/dist/src/compiler/module-map.js +5 -295
  72. package/dist/src/compiler/normalize-agent-config.js +1 -157
  73. package/dist/src/compiler/normalize-channel.js +1 -51
  74. package/dist/src/compiler/normalize-connection.js +1 -58
  75. package/dist/src/compiler/normalize-helpers.js +1 -23
  76. package/dist/src/compiler/normalize-hook.js +1 -19
  77. package/dist/src/compiler/normalize-instructions.js +1 -28
  78. package/dist/src/compiler/normalize-manifest.js +1 -79
  79. package/dist/src/compiler/normalize-sandbox.js +1 -20
  80. package/dist/src/compiler/normalize-schedule.js +1 -38
  81. package/dist/src/compiler/normalize-skill.js +1 -60
  82. package/dist/src/compiler/normalize-subagent.js +1 -174
  83. package/dist/src/compiler/normalize-tool.js +1 -40
  84. package/dist/src/compiler/remote-agent-node.js +1 -19
  85. package/dist/src/compiler/workspace-resources.js +1 -85
  86. package/dist/src/context/accessors.js +1 -93
  87. package/dist/src/context/container.js +1 -89
  88. package/dist/src/context/hook-lifecycle.js +1 -242
  89. package/dist/src/context/key.js +1 -39
  90. package/dist/src/context/keys.js +1 -43
  91. package/dist/src/context/node.js +1 -9
  92. package/dist/src/context/provider.js +1 -1
  93. package/dist/src/context/providers/connection.js +1 -17
  94. package/dist/src/context/providers/sandbox.js +1 -46
  95. package/dist/src/context/providers/session.js +1 -18
  96. package/dist/src/context/run-step.js +1 -51
  97. package/dist/src/context/seed-keys.js +1 -37
  98. package/dist/src/context/serialize.js +1 -44
  99. package/dist/src/discover/connections.js +1 -153
  100. package/dist/src/discover/diagnostics.js +1 -82
  101. package/dist/src/discover/discover-agent.js +1 -159
  102. package/dist/src/discover/discover-subagent.js +1 -223
  103. package/dist/src/discover/filesystem.js +1 -215
  104. package/dist/src/discover/grammar.js +1 -371
  105. package/dist/src/discover/lib.js +1 -34
  106. package/dist/src/discover/manifest.js +1 -136
  107. package/dist/src/discover/markdown.js +1 -17
  108. package/dist/src/discover/named-source-directory.js +1 -188
  109. package/dist/src/discover/project-source.js +1 -152
  110. package/dist/src/discover/project.js +1 -117
  111. package/dist/src/discover/sandbox.js +1 -220
  112. package/dist/src/discover/schedules.js +1 -41
  113. package/dist/src/discover/skills.js +1 -274
  114. package/dist/src/discover/slots.js +1 -68
  115. package/dist/src/evals/cli/eval.js +1 -1
  116. package/dist/src/evals/define-eval-suite.js +1 -1
  117. package/dist/src/evals/index.js +1 -1
  118. package/dist/src/evals/loaders/index.js +1 -1
  119. package/dist/src/evals/loaders/json.js +1 -1
  120. package/dist/src/evals/loaders/yaml.js +1 -1
  121. package/dist/src/evals/reporters/index.js +1 -1
  122. package/dist/src/evals/runner/artifacts.js +3 -3
  123. package/dist/src/evals/runner/derive-run-facts.js +1 -1
  124. package/dist/src/evals/runner/discover.js +1 -1
  125. package/dist/src/evals/runner/execute-case.js +1 -1
  126. package/dist/src/evals/runner/execute-suite.js +1 -1
  127. package/dist/src/evals/runner/reporters/braintrust.js +2 -2
  128. package/dist/src/evals/runner/reporters/console.js +1 -1
  129. package/dist/src/evals/runner/resolve-git-metadata.js +1 -1
  130. package/dist/src/evals/scorers/autoevals-client.js +2 -2
  131. package/dist/src/evals/scorers/autoevals.js +1 -1
  132. package/dist/src/evals/scorers/json.js +1 -1
  133. package/dist/src/evals/scorers/run.js +1 -1
  134. package/dist/src/evals/scorers/sql.js +1 -1
  135. package/dist/src/evals/scorers/text.js +1 -1
  136. package/dist/src/evals/scores/index.js +1 -1
  137. package/dist/src/execution/authorization-challenge-defaults.js +1 -60
  138. package/dist/src/execution/await-authorization-orchestrator.js +1 -192
  139. package/dist/src/execution/await-authorization-splice.js +1 -66
  140. package/dist/src/execution/connection-auth-steps.js +1 -338
  141. package/dist/src/execution/node-step.js +1 -146
  142. package/dist/src/execution/remote-agent-dispatch.js +1 -79
  143. package/dist/src/execution/runtime-context.js +1 -26
  144. package/dist/src/execution/runtime-errors.js +1 -19
  145. package/dist/src/execution/sandbox/bash-tool.js +1 -42
  146. package/dist/src/execution/sandbox/bindings/local.js +1 -296
  147. package/dist/src/execution/sandbox/bindings/vercel.js +1 -363
  148. package/dist/src/execution/sandbox/ensure.js +1 -91
  149. package/dist/src/execution/sandbox/glob-tool.js +3 -146
  150. package/dist/src/execution/sandbox/grep-tool.js +3 -183
  151. package/dist/src/execution/sandbox/lazy-backend.js +1 -33
  152. package/dist/src/execution/sandbox/prewarm.js +1 -132
  153. package/dist/src/execution/sandbox/read-file-tool.js +3 -118
  154. package/dist/src/execution/sandbox/require-sandbox.js +1 -32
  155. package/dist/src/execution/sandbox/ripgrep-probe.js +1 -36
  156. package/dist/src/execution/sandbox/session.js +3 -158
  157. package/dist/src/execution/sandbox/shell-quote.js +1 -14
  158. package/dist/src/execution/sandbox/stream-utils.js +1 -22
  159. package/dist/src/execution/sandbox/truncate-output.js +3 -110
  160. package/dist/src/execution/sandbox/write-file-tool.js +1 -62
  161. package/dist/src/execution/session-callback-step.js +1 -72
  162. package/dist/src/execution/session.js +3 -94
  163. package/dist/src/execution/skills/instructions.js +2 -30
  164. package/dist/src/execution/skills/types.js +1 -1
  165. package/dist/src/execution/subagent-adapter.js +1 -94
  166. package/dist/src/execution/subagent-hitl-proxy.js +1 -81
  167. package/dist/src/execution/subagent-invocation.js +2 -16
  168. package/dist/src/execution/subagent-tool.js +1 -48
  169. package/dist/src/execution/tool-compaction.js +1 -54
  170. package/dist/src/execution/turn-workflow.js +1 -95
  171. package/dist/src/execution/web-fetch/html.js +7 -60
  172. package/dist/src/execution/web-fetch/tool.js +1 -90
  173. package/dist/src/execution/workflow-entry.js +1 -494
  174. package/dist/src/execution/workflow-errors.js +1 -54
  175. package/dist/src/execution/workflow-runtime.js +3 -161
  176. package/dist/src/execution/workflow-steps.js +1 -467
  177. package/dist/src/harness/action-result-helpers.js +1 -82
  178. package/dist/src/harness/attachment-staging.js +1 -303
  179. package/dist/src/harness/compaction.js +4 -221
  180. package/dist/src/harness/emission.js +1 -323
  181. package/dist/src/harness/execute-tool.js +1 -1
  182. package/dist/src/harness/input-extraction.js +1 -62
  183. package/dist/src/harness/input-requests.js +1 -306
  184. package/dist/src/harness/instrumentation-config.js +1 -42
  185. package/dist/src/harness/messages.js +1 -144
  186. package/dist/src/harness/model-call-error.js +1 -368
  187. package/dist/src/harness/otel-integration.js +1 -18
  188. package/dist/src/harness/prompt-cache.js +1 -137
  189. package/dist/src/harness/provider-tools.js +1 -137
  190. package/dist/src/harness/proxy-input-requests.js +1 -91
  191. package/dist/src/harness/runtime-actions.js +1 -321
  192. package/dist/src/harness/step-hooks.js +1 -192
  193. package/dist/src/harness/tool-loop.js +1 -877
  194. package/dist/src/harness/tool-result-pruning.js +1 -124
  195. package/dist/src/harness/tools.js +1 -98
  196. package/dist/src/harness/types.js +1 -1
  197. package/dist/src/index.js +1 -1
  198. package/dist/src/internal/application/cache-metadata.js +1 -42
  199. package/dist/src/internal/application/compiled-artifacts.js +4 -114
  200. package/dist/src/internal/application/import-specifier.js +1 -58
  201. package/dist/src/internal/application/package.js +1 -196
  202. package/dist/src/internal/application/paths.js +1 -117
  203. package/dist/src/internal/application/runtime-compiled-artifacts-source.js +1 -11
  204. package/dist/src/internal/attachments/data.js +1 -127
  205. package/dist/src/internal/attachments/errors.js +1 -26
  206. package/dist/src/internal/attachments/refs.js +1 -94
  207. package/dist/src/internal/attachments/sandbox-refs.js +1 -78
  208. package/dist/src/internal/attachments/url-refs.js +1 -20
  209. package/dist/src/internal/authored-asset-import-plugin.js +1 -141
  210. package/dist/src/internal/authored-definition/channel.js +1 -21
  211. package/dist/src/internal/authored-definition/connection.js +1 -148
  212. package/dist/src/internal/authored-definition/core.js +1 -180
  213. package/dist/src/internal/authored-definition/sandbox.js +1 -47
  214. package/dist/src/internal/authored-definition/schema-backed.js +1 -56
  215. package/dist/src/internal/authored-module-bundle.js +2 -19
  216. package/dist/src/internal/authored-module-loader.js +2 -263
  217. package/dist/src/internal/authored-module-map-loader.js +1 -53
  218. package/dist/src/internal/authored-module.js +1 -81
  219. package/dist/src/internal/authored-package-tsconfig-paths.js +1 -209
  220. package/dist/src/internal/bundler/nitro-rolldown.js +1 -42
  221. package/dist/src/internal/helpers/markdown.js +3 -174
  222. package/dist/src/internal/json-schema.js +1 -13
  223. package/dist/src/internal/logging.js +1 -226
  224. package/dist/src/internal/nitro/host/artifacts-config.js +1 -17
  225. package/dist/src/internal/nitro/host/build-application.js +1 -177
  226. package/dist/src/internal/nitro/host/build-vercel-agent-summary.js +1 -140
  227. package/dist/src/internal/nitro/host/channel-routes.js +2 -126
  228. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.js +2 -28
  229. package/dist/src/internal/nitro/host/configure-nitro-routes.js +4 -272
  230. package/dist/src/internal/nitro/host/create-application-nitro.js +1 -491
  231. package/dist/src/internal/nitro/host/cron-handler-route.js +1 -49
  232. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +1 -390
  233. package/dist/src/internal/nitro/host/nitro-bundler-config.js +1 -10
  234. package/dist/src/internal/nitro/host/nitro-routing-import-specifier-plugin.js +1 -28
  235. package/dist/src/internal/nitro/host/prepare-application-host.js +1 -32
  236. package/dist/src/internal/nitro/host/schedule-task-routes.js +2 -148
  237. package/dist/src/internal/nitro/host/server-external-packages.js +1 -107
  238. package/dist/src/internal/nitro/host/start-development-server.js +1 -223
  239. package/dist/src/internal/nitro/host/types.js +1 -1
  240. package/dist/src/internal/nitro/host/vercel-build-output-config.js +1 -14
  241. package/dist/src/internal/nitro/host/vercel-build-prewarm.js +1 -30
  242. package/dist/src/internal/nitro/host.js +1 -2
  243. package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response.js +2 -180
  244. package/dist/src/internal/nitro/routes/agent-info/load-agent-info-data.js +1 -46
  245. package/dist/src/internal/nitro/routes/channel-dispatch.js +1 -74
  246. package/dist/src/internal/nitro/routes/health.js +1 -17
  247. package/dist/src/internal/nitro/routes/index.js +2 -89
  248. package/dist/src/internal/nitro/routes/info.js +1 -50
  249. package/dist/src/internal/nitro/routes/runtime-artifacts.js +1 -24
  250. package/dist/src/internal/nitro/routes/runtime-stack.js +1 -23
  251. package/dist/src/internal/nitro/routes/schedule-task.js +1 -57
  252. package/dist/src/internal/nitro/routes/workflow-data.js +1 -141
  253. package/dist/src/internal/nitro/routes/workflow-route-helpers.js +1 -137
  254. package/dist/src/internal/nitro/routes/workflow-run-events.js +1 -41
  255. package/dist/src/internal/nitro/routes/workflow-run-steps.js +1 -41
  256. package/dist/src/internal/nitro/routes/workflow-run.js +1 -34
  257. package/dist/src/internal/nitro/routes/workflow-runs.js +1 -28
  258. package/dist/src/internal/node-esm-compat-banner.js +2 -65
  259. package/dist/src/internal/package-name.js +1 -8
  260. package/dist/src/internal/process/pnpm.js +1 -50
  261. package/dist/src/internal/runtime-model.js +1 -24
  262. package/dist/src/internal/runtime-registry.js +1 -93
  263. package/dist/src/internal/vercel-agent-summary.js +1 -72
  264. package/dist/src/internal/workflow/builtins.js +1 -18
  265. package/dist/src/internal/workflow/index.js +1 -9
  266. package/dist/src/internal/workflow-bundle/ash-service-route-output.js +3 -93
  267. package/dist/src/internal/workflow-bundle/builder-support.js +5 -372
  268. package/dist/src/internal/workflow-bundle/builder.js +5 -472
  269. package/dist/src/internal/workflow-bundle/nitro-step-entry.js +2 -132
  270. package/dist/src/internal/workflow-bundle/vercel-workflow-output.js +3 -494
  271. package/dist/src/internal/workflow-bundle/workflow-builders.js +1 -292
  272. package/dist/src/internal/workflow-bundle/workflow-core-shim.js +1 -84
  273. package/dist/src/internal/workflow-bundle/workflow-transformer.js +5 -318
  274. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/ajv.js +1 -0
  275. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js +1 -0
  276. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js +2 -0
  277. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js +1 -0
  278. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js +1 -0
  279. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/index.js +1 -0
  280. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/names.js +1 -0
  281. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js +1 -0
  282. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js +1 -0
  283. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js +1 -0
  284. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/util.js +1 -0
  285. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/applicability.js +1 -0
  286. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js +1 -0
  287. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js +4 -0
  288. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js +1 -0
  289. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js +1 -0
  290. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js +1 -0
  291. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js +1 -0
  292. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/core.js +1 -0
  293. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/data.js +1 -0
  294. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-draft-07.js +1 -0
  295. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js +1 -0
  296. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/ucs2length.js +1 -0
  297. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js +1 -0
  298. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/validation_error.js +1 -0
  299. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +1 -0
  300. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +1 -0
  301. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js +1 -0
  302. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +1 -0
  303. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js +1 -0
  304. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +4 -0
  305. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js +1 -0
  306. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js +1 -0
  307. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js +1 -0
  308. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js +1 -0
  309. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js +1 -0
  310. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +1 -0
  311. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +1 -0
  312. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +1 -0
  313. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js +1 -0
  314. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +1 -0
  315. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +1 -0
  316. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js +1 -0
  317. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/id.js +1 -0
  318. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js +1 -0
  319. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js +1 -0
  320. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js +1 -0
  321. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/types.js +1 -0
  322. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js +1 -0
  323. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js +1 -0
  324. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/index.js +1 -0
  325. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/metadata.js +1 -0
  326. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js +1 -0
  327. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js +1 -0
  328. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js +1 -0
  329. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js +1 -0
  330. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js +1 -0
  331. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +1 -0
  332. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +1 -0
  333. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +1 -0
  334. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js +1 -0
  335. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js +1 -0
  336. package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +1 -0
  337. package/dist/src/node_modules/.pnpm/autoevals@0.0.132_ws@8.21.0/node_modules/autoevals/jsdist/index.js +384 -0
  338. package/dist/src/node_modules/.pnpm/compute-cosine-similarity@1.1.0/node_modules/compute-cosine-similarity/lib/index.js +1 -0
  339. package/dist/src/node_modules/.pnpm/compute-dot@1.1.0/node_modules/compute-dot/lib/index.js +1 -0
  340. package/dist/src/node_modules/.pnpm/compute-l2norm@1.1.0/node_modules/compute-l2norm/lib/index.js +1 -0
  341. package/dist/src/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +1 -0
  342. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/index.js +1 -0
  343. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/schemes.js +1 -0
  344. package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/utils.js +1 -0
  345. package/dist/src/node_modules/.pnpm/js-levenshtein@1.1.6/node_modules/js-levenshtein/index.js +1 -0
  346. package/dist/src/node_modules/.pnpm/js-yaml@4.1.1/node_modules/js-yaml/dist/js-yaml.js +32 -0
  347. package/dist/src/node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js +1 -0
  348. package/dist/src/node_modules/.pnpm/mustache@4.2.0/node_modules/mustache/mustache.js +4 -0
  349. 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
  350. 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
  351. 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
  352. 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
  353. 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
  354. 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
  355. 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
  356. 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
  357. 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
  358. 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
  359. 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
  360. 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
  361. 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
  362. 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
  363. 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
  364. 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
  365. 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
  366. 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
  367. 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
  368. 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
  369. 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
  370. 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
  371. 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
  372. 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
  373. 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
  374. 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
  375. 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
  376. 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
  377. 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
  378. 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
  379. 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
  380. 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
  381. 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
  382. 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
  383. 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
  384. 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
  385. 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
  386. 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
  387. 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
  388. 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
  389. 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
  390. 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
  391. 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
  392. 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
  393. 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
  394. 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
  395. 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
  396. 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
  397. 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
  398. 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
  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/certificates.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/data-retention.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/groups/groups.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/groups/roles.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/users.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/invites.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/organization.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/projects/api-keys.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/projects/certificates.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/data-retention.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/groups/groups.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/groups/roles.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/hosted-tool-permissions.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/model-permissions.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/projects.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/rate-limits.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/roles.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/service-accounts.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/spend-alerts.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/users/roles.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/users/users.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/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/spend-alerts.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/usage.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/users/roles.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/users/users.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/audio/audio.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/audio/speech.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/transcriptions.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/translations.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/batches.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/beta/assistants.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/beta/beta.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/chatkit/chatkit.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/chatkit/sessions.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/threads.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/realtime/realtime.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/realtime/sessions.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/transcription-sessions.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/threads/messages.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/threads/runs/runs.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/runs/steps.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/threads.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/chat/chat.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/chat/completions/completions.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/completions/index.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/messages.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/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/completions.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/containers/containers.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/containers/files/content.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/files/files.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/conversations/conversations.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/conversations/items.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/embeddings.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/evals/evals.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/evals/runs/output-items.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/runs/runs.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/files.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/fine-tuning/alpha/alpha.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/fine-tuning/alpha/graders.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/checkpoints/checkpoints.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/checkpoints/permissions.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/fine-tuning.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/jobs/checkpoints.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/jobs/jobs.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/methods.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/graders/grader-models.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/graders/graders.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/images.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/index.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/models.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/moderations.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/realtime/calls.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/realtime/client-secrets.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/realtime.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/responses/input-items.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/responses/input-tokens.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/responses.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/shared.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/skills/content.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/skills/skills.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/versions/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/versions/versions.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/uploads/parts.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/uploads/uploads.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/vector-stores/file-batches.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/vector-stores/files.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/vector-stores.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/videos.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/webhooks/index.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/webhooks/webhooks.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.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/streaming.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/version.js +1 -0
  494. package/dist/src/node_modules/.pnpm/validate.io-array@1.0.6/node_modules/validate.io-array/lib/index.js +1 -0
  495. package/dist/src/node_modules/.pnpm/validate.io-function@1.0.2/node_modules/validate.io-function/lib/index.js +1 -0
  496. 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
  497. 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
  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/errorMessages.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/getRelativePath.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/index.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/parseDef.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/parseTypes.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/parsers/any.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/parsers/array.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/bigint.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/boolean.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/branded.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/catch.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/date.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/default.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/effects.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/enum.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/intersection.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/literal.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/map.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/nativeEnum.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/never.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/null.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/nullable.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/number.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/object.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/optional.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/pipeline.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/promise.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/readonly.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/record.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/set.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/string.js +3 -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/tuple.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/undefined.js +1 -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/union.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/unknown.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/selectParser.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/zodToJsonSchema.js +1 -0
  535. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/index.js +1 -0
  536. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +1 -0
  537. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +1 -0
  538. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/external.js +1 -0
  539. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js +1 -0
  540. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +1 -0
  541. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  542. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +1 -0
  543. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/index.js +1 -0
  544. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +1 -0
  545. package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +1 -0
  546. package/dist/src/packages/ash-scaffold/src/channels.js +7 -0
  547. package/dist/src/packages/ash-scaffold/src/files.js +1 -0
  548. package/dist/src/packages/ash-scaffold/src/index.js +1 -0
  549. package/dist/src/packages/ash-scaffold/src/module-files.js +1 -0
  550. package/dist/src/packages/ash-scaffold/src/package-json.js +1 -0
  551. package/dist/src/packages/ash-scaffold/src/project.js +1 -0
  552. package/dist/src/protocol/message.js +2 -501
  553. package/dist/src/protocol/routes.js +1 -85
  554. package/dist/src/public/agents/auth.js +1 -37
  555. package/dist/src/public/channels/ash.js +2 -346
  556. package/dist/src/public/channels/auth.js +1 -414
  557. package/dist/src/public/channels/discord/api.js +2 -167
  558. package/dist/src/public/channels/discord/defaults.js +3 -74
  559. package/dist/src/public/channels/discord/discordChannel.js +1 -402
  560. package/dist/src/public/channels/discord/hitl.js +1 -194
  561. package/dist/src/public/channels/discord/inbound.js +2 -238
  562. package/dist/src/public/channels/discord/index.js +1 -6
  563. package/dist/src/public/channels/discord/responses.js +1 -40
  564. package/dist/src/public/channels/discord/verify.js +1 -72
  565. package/dist/src/public/channels/discord/verifyInbound.js +1 -19
  566. package/dist/src/public/channels/index.js +1 -1
  567. package/dist/src/public/channels/slack/api-encoding.js +1 -40
  568. package/dist/src/public/channels/slack/api.js +1 -333
  569. package/dist/src/public/channels/slack/attachments.js +1 -156
  570. package/dist/src/public/channels/slack/blocks.js +3 -266
  571. package/dist/src/public/channels/slack/connections.js +1 -70
  572. package/dist/src/public/channels/slack/constants.js +1 -7
  573. package/dist/src/public/channels/slack/defaults.js +4 -211
  574. package/dist/src/public/channels/slack/hitl.js +1 -242
  575. package/dist/src/public/channels/slack/inbound.js +2 -149
  576. package/dist/src/public/channels/slack/index.js +1 -13
  577. package/dist/src/public/channels/slack/interactions.js +1 -315
  578. package/dist/src/public/channels/slack/limits.js +1 -75
  579. package/dist/src/public/channels/slack/mrkdwn.js +1 -89
  580. package/dist/src/public/channels/slack/slackChannel.js +1 -251
  581. package/dist/src/public/channels/slack/thread.js +1 -45
  582. package/dist/src/public/channels/slack/verify.js +1 -70
  583. package/dist/src/public/channels/teams/api.d.ts +140 -0
  584. package/dist/src/public/channels/teams/api.js +4 -0
  585. package/dist/src/public/channels/teams/attachments.d.ts +25 -0
  586. package/dist/src/public/channels/teams/attachments.js +1 -0
  587. package/dist/src/public/channels/teams/defaults.d.ts +24 -0
  588. package/dist/src/public/channels/teams/defaults.js +3 -0
  589. package/dist/src/public/channels/teams/hitl.d.ts +36 -0
  590. package/dist/src/public/channels/teams/hitl.js +1 -0
  591. package/dist/src/public/channels/teams/inbound.d.ts +80 -0
  592. package/dist/src/public/channels/teams/inbound.js +3 -0
  593. package/dist/src/public/channels/teams/index.d.ts +8 -0
  594. package/dist/src/public/channels/teams/index.js +1 -0
  595. package/dist/src/public/channels/teams/limits.d.ts +8 -0
  596. package/dist/src/public/channels/teams/limits.js +1 -0
  597. package/dist/src/public/channels/teams/teamsChannel.d.ts +162 -0
  598. package/dist/src/public/channels/teams/teamsChannel.js +1 -0
  599. package/dist/src/public/channels/teams/verify.d.ts +43 -0
  600. package/dist/src/public/channels/teams/verify.js +1 -0
  601. package/dist/src/public/channels/telegram/api.d.ts +107 -0
  602. package/dist/src/public/channels/telegram/api.js +2 -0
  603. package/dist/src/public/channels/telegram/attachments.d.ts +23 -0
  604. package/dist/src/public/channels/telegram/attachments.js +1 -0
  605. package/dist/src/public/channels/telegram/defaults.d.ts +9 -0
  606. package/dist/src/public/channels/telegram/defaults.js +3 -0
  607. package/dist/src/public/channels/telegram/hitl.d.ts +44 -0
  608. package/dist/src/public/channels/telegram/hitl.js +1 -0
  609. package/dist/src/public/channels/telegram/inbound.d.ts +88 -0
  610. package/dist/src/public/channels/telegram/inbound.js +2 -0
  611. package/dist/src/public/channels/telegram/index.d.ts +8 -0
  612. package/dist/src/public/channels/telegram/index.js +1 -0
  613. package/dist/src/public/channels/telegram/telegramChannel.d.ts +126 -0
  614. package/dist/src/public/channels/telegram/telegramChannel.js +1 -0
  615. package/dist/src/public/channels/telegram/verify.d.ts +30 -0
  616. package/dist/src/public/channels/telegram/verify.js +1 -0
  617. package/dist/src/public/channels/twilio/api.js +1 -103
  618. package/dist/src/public/channels/twilio/defaults.js +3 -69
  619. package/dist/src/public/channels/twilio/inbound.js +2 -123
  620. package/dist/src/public/channels/twilio/index.js +1 -4
  621. package/dist/src/public/channels/twilio/twilioChannel.js +1 -316
  622. package/dist/src/public/channels/twilio/twiml.js +1 -58
  623. package/dist/src/public/channels/twilio/verify.js +1 -73
  624. package/dist/src/public/channels/upload-policy.js +1 -170
  625. package/dist/src/public/connections/errors.js +1 -53
  626. package/dist/src/public/connections/index.js +1 -6
  627. package/dist/src/public/context/index.js +1 -13
  628. package/dist/src/public/definitions/agent.js +1 -6
  629. package/dist/src/public/definitions/channel.js +1 -24
  630. package/dist/src/public/definitions/connections/mcp.js +1 -20
  631. package/dist/src/public/definitions/defineChannel.js +1 -74
  632. package/dist/src/public/definitions/hook.js +1 -11
  633. package/dist/src/public/definitions/instructions.js +1 -7
  634. package/dist/src/public/definitions/instrumentation.js +1 -13
  635. package/dist/src/public/definitions/remote-agent.js +1 -11
  636. package/dist/src/public/definitions/sandbox-backend.js +1 -13
  637. package/dist/src/public/definitions/sandbox.js +1 -6
  638. package/dist/src/public/definitions/schedule.js +1 -32
  639. package/dist/src/public/definitions/skill.js +1 -7
  640. package/dist/src/public/definitions/source.js +1 -1
  641. package/dist/src/public/definitions/state.js +1 -34
  642. package/dist/src/public/definitions/tool.js +1 -27
  643. package/dist/src/public/hooks/index.js +1 -9
  644. package/dist/src/public/index.js +1 -5
  645. package/dist/src/public/instructions/index.js +1 -4
  646. package/dist/src/public/instrumentation/index.js +1 -4
  647. package/dist/src/public/next/index.js +1 -148
  648. package/dist/src/public/next/server.js +1 -348
  649. package/dist/src/public/next/vercel-json.js +1 -77
  650. package/dist/src/public/sandbox/backends/default.js +1 -15
  651. package/dist/src/public/sandbox/backends/local.js +1 -18
  652. package/dist/src/public/sandbox/backends/vercel.js +1 -25
  653. package/dist/src/public/sandbox/index.js +1 -10
  654. package/dist/src/public/sandbox/local-sandbox.js +1 -1
  655. package/dist/src/public/sandbox/vercel-sandbox.js +1 -1
  656. package/dist/src/public/schedules/index.js +1 -4
  657. package/dist/src/public/skills/index.js +1 -5
  658. package/dist/src/public/tool-result-narrowing.js +1 -87
  659. package/dist/src/public/tools/approval/approval-helpers.js +1 -22
  660. package/dist/src/public/tools/approval/index.js +1 -4
  661. package/dist/src/public/tools/defaults.js +1 -70
  662. package/dist/src/public/tools/define-bash-tool.js +1 -14
  663. package/dist/src/public/tools/define-glob-tool.js +1 -21
  664. package/dist/src/public/tools/define-grep-tool.js +1 -21
  665. package/dist/src/public/tools/define-read-file-tool.js +1 -27
  666. package/dist/src/public/tools/define-write-file-tool.js +1 -21
  667. package/dist/src/public/tools/index.js +1 -10
  668. package/dist/src/public/tools/internal.js +1 -24
  669. package/dist/src/public/types/json.js +1 -13
  670. package/dist/src/react/index.js +1 -3
  671. package/dist/src/react/use-ash-agent.js +2 -348
  672. package/dist/src/runtime/actions/keys.js +1 -30
  673. package/dist/src/runtime/actions/types.js +1 -99
  674. package/dist/src/runtime/agent/bootstrap-model-utils.js +1 -148
  675. package/dist/src/runtime/agent/bootstrap-model.js +1 -36
  676. package/dist/src/runtime/agent/bootstrap.js +1 -49
  677. package/dist/src/runtime/agent/mock-model-adapter.js +7 -358
  678. package/dist/src/runtime/agent/resolve-model.js +1 -48
  679. package/dist/src/runtime/cache-key.js +1 -52
  680. package/dist/src/runtime/channels/registry.js +1 -133
  681. package/dist/src/runtime/compiled-artifacts-source.js +1 -42
  682. package/dist/src/runtime/connections/authorization-complete-page.js +2 -21
  683. package/dist/src/runtime/connections/authorization-tokens.js +1 -66
  684. package/dist/src/runtime/connections/callback-route.js +1 -139
  685. package/dist/src/runtime/connections/mcp-client.js +1 -307
  686. package/dist/src/runtime/connections/principal-context.js +1 -111
  687. package/dist/src/runtime/connections/principal.js +1 -106
  688. package/dist/src/runtime/connections/registry.js +1 -61
  689. package/dist/src/runtime/connections/types.js +1 -41
  690. package/dist/src/runtime/connections/validate-authorization.js +1 -92
  691. package/dist/src/runtime/framework-channels/index.js +1 -38
  692. package/dist/src/runtime/framework-tools/ask-question.js +1 -30
  693. package/dist/src/runtime/framework-tools/bash.js +1 -40
  694. package/dist/src/runtime/framework-tools/connection-search.js +1 -224
  695. package/dist/src/runtime/framework-tools/connection-tools.js +1 -103
  696. package/dist/src/runtime/framework-tools/file-state.js +1 -71
  697. package/dist/src/runtime/framework-tools/glob.js +2 -56
  698. package/dist/src/runtime/framework-tools/grep.js +2 -75
  699. package/dist/src/runtime/framework-tools/index.js +1 -52
  700. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.js +1 -63
  701. package/dist/src/runtime/framework-tools/read-file.js +2 -64
  702. package/dist/src/runtime/framework-tools/skill.js +1 -47
  703. package/dist/src/runtime/framework-tools/todo.js +3 -122
  704. package/dist/src/runtime/framework-tools/web-fetch.js +2 -42
  705. package/dist/src/runtime/framework-tools/web-search.js +1 -15
  706. package/dist/src/runtime/framework-tools/write-file.js +2 -48
  707. package/dist/src/runtime/governance/auth/http-basic.js +1 -63
  708. package/dist/src/runtime/governance/auth/jwt-ecdsa.js +1 -69
  709. package/dist/src/runtime/governance/auth/jwt-hmac.js +1 -39
  710. package/dist/src/runtime/governance/auth/oidc.js +1 -126
  711. package/dist/src/runtime/governance/auth/token-claims.js +1 -84
  712. package/dist/src/runtime/governance/auth/types.js +1 -14
  713. package/dist/src/runtime/governance/network/ip-allow-list.js +1 -66
  714. package/dist/src/runtime/graph.js +1 -17
  715. package/dist/src/runtime/hooks/registry.js +1 -55
  716. package/dist/src/runtime/input/types.js +1 -63
  717. package/dist/src/runtime/loaders/artifact-paths.js +1 -26
  718. package/dist/src/runtime/loaders/bundled-artifacts.js +1 -21
  719. package/dist/src/runtime/loaders/compile-metadata.js +1 -92
  720. package/dist/src/runtime/loaders/manifest.js +1 -56
  721. package/dist/src/runtime/loaders/module-map.js +1 -64
  722. package/dist/src/runtime/prompt/compose.js +2 -47
  723. package/dist/src/runtime/prompt/connections.js +2 -23
  724. package/dist/src/runtime/resolve-agent-graph.js +1 -287
  725. package/dist/src/runtime/resolve-agent.js +1 -134
  726. package/dist/src/runtime/resolve-channel.js +1 -62
  727. package/dist/src/runtime/resolve-connection.js +1 -72
  728. package/dist/src/runtime/resolve-helpers.js +1 -58
  729. package/dist/src/runtime/resolve-hook.js +1 -67
  730. package/dist/src/runtime/resolve-sandbox.js +1 -65
  731. package/dist/src/runtime/resolve-tool.js +1 -110
  732. package/dist/src/runtime/sandbox/keys.js +1 -72
  733. package/dist/src/runtime/sandbox/registry.js +1 -42
  734. package/dist/src/runtime/schedules/register.js +1 -62
  735. package/dist/src/runtime/schedules/resolve-schedule.js +1 -66
  736. package/dist/src/runtime/session-callback-route.js +1 -87
  737. package/dist/src/runtime/sessions/auth.js +1 -18
  738. package/dist/src/runtime/sessions/compiled-agent-cache.js +1 -125
  739. package/dist/src/runtime/sessions/runtime-session.js +1 -50
  740. package/dist/src/runtime/sessions/turn.js +1 -1
  741. package/dist/src/runtime/skills/fragment-context.js +1 -4
  742. package/dist/src/runtime/skills/sandbox-access.js +1 -85
  743. package/dist/src/runtime/subagents/registry.js +1 -62
  744. package/dist/src/runtime/tools/registry.js +1 -40
  745. package/dist/src/runtime/types.js +1 -1
  746. package/dist/src/runtime/validation.js +1 -7
  747. package/dist/src/runtime/workspace/seed-files.js +1 -42
  748. package/dist/src/runtime/workspace/spec.js +2 -22
  749. package/dist/src/runtime/workspace/types.js +1 -9
  750. package/dist/src/sandbox/state.js +1 -1
  751. package/dist/src/services/dev-client/request-headers.js +1 -197
  752. package/dist/src/services/dev-client/stream.js +1 -7
  753. package/dist/src/services/dev-client/url.js +1 -25
  754. package/dist/src/services/dev-client/vercel-auth-error.js +2 -98
  755. package/dist/src/services/dev-client.js +1 -48
  756. package/dist/src/services/inspect-application.js +1 -45
  757. package/dist/src/shared/agent-definition.js +1 -1
  758. package/dist/src/shared/errors.js +1 -66
  759. package/dist/src/shared/guards.js +1 -35
  760. package/dist/src/shared/json-schemas.js +1 -41
  761. package/dist/src/shared/json.js +1 -80
  762. package/dist/src/shared/node.js +1 -1
  763. package/dist/src/shared/optional.js +1 -1
  764. package/dist/src/shared/run-mode.js +1 -1
  765. package/dist/src/shared/sandbox-backend.js +1 -1
  766. package/dist/src/shared/sandbox-definition.js +1 -1
  767. package/dist/src/shared/sandbox-session.js +1 -1
  768. package/dist/src/shared/skill-definition.js +1 -1
  769. package/dist/src/shared/skill-package.js +1 -100
  770. package/dist/src/shared/source-ref.js +1 -1
  771. package/dist/src/shared/tool-definition.js +1 -1
  772. package/package.json +14 -4
  773. package/dist/src/chunks/authored-module-loader-DcCfCiBm.js +0 -4
  774. package/dist/src/chunks/chunk-DSjMdhoD.js +0 -1
  775. package/dist/src/chunks/client-ZqNLLMZB.js +0 -4
  776. package/dist/src/chunks/compile-agent-DrIyb818.js +0 -5
  777. package/dist/src/chunks/dev-authored-source-watcher-C1WUVv9F.js +0 -1
  778. package/dist/src/chunks/errors-HYWjHxV6.js +0 -1
  779. package/dist/src/chunks/guards-26p6sOw3.js +0 -1
  780. package/dist/src/chunks/host-CwAcCrg7.js +0 -70
  781. package/dist/src/chunks/input-requests-DJiy6dG9.js +0 -1
  782. package/dist/src/chunks/jsdist-BkeWZ7EZ.js +0 -443
  783. package/dist/src/chunks/paths-CWZN-XRX.js +0 -85
  784. package/dist/src/chunks/picocolors-aAkqW4On.js +0 -1
  785. package/dist/src/chunks/runtime-model-Dh0Nz64z.js +0 -1
  786. package/dist/src/chunks/token-YW4VSeBB.js +0 -1
  787. package/dist/src/chunks/types-BJSR0JNV.js +0 -1
@@ -1,122 +1,3 @@
1
- import { loadContext } from "#context/container.js";
2
- import { ContextKey } from "#context/key.js";
3
- export const TodoStateKey = new ContextKey("ash.todo");
4
- function formatTodoSummary(state) {
5
- if (state.items.length === 0)
6
- return undefined;
7
- const lines = state.items.map((item) => {
8
- const check = item.status === "completed" ? "x" : item.status === "cancelled" ? "-" : " ";
9
- return `- [${check}] [${item.priority}] ${item.content}`;
10
- });
11
- return `[Your task list was preserved across context compaction]\n${lines.join("\n")}`;
12
- }
13
- function formatTodoResult(state) {
14
- const { items } = state;
15
- const counts = {
16
- cancelled: 0,
17
- completed: 0,
18
- in_progress: 0,
19
- pending: 0,
20
- total: items.length,
21
- };
22
- for (const item of items) {
23
- counts[item.status]++;
24
- }
25
- return {
26
- counts,
27
- todos: items,
28
- };
29
- }
30
- /**
31
- * Executes the framework todo tool.
32
- *
33
- * - Read: omit `todos` → returns the current list.
34
- * - Write: provide `todos` → replaces the entire list, returns the new list.
35
- *
36
- * Both paths return the same formatted output so the model always sees
37
- * the full current state.
38
- */
39
- export function executeTodoTool(input) {
40
- const ctx = loadContext();
41
- const { todos } = input ?? {};
42
- if (todos !== undefined) {
43
- const newState = { items: [...todos] };
44
- ctx.set(TodoStateKey, newState);
45
- return formatTodoResult(newState);
46
- }
47
- const current = ctx.ensure(TodoStateKey, () => ({ items: [] }));
48
- return formatTodoResult(current);
49
- }
50
- // ---------------------------------------------------------------------------
51
- // Tool definition
52
- // ---------------------------------------------------------------------------
53
- export const TODO_TOOL_DEFINITION = {
54
- description: [
55
- "Use this tool to create and manage a structured task list for the current session.",
56
- "This helps you track progress, organize complex tasks, and demonstrate thoroughness.",
57
- "",
58
- "When to use:",
59
- "- Complex multistep tasks requiring 3 or more distinct steps",
60
- "- When the user provides multiple tasks or a numbered list",
61
- "- After receiving new instructions, to capture requirements",
62
- "- After completing a task, to mark it complete and add follow-ups",
63
- "",
64
- "When NOT to use:",
65
- "- Single, straightforward tasks that need no tracking",
66
- "- Purely conversational or informational requests",
67
- "",
68
- "Usage:",
69
- "- Call with `todos` to replace the entire list (full replacement write)",
70
- "- Call without `todos` to read the current list",
71
- "- Both return the full current list with status counts",
72
- "- Mark tasks in_progress when you start, completed when done",
73
- "- Only have ONE task in_progress at a time",
74
- ].join("\n"),
75
- execute: async (input) => executeTodoTool((input ?? {})),
76
- inputSchema: {
77
- additionalProperties: false,
78
- properties: {
79
- todos: {
80
- description: "The updated todo list. Omit to read the current list without modifying it.",
81
- items: {
82
- additionalProperties: false,
83
- properties: {
84
- content: {
85
- description: "Brief description of the task.",
86
- type: "string",
87
- },
88
- priority: {
89
- description: "Priority level of the task.",
90
- enum: ["high", "medium", "low"],
91
- type: "string",
92
- },
93
- status: {
94
- description: "Current status of the task.",
95
- enum: ["pending", "in_progress", "completed", "cancelled"],
96
- type: "string",
97
- },
98
- },
99
- required: ["content", "status", "priority"],
100
- type: "object",
101
- },
102
- type: "array",
103
- },
104
- },
105
- type: "object",
106
- },
107
- logicalPath: "ash:framework/todo",
108
- name: "todo",
109
- onCompact({ ctx }) {
110
- const state = ctx.get(TodoStateKey);
111
- if (state === undefined || state.items.length === 0)
112
- return {};
113
- const summary = formatTodoSummary(state);
114
- if (summary === undefined)
115
- return {};
116
- return {
117
- messages: [{ content: summary, role: "user" }],
118
- };
119
- },
120
- sourceId: "ash:todo-tool",
121
- sourceKind: "module",
122
- };
1
+ import{loadContext}from"#context/container.js";import{ContextKey}from"#context/key.js";var TodoStateKey=new ContextKey(`ash.todo`);function formatTodoSummary(e){return e.items.length===0?void 0:`[Your task list was preserved across context compaction]\n${e.items.map(e=>`- [${e.status===`completed`?`x`:e.status===`cancelled`?`-`:` `}] [${e.priority}] ${e.content}`).join(`
2
+ `)}`}function formatTodoResult(e){let{items:t}=e,n={cancelled:0,completed:0,in_progress:0,pending:0,total:t.length};for(let e of t)n[e.status]++;return{counts:n,todos:t}}function executeTodoTool(t){let r=loadContext(),{todos:i}=t??{};if(i!==void 0){let e={items:[...i]};return r.set(TodoStateKey,e),formatTodoResult(e)}return formatTodoResult(r.ensure(TodoStateKey,()=>({items:[]})))}var TODO_TOOL_DEFINITION={description:[`Use this tool to create and manage a structured task list for the current session.`,`This helps you track progress, organize complex tasks, and demonstrate thoroughness.`,``,`When to use:`,`- Complex multistep tasks requiring 3 or more distinct steps`,`- When the user provides multiple tasks or a numbered list`,`- After receiving new instructions, to capture requirements`,`- After completing a task, to mark it complete and add follow-ups`,``,`When NOT to use:`,`- Single, straightforward tasks that need no tracking`,`- Purely conversational or informational requests`,``,`Usage:`,"- Call with `todos` to replace the entire list (full replacement write)","- Call without `todos` to read the current list",`- Both return the full current list with status counts`,`- Mark tasks in_progress when you start, completed when done`,`- Only have ONE task in_progress at a time`].join(`
3
+ `),execute:async e=>executeTodoTool(e??{}),inputSchema:{additionalProperties:!1,properties:{todos:{description:`The updated todo list. Omit to read the current list without modifying it.`,items:{additionalProperties:!1,properties:{content:{description:`Brief description of the task.`,type:`string`},priority:{description:`Priority level of the task.`,enum:[`high`,`medium`,`low`],type:`string`},status:{description:`Current status of the task.`,enum:[`pending`,`in_progress`,`completed`,`cancelled`],type:`string`}},required:[`content`,`status`,`priority`],type:`object`},type:`array`}},type:`object`},logicalPath:`ash:framework/todo`,name:`todo`,onCompact({ctx:e}){let t=e.get(TodoStateKey);if(t===void 0||t.items.length===0)return{};let r=formatTodoSummary(t);return r===void 0?{}:{messages:[{content:r,role:`user`}]}},sourceId:`ash:todo-tool`,sourceKind:`module`};export{TODO_TOOL_DEFINITION,TodoStateKey,executeTodoTool};
@@ -1,42 +1,2 @@
1
- import { executeWebFetchTool } from "#execution/web-fetch/tool.js";
2
- async function executeWebFetch(input) {
3
- return executeWebFetchTool(input);
4
- }
5
- export const WEB_FETCH_TOOL_DEFINITION = {
6
- description: [
7
- "Fetch a webpage and return its content in the requested format. Use this to retrieve and analyze content from URLs.",
8
- "",
9
- "Usage notes:",
10
- "- The URL must be a fully-formed valid URL starting with http:// or https://",
11
- "- HTML responses are automatically converted to markdown or plain text based on the requested format",
12
- '- Format options: "markdown" (default), "text", or "html"',
13
- "- Default timeout is 30 seconds (max 120 seconds)",
14
- "- Maximum response size is 5 MB; content is further capped at the shared tool-output budget (50 KB / 2000 lines)",
15
- "- This tool is read-only and does not modify any files",
16
- ].join("\n"),
17
- execute: executeWebFetch,
18
- inputSchema: {
19
- additionalProperties: false,
20
- properties: {
21
- format: {
22
- description: 'The format to return the content in (text, markdown, or html). HTML responses are automatically converted to the requested format. Defaults to "markdown".',
23
- enum: ["markdown", "text", "html"],
24
- type: "string",
25
- },
26
- timeout: {
27
- description: "Optional timeout in seconds. Defaults to 30, max 120.",
28
- type: "number",
29
- },
30
- url: {
31
- description: "The fully-formed URL to fetch content from. Must start with http:// or https://.",
32
- type: "string",
33
- },
34
- },
35
- required: ["url"],
36
- type: "object",
37
- },
38
- logicalPath: "ash:framework/web-fetch",
39
- name: "web_fetch",
40
- sourceId: "ash:web-fetch-tool",
41
- sourceKind: "module",
42
- };
1
+ import{executeWebFetchTool}from"#execution/web-fetch/tool.js";async function executeWebFetch(e){return executeWebFetchTool(e)}var WEB_FETCH_TOOL_DEFINITION={description:[`Fetch a webpage and return its content in the requested format. Use this to retrieve and analyze content from URLs.`,``,`Usage notes:`,`- The URL must be a fully-formed valid URL starting with http:// or https://`,`- HTML responses are automatically converted to markdown or plain text based on the requested format`,`- Format options: "markdown" (default), "text", or "html"`,`- Default timeout is 30 seconds (max 120 seconds)`,`- Maximum response size is 5 MB; content is further capped at the shared tool-output budget (50 KB / 2000 lines)`,`- This tool is read-only and does not modify any files`].join(`
2
+ `),execute:executeWebFetch,inputSchema:{additionalProperties:!1,properties:{format:{description:`The format to return the content in (text, markdown, or html). HTML responses are automatically converted to the requested format. Defaults to "markdown".`,enum:[`markdown`,`text`,`html`],type:`string`},timeout:{description:`Optional timeout in seconds. Defaults to 30, max 120.`,type:`number`},url:{description:`The fully-formed URL to fetch content from. Must start with http:// or https://.`,type:`string`}},required:[`url`],type:`object`},logicalPath:`ash:framework/web-fetch`,name:`web_fetch`,sourceId:`ash:web-fetch-tool`,sourceKind:`module`};export{WEB_FETCH_TOOL_DEFINITION};
@@ -1,15 +1 @@
1
- /**
2
- * Framework-provided web search tool definition.
3
- *
4
- * Omits `execute` — the execution layer skips executor creation for tools
5
- * without it, and the harness injects the real provider-managed tool at
6
- * step time.
7
- */
8
- export const WEB_SEARCH_TOOL_DEFINITION = {
9
- description: "Search the web for real-time information. Use this to find up-to-date information about current events, recent developments, or topics that may have changed since the knowledge cutoff.",
10
- inputSchema: null,
11
- logicalPath: "ash:framework/web-search",
12
- name: "web_search",
13
- sourceId: "ash:web-search-tool",
14
- sourceKind: "module",
15
- };
1
+ var WEB_SEARCH_TOOL_DEFINITION={description:`Search the web for real-time information. Use this to find up-to-date information about current events, recent developments, or topics that may have changed since the knowledge cutoff.`,inputSchema:null,logicalPath:`ash:framework/web-search`,name:`web_search`,sourceId:`ash:web-search-tool`,sourceKind:`module`};export{WEB_SEARCH_TOOL_DEFINITION};
@@ -1,48 +1,2 @@
1
- import { executeWriteFileOnSandbox, } from "#execution/sandbox/write-file-tool.js";
2
- /**
3
- * Shared input schema used by the framework `write_file` tool and any author
4
- * tool constructed via {@link defineWriteFileTool}.
5
- *
6
- * Exported so the public `defineWriteFileTool` factory and the framework
7
- * `WRITE_FILE_TOOL_DEFINITION` use the exact same schema object — keeping
8
- * model input contracts in sync without duplication.
9
- */
10
- export const WRITE_FILE_INPUT_SCHEMA = {
11
- additionalProperties: false,
12
- properties: {
13
- content: {
14
- description: "Complete replacement file contents.",
15
- type: "string",
16
- },
17
- filePath: {
18
- description: "The absolute path to the file to write (must be absolute, not relative).",
19
- type: "string",
20
- },
21
- },
22
- required: ["filePath", "content"],
23
- type: "object",
24
- };
25
- /**
26
- * Framework-owned executor that delegates to the default sandbox.
27
- */
28
- async function executeWriteFile(input) {
29
- return executeWriteFileOnSandbox(input);
30
- }
31
- export const WRITE_FILE_TOOL_DEFINITION = {
32
- description: [
33
- "Writes a file to the local filesystem.",
34
- "",
35
- "Usage:",
36
- "- This tool will overwrite the existing file if there is one at the provided path.",
37
- "- If this is an existing file, you MUST use the read_file tool first to read the file's contents. This tool will fail if you did not read the file first.",
38
- "- ALWAYS prefer editing existing files in the codebase. NEVER write new files unless explicitly required.",
39
- "- NEVER proactively create documentation files (*.md) or README files. Only create documentation files if explicitly requested by the User.",
40
- "- Only use emojis if the user explicitly requests it. Avoid writing emojis to files unless asked.",
41
- ].join("\n"),
42
- execute: executeWriteFile,
43
- inputSchema: WRITE_FILE_INPUT_SCHEMA,
44
- logicalPath: "ash:framework/write-file",
45
- name: "write_file",
46
- sourceId: "ash:write-file-tool",
47
- sourceKind: "module",
48
- };
1
+ import{executeWriteFileOnSandbox}from"#execution/sandbox/write-file-tool.js";var WRITE_FILE_INPUT_SCHEMA={additionalProperties:!1,properties:{content:{description:`Complete replacement file contents.`,type:`string`},filePath:{description:`The absolute path to the file to write (must be absolute, not relative).`,type:`string`}},required:[`filePath`,`content`],type:`object`};async function executeWriteFile(e){return executeWriteFileOnSandbox(e)}var WRITE_FILE_TOOL_DEFINITION={description:[`Writes a file to the local filesystem.`,``,`Usage:`,`- This tool will overwrite the existing file if there is one at the provided path.`,`- If this is an existing file, you MUST use the read_file tool first to read the file's contents. This tool will fail if you did not read the file first.`,`- ALWAYS prefer editing existing files in the codebase. NEVER write new files unless explicitly required.`,`- NEVER proactively create documentation files (*.md) or README files. Only create documentation files if explicitly requested by the User.`,`- Only use emojis if the user explicitly requests it. Avoid writing emojis to files unless asked.`].join(`
2
+ `),execute:executeWriteFile,inputSchema:WRITE_FILE_INPUT_SCHEMA,logicalPath:`ash:framework/write-file`,name:`write_file`,sourceId:`ash:write-file-tool`,sourceKind:`module`};export{WRITE_FILE_INPUT_SCHEMA,WRITE_FILE_TOOL_DEFINITION};
@@ -1,63 +1 @@
1
- import { createHash, timingSafeEqual } from "node:crypto";
2
- /**
3
- * Verifies one HTTP Basic credential against a resolved Ash strategy.
4
- */
5
- export function authenticateHttpBasicStrategy(input) {
6
- const credentials = parseBasicAuthorizationHeader(input.authorization);
7
- if (credentials === null) {
8
- return {
9
- kind: "not-authenticated",
10
- };
11
- }
12
- if (credentials.username !== input.strategy.username) {
13
- return {
14
- kind: "not-authenticated",
15
- };
16
- }
17
- if (!timingSafeStringEquals(credentials.password, input.strategy.password)) {
18
- return {
19
- kind: "not-authenticated",
20
- };
21
- }
22
- return {
23
- kind: "authenticated",
24
- principal: {
25
- attributes: Object.freeze({}),
26
- authenticator: "http-basic",
27
- claims: Object.freeze({}),
28
- principalId: input.strategy.username,
29
- principalType: "user",
30
- },
31
- };
32
- }
33
- function parseBasicAuthorizationHeader(value) {
34
- const match = /^Basic\s+(.+)$/i.exec(value);
35
- if (match === null) {
36
- return null;
37
- }
38
- const encodedCredentials = match[1];
39
- if (encodedCredentials === undefined) {
40
- return null;
41
- }
42
- let decoded;
43
- try {
44
- decoded = Buffer.from(encodedCredentials, "base64").toString("utf8");
45
- }
46
- catch {
47
- return null;
48
- }
49
- const separatorIndex = decoded.indexOf(":");
50
- if (separatorIndex === -1) {
51
- return null;
52
- }
53
- return {
54
- password: decoded.slice(separatorIndex + 1),
55
- username: decoded.slice(0, separatorIndex),
56
- };
57
- }
58
- function timingSafeStringEquals(left, right) {
59
- return timingSafeEqual(hashString(left), hashString(right));
60
- }
61
- function hashString(value) {
62
- return createHash("sha256").update(value, "utf8").digest();
63
- }
1
+ import{createHash,timingSafeEqual}from"node:crypto";function authenticateHttpBasicStrategy(e){let t=parseBasicAuthorizationHeader(e.authorization);return t===null||t.username!==e.strategy.username||!timingSafeStringEquals(t.password,e.strategy.password)?{kind:`not-authenticated`}:{kind:`authenticated`,principal:{attributes:Object.freeze({}),authenticator:`http-basic`,claims:Object.freeze({}),principalId:e.strategy.username,principalType:`user`}}}function parseBasicAuthorizationHeader(e){let t=/^Basic\s+(.+)$/i.exec(e);if(t===null)return null;let n=t[1];if(n===void 0)return null;let r;try{r=Buffer.from(n,`base64`).toString(`utf8`)}catch{return null}let i=r.indexOf(`:`);return i===-1?null:{password:r.slice(i+1),username:r.slice(0,i)}}function timingSafeStringEquals(e,n){return timingSafeEqual(hashString(e),hashString(n))}function hashString(t){return createHash(`sha256`).update(t,`utf8`).digest()}export{authenticateHttpBasicStrategy};
@@ -1,69 +1 @@
1
- import { importJWK, importSPKI, jwtVerify } from "#compiled/jose/index.js";
2
- import { areTokenClaimMatchersSatisfied, createJwtAuthenticatedCallerPrincipal, } from "#runtime/governance/auth/token-claims.js";
3
- const importedJwtPublicKeyCache = new Map();
4
- /**
5
- * Verifies one bearer token against a resolved ECDSA JWT strategy.
6
- */
7
- export async function authenticateJwtEcdsaStrategy(input) {
8
- let publicKey;
9
- try {
10
- publicKey = await getImportedJwtPublicKey(input.strategy);
11
- }
12
- catch (error) {
13
- return {
14
- kind: "misconfigured",
15
- message: `Failed to import JWT ECDSA public key. ${error instanceof Error ? error.message : "Unknown key import failure."}`,
16
- };
17
- }
18
- try {
19
- const verified = await jwtVerify(input.token, publicKey, {
20
- algorithms: [input.strategy.algorithm],
21
- audience: [...input.strategy.audiences],
22
- clockTolerance: input.strategy.clockSkewSeconds,
23
- issuer: input.strategy.issuer,
24
- });
25
- if (typeof verified.payload.sub !== "string" || verified.payload.sub.length === 0) {
26
- return {
27
- kind: "not-authenticated",
28
- };
29
- }
30
- if (!areTokenClaimMatchersSatisfied(verified.payload, input.strategy)) {
31
- return {
32
- kind: "caller-not-allowed",
33
- };
34
- }
35
- return {
36
- kind: "authenticated",
37
- principal: createJwtAuthenticatedCallerPrincipal({
38
- authenticator: "jwt-ecdsa",
39
- payload: verified.payload,
40
- principalType: "service",
41
- }),
42
- };
43
- }
44
- catch {
45
- return {
46
- kind: "not-authenticated",
47
- };
48
- }
49
- }
50
- async function getImportedJwtPublicKey(strategy) {
51
- const cacheKey = `${strategy.algorithm}:${strategy.publicKey}`;
52
- const cached = importedJwtPublicKeyCache.get(cacheKey);
53
- if (cached !== undefined) {
54
- return await cached;
55
- }
56
- const publicKeyPromise = importJwtPublicKey(strategy.publicKey, strategy.algorithm).catch((error) => {
57
- importedJwtPublicKeyCache.delete(cacheKey);
58
- throw error;
59
- });
60
- importedJwtPublicKeyCache.set(cacheKey, publicKeyPromise);
61
- return await publicKeyPromise;
62
- }
63
- async function importJwtPublicKey(publicKey, algorithm) {
64
- const trimmedKey = publicKey.trim();
65
- if (trimmedKey.startsWith("{")) {
66
- return await importJWK(JSON.parse(trimmedKey), algorithm);
67
- }
68
- return await importSPKI(trimmedKey, algorithm);
69
- }
1
+ import{importJWK,importSPKI,jwtVerify}from"#compiled/jose/index.js";import{areTokenClaimMatchersSatisfied,createJwtAuthenticatedCallerPrincipal}from"#runtime/governance/auth/token-claims.js";var importedJwtPublicKeyCache=new Map;async function authenticateJwtEcdsaStrategy(e){let t;try{t=await getImportedJwtPublicKey(e.strategy)}catch(e){return{kind:`misconfigured`,message:`Failed to import JWT ECDSA public key. ${e instanceof Error?e.message:`Unknown key import failure.`}`}}try{let a=await jwtVerify(e.token,t,{algorithms:[e.strategy.algorithm],audience:[...e.strategy.audiences],clockTolerance:e.strategy.clockSkewSeconds,issuer:e.strategy.issuer});return typeof a.payload.sub!=`string`||a.payload.sub.length===0?{kind:`not-authenticated`}:areTokenClaimMatchersSatisfied(a.payload,e.strategy)?{kind:`authenticated`,principal:createJwtAuthenticatedCallerPrincipal({authenticator:`jwt-ecdsa`,payload:a.payload,principalType:`service`})}:{kind:`caller-not-allowed`}}catch{return{kind:`not-authenticated`}}}async function getImportedJwtPublicKey(e){let t=`${e.algorithm}:${e.publicKey}`,n=importedJwtPublicKeyCache.get(t);if(n!==void 0)return await n;let r=importJwtPublicKey(e.publicKey,e.algorithm).catch(e=>{throw importedJwtPublicKeyCache.delete(t),e});return importedJwtPublicKeyCache.set(t,r),await r}async function importJwtPublicKey(n,r){let i=n.trim();return i.startsWith(`{`)?await importJWK(JSON.parse(i),r):await importSPKI(i,r)}export{authenticateJwtEcdsaStrategy};
@@ -1,39 +1 @@
1
- import { createSecretKey } from "node:crypto";
2
- import { jwtVerify } from "#compiled/jose/index.js";
3
- import { areTokenClaimMatchersSatisfied, createJwtAuthenticatedCallerPrincipal, } from "#runtime/governance/auth/token-claims.js";
4
- /**
5
- * Verifies one bearer token against a resolved HMAC JWT strategy.
6
- */
7
- export async function authenticateJwtHmacStrategy(input) {
8
- try {
9
- const verified = await jwtVerify(input.token, createSecretKey(Buffer.from(input.strategy.secret, "utf8")), {
10
- algorithms: [input.strategy.algorithm],
11
- audience: [...input.strategy.audiences],
12
- clockTolerance: input.strategy.clockSkewSeconds,
13
- issuer: input.strategy.issuer,
14
- });
15
- if (typeof verified.payload.sub !== "string" || verified.payload.sub.length === 0) {
16
- return {
17
- kind: "not-authenticated",
18
- };
19
- }
20
- if (!areTokenClaimMatchersSatisfied(verified.payload, input.strategy)) {
21
- return {
22
- kind: "caller-not-allowed",
23
- };
24
- }
25
- return {
26
- kind: "authenticated",
27
- principal: createJwtAuthenticatedCallerPrincipal({
28
- authenticator: "jwt-hmac",
29
- payload: verified.payload,
30
- principalType: "service",
31
- }),
32
- };
33
- }
34
- catch {
35
- return {
36
- kind: "not-authenticated",
37
- };
38
- }
39
- }
1
+ import{createSecretKey}from"node:crypto";import{jwtVerify}from"#compiled/jose/index.js";import{areTokenClaimMatchersSatisfied,createJwtAuthenticatedCallerPrincipal}from"#runtime/governance/auth/token-claims.js";async function authenticateJwtHmacStrategy(e){try{let t=await jwtVerify(e.token,createSecretKey(Buffer.from(e.strategy.secret,`utf8`)),{algorithms:[e.strategy.algorithm],audience:[...e.strategy.audiences],clockTolerance:e.strategy.clockSkewSeconds,issuer:e.strategy.issuer});return typeof t.payload.sub!=`string`||t.payload.sub.length===0?{kind:`not-authenticated`}:areTokenClaimMatchersSatisfied(t.payload,e.strategy)?{kind:`authenticated`,principal:createJwtAuthenticatedCallerPrincipal({authenticator:`jwt-hmac`,payload:t.payload,principalType:`service`})}:{kind:`caller-not-allowed`}}catch{return{kind:`not-authenticated`}}}export{authenticateJwtHmacStrategy};
@@ -1,126 +1 @@
1
- import { createRemoteJWKSet, jwtVerify } from "#compiled/jose/index.js";
2
- import { z } from "#compiled/zod/index.js";
3
- import { areTokenClaimMatchersSatisfied, createJwtAuthenticatedCallerPrincipal, } from "#runtime/governance/auth/token-claims.js";
4
- const oidcDiscoveryDocumentSchema = z
5
- .object({
6
- issuer: z.string().optional(),
7
- jwks_uri: z.string().url(),
8
- })
9
- .passthrough();
10
- const oidcDiscoveryDocumentCache = new Map();
11
- const oidcJwksCache = new Map();
12
- /**
13
- * Verifies one bearer token against a resolved OIDC strategy.
14
- */
15
- export async function authenticateOidcStrategy(input) {
16
- let remoteJwks;
17
- try {
18
- remoteJwks = await getOidcRemoteJwks(input.strategy);
19
- }
20
- catch (error) {
21
- return {
22
- kind: "misconfigured",
23
- message: `Failed to load OIDC discovery metadata. ${error instanceof Error ? error.message : "Unknown discovery failure."}`,
24
- };
25
- }
26
- try {
27
- const verified = await jwtVerify(input.token, remoteJwks, {
28
- audience: [...input.strategy.audiences],
29
- clockTolerance: input.strategy.clockSkewSeconds,
30
- issuer: input.strategy.issuer,
31
- });
32
- if (typeof verified.payload.sub !== "string" || verified.payload.sub.length === 0) {
33
- return {
34
- kind: "not-authenticated",
35
- };
36
- }
37
- const isCurrentVercelProjectToken = input.strategy.acceptCurrentVercelProject &&
38
- isCurrentVercelProject({
39
- issuer: input.strategy.issuer,
40
- payload: verified.payload,
41
- });
42
- const isCurrentVercelRuntimeToken = isCurrentVercelProjectToken && isCurrentVercelEnvironment({ payload: verified.payload });
43
- if (!isCurrentVercelProjectToken &&
44
- !areTokenClaimMatchersSatisfied(verified.payload, input.strategy)) {
45
- return {
46
- kind: "caller-not-allowed",
47
- };
48
- }
49
- return {
50
- kind: "authenticated",
51
- principal: createJwtAuthenticatedCallerPrincipal({
52
- authenticator: "oidc",
53
- payload: verified.payload,
54
- principalType: isCurrentVercelRuntimeToken ? "runtime" : "service",
55
- }),
56
- };
57
- }
58
- catch {
59
- return {
60
- kind: "not-authenticated",
61
- };
62
- }
63
- }
64
- async function getOidcRemoteJwks(strategy) {
65
- const discoveryDocument = await getOidcDiscoveryDocument(strategy.discoveryUrl);
66
- const existing = oidcJwksCache.get(discoveryDocument.jwks_uri);
67
- if (existing !== undefined) {
68
- return existing;
69
- }
70
- const remoteJwks = createRemoteJWKSet(new URL(discoveryDocument.jwks_uri));
71
- oidcJwksCache.set(discoveryDocument.jwks_uri, remoteJwks);
72
- return remoteJwks;
73
- }
74
- async function getOidcDiscoveryDocument(discoveryUrl) {
75
- const cached = oidcDiscoveryDocumentCache.get(discoveryUrl);
76
- if (cached !== undefined) {
77
- return await cached;
78
- }
79
- const discoveryPromise = fetch(discoveryUrl, {
80
- headers: {
81
- accept: "application/json",
82
- },
83
- })
84
- .then(async (response) => {
85
- if (!response.ok) {
86
- throw new Error(`Discovery route returned HTTP ${response.status}.`);
87
- }
88
- return oidcDiscoveryDocumentSchema.parse(await response.json());
89
- })
90
- .catch((error) => {
91
- oidcDiscoveryDocumentCache.delete(discoveryUrl);
92
- throw error;
93
- });
94
- oidcDiscoveryDocumentCache.set(discoveryUrl, discoveryPromise);
95
- return await discoveryPromise;
96
- }
97
- /**
98
- * Returns whether a verified JWT was minted by Vercel OIDC for the
99
- * current Vercel project (any environment). Used by the verifier to
100
- * unconditionally accept tokens from the deployment's own project on
101
- * top of any author-supplied `subjects`/`claims` matchers.
102
- */
103
- function isCurrentVercelProject(input) {
104
- if (!input.issuer.startsWith("https://oidc.vercel.com")) {
105
- return false;
106
- }
107
- const currentProjectId = process.env.VERCEL_PROJECT_ID?.trim();
108
- if (currentProjectId === undefined || currentProjectId.length === 0) {
109
- return false;
110
- }
111
- return (typeof input.payload.project_id === "string" && input.payload.project_id === currentProjectId);
112
- }
113
- /**
114
- * Returns whether a verified JWT's `environment` claim matches the
115
- * current Vercel deployment environment. Combined with
116
- * {@link isCurrentVercelProject} to upgrade `principalType` from
117
- * `"service"` to `"runtime"` when the caller is the deployment itself.
118
- */
119
- function isCurrentVercelEnvironment(input) {
120
- const currentEnvironment = (process.env.VERCEL_TARGET_ENV?.trim() ?? process.env.VERCEL_ENV?.trim())?.trim();
121
- if (currentEnvironment === undefined || currentEnvironment.length === 0) {
122
- return false;
123
- }
124
- return (typeof input.payload.environment === "string" &&
125
- input.payload.environment === currentEnvironment);
126
- }
1
+ import{z}from"#compiled/zod/index.js";import{createRemoteJWKSet,jwtVerify}from"#compiled/jose/index.js";import{areTokenClaimMatchersSatisfied,createJwtAuthenticatedCallerPrincipal}from"#runtime/governance/auth/token-claims.js";var oidcDiscoveryDocumentSchema=z.object({issuer:z.string().optional(),jwks_uri:z.string().url()}).passthrough(),oidcDiscoveryDocumentCache=new Map,oidcJwksCache=new Map;async function authenticateOidcStrategy(e){let t;try{t=await getOidcRemoteJwks(e.strategy)}catch(e){return{kind:`misconfigured`,message:`Failed to load OIDC discovery metadata. ${e instanceof Error?e.message:`Unknown discovery failure.`}`}}try{let a=await jwtVerify(e.token,t,{audience:[...e.strategy.audiences],clockTolerance:e.strategy.clockSkewSeconds,issuer:e.strategy.issuer});if(typeof a.payload.sub!=`string`||a.payload.sub.length===0)return{kind:`not-authenticated`};let o=e.strategy.acceptCurrentVercelProject&&isCurrentVercelProject({issuer:e.strategy.issuer,payload:a.payload}),s=o&&isCurrentVercelEnvironment({payload:a.payload});return!o&&!areTokenClaimMatchersSatisfied(a.payload,e.strategy)?{kind:`caller-not-allowed`}:{kind:`authenticated`,principal:createJwtAuthenticatedCallerPrincipal({authenticator:`oidc`,payload:a.payload,principalType:s?`runtime`:`service`})}}catch{return{kind:`not-authenticated`}}}async function getOidcRemoteJwks(e){let n=await getOidcDiscoveryDocument(e.discoveryUrl),r=oidcJwksCache.get(n.jwks_uri);if(r!==void 0)return r;let i=createRemoteJWKSet(new URL(n.jwks_uri));return oidcJwksCache.set(n.jwks_uri,i),i}async function getOidcDiscoveryDocument(e){let t=oidcDiscoveryDocumentCache.get(e);if(t!==void 0)return await t;let n=fetch(e,{headers:{accept:`application/json`}}).then(async e=>{if(!e.ok)throw Error(`Discovery route returned HTTP ${e.status}.`);return oidcDiscoveryDocumentSchema.parse(await e.json())}).catch(t=>{throw oidcDiscoveryDocumentCache.delete(e),t});return oidcDiscoveryDocumentCache.set(e,n),await n}function isCurrentVercelProject(e){if(!e.issuer.startsWith(`https://oidc.vercel.com`))return!1;let t=process.env.VERCEL_PROJECT_ID?.trim();return t===void 0||t.length===0?!1:typeof e.payload.project_id==`string`&&e.payload.project_id===t}function isCurrentVercelEnvironment(e){let t=(process.env.VERCEL_TARGET_ENV?.trim()??process.env.VERCEL_ENV?.trim())?.trim();return t===void 0||t.length===0?!1:typeof e.payload.environment==`string`&&e.payload.environment===t}export{authenticateOidcStrategy};
@@ -1,84 +1 @@
1
- const STANDARD_PROJECTED_CLAIM_KEYS = new Set(["aud", "exp", "iat", "iss", "jti", "nbf", "sub"]);
2
- /**
3
- * Returns the normalized string-valued JWT claim projection used by Ash's
4
- * runtime auth layer.
5
- */
6
- function normalizeJwtClaims(payload) {
7
- const normalized = {};
8
- for (const [key, value] of Object.entries(payload)) {
9
- if (typeof value === "string") {
10
- normalized[key] = value;
11
- continue;
12
- }
13
- if (Array.isArray(value) && value.every((item) => typeof item === "string")) {
14
- normalized[key] = Object.freeze([...value]);
15
- }
16
- }
17
- return Object.freeze(normalized);
18
- }
19
- /**
20
- * Returns the non-standard string-valued JWT claim projection exposed as public
21
- * session auth attributes.
22
- */
23
- function createJwtAttributeProjection(payload) {
24
- const claims = normalizeJwtClaims(payload);
25
- return Object.freeze(Object.fromEntries(Object.entries(claims).filter(([key]) => !STANDARD_PROJECTED_CLAIM_KEYS.has(key))));
26
- }
27
- /**
28
- * Returns whether the verified JWT payload satisfies the authored subject and
29
- * claim selectors.
30
- */
31
- export function areTokenClaimMatchersSatisfied(payload, matchers) {
32
- const normalizedClaims = normalizeJwtClaims(payload);
33
- if (matchers.subjects !== undefined) {
34
- const subject = typeof payload.sub === "string" ? payload.sub : null;
35
- if (subject === null ||
36
- !matchers.subjects.some((pattern) => matchesWildcardPattern(pattern, subject))) {
37
- return false;
38
- }
39
- }
40
- if (matchers.claims === undefined) {
41
- return true;
42
- }
43
- return Object.entries(matchers.claims).every(([claimName, expectedValues]) => {
44
- const claimValue = normalizedClaims[claimName];
45
- if (claimValue === undefined) {
46
- return false;
47
- }
48
- if (typeof claimValue === "string") {
49
- return expectedValues.includes(claimValue);
50
- }
51
- return claimValue.some((value) => expectedValues.includes(value));
52
- });
53
- }
54
- /**
55
- * Creates a normalized JWT-backed Ash principal from a verified payload.
56
- */
57
- export function createJwtAuthenticatedCallerPrincipal(input) {
58
- const issuer = typeof input.payload.iss === "string" ? input.payload.iss : undefined;
59
- const subject = typeof input.payload.sub === "string" ? input.payload.sub : undefined;
60
- if (issuer === undefined || subject === undefined) {
61
- throw new Error("Expected verified JWT payloads to include string iss and sub claims.");
62
- }
63
- const claims = normalizeJwtClaims(input.payload);
64
- return {
65
- attributes: createJwtAttributeProjection(input.payload),
66
- authenticator: input.authenticator,
67
- claims,
68
- issuer,
69
- principalId: `${issuer}:${subject}`,
70
- principalType: input.principalType,
71
- subject,
72
- };
73
- }
74
- /**
75
- * Returns whether the value matches one AWS IAM-style whole-string wildcard
76
- * pattern where `*` matches zero or more characters.
77
- */
78
- function matchesWildcardPattern(pattern, value) {
79
- if (!pattern.includes("*")) {
80
- return pattern === value;
81
- }
82
- const escaped = pattern.replaceAll(/[.+?^${}()|[\]\\]/g, "\\$&").replaceAll("*", ".*");
83
- return new RegExp(`^${escaped}$`).test(value);
84
- }
1
+ var STANDARD_PROJECTED_CLAIM_KEYS=new Set([`aud`,`exp`,`iat`,`iss`,`jti`,`nbf`,`sub`]);function normalizeJwtClaims(e){let t={};for(let[n,r]of Object.entries(e)){if(typeof r==`string`){t[n]=r;continue}Array.isArray(r)&&r.every(e=>typeof e==`string`)&&(t[n]=Object.freeze([...r]))}return Object.freeze(t)}function createJwtAttributeProjection(t){let n=normalizeJwtClaims(t);return Object.freeze(Object.fromEntries(Object.entries(n).filter(([t])=>!STANDARD_PROJECTED_CLAIM_KEYS.has(t))))}function areTokenClaimMatchersSatisfied(e,t){let n=normalizeJwtClaims(e);if(t.subjects!==void 0){let n=typeof e.sub==`string`?e.sub:null;if(n===null||!t.subjects.some(e=>matchesWildcardPattern(e,n)))return!1}return t.claims===void 0?!0:Object.entries(t.claims).every(([e,t])=>{let r=n[e];return r===void 0?!1:typeof r==`string`?t.includes(r):r.some(e=>t.includes(e))})}function createJwtAuthenticatedCallerPrincipal(e){let t=typeof e.payload.iss==`string`?e.payload.iss:void 0,n=typeof e.payload.sub==`string`?e.payload.sub:void 0;if(t===void 0||n===void 0)throw Error(`Expected verified JWT payloads to include string iss and sub claims.`);let r=normalizeJwtClaims(e.payload);return{attributes:createJwtAttributeProjection(e.payload),authenticator:e.authenticator,claims:r,issuer:t,principalId:`${t}:${n}`,principalType:e.principalType,subject:n}}function matchesWildcardPattern(e,t){if(!e.includes(`*`))return e===t;let n=e.replaceAll(/[.+?^${}()|[\]\\]/g,`\\$&`).replaceAll(`*`,`.*`);return RegExp(`^${n}$`).test(t)}export{areTokenClaimMatchersSatisfied,createJwtAuthenticatedCallerPrincipal};
@@ -1,14 +1 @@
1
- /**
2
- * Creates the session-auth projection persisted on runtime state and exposed to
3
- * authored `getSession()` calls.
4
- */
5
- export function createRuntimeSessionAuthContext(principal) {
6
- return {
7
- attributes: principal.attributes,
8
- authenticator: principal.authenticator,
9
- issuer: principal.issuer,
10
- principalId: principal.principalId,
11
- principalType: principal.principalType,
12
- subject: principal.subject,
13
- };
14
- }
1
+ function createRuntimeSessionAuthContext(e){return{attributes:e.attributes,authenticator:e.authenticator,issuer:e.issuer,principalId:e.principalId,principalType:e.principalType,subject:e.subject}}export{createRuntimeSessionAuthContext};