eve 0.65.0 → 0.66.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (748) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +1 -2
  3. package/dist/src/_virtual/_rolldown/runtime.js +1 -1
  4. package/dist/src/channel/forwarded-principal.d.ts +26 -6
  5. package/dist/src/channel/forwarded-principal.js +1 -1
  6. package/dist/src/chunks/{use-eve-agent-BIouJCii.js → use-eve-agent-Di1u2zKu.js} +266 -5
  7. package/dist/src/chunks/{use-eve-agent-BRvEh9sO.js → use-eve-agent-PbSMyJ6e.js} +266 -5
  8. package/dist/src/cli/commands/extension-build.js +1 -1
  9. package/dist/src/cli/commands/registry-project.d.ts +2 -1
  10. package/dist/src/cli/commands/registry-project.js +2 -2
  11. package/dist/src/cli/commands/registry.js +1 -1
  12. package/dist/src/cli/commands/trace-detail.d.ts +5 -25
  13. package/dist/src/cli/commands/trace-detail.js +1 -1
  14. package/dist/src/cli/commands/trace.js +2 -2
  15. package/dist/src/cli/dev/run-interactive-ui.js +1 -1
  16. package/dist/src/cli/dev/tui/argument-typeahead.d.ts +36 -0
  17. package/dist/src/cli/dev/tui/argument-typeahead.js +2 -0
  18. package/dist/src/cli/dev/tui/blocks.js +1 -1
  19. package/dist/src/cli/dev/tui/prompt-command-handler.js +1 -1
  20. package/dist/src/cli/dev/tui/prompt-commands.js +1 -1
  21. package/dist/src/cli/dev/tui/registry-result-message.js +1 -1
  22. package/dist/src/cli/dev/tui/runner.d.ts +3 -0
  23. package/dist/src/cli/dev/tui/runner.js +1 -1
  24. package/dist/src/cli/dev/tui/setup-commands.d.ts +5 -9
  25. package/dist/src/cli/dev/tui/setup-commands.js +1 -2
  26. package/dist/src/cli/dev/tui/setup-flow.d.ts +0 -3
  27. package/dist/src/cli/dev/tui/setup-panel.d.ts +14 -0
  28. package/dist/src/cli/dev/tui/setup-panel.js +4 -4
  29. package/dist/src/cli/dev/tui/subagent-pump.d.ts +2 -10
  30. package/dist/src/cli/dev/tui/subagent-pump.js +1 -1
  31. package/dist/src/cli/dev/tui/terminal-renderer.d.ts +3 -0
  32. package/dist/src/cli/dev/tui/terminal-renderer.js +10 -11
  33. package/dist/src/cli/dev/tui/test/fake-setup-flow-renderer.js +1 -1
  34. package/dist/src/cli/dev/tui/traces/trace-conversation.js +1 -1
  35. package/dist/src/cli/dev/tui/tui.js +1 -1
  36. package/dist/src/cli/dev/tui/vercel-trusted-sources-policy.d.ts +1 -1
  37. package/dist/src/cli/dev/tui/vercel-trusted-sources.js +1 -1
  38. package/dist/src/cli/invoke/result.d.ts +1 -1
  39. package/dist/src/cli/invoke/result.js +1 -1
  40. package/dist/src/cli/telemetry/preference.js +1 -1
  41. package/dist/src/client/client-error.js +1 -1
  42. package/dist/src/client/index.d.ts +1 -3
  43. package/dist/src/client/index.js +1 -1
  44. package/dist/src/client/open-stream.d.ts +3 -2
  45. package/dist/src/client/open-stream.js +1 -1
  46. package/dist/src/client/session.d.ts +16 -1
  47. package/dist/src/client/session.js +1 -1
  48. package/dist/src/compiled/.vendor-stamp.json +4 -2
  49. package/dist/src/compiled/@agentclientprotocol/sdk/index.js +2 -51
  50. package/dist/src/compiled/@ai-sdk/anthropic/index.js +2 -2
  51. package/dist/src/compiled/@ai-sdk/google/index.js +7 -7
  52. package/dist/src/compiled/@ai-sdk/mcp/index.js +1 -1
  53. package/dist/src/compiled/@ai-sdk/openai/index.js +4 -4
  54. package/dist/src/compiled/@ai-sdk/otel/index.js +1 -1
  55. package/dist/src/compiled/@cfworker/json-schema/index.d.ts +18 -0
  56. package/dist/src/compiled/@cfworker/json-schema/index.js +2 -0
  57. package/dist/src/compiled/@modelcontextprotocol/server/index.js +9 -58
  58. package/dist/src/compiled/@opentelemetry/api/index.js +1 -1
  59. package/dist/src/compiled/@opentelemetry/otlp-transformer/index.js +1 -1
  60. package/dist/src/compiled/@photon-ai/chat-adapter-imessage/index.js +55 -55
  61. package/dist/src/compiled/@vercel/blob/index.js +14 -36
  62. package/dist/src/compiled/@vercel/oidc/index.js +6 -28
  63. package/dist/src/compiled/@vercel/otel/index.js +1 -1
  64. package/dist/src/compiled/@vercel/sandbox/index.js +13 -13
  65. package/dist/src/compiled/@vercel/sdk/LICENSE +201 -0
  66. package/dist/src/compiled/@vercel/sdk/index.d.ts +41 -0
  67. package/dist/src/compiled/@vercel/sdk/index.js +1 -0
  68. package/dist/src/compiled/@workflow/core/index.js +1 -1
  69. package/dist/src/compiled/@workflow/core/private.js +1 -1
  70. package/dist/src/compiled/@workflow/core/runtime/helpers.js +1 -1
  71. package/dist/src/compiled/@workflow/core/runtime.js +2 -2
  72. package/dist/src/compiled/@workflow/core/serialization.js +1 -1
  73. package/dist/src/compiled/@workflow/core/workflow.js +1 -1
  74. package/dist/src/compiled/@workflow/errors/index.js +1 -1
  75. package/dist/src/compiled/@workflow/world-local/index.js +5 -5
  76. package/dist/src/compiled/@workflow/world-vercel/index.js +16 -16
  77. package/dist/src/compiled/_chunks/client/core-CspsxXR-.js +52 -0
  78. package/dist/src/compiled/_chunks/client/rolldown-runtime-DK3Fl9T5.js +1 -0
  79. package/dist/src/compiled/_chunks/node/auth-Dztlx9pE.js +2 -0
  80. package/dist/src/compiled/_chunks/workflow/{attribute-changes-DFx4eluc.js → attribute-changes-89Nwz7XW.js} +1 -1
  81. package/dist/src/compiled/_chunks/workflow/{chunk-5MU5Z6L3-CrYztnvh.js → chunk-5MU5Z6L3-z9-dfnHp.js} +1 -1
  82. package/dist/src/compiled/_chunks/workflow/{chunk-NWCAEW5Y-ClfmNvkQ.js → chunk-NWCAEW5Y-8afLJrun.js} +1 -1
  83. package/dist/src/compiled/_chunks/workflow/{dist-C3919PVU.js → dist-C3ZE62yI.js} +3 -3
  84. package/dist/src/compiled/_chunks/workflow/dist-CNT2vjZ4.js +1 -0
  85. package/dist/src/compiled/_chunks/workflow/{dist-xTushGCp.js → dist-DtXwQbZr.js} +1 -1
  86. package/dist/src/compiled/_chunks/workflow/{esm-DyLz8Egm.js → esm-DtrPCf49.js} +1 -1
  87. package/dist/src/compiled/_chunks/workflow/{experimental-evaluation-D8_K_Pe9.js → experimental-evaluation-Dm32egEG.js} +2 -2
  88. package/dist/src/compiled/_chunks/workflow/frames-DnrfSd1P.js +3 -0
  89. package/dist/src/compiled/_chunks/workflow/{functions-C06vHfWP.js → functions-DpZiBxgQ.js} +1 -1
  90. package/dist/src/compiled/_chunks/workflow/{getMachineId-bsd-WEBNKY2R-DcIEvZzd.js → getMachineId-bsd-WEBNKY2R-D5OkV-EY.js} +1 -1
  91. package/dist/src/compiled/_chunks/workflow/{getMachineId-darwin-LT47KAXP-C4nRhfn9.js → getMachineId-darwin-LT47KAXP-BqwKrkSO.js} +1 -1
  92. package/dist/src/compiled/_chunks/workflow/{getMachineId-linux-LTVQO6VW-BqQf2T4W.js → getMachineId-linux-LTVQO6VW-CJlbJ4KP.js} +1 -1
  93. package/dist/src/compiled/_chunks/workflow/{getMachineId-unsupported-UKWBA27G-oYffWhib.js → getMachineId-unsupported-UKWBA27G-C4Y3-LZG.js} +1 -1
  94. package/dist/src/compiled/_chunks/workflow/{getMachineId-win-NLJKOPY6-CpL96LtN.js → getMachineId-win-NLJKOPY6-CsPs71SE.js} +1 -1
  95. package/dist/src/compiled/_chunks/workflow/{global-DFW-hO6M.js → global-DIlFoH2w.js} +1 -1
  96. package/dist/src/compiled/_chunks/workflow/{helpers-Bw52uyzw.js → helpers-k3zcudWr.js} +1 -1
  97. package/dist/src/compiled/_chunks/workflow/{logger-DFNCa8Nl.js → logger-Bzc8jWWj.js} +1 -1
  98. package/dist/src/compiled/_chunks/workflow/resume-hook-BmJ263ZR.js +1 -0
  99. package/dist/src/compiled/_chunks/workflow/{rolldown-runtime-DPpTSio4.js → rolldown-runtime-B_knIduE.js} +1 -1
  100. package/dist/src/compiled/_chunks/workflow/{run-BT6SQv5f.js → run-NLvREued.js} +1 -1
  101. package/dist/src/compiled/_chunks/workflow/{serialization-Cl0SYU0I.js → serialization-HCDeQWcR.js} +2 -2
  102. package/dist/src/compiled/_chunks/workflow/{signal-exit-B9U6kH7R.js → signal-exit-DZKTacNU.js} +1 -1
  103. package/dist/src/compiled/_chunks/workflow/sleep-Bi508qmg.js +1 -0
  104. package/dist/src/compiled/_chunks/workflow/{token-CrFhCmWs.js → token-1wSBbi5N.js} +1 -1
  105. package/dist/src/compiled/_chunks/workflow/{token-U5XEWlVM.js → token-BhlnqoHM.js} +1 -1
  106. package/dist/src/compiled/_chunks/workflow/{token-util-BkqzD0OM.js → token-util-Cm4Ec1Bg.js} +1 -1
  107. package/dist/src/compiled/_chunks/workflow/token-util-DaeRTzDa.js +5 -0
  108. package/dist/src/compiled/_chunks/workflow/{wait-until-Dzhr6tzf.js → wait-until-DXLZx3tU.js} +1 -1
  109. package/dist/src/compiled/_chunks/workflow/{wrapper-CKui_eTd.js → wrapper-CzrF_dmI.js} +3 -3
  110. package/dist/src/compiled/_chunks/workflow/ws-transport-BSM_Cl7a.js +1 -0
  111. package/dist/src/compiled/jose/index.js +1 -1
  112. package/dist/src/compiled/zod/index.js +1 -51
  113. package/dist/src/compiled/zod/v3.js +1 -0
  114. package/dist/src/compiled/zod/v4/core.js +1 -0
  115. package/dist/src/compiled/zod-validation-error/index.js +1 -1
  116. package/dist/src/compiler/extension-compatibility.d.ts +20 -14
  117. package/dist/src/compiler/extension-compatibility.js +1 -1
  118. package/dist/src/context/build-base-tool-context.js +1 -1
  119. package/dist/src/context/build-callback-context.js +1 -1
  120. package/dist/src/context/dynamic-skill-lifecycle.d.ts +3 -3
  121. package/dist/src/context/dynamic-skill-lifecycle.js +1 -1
  122. package/dist/src/context/keys.d.ts +18 -4
  123. package/dist/src/context/keys.js +1 -1
  124. package/dist/src/context/session-context.d.ts +5 -4
  125. package/dist/src/evals/session.d.ts +3 -2
  126. package/dist/src/evals/session.js +1 -1
  127. package/dist/src/evals/types.d.ts +8 -2
  128. package/dist/src/eve-channel/index.js +1 -1
  129. package/dist/src/eve-channel/types.d.ts +12 -4
  130. package/dist/src/execution/cancel-indexed-session-tasks-step.js +1 -1
  131. package/dist/src/execution/dynamic-workflow/tool.js +1 -1
  132. package/dist/src/execution/proxied-deliver-step.js +1 -1
  133. package/dist/src/execution/route-child-delivery.js +2 -2
  134. package/dist/src/execution/sandbox/bindings/docker-templates.d.ts +6 -0
  135. package/dist/src/execution/sandbox/bindings/docker-templates.js +1 -1
  136. package/dist/src/execution/sandbox/bindings/docker.d.ts +6 -2
  137. package/dist/src/execution/sandbox/bindings/docker.js +1 -1
  138. package/dist/src/execution/sandbox/bindings/just-bash-runtime.d.ts +2 -2
  139. package/dist/src/execution/sandbox/bindings/just-bash.d.ts +2 -2
  140. package/dist/src/execution/sandbox/bindings/local-provider-utils.js +1 -1
  141. package/dist/src/execution/sandbox/bindings/microsandbox-lifecycle.d.ts +7 -2
  142. package/dist/src/execution/sandbox/bindings/microsandbox.d.ts +6 -2
  143. package/dist/src/execution/sandbox/bindings/vercel.d.ts +6 -3
  144. package/dist/src/execution/sandbox/bindings/vercel.js +1 -1
  145. package/dist/src/execution/sandbox/ensure.js +1 -1
  146. package/dist/src/execution/sandbox/logging-session.js +2 -2
  147. package/dist/src/execution/sandbox/provider-host.js +1 -1
  148. package/dist/src/execution/sandbox/session.d.ts +5 -2
  149. package/dist/src/execution/sandbox/session.js +1 -1
  150. package/dist/src/execution/session/admission.js +1 -1
  151. package/dist/src/execution/session/event-sink.d.ts +7 -13
  152. package/dist/src/execution/session/event-sink.js +1 -1
  153. package/dist/src/execution/session/finalization.js +1 -1
  154. package/dist/src/execution/session/handoff-steps.js +1 -1
  155. package/dist/src/execution/session/handoff.d.ts +2 -2
  156. package/dist/src/execution/session/handoff.js +1 -1
  157. package/dist/src/execution/session/input-queue.d.ts +12 -10
  158. package/dist/src/execution/session/input-queue.js +1 -1
  159. package/dist/src/execution/session/next-input.js +1 -1
  160. package/dist/src/execution/session/program.js +1 -1
  161. package/dist/src/execution/session/turn-step-result.d.ts +3 -1
  162. package/dist/src/execution/session/turn-step-result.js +1 -1
  163. package/dist/src/execution/session/turn-step-types.d.ts +7 -2
  164. package/dist/src/execution/session/turn-step.js +1 -1
  165. package/dist/src/execution/session/turn.js +1 -1
  166. package/dist/src/execution/settle-cancelled-turn-step.js +1 -1
  167. package/dist/src/execution/skills/instructions.d.ts +6 -8
  168. package/dist/src/execution/skills/instructions.js +2 -2
  169. package/dist/src/execution/tasks/parent/control-shared.js +1 -1
  170. package/dist/src/execution/tasks/parent/dispatch.js +1 -1
  171. package/dist/src/execution/tasks/parent/hitl-proxy-steps.d.ts +1 -0
  172. package/dist/src/execution/tasks/parent/hitl-proxy-steps.js +1 -1
  173. package/dist/src/execution/tasks/parent/tool-execution.js +1 -1
  174. package/dist/src/execution/tools/agent-router-workflow.js +1 -1
  175. package/dist/src/execution/tools/agent-router.d.ts +1 -2
  176. package/dist/src/execution/tools/agent-router.js +1 -1
  177. package/dist/src/execution/tools/ask-question-workflow.js +1 -1
  178. package/dist/src/execution/tools/ask-question.d.ts +17 -18
  179. package/dist/src/execution/tools/ask-question.js +2 -2
  180. package/dist/src/execution/tools/connection-search.js +1 -1
  181. package/dist/src/execution/tools/load-skill.d.ts +9 -5
  182. package/dist/src/execution/tools/load-skill.js +1 -1
  183. package/dist/src/execution/tools/sleep-workflow.js +1 -1
  184. package/dist/src/execution/tools/sleep.d.ts +8 -9
  185. package/dist/src/execution/tools/sleep.js +1 -1
  186. package/dist/src/execution/tools/subagent/accept-event-step.js +1 -1
  187. package/dist/src/execution/tools/subagent/emit-event-step.d.ts +2 -1
  188. package/dist/src/execution/tools/subagent/emit-event-step.js +1 -1
  189. package/dist/src/execution/tools/subagent/invoke-preparation.js +1 -1
  190. package/dist/src/execution/tools/subagent/invoke-step.js +1 -1
  191. package/dist/src/execution/tools/subagent/task-agent-requests.js +1 -1
  192. package/dist/src/execution/tools/subagent/task-cancel.d.ts +1 -1
  193. package/dist/src/execution/tools/subagent/task-cancel.js +1 -1
  194. package/dist/src/execution/tools/workflow/body.js +1 -1
  195. package/dist/src/extensions/code/extension/extension.d.ts +57 -0
  196. package/dist/src/extensions/code/extension/extension.js +1 -0
  197. package/dist/src/extensions/code/extension/hooks/authenticate.d.ts +2 -0
  198. package/dist/src/extensions/code/extension/hooks/authenticate.js +1 -0
  199. package/dist/src/extensions/code/extension/instructions.md +87 -0
  200. package/dist/src/extensions/code/extension/lib/command-failure.d.ts +7 -0
  201. package/dist/src/extensions/code/extension/lib/command-failure.js +2 -0
  202. package/dist/src/extensions/code/extension/lib/computer-use-driver-source.d.ts +14 -0
  203. package/dist/src/extensions/code/extension/lib/computer-use-driver-source.js +1309 -0
  204. package/dist/src/extensions/code/extension/lib/computer-use-sandbox.d.ts +9 -0
  205. package/dist/src/extensions/code/extension/lib/computer-use-sandbox.js +120 -0
  206. package/dist/src/extensions/code/extension/lib/computer-use.d.ts +36 -0
  207. package/dist/src/extensions/code/extension/lib/computer-use.js +78 -0
  208. package/dist/src/extensions/code/extension/lib/connect-authentication.d.ts +7 -0
  209. package/dist/src/extensions/code/extension/lib/connect-authentication.js +1 -0
  210. package/dist/src/extensions/code/extension/lib/credentials.d.ts +13 -0
  211. package/dist/src/extensions/code/extension/lib/credentials.js +3 -0
  212. package/dist/src/extensions/code/extension/lib/diagnostics.d.ts +30 -0
  213. package/dist/src/extensions/code/extension/lib/diagnostics.js +6 -0
  214. package/dist/src/extensions/code/extension/lib/generated-paths.d.ts +18 -0
  215. package/dist/src/extensions/code/extension/lib/generated-paths.js +2 -0
  216. package/dist/src/extensions/code/extension/lib/github-shell-schema.d.ts +11 -0
  217. package/dist/src/extensions/code/extension/lib/github-shell-schema.js +1 -0
  218. package/dist/src/extensions/code/extension/lib/github-shell.d.ts +53 -0
  219. package/dist/src/extensions/code/extension/lib/github-shell.js +1 -0
  220. package/dist/src/extensions/code/extension/lib/grep-search.d.ts +61 -0
  221. package/dist/src/extensions/code/extension/lib/grep-search.js +6 -0
  222. package/dist/src/extensions/code/extension/lib/guidelines.d.ts +25 -0
  223. package/dist/src/extensions/code/extension/lib/guidelines.js +2 -0
  224. package/dist/src/extensions/code/extension/lib/patch.d.ts +35 -0
  225. package/dist/src/extensions/code/extension/lib/patch.js +20 -0
  226. package/dist/src/extensions/code/extension/lib/prwatch-github.d.ts +70 -0
  227. package/dist/src/extensions/code/extension/lib/prwatch-github.js +1 -0
  228. package/dist/src/extensions/code/extension/lib/prwatch-registry.d.ts +27 -0
  229. package/dist/src/extensions/code/extension/lib/prwatch-registry.js +1 -0
  230. package/dist/src/extensions/code/extension/lib/prwatch.d.ts +2 -0
  231. package/dist/src/extensions/code/extension/lib/prwatch.js +1 -0
  232. package/dist/src/extensions/code/extension/lib/repository-root.d.ts +4 -0
  233. package/dist/src/extensions/code/extension/lib/repository-root.js +1 -0
  234. package/dist/src/extensions/code/extension/lib/sandbox.d.ts +12 -0
  235. package/dist/src/extensions/code/extension/lib/sandbox.js +2 -0
  236. package/dist/src/extensions/code/extension/lib/shell.d.ts +1 -0
  237. package/dist/src/extensions/code/extension/lib/shell.js +1 -0
  238. package/dist/src/extensions/code/extension/lib/signed-commit.d.ts +2 -0
  239. package/dist/src/extensions/code/extension/lib/signed-commit.js +130 -0
  240. package/dist/src/extensions/code/extension/lib/tooling.d.ts +27 -0
  241. package/dist/src/extensions/code/extension/lib/tooling.js +92 -0
  242. package/dist/src/extensions/code/extension/skills/investigate/SKILL.md +30 -0
  243. package/dist/src/extensions/code/extension/skills/lookup-agent-run/SKILL.md +29 -0
  244. package/dist/src/extensions/code/extension/skills/pr/SKILL.md +53 -0
  245. package/dist/src/extensions/code/extension/skills/review/SKILL.md +21 -0
  246. package/dist/src/extensions/code/extension/subagents/worker/agent.d.ts +17 -0
  247. package/dist/src/extensions/code/extension/subagents/worker/agent.js +1 -0
  248. package/dist/src/extensions/code/extension/subagents/worker/instructions.md +20 -0
  249. package/dist/src/extensions/code/extension/subagents/worker/sandbox.d.ts +2 -0
  250. package/dist/src/extensions/code/extension/subagents/worker/sandbox.js +1 -0
  251. package/dist/src/extensions/code/extension/subagents/worker/tools/glob.d.ts +1 -0
  252. package/dist/src/extensions/code/extension/subagents/worker/tools/glob.js +1 -0
  253. package/dist/src/extensions/code/extension/subagents/worker/tools/grep.d.ts +1 -0
  254. package/dist/src/extensions/code/extension/subagents/worker/tools/grep.js +1 -0
  255. package/dist/src/extensions/code/extension/subagents/worker/tools/load_skill.d.ts +2 -0
  256. package/dist/src/extensions/code/extension/subagents/worker/tools/load_skill.js +1 -0
  257. package/dist/src/extensions/code/extension/subagents/worker/tools/read_file.d.ts +1 -0
  258. package/dist/src/extensions/code/extension/subagents/worker/tools/read_file.js +1 -0
  259. package/dist/src/extensions/code/extension/subagents/worker/tools/web_fetch.d.ts +2 -0
  260. package/dist/src/extensions/code/extension/subagents/worker/tools/web_fetch.js +1 -0
  261. package/dist/src/extensions/code/extension/subagents/worker/tools/web_search.d.ts +2 -0
  262. package/dist/src/extensions/code/extension/subagents/worker/tools/web_search.js +1 -0
  263. package/dist/src/extensions/code/extension/subagents/worker/tools/write_file.d.ts +2 -0
  264. package/dist/src/extensions/code/extension/subagents/worker/tools/write_file.js +1 -0
  265. package/dist/src/extensions/code/extension/tools/apply_patch.d.ts +28 -0
  266. package/dist/src/extensions/code/extension/tools/apply_patch.js +2 -0
  267. package/dist/src/extensions/code/extension/tools/computer_use.d.ts +400 -0
  268. package/dist/src/extensions/code/extension/tools/computer_use.js +1 -0
  269. package/dist/src/extensions/code/extension/tools/gh.d.ts +27 -0
  270. package/dist/src/extensions/code/extension/tools/gh.js +1 -0
  271. package/dist/src/extensions/code/extension/tools/grep.d.ts +28 -0
  272. package/dist/src/extensions/code/extension/tools/grep.js +1 -0
  273. package/dist/src/extensions/code/tools.d.ts +4 -0
  274. package/dist/src/extensions/code/tools.js +1 -0
  275. package/dist/src/harness/compaction.js +1 -1
  276. package/dist/src/harness/final-output.js +1 -1
  277. package/dist/src/harness/input-extraction.js +1 -1
  278. package/dist/src/harness/session-limit-enforcement.js +1 -1
  279. package/dist/src/harness/tool-loop.js +2 -2
  280. package/dist/src/harness/tools.js +1 -1
  281. package/dist/src/harness/turn-tag-state.d.ts +2 -2
  282. package/dist/src/harness/workflow-tool-runs.d.ts +33 -5
  283. package/dist/src/harness/workflow-tool-runs.js +1 -1
  284. package/dist/src/internal/application/optional-package-import.d.ts +9 -0
  285. package/dist/src/internal/application/optional-package-import.js +1 -0
  286. package/dist/src/internal/application/optional-package-install.d.ts +1 -5
  287. package/dist/src/internal/application/optional-package-install.js +2 -2
  288. package/dist/src/internal/application/package.js +1 -1
  289. package/dist/src/internal/nitro/host/build-extension.js +1 -1
  290. package/dist/src/internal/nitro/host/extension-build-lock.d.ts +9 -0
  291. package/dist/src/internal/nitro/host/extension-build-lock.js +1 -0
  292. package/dist/src/internal/nitro/host/prepare-application-host.d.ts +5 -4
  293. package/dist/src/internal/nitro/host/prepare-application-host.js +1 -1
  294. package/dist/src/internal/nitro/host/types.d.ts +2 -2
  295. package/dist/src/internal/nitro/host/workspace-extensions.d.ts +31 -0
  296. package/dist/src/internal/nitro/host/workspace-extensions.js +1 -0
  297. package/dist/src/node_modules/.pnpm/@vercel_cli-config@0.2.7/node_modules/@vercel/cli-config/dist/index.js +21 -0
  298. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/envpath.js +1 -0
  299. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/errors.js +2 -0
  300. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/errutils.js +1 -0
  301. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/exec.js +1 -0
  302. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/fsutils.js +1 -0
  303. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/index.js +1 -0
  304. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/lookup.js +1 -0
  305. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/safety.js +1 -0
  306. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/authorization.js +1 -0
  307. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/connector.js +1 -0
  308. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/index.js +1 -0
  309. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/installation.js +1 -0
  310. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/internal/base-url.js +1 -0
  311. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/internal/default-scopes.js +1 -0
  312. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/internal/env.js +1 -0
  313. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/internal/url-validation.js +1 -0
  314. package/dist/src/node_modules/.pnpm/@vercel_connect@2.2.0_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_37d5e4f23f0f03cba2e0819e67e81b38/node_modules/@vercel/connect/dist/token.js +1 -0
  315. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/auth-errors.js +1 -0
  316. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/exchange-vercel-oidc-token.js +1 -0
  317. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/get-context.js +1 -0
  318. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/get-vercel-oidc-token-sync.js +1 -0
  319. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/get-vercel-oidc-token-with-refresh.js +2 -0
  320. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/index.js +1 -0
  321. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/oauth.js +1 -0
  322. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/token-error.js +1 -0
  323. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/token-io.js +1 -0
  324. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/token-util.js +2 -0
  325. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/token.js +1 -0
  326. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/verify-vercel-oidc-token.js +1 -0
  327. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.8/node_modules/@vercel/oidc/dist/version.js +1 -0
  328. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js +1 -0
  329. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js +1 -0
  330. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js +1 -0
  331. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js +1 -0
  332. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js +1 -0
  333. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js +1 -0
  334. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js +1 -0
  335. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js +1 -0
  336. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js +2 -0
  337. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js +1 -0
  338. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js +1 -0
  339. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js +1 -0
  340. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js +1 -0
  341. package/dist/src/node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js +1 -0
  342. package/dist/src/node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js +1 -0
  343. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js +1 -0
  344. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js +1 -0
  345. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js +1 -0
  346. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js +1 -0
  347. package/dist/src/node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js +1 -0
  348. package/dist/src/node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js +1 -0
  349. package/dist/src/node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js +1 -0
  350. package/dist/src/node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js +1 -0
  351. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/index.js +1 -0
  352. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/compact/decrypt.js +1 -0
  353. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/compact/encrypt.js +1 -0
  354. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/flattened/decrypt.js +1 -0
  355. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/flattened/encrypt.js +1 -0
  356. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/general/decrypt.js +1 -0
  357. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/general/encrypt.js +1 -0
  358. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwk/embedded.js +1 -0
  359. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwk/thumbprint.js +1 -0
  360. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwks/local.js +1 -0
  361. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwks/remote.js +1 -0
  362. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/compact/sign.js +1 -0
  363. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/compact/verify.js +1 -0
  364. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/flattened/sign.js +1 -0
  365. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/flattened/verify.js +1 -0
  366. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/general/sign.js +1 -0
  367. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/general/verify.js +1 -0
  368. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/decrypt.js +1 -0
  369. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/encrypt.js +1 -0
  370. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/produce.js +1 -0
  371. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/sign.js +1 -0
  372. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/unsecured.js +1 -0
  373. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/verify.js +1 -0
  374. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/export.js +1 -0
  375. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/generate_key_pair.js +1 -0
  376. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/generate_secret.js +1 -0
  377. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/import.js +1 -0
  378. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/aesgcmkw.js +1 -0
  379. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/buffer_utils.js +1 -0
  380. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/cek.js +1 -0
  381. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/check_iv_length.js +1 -0
  382. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/check_key_type.js +1 -0
  383. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/check_p2s.js +1 -0
  384. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/crypto_key.js +1 -0
  385. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/decrypt_key_management.js +1 -0
  386. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/encrypt_key_management.js +1 -0
  387. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/epoch.js +1 -0
  388. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/invalid_key_input.js +1 -0
  389. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/is_disjoint.js +1 -0
  390. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/is_jwk.js +1 -0
  391. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/is_object.js +1 -0
  392. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/iv.js +1 -0
  393. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/jwt_claims_set.js +1 -0
  394. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/private_symbols.js +1 -0
  395. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/secs.js +1 -0
  396. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/validate_algorithms.js +1 -0
  397. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/validate_crit.js +1 -0
  398. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/aeskw.js +1 -0
  399. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/asn1.js +1 -0
  400. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/base64url.js +1 -0
  401. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/cbc_tag.js +1 -0
  402. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/check_cek_length.js +1 -0
  403. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/check_key_length.js +1 -0
  404. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/ciphers.js +1 -0
  405. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/decrypt.js +1 -0
  406. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/digest.js +1 -0
  407. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/dsa_digest.js +1 -0
  408. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/ecdhes.js +1 -0
  409. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/encrypt.js +1 -0
  410. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/fetch_jwks.js +1 -0
  411. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/generate.js +1 -0
  412. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/get_named_curve.js +1 -0
  413. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/get_sign_verify_key.js +1 -0
  414. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/hmac_digest.js +1 -0
  415. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/is_key_like.js +1 -0
  416. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/is_key_object.js +1 -0
  417. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/jwk_to_key.js +1 -0
  418. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/key_to_jwk.js +1 -0
  419. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/node_key.js +1 -0
  420. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/normalize_key.js +1 -0
  421. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/pbes2kw.js +1 -0
  422. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/random.js +1 -0
  423. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/rsaes.js +1 -0
  424. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/runtime.js +1 -0
  425. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/sign.js +1 -0
  426. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/timing_safe_equal.js +1 -0
  427. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/verify.js +1 -0
  428. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/webcrypto.js +1 -0
  429. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/base64url.js +1 -0
  430. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/decode_jwt.js +1 -0
  431. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/decode_protected_header.js +1 -0
  432. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/errors.js +1 -0
  433. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/runtime.js +1 -0
  434. package/dist/src/node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js +1 -0
  435. package/dist/src/node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js +1 -0
  436. package/dist/src/node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js +1 -0
  437. package/dist/src/node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js +1 -0
  438. package/dist/src/node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js +1 -0
  439. package/dist/src/node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js +1 -0
  440. package/dist/src/node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js +1 -0
  441. package/dist/src/node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/index.js +1 -0
  442. package/dist/src/node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/signals.js +1 -0
  443. package/dist/src/node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js +2 -0
  444. package/dist/src/node_modules/.pnpm/which@2.0.2/node_modules/which/which.js +1 -0
  445. package/dist/src/public/channels/github/checkout.d.ts +7 -2
  446. package/dist/src/public/channels/github/checkout.js +1 -1
  447. package/dist/src/public/channels/github/defaults.js +1 -1
  448. package/dist/src/public/channels/slack/api-errors.d.ts +33 -0
  449. package/dist/src/public/channels/slack/api-errors.js +1 -0
  450. package/dist/src/public/channels/slack/api.js +1 -1
  451. package/dist/src/public/channels/slack/interaction-cards.js +1 -1
  452. package/dist/src/public/channels/slack/interactions.js +1 -1
  453. package/dist/src/public/definitions/sandbox.d.ts +1 -1
  454. package/dist/src/public/memory/file/provider.js +1 -1
  455. package/dist/src/public/next/index.d.ts +10 -7
  456. package/dist/src/public/next/index.js +1 -1
  457. package/dist/src/public/next/server.d.ts +3 -0
  458. package/dist/src/public/next/server.js +2 -2
  459. package/dist/src/public/sandbox/docker.d.ts +7 -0
  460. package/dist/src/public/sandbox/index.d.ts +1 -1
  461. package/dist/src/public/sandbox/microsandbox.d.ts +7 -0
  462. package/dist/src/public/sandbox/vercel.d.ts +7 -0
  463. package/dist/src/public/skills/index.d.ts +1 -2
  464. package/dist/src/runtime/connections/mcp-client.d.ts +0 -7
  465. package/dist/src/runtime/connections/mcp-client.js +1 -1
  466. package/dist/src/runtime/connections/openapi-client.d.ts +0 -3
  467. package/dist/src/runtime/connections/openapi-client.js +1 -1
  468. package/dist/src/runtime/workspace/seed-files.js +1 -1
  469. package/dist/src/sandbox/providers/docker.d.ts +4 -4
  470. package/dist/src/sandbox/providers/just-bash.d.ts +2 -2
  471. package/dist/src/sandbox/providers/microsandbox.d.ts +4 -4
  472. package/dist/src/sandbox/providers/vercel.d.ts +4 -3
  473. package/dist/src/sandbox/state.d.ts +2 -0
  474. package/dist/src/self-modification/config.d.ts +6 -0
  475. package/dist/src/self-modification/extension/config-schema.d.ts +25 -0
  476. package/dist/src/self-modification/extension/config-schema.js +1 -0
  477. package/dist/src/self-modification/extension/extension.d.ts +3 -47
  478. package/dist/src/self-modification/extension/extension.js +1 -1
  479. package/dist/src/self-modification/extension/local-only.d.ts +5 -0
  480. package/dist/src/self-modification/extension/local-only.js +1 -0
  481. package/dist/src/self-modification/extension/subagents/agent/instructions.js +6 -6
  482. package/dist/src/self-modification/extension/subagents/agent/skills/trace_analysis.d.ts +10 -0
  483. package/dist/src/self-modification/extension/subagents/agent/skills/trace_analysis.js +19 -0
  484. package/dist/src/self-modification/extension/subagents/agent/tools/inspect_trace.d.ts +128 -0
  485. package/dist/src/self-modification/extension/subagents/agent/tools/inspect_trace.js +1 -0
  486. package/dist/src/self-modification/extension/subagents/agent/tools/inspect_trace_spans.d.ts +80 -0
  487. package/dist/src/self-modification/extension/subagents/agent/tools/inspect_trace_spans.js +1 -0
  488. package/dist/src/self-modification/extension/subagents/agent/tools/registry_add.js +1 -1
  489. package/dist/src/self-modification/extension/subagents/agent/tools/search_traces.d.ts +53 -0
  490. package/dist/src/self-modification/extension/subagents/agent/tools/search_traces.js +1 -0
  491. package/dist/src/self-modification/extension/trace-inspection.d.ts +15 -0
  492. package/dist/src/self-modification/extension/trace-inspection.js +1 -0
  493. package/dist/src/self-modification/git-workspace.d.ts +5 -1
  494. package/dist/src/self-modification/git.d.ts +5 -1
  495. package/dist/src/self-modification/sandbox.js +1 -1
  496. package/dist/src/services/dev-client/request-headers.d.ts +1 -1
  497. package/dist/src/services/dev-client/request-headers.js +1 -1
  498. package/dist/src/setup/ask.d.ts +2 -0
  499. package/dist/src/setup/ask.js +1 -1
  500. package/dist/src/setup/cli/option-row.d.ts +3 -1
  501. package/dist/src/setup/cli/option-row.js +1 -1
  502. package/dist/src/setup/flows/model-login.d.ts +4 -0
  503. package/dist/src/setup/flows/model-login.js +1 -1
  504. package/dist/src/setup/flows/model.d.ts +0 -108
  505. package/dist/src/setup/flows/model.js +1 -1
  506. package/dist/src/setup/integrations/discord/api.js +1 -1
  507. package/dist/src/setup/integrations/discord/connect.js +1 -1
  508. package/dist/src/setup/integrations/github/connect.js +1 -1
  509. package/dist/src/setup/integrations/linear/connect.js +1 -1
  510. package/dist/src/setup/integrations/linq/connect.js +1 -1
  511. package/dist/src/setup/integrations/photon/connect.js +1 -1
  512. package/dist/src/setup/integrations/teams/connect.js +1 -1
  513. package/dist/src/setup/integrations/web/setup.d.ts +15 -10
  514. package/dist/src/setup/integrations/web/setup.js +30 -1
  515. package/dist/src/setup/project-resolution.js +1 -1
  516. package/dist/src/setup/scaffold/create/project.js +2 -2
  517. package/dist/src/setup/scaffold/create/web-template.d.ts +7 -3
  518. package/dist/src/setup/scaffold/create/web-template.js +39 -20
  519. package/dist/src/setup/scaffold/update/channels.js +2 -2
  520. package/dist/src/setup/slack-connect.d.ts +1 -1
  521. package/dist/src/setup/slack-connect.js +1 -1
  522. package/dist/src/setup/vercel-api-failure.js +1 -1
  523. package/dist/src/setup/vercel-deployment.js +1 -1
  524. package/dist/src/setup/vercel-project-api.d.ts +1 -1
  525. package/dist/src/setup/vercel-project-api.js +1 -1
  526. package/dist/src/setup/vercel-project-framework.js +1 -1
  527. package/dist/src/setup/vercel-project.js +0 -0
  528. package/dist/src/shared/connection-types.d.ts +0 -2
  529. package/dist/src/shared/sandbox-network-policy.d.ts +5 -4
  530. package/dist/src/shared/sandbox-session.d.ts +0 -15
  531. package/dist/src/shared/skill-package.d.ts +3 -0
  532. package/dist/src/shared/skill-package.js +1 -1
  533. package/dist/src/subagents/parent-notification.d.ts +1 -1
  534. package/dist/src/subagents/remote-dispatch.d.ts +1 -0
  535. package/dist/src/subagents/remote-dispatch.js +1 -1
  536. package/dist/src/svelte/index.js +1 -1
  537. package/dist/src/svelte/use-eve-agent.js +1 -1
  538. package/dist/src/tasks/delivery-context.js +2 -2
  539. package/dist/src/tasks/json.d.ts +72 -2
  540. package/dist/src/tasks/json.js +1 -1
  541. package/dist/src/tasks/notification.d.ts +6 -0
  542. package/dist/src/tasks/notification.js +1 -1
  543. package/dist/src/tools/framework/agent-contract.d.ts +7 -6
  544. package/dist/src/tools/framework/agent-contract.js +1 -1
  545. package/dist/src/tools/framework/agent.d.ts +4 -13
  546. package/dist/src/tools/framework/task-cancel.d.ts +1 -17
  547. package/dist/src/tools/framework/task-contract.d.ts +16 -137
  548. package/dist/src/tools/framework/task-contract.js +1 -1
  549. package/dist/src/tools/provided/bash.d.ts +11 -12
  550. package/dist/src/tools/provided/bash.js +1 -1
  551. package/dist/src/tools/provided/glob.d.ts +13 -14
  552. package/dist/src/tools/provided/glob.js +1 -1
  553. package/dist/src/tools/provided/grep.d.ts +17 -18
  554. package/dist/src/tools/provided/grep.js +1 -1
  555. package/dist/src/tools/provided/read-file.d.ts +14 -15
  556. package/dist/src/tools/provided/read-file.js +1 -1
  557. package/dist/src/tools/provided/web-fetch.d.ts +13 -18
  558. package/dist/src/tools/provided/web-fetch.js +1 -1
  559. package/dist/src/tools/provided/workflow.js +1 -1
  560. package/dist/src/tools/provided/write-file.d.ts +10 -11
  561. package/dist/src/tools/provided/write-file.js +1 -1
  562. package/dist/src/tools/schema.d.ts +40 -10
  563. package/dist/src/tools/schema.js +1 -1
  564. package/dist/src/tracing/agent-trace-context-store.js +1 -1
  565. package/dist/src/tracing/local-trace-analysis.d.ts +51 -0
  566. package/dist/src/tracing/local-trace-analysis.js +1 -0
  567. package/dist/src/tracing/local-trace-discovery-index.d.ts +15 -0
  568. package/dist/src/tracing/local-trace-discovery-index.js +1 -0
  569. package/dist/src/tracing/local-trace-operations.d.ts +13 -0
  570. package/dist/src/tracing/local-trace-operations.js +1 -0
  571. package/dist/src/tracing/local-trace-query.d.ts +17 -0
  572. package/dist/src/tracing/local-trace-query.js +1 -0
  573. package/dist/src/tracing/local-trace-span-processor.js +1 -1
  574. package/dist/src/tracing/local-trace-summary.d.ts +31 -0
  575. package/dist/src/tracing/local-trace-summary.js +1 -0
  576. package/dist/src/vue/index.js +1 -1
  577. package/dist/src/vue/use-eve-agent.js +1 -1
  578. package/docs/README.md +1 -1
  579. package/docs/channels/slack.mdx +1 -1
  580. package/docs/concepts/project-structure.mdx +2 -4
  581. package/docs/concepts/sessions-runs-and-streaming.md +2 -2
  582. package/docs/connections/overview.mdx +1 -1
  583. package/docs/evals/cases.mdx +1 -0
  584. package/docs/extensions.md +7 -1
  585. package/docs/getting-started.mdx +1 -1
  586. package/docs/guides/auth-and-route-protection.md +33 -1
  587. package/docs/guides/client/streaming.mdx +26 -0
  588. package/docs/guides/deployment/vercel.mdx +9 -5
  589. package/docs/guides/dev-tui.md +1 -1
  590. package/docs/guides/dynamic-capabilities.md +2 -0
  591. package/docs/guides/frontend/nextjs.mdx +20 -7
  592. package/docs/guides/frontend/overview.mdx +1 -1
  593. package/docs/guides/hooks.md +6 -3
  594. package/docs/guides/instrumentation/agent-runs.mdx +101 -0
  595. package/docs/guides/instrumentation/instrumentation.mdx +2 -1
  596. package/docs/guides/instrumentation/meta.json +1 -1
  597. package/docs/guides/instrumentation/migration.md +5 -1
  598. package/docs/guides/instrumentation/otel.mdx +8 -27
  599. package/docs/guides/remote-agents.md +3 -1
  600. package/docs/guides/self-modification.md +37 -0
  601. package/docs/guides/session-context.md +11 -13
  602. package/docs/install-integrations.mdx +2 -2
  603. package/docs/meta.json +1 -0
  604. package/docs/reference/cli.md +2 -2
  605. package/docs/reference/typescript-api.md +1 -2
  606. package/docs/sandbox/index.mdx +11 -0
  607. package/docs/skills.mdx +3 -10
  608. package/docs/subagents/index.mdx +9 -3
  609. package/docs/tools/overview.mdx +7 -1
  610. package/docs/tools/workflows.mdx +1 -1
  611. package/package.json +30 -1
  612. package/dist/src/cli/dev/tui/model-picker.d.ts +0 -50
  613. package/dist/src/cli/dev/tui/model-picker.js +0 -1
  614. package/dist/src/compiled/_chunks/client/errors-Cd0_QQdM.js +0 -2
  615. package/dist/src/compiled/_chunks/node/auth-DDrvYko5.js +0 -2
  616. package/dist/src/compiled/_chunks/node/schemas-g-rLPCNX.js +0 -50
  617. package/dist/src/compiled/_chunks/workflow/coerce-D0oqvQ_w.js +0 -1
  618. package/dist/src/compiled/_chunks/workflow/dist-DjECvUyK.js +0 -2
  619. package/dist/src/compiled/_chunks/workflow/frames-D_Q-7A1N.js +0 -3
  620. package/dist/src/compiled/_chunks/workflow/resume-hook-BhA_nDEV.js +0 -1
  621. package/dist/src/compiled/_chunks/workflow/schemas-4CmFgxN_.js +0 -50
  622. package/dist/src/compiled/_chunks/workflow/sleep-DB4AH9-A.js +0 -1
  623. package/dist/src/compiled/_chunks/workflow/token-util-pP4KRRl0.js +0 -27
  624. package/dist/src/compiled/_chunks/workflow/ws-transport-BpTMh40s.js +0 -1
  625. package/dist/src/internal/nitro/host/dev-workspace-extensions.d.ts +0 -18
  626. package/dist/src/internal/nitro/host/dev-workspace-extensions.js +0 -1
  627. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/lib/primitives.js +0 -1
  628. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/lib/schemas.js +0 -1
  629. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/models/aclaction.js +0 -1
  630. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/models/sdkvalidationerror.js +0 -1
  631. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/models/updateprojectblock.js +0 -1
  632. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/models/updateprojectprojectsbranchmatcher.js +0 -1
  633. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/types/defaultToZeroValue.js +0 -1
  634. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/types/fp.js +0 -1
  635. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/types/primitives.js +0 -1
  636. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/types/rfcdate.js +0 -1
  637. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/types/smartUnion.js +0 -1
  638. package/dist/src/node_modules/.pnpm/@vercel_sdk@1.28.8/node_modules/@vercel/sdk/esm/types/unrecognized.js +0 -1
  639. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/index.js +0 -1
  640. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/ZodError.js +0 -1
  641. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/errors.js +0 -1
  642. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/external.js +0 -1
  643. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/helpers/errorUtil.js +0 -1
  644. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/helpers/parseUtil.js +0 -1
  645. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  646. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/helpers/util.js +0 -1
  647. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/index.js +0 -1
  648. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/locales/en.js +0 -1
  649. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v3/types.js +0 -1
  650. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/checks.js +0 -1
  651. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/coerce.js +0 -1
  652. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/compat.js +0 -1
  653. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/deep-partial.js +0 -1
  654. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/errors.js +0 -1
  655. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/external.js +0 -1
  656. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/from-json-schema.js +0 -1
  657. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/in-out.js +0 -1
  658. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/iso.js +0 -1
  659. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/parse.js +0 -1
  660. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/schemas.js +0 -1
  661. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/api.js +0 -1
  662. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/checks.js +0 -1
  663. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/compile.js +0 -2
  664. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/core.js +0 -1
  665. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/doc.js +0 -3
  666. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/errors.js +0 -2
  667. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/index.js +0 -1
  668. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/json-schema-generator.js +0 -1
  669. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/json-schema-processors.js +0 -1
  670. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/json-schema.js +0 -1
  671. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/memoizer.js +0 -1
  672. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/parse.js +0 -1
  673. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/regexes.js +0 -1
  674. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/registries.js +0 -1
  675. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/schemas.js +0 -46
  676. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/to-json-schema.js +0 -3
  677. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/util.js +0 -1
  678. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/versions.js +0 -1
  679. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/core/visit.js +0 -1
  680. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ar.js +0 -1
  681. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/az.js +0 -1
  682. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/be.js +0 -1
  683. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/bg.js +0 -1
  684. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/bn.js +0 -1
  685. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ca.js +0 -1
  686. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ckb.js +0 -1
  687. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/cs.js +0 -1
  688. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/da.js +0 -1
  689. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/de.js +0 -1
  690. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/el.js +0 -1
  691. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/en.js +0 -1
  692. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/eo.js +0 -1
  693. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/es.js +0 -1
  694. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/fa.js +0 -1
  695. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/fi.js +0 -1
  696. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/fr-CA.js +0 -1
  697. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/fr.js +0 -1
  698. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/gu.js +0 -1
  699. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/he.js +0 -1
  700. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/hi.js +0 -1
  701. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/hr.js +0 -1
  702. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/hu.js +0 -1
  703. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/hy.js +0 -1
  704. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/id.js +0 -1
  705. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/index.js +0 -1
  706. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/is.js +0 -1
  707. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/it.js +0 -1
  708. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ja.js +0 -1
  709. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ka.js +0 -1
  710. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/kh.js +0 -1
  711. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/km.js +0 -1
  712. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/kn.js +0 -1
  713. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ko.js +0 -1
  714. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/lt.js +0 -1
  715. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/mk.js +0 -1
  716. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ms.js +0 -1
  717. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ne.js +0 -1
  718. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/nl.js +0 -1
  719. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/nn.js +0 -1
  720. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/no.js +0 -1
  721. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ota.js +0 -1
  722. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/pl.js +0 -1
  723. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ps.js +0 -1
  724. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/pt-BR.js +0 -1
  725. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/pt.js +0 -1
  726. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ro.js +0 -1
  727. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ru.js +0 -1
  728. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/sk.js +0 -1
  729. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/sl.js +0 -1
  730. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/sv.js +0 -1
  731. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ta.js +0 -1
  732. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/th.js +0 -1
  733. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/tk.js +0 -1
  734. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/tr.js +0 -1
  735. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ua.js +0 -1
  736. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/uk.js +0 -1
  737. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/ur.js +0 -1
  738. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/uz.js +0 -1
  739. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/vi.js +0 -1
  740. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/yo.js +0 -1
  741. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/zh-CN.js +0 -1
  742. package/dist/src/node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/locales/zh-TW.js +0 -1
  743. package/dist/src/runtime/skills/sandbox-access.d.ts +0 -22
  744. package/dist/src/runtime/skills/sandbox-access.js +0 -1
  745. package/dist/src/shared/skill-types.d.ts +0 -22
  746. package/dist/src/shared/skill-types.js +0 -1
  747. package/dist/src/tasks/session-task-cohorts.d.ts +0 -7
  748. package/dist/src/tasks/session-task-cohorts.js +0 -1
@@ -1 +1 @@
1
- import{object,string}from"../node_modules/.pnpm/zod@4.5.4/node_modules/zod/v4/classic/schemas.js";import"../node_modules/.pnpm/zod@4.5.4/node_modules/zod/index.js";import{readProjectLink}from"./project-resolution.js";import{resolveVercelHostFrameworkPreset}from"./scaffold/update/channels.js";import"./scaffold/index.js";import{isForbiddenApiFailure,normalizeVercelApiResult}from"./vercel-api-failure.js";import{VERCEL_PROJECT_REQUEST_TIMEOUT_MS,parseVercelJson,requireVercelTeamAccess}from"./vercel-project-api.js";import*as fs from"node:fs/promises";import{extname,join}from"node:path";import{captureVercel}from"#setup/primitives/index.js";import"#setup/cli/index.js";const VercelProjectFrameworkSchema=object({framework:string().min(1).nullish()}),EVE_FRAMEWORK_INTEGRATIONS={nextjs:{label:`Next.js`,importSpecifier:`eve/next`},nuxt:{label:`Nuxt`,importSpecifier:`eve/nuxt`},nuxtjs:{label:`Nuxt`,importSpecifier:`eve/nuxt`},sveltekit:{label:`SvelteKit`,importSpecifier:`eve/sveltekit`}},FRAMEWORK_INTEGRATION_SOURCE_EXTENSIONS=new Set([`.cjs`,`.cts`,`.js`,`.json`,`.jsx`,`.mjs`,`.mts`,`.svelte`,`.ts`,`.tsx`,`.vue`]),FRAMEWORK_INTEGRATION_IGNORED_DIRECTORIES=new Set([`.eve`,`.git`,`.next`,`.nuxt`,`.output`,`.svelte-kit`,`.turbo`,`.vercel`,`build`,`coverage`,`dist`,`node_modules`]);function parseProjectFramework(e,t){let n=VercelProjectFrameworkSchema.safeParse(parseVercelJson(e,t));if(!n.success)throw Error(`Could not read Vercel project framework from ${t}.`);return n.data.framework??void 0}async function fetchProjectFramework(e,t,n,r){let i=normalizeVercelApiResult(await captureVercel([`api`,`/v9/projects/${n}`,`--scope`,t,`--raw`],{cwd:e,signal:r.signal,timeoutMs:VERCEL_PROJECT_REQUEST_TIMEOUT_MS}));if(i.ok)return parseProjectFramework(i.stdout,`project ${n}`);throw isForbiddenApiFailure(i.failure)&&requireVercelTeamAccess(i.failure),Error(`Could not inspect Vercel project "${n}". ${i.failure.message}`)}async function setProjectFramework(e,t,n,r,i,a){let o=normalizeVercelApiResult(await captureVercel([`api`,`/v9/projects/${n}`,`--scope`,t,`--method`,`PATCH`,`--raw-field`,`framework=${r}`,`--raw`],{cwd:e,onOutput:i,signal:a.signal,timeoutMs:VERCEL_PROJECT_REQUEST_TIMEOUT_MS}));if(!o.ok)throw isForbiddenApiFailure(o.failure)&&requireVercelTeamAccess(o.failure),Error(`Could not set Vercel project "${n}" framework to ${r}. ${o.failure.message}`)}async function confirmDetectedFramework(e,t,n){return await e.select({message:`Vercel detected ${n.label}. Is this project using ${n.importSpecifier}?`,options:[{value:!0,label:`Yes, keep ${t}`,hint:`Use this for a host app that integrates eve through ${n.importSpecifier}.`},{value:!1,label:`No, switch to eve`,hint:`Use this for a standalone eve agent.`}]})?`keep`:`switch-to-eve`}function sourceMentionsPackageSpecifier(e,t){return e.includes(`"${t}"`)||e.includes(`'${t}'`)||e.includes(`\`${t}\``)}async function directoryContainsPackageSpecifier(e,t){let n;try{n=await fs.readdir(e,{encoding:`utf8`,withFileTypes:!0})}catch{return!1}for(let r of n){let n=join(e,r.name);if(r.isDirectory()){if(FRAMEWORK_INTEGRATION_IGNORED_DIRECTORIES.has(r.name))continue;if(await directoryContainsPackageSpecifier(n,t))return!0;continue}if(r.isFile()&&FRAMEWORK_INTEGRATION_SOURCE_EXTENSIONS.has(extname(r.name)))try{if(sourceMentionsPackageSpecifier(await fs.readFile(n,`utf8`),t))return!0}catch{continue}}return!1}async function detectFrameworkIntegrationImport(e,t){return directoryContainsPackageSpecifier(e,t)}async function resolveDetectedFrameworkAction(e,t,n,r){let i=EVE_FRAMEWORK_INTEGRATIONS[n];return i===void 0?`switch-to-eve`:await(r.detectFrameworkIntegrationImport??detectFrameworkIntegrationImport)(t,i.importSpecifier)?`keep`:r.headless?`switch-to-eve`:confirmDetectedFramework(e,n,i)}function frameworkPresetLabel(e){return EVE_FRAMEWORK_INTEGRATIONS[e]?.label??e}function describeError(e){return e instanceof Error?e.message:String(e)}async function syncHostFrameworkPreset(e,t,n,r){let i=await resolveVercelHostFrameworkPreset(t);if(i===void 0)return;let a=await readProjectLink(t);if(a===void 0)return;let o=frameworkPresetLabel(i),s;try{s=await fetchProjectFramework(t,a.orgId,a.projectId,r)}catch(t){if(r.signal?.aborted)throw t;e.log.warning(`Could not check this Vercel project's Framework Preset (${describeError(t)}). If it is not already ${o}, set it under Project Settings → Build and Deployment → Framework Settings before deploying.`);return}if(s===i)return;let c=s===void 0?void 0:frameworkPresetLabel(s),l=c===void 0?`had no Framework Preset set`:`was set to "${c}"`;try{await setProjectFramework(t,a.orgId,a.projectId,i,n,r)}catch(t){if(r.signal?.aborted)throw t;e.log.warning(`${describeError(t)} Set this Vercel project's Framework Preset to ${o} (Project Settings → Build and Deployment → Framework Settings) before deploying, or the deployment will not build your ${o} app.`);return}e.log.info(`This project uses ${o}, but its Vercel Framework Preset ${l}; switched it to ${o} so the deployment builds your app.`)}async function ensureCreatedProjectFramework(e,t,n,r,i,a){let o=await fetchProjectFramework(t,n,r,a);o!==`eve`&&(o===void 0?`switch-to-eve`:await resolveDetectedFrameworkAction(e,t,o,a))===`switch-to-eve`&&await setProjectFramework(t,n,r,`eve`,i,a)}export{ensureCreatedProjectFramework,syncHostFrameworkPreset};
1
+ import{readProjectLink}from"./project-resolution.js";import{resolveVercelHostFrameworkPreset}from"./scaffold/update/channels.js";import"./scaffold/index.js";import{isForbiddenApiFailure,normalizeVercelApiResult}from"./vercel-api-failure.js";import{VERCEL_PROJECT_REQUEST_TIMEOUT_MS,parseVercelJson,requireVercelTeamAccess}from"./vercel-project-api.js";import*as fs from"node:fs/promises";import{z}from"#compiled/zod/index.js";import{extname,join}from"node:path";import{captureVercel}from"#setup/primitives/index.js";import"#setup/cli/index.js";const VercelProjectFrameworkSchema=z.object({framework:z.string().min(1).nullish()}),EVE_FRAMEWORK_INTEGRATIONS={nextjs:{label:`Next.js`,importSpecifier:`eve/next`},nuxt:{label:`Nuxt`,importSpecifier:`eve/nuxt`},nuxtjs:{label:`Nuxt`,importSpecifier:`eve/nuxt`},sveltekit:{label:`SvelteKit`,importSpecifier:`eve/sveltekit`}},FRAMEWORK_INTEGRATION_SOURCE_EXTENSIONS=new Set([`.cjs`,`.cts`,`.js`,`.json`,`.jsx`,`.mjs`,`.mts`,`.svelte`,`.ts`,`.tsx`,`.vue`]),FRAMEWORK_INTEGRATION_IGNORED_DIRECTORIES=new Set([`.eve`,`.git`,`.next`,`.nuxt`,`.output`,`.svelte-kit`,`.turbo`,`.vercel`,`build`,`coverage`,`dist`,`node_modules`]);function parseProjectFramework(e,t){let n=VercelProjectFrameworkSchema.safeParse(parseVercelJson(e,t));if(!n.success)throw Error(`Could not read Vercel project framework from ${t}.`);return n.data.framework??void 0}async function fetchProjectFramework(e,t,n,r){let i=normalizeVercelApiResult(await captureVercel([`api`,`/v9/projects/${n}`,`--scope`,t,`--raw`],{cwd:e,signal:r.signal,timeoutMs:VERCEL_PROJECT_REQUEST_TIMEOUT_MS}));if(i.ok)return parseProjectFramework(i.stdout,`project ${n}`);throw isForbiddenApiFailure(i.failure)&&requireVercelTeamAccess(i.failure),Error(`Could not inspect Vercel project "${n}". ${i.failure.message}`)}async function setProjectFramework(e,t,n,r,i,a){let o=normalizeVercelApiResult(await captureVercel([`api`,`/v9/projects/${n}`,`--scope`,t,`--method`,`PATCH`,`--raw-field`,`framework=${r}`,`--raw`],{cwd:e,onOutput:i,signal:a.signal,timeoutMs:VERCEL_PROJECT_REQUEST_TIMEOUT_MS}));if(!o.ok)throw isForbiddenApiFailure(o.failure)&&requireVercelTeamAccess(o.failure),Error(`Could not set Vercel project "${n}" framework to ${r}. ${o.failure.message}`)}async function confirmDetectedFramework(e,t,n){return await e.select({message:`Vercel detected ${n.label}. Is this project using ${n.importSpecifier}?`,options:[{value:!0,label:`Yes, keep ${t}`,hint:`Use this for a host app that integrates eve through ${n.importSpecifier}.`},{value:!1,label:`No, switch to eve`,hint:`Use this for a standalone eve agent.`}]})?`keep`:`switch-to-eve`}function sourceMentionsPackageSpecifier(e,t){return e.includes(`"${t}"`)||e.includes(`'${t}'`)||e.includes(`\`${t}\``)}async function directoryContainsPackageSpecifier(e,t){let n;try{n=await fs.readdir(e,{encoding:`utf8`,withFileTypes:!0})}catch{return!1}for(let r of n){let n=join(e,r.name);if(r.isDirectory()){if(FRAMEWORK_INTEGRATION_IGNORED_DIRECTORIES.has(r.name))continue;if(await directoryContainsPackageSpecifier(n,t))return!0;continue}if(r.isFile()&&FRAMEWORK_INTEGRATION_SOURCE_EXTENSIONS.has(extname(r.name)))try{if(sourceMentionsPackageSpecifier(await fs.readFile(n,`utf8`),t))return!0}catch{continue}}return!1}async function detectFrameworkIntegrationImport(e,t){return directoryContainsPackageSpecifier(e,t)}async function resolveDetectedFrameworkAction(e,t,n,r){let i=EVE_FRAMEWORK_INTEGRATIONS[n];return i===void 0?`switch-to-eve`:await(r.detectFrameworkIntegrationImport??detectFrameworkIntegrationImport)(t,i.importSpecifier)?`keep`:r.headless?`switch-to-eve`:confirmDetectedFramework(e,n,i)}function frameworkPresetLabel(e){return EVE_FRAMEWORK_INTEGRATIONS[e]?.label??e}function describeError(e){return e instanceof Error?e.message:String(e)}async function syncHostFrameworkPreset(e,t,n,r){let i=await resolveVercelHostFrameworkPreset(t);if(i===void 0)return;let a=await readProjectLink(t);if(a===void 0)return;let o=frameworkPresetLabel(i),s;try{s=await fetchProjectFramework(t,a.orgId,a.projectId,r)}catch(t){if(r.signal?.aborted)throw t;e.log.warning(`Could not check this Vercel project's Framework Preset (${describeError(t)}). If it is not already ${o}, set it under Project Settings → Build and Deployment → Framework Settings before deploying.`);return}if(s===i)return;let c=s===void 0?void 0:frameworkPresetLabel(s),l=c===void 0?`had no Framework Preset set`:`was set to "${c}"`;try{await setProjectFramework(t,a.orgId,a.projectId,i,n,r)}catch(t){if(r.signal?.aborted)throw t;e.log.warning(`${describeError(t)} Set this Vercel project's Framework Preset to ${o} (Project Settings → Build and Deployment → Framework Settings) before deploying, or the deployment will not build your ${o} app.`);return}e.log.info(`This project uses ${o}, but its Vercel Framework Preset ${l}; switched it to ${o} so the deployment builds your app.`)}async function ensureCreatedProjectFramework(e,t,n,r,i,a){let o=await fetchProjectFramework(t,n,r,a);o!==`eve`&&(o===void 0?`switch-to-eve`:await resolveDetectedFrameworkAction(e,t,o,a))===`switch-to-eve`&&await setProjectFramework(t,n,r,`eve`,i,a)}export{ensureCreatedProjectFramework,syncHostFrameworkPreset};
Binary file
@@ -5,7 +5,6 @@
5
5
  * depend only on these interfaces, not on any
6
6
  * protocol-specific implementation such as MCP.
7
7
  */
8
- import type { ToolSet } from "ai";
9
8
  import type { ConnectionAuthorizationChallenge } from "#connections/errors.js";
10
9
  import type { SessionContext } from "#context/session-context.js";
11
10
  import type { JsonValue } from "#shared/json.js";
@@ -411,6 +410,5 @@ export interface ConnectionClient {
411
410
  connect(): Promise<unknown>;
412
411
  executeTool(toolName: string, args: unknown, options: ConnectionToolExecuteOptions): Promise<unknown>;
413
412
  getToolMetadata(): Promise<readonly ConnectionToolMetadata[]>;
414
- getTools(): Promise<ToolSet>;
415
413
  }
416
414
  export {};
@@ -8,7 +8,9 @@ import type * as Vercel from "#compiled/@vercel/sandbox/index.js";
8
8
  * firewall so secrets never enter the sandbox process:
9
9
  *
10
10
  * ```ts
11
- * const sandbox = await ctx.getSandbox();
11
+ * import { environment } from "../sandbox";
12
+ *
13
+ * const sandbox = await ctx.getSandbox(environment);
12
14
  * await sandbox.setNetworkPolicy({
13
15
  * allow: {
14
16
  * "github.com": [{ transform: [{ headers: { authorization: "Basic ..." } }] }],
@@ -18,9 +20,8 @@ import type * as Vercel from "#compiled/@vercel/sandbox/index.js";
18
20
  * ```
19
21
  *
20
22
  * The Docker provider honors only the coarse `"allow-all"` and
21
- * `"deny-all"` policies; the just-bash provider rejects `setNetworkPolicy`
22
- * entirely (its network policy is fixed at sandbox creation and it runs
23
- * no binaries to govern).
23
+ * `"deny-all"` policies. just-bash environments do not expose
24
+ * `setNetworkPolicy` because their network policy is fixed at sandbox creation.
24
25
  */
25
26
  export type SandboxNetworkPolicy = Vercel.NetworkPolicy;
26
27
  /** Initial network configuration shared by network-capable sandbox providers. */
@@ -1,6 +1,5 @@
1
1
  import type { Experimental_SandboxSession as AiSdkSandbox } from "ai";
2
2
  import type { SandboxDeleteOptions } from "#shared/sandbox-provider.js";
3
- import type { SandboxNetworkPolicy } from "#shared/sandbox-network-policy.js";
4
3
  /**
5
4
  * Options for running one command in a sandbox. Shape mirrors the AI
6
5
  * SDK {@link AiSdkSandbox} `run` argument so authored code that targets
@@ -86,8 +85,6 @@ export interface SandboxSession extends Pick<AiSdkSandbox, "run" | "spawn" | "re
86
85
  * The read and write methods already apply this internally.
87
86
  */
88
87
  resolvePath(path: string): string;
89
- /** Applies a firewall policy when the selected provider supports mutable networking. */
90
- setNetworkPolicy?(policy: SandboxNetworkPolicy): Promise<void>;
91
88
  /**
92
89
  * Removes one file or directory from the sandbox filesystem.
93
90
  *
@@ -95,18 +92,6 @@ export interface SandboxSession extends Pick<AiSdkSandbox, "run" | "spawn" | "re
95
92
  */
96
93
  removePath(options: SandboxRemovePathOptions): Promise<void>;
97
94
  }
98
- /**
99
- * Sandbox session exposed to authored runtime callbacks through
100
- * `ctx.getSandbox()`.
101
- *
102
- * Unlike the I/O-only session used during sandbox initialization, this handle
103
- * exposes provider-backed lifecycle operations.
104
- */
105
- export interface MutableNetworkSandboxSession extends SandboxSession {
106
- /** Applies a firewall policy to the live sandbox. */
107
- setNetworkPolicy(policy: SandboxNetworkPolicy): Promise<void>;
108
- }
109
- export type FixedNetworkSandboxSession = Omit<SandboxSession, "setNetworkPolicy">;
110
95
  export interface RuntimeSandboxSession extends SandboxSession {
111
96
  /** Permanently deletes this sandbox and its disposable provider state. */
112
97
  delete(options?: SandboxDeleteOptions): Promise<void>;
@@ -13,6 +13,9 @@ export interface MaterializableSkillPackage {
13
13
  readonly metadata?: Readonly<Record<string, string>>;
14
14
  readonly name: string;
15
15
  }
16
+ export declare function stripSkillFrontmatter(markdown: string): string;
17
+ /** Content hash over every package file, including `SKILL.md`. */
18
+ export declare function skillPackageRevision(skill: MaterializableSkillPackage): string;
16
19
  /**
17
20
  * Normalizes one named skill package into the concrete files eve writes to
18
21
  * workspace resources or the live sandbox.
@@ -1 +1 @@
1
- import{mkdir,writeFile}from"node:fs/promises";import{dirname,join}from"node:path";import{resolveSandboxSkillRoot,resolveSandboxSkillWritePath}from"#shared/skill-paths.js";import{Buffer}from"node:buffer";function normalizeSkillPackage(e){assertSafeSkillPackageName(e.name);let t=[{content:Buffer.from(e.markdown,`utf8`),relativePath:`SKILL.md`}];for(let[n,r]of Object.entries(e.files??{}))assertSafeSkillPackageFilePath(n),t.push({content:contentToBuffer(r),relativePath:n});return t.sort((e,t)=>comparePaths(e.relativePath,t.relativePath)),{description:e.description,files:t,license:e.license,markdown:e.markdown,metadata:e.metadata===void 0?void 0:{...e.metadata},name:e.name}}async function writeSkillPackageDirectory(e){for(let t of e.skill.files){let n=join(e.rootPath,`skills`,e.skill.name,t.relativePath);await mkdir(dirname(n),{recursive:!0}),await writeFile(n,t.content)}}async function writeSkillPackageToSandbox(e){for(let t of e.skill.files)await e.sandbox.writeBinaryFile({content:t.content,path:await resolveSandboxSkillWritePath({name:e.skill.name,relativePath:t.relativePath,sandbox:e.sandbox})})}async function removeSkillPackageFromSandbox(e){assertSafeSkillPackageName(e.name);let t=await resolveSandboxSkillRoot({sandbox:e.sandbox});await e.sandbox.removePath({force:!0,path:`${t}/${e.name}`,recursive:!0})}function assertSafeSkillPackageName(e){if(e.length===0||e.startsWith(`.`)||e.includes(`/`)||e.includes(`\\`)||e.includes(`..`)||!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)||/^[A-Za-z]:/.test(e))throw Error(`Expected skill name to be a non-empty shell-safe path segment starting with an alphanumeric character and containing only alphanumerics, ".", "_", or "-".`)}function assertSafeSkillPackageFilePath(e){if(e===`SKILL.md`)throw Error(`Skill package files must not include "SKILL.md"; eve generates it.`);if(e.length===0||e.startsWith(`/`)||e.includes(`\\`)||/^[A-Za-z]:/.test(e)||e.split(`/`).some(e=>e.length===0||e===`.`||e===`..`))throw Error(`Expected skill package file paths to be relative POSIX paths.`)}function contentToBuffer(e){return typeof e==`string`?Buffer.from(e,`utf8`):Buffer.from(e)}function comparePaths(e,t){return e<t?-1:+(e>t)}export{assertSafeSkillPackageName,normalizeSkillPackage,removeSkillPackageFromSandbox,writeSkillPackageDirectory,writeSkillPackageToSandbox};
1
+ import{createHash}from"node:crypto";import{mkdir,writeFile}from"node:fs/promises";import{dirname,join}from"node:path";import{resolveSandboxSkillRoot,resolveSandboxSkillWritePath}from"#shared/skill-paths.js";import{Buffer}from"node:buffer";function stripSkillFrontmatter(e){return e.replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n?/,``)}function skillPackageRevision(e){let t=createHash(`sha256`);for(let n of e.files)t.update(`${n.relativePath}\0${n.content.byteLength}\0`).update(n.content);return t.digest(`hex`)}function normalizeSkillPackage(e){assertSafeSkillPackageName(e.name);let t=[{content:Buffer.from(e.markdown,`utf8`),relativePath:`SKILL.md`}];for(let[n,r]of Object.entries(e.files??{}))assertSafeSkillPackageFilePath(n),t.push({content:contentToBuffer(r),relativePath:n});return t.sort((e,t)=>comparePaths(e.relativePath,t.relativePath)),{description:e.description,files:t,license:e.license,markdown:e.markdown,metadata:e.metadata===void 0?void 0:{...e.metadata},name:e.name}}async function writeSkillPackageDirectory(e){for(let t of e.skill.files){let n=join(e.rootPath,`skills`,e.skill.name,t.relativePath);await mkdir(dirname(n),{recursive:!0}),await writeFile(n,t.content)}}async function writeSkillPackageToSandbox(e){for(let t of e.skill.files)await e.sandbox.writeBinaryFile({content:t.content,path:await resolveSandboxSkillWritePath({name:e.skill.name,relativePath:t.relativePath,sandbox:e.sandbox})})}async function removeSkillPackageFromSandbox(e){assertSafeSkillPackageName(e.name);let t=await resolveSandboxSkillRoot({sandbox:e.sandbox});await e.sandbox.removePath({force:!0,path:`${t}/${e.name}`,recursive:!0})}function assertSafeSkillPackageName(e){if(e.length===0||e.startsWith(`.`)||e.includes(`/`)||e.includes(`\\`)||e.includes(`..`)||!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)||/^[A-Za-z]:/.test(e))throw Error(`Expected skill name to be a non-empty shell-safe path segment starting with an alphanumeric character and containing only alphanumerics, ".", "_", or "-".`)}function assertSafeSkillPackageFilePath(e){if(e===`SKILL.md`)throw Error(`Skill package files must not include "SKILL.md"; eve generates it.`);if(e.length===0||e.startsWith(`/`)||e.includes(`\\`)||/^[A-Za-z]:/.test(e)||e.split(`/`).some(e=>e.length===0||e===`.`||e===`..`))throw Error(`Expected skill package file paths to be relative POSIX paths.`)}function contentToBuffer(e){return typeof e==`string`?Buffer.from(e,`utf8`):Buffer.from(e)}function comparePaths(e,t){return e<t?-1:+(e>t)}export{assertSafeSkillPackageName,normalizeSkillPackage,removeSkillPackageFromSandbox,skillPackageRevision,stripSkillFrontmatter,writeSkillPackageDirectory,writeSkillPackageToSandbox};
@@ -23,7 +23,7 @@ export declare function notifyDelegatedParentStep(input: {
23
23
  export interface SettledTurnNotification {
24
24
  readonly output: unknown;
25
25
  readonly isError?: boolean;
26
- /** Usage this turn added; omitted (zero) on crash and expiry paths. */
26
+ /** Usage accumulated since the previous caller settlement, including yielded turns. */
27
27
  readonly usage?: TokenUsage;
28
28
  }
29
29
  /**
@@ -81,6 +81,7 @@ export declare function cancelRemoteAgentTurn(input: {
81
81
  readonly remote: Pick<ResolvedRuntimeRemoteAgentNode, "auth" | "headers" | "name" | "url">;
82
82
  readonly sessionId: string;
83
83
  readonly taskId?: string;
84
+ readonly tasks?: boolean;
84
85
  readonly turnId?: string;
85
86
  }): Promise<CancelTurnResult>;
86
87
  /** Retires one exact remote child session through eve's authenticated reset route. */
@@ -1 +1 @@
1
- import{z}from"#compiled/zod/index.js";import{createEveCallbackRoutePath,createEveSessionCancelRoutePath,createEveSessionResetRoutePath,createEveSessionRoutePath}from"#protocol/routes.js";import{decisionToTraceContentCeiling}from"#shared/forwarded-trace-policy.js";import{expectFunction,expectObjectRecord}from"#internal/authored-module.js";import{CancelTurnResponseSchema}from"#protocol/cancel-turn.js";import{ResetResponseSchema}from"#protocol/reset-session.js";import{formatTraceparent,writeAgentDispatchTracestate}from"#protocol/traceparent.js";import{writeForwardedAudienceBaggage,writeForwardedParentSessionBaggage}from"#protocol/baggage.js";import{writeConversationBaggage}from"#tracing/conversation-context.js";import{createWorkflowCallbackUrl}from"#execution/workflow-callback-url.js";import{formatSubagentInput,normalizeRequestedOutputSchema}from"#subagents/invocation.js";import{readTaskIdFromInboxToken}from"#tasks/task-inbox-token.js";import{AgentHandleError}from"#protocol/agent-handle-error.js";import{createRemoteAgentRouteUrl}from"#subagents/remote-route-url.js";const CreateSessionResponseSchema=z.object({ok:z.literal(!0),sessionId:z.string().min(1),status:z.literal(`accepted`)});var RemoteAgentCancelRequestError=class extends Error{retryable;constructor(e,t){super(e),this.name=`RemoteAgentCancelRequestError`,this.retryable=t.retryable}};async function startRemoteAgentSession(e){let t=e.parent?.continuationToken??e.session.continuationToken;if(!t)throw Error(`Cannot dispatch remote agent without a parent continuation token.`);if(!e.callbackBaseUrl)throw Error(`Cannot dispatch remote agent without a callback base URL.`);let n=buildForwardedPrincipalField(e),r={capabilities:{},callback:{callId:e.action.callId,subagentName:e.action.remoteAgentName,taskId:e.taskId??readTaskIdFromInboxToken(t),token:t,url:createWorkflowCallbackUrl(e.callbackBaseUrl,createEveCallbackRoutePath(t))},message:formatRemoteAgentCallInputMessage({action:e.action,remote:e.remote}),mode:`conversation`,outputSchema:normalizeRequestedOutputSchema(e.action.input.outputSchema)??e.remote.outputSchema};e.activityObserver!==void 0&&(r.activityObserver=e.activityObserver),n!==void 0&&(r.forwardedPrincipal=n),e.operationId!==void 0&&(r.operationId=e.operationId);let i=await resolveRemoteAgentRequestHeaders(e.remote),a=formatTraceparent(e.parent?.traceContext);a!==void 0&&setHeader(i,`traceparent`,a),setHeader(i,`tracestate`,writeAgentDispatchTracestate(readHeader(i,`tracestate`),e.parent?.traceContext));let o=writeForwardedAudienceBaggage(readHeader(i,`baggage`),buildForwardedTraceAssertion({forwardedPrincipal:n,originAudience:e.originAudience,parentTraceContext:e.parent?.traceContext,traceparent:a})),s=writeConversationBaggage(o,e.parent?.conversationId);setHeader(i,`baggage`,writeForwardedParentSessionBaggage(s,e.parent?.lineage));let c=await fetch(createRemoteAgentSessionUrl(e.remote),{body:JSON.stringify(r),headers:{"content-type":`application/json`,...i},method:`POST`});if(!c.ok)throw Error(`Remote agent "${e.action.remoteAgentName}" create-session request failed with HTTP ${c.status}.`);let l;try{l=await c.json()}catch{throw Error(`Remote agent "${e.action.remoteAgentName}" create-session response was not valid JSON.`)}let u=CreateSessionResponseSchema.safeParse(l);if(!u.success)throw Error(`Remote agent "${e.action.remoteAgentName}" create-session response was invalid.`);return{sessionId:u.data.sessionId}}function buildForwardedTraceAssertion(e){let t=decisionToTraceContentCeiling(e.parentTraceContext?.decision);if(e.forwardedPrincipal!==void 0&&e.parentTraceContext!==void 0&&(e.parentTraceContext.traceFlags&1)==1&&e.traceparent!==void 0&&t!==void 0)return{ceiling:t,originAudience:e.originAudience??`unknown`}}async function continueRemoteAgentSession(e){let t=buildForwardedPrincipalField(e),n={activityObserver:e.activityObserver,callback:e.callback,message:e.message,outputSchema:e.outputSchema};t!==void 0&&(n.forwardedPrincipal=t);let r=await fetch(createRemoteAgentContinueUrl(e.remote,e.sessionId),{body:JSON.stringify(n),headers:{"content-type":`application/json`,...await resolveRemoteAgentRequestHeaders(e.remote)},method:`POST`});if(!r.ok){let n=await readRemoteAgentErrorCode(r),i=r.status===404||n===AgentHandleError.SessionNotResumable.code,a=r.status===400&&t!==void 0?` The receiver may support forwarded principals only on session creation; upgrade it before retrying.`:``;throw new RemoteAgentContinueRequestError(`Remote agent "${e.remote.name}" continue-session request failed${i?` permanently`:``} with HTTP ${r.status}.${a}`,{deliveryAmbiguous:isAmbiguousRemoteContinueStatus(r.status),retryable:!i})}}var RemoteAgentContinueRequestError=class extends Error{deliveryAmbiguous;retryable;constructor(e,t){super(e),this.name=`RemoteAgentContinueRequestError`,this.deliveryAmbiguous=t.deliveryAmbiguous,this.retryable=t.retryable}};function isRetryableRemoteAgentContinueError(e){return!(e instanceof RemoteAgentContinueRequestError)||e.retryable}function isAmbiguousRemoteAgentContinueError(e){return!(e instanceof RemoteAgentContinueRequestError)||e.deliveryAmbiguous}function isAmbiguousRemoteContinueStatus(e){return e===408||e===425||e>=500}async function readRemoteAgentErrorCode(e){let t;try{t=await e.json()}catch{return}if(typeof t!=`object`||!t)return;let n=Reflect.get(t,`code`);return typeof n==`string`?n:void 0}function buildForwardedPrincipalField(e){if(e.remote.forwardPrincipal!==!0||e.auth===null||e.auth===void 0)return;let t={current:e.auth};return e.initiatorAuth!==null&&e.initiatorAuth!==void 0&&(t.initiator=e.initiatorAuth),t}async function cancelRemoteAgentTurn(e){let t=e.headers??await resolveRemoteAgentRequestHeaders(e.remote),n=await fetch(createRemoteAgentCancelTurnUrl(e.remote,e.sessionId),{body:e.turnId===void 0&&e.taskId===void 0?void 0:JSON.stringify({taskId:e.taskId,turnId:e.turnId}),headers:t,method:`POST`});if(!n.ok)throw new RemoteAgentCancelRequestError(`Remote agent "${e.remote.name}" cancel-turn request failed with HTTP ${n.status}.`,{retryable:isRetryableRemoteCancelStatus(n.status)});let r;try{r=await n.json()}catch{throw new RemoteAgentCancelRequestError(`Remote agent "${e.remote.name}" cancel-turn response was not valid JSON.`,{retryable:!1})}let i=CancelTurnResponseSchema.safeParse(r);if(!i.success||i.data.status===`accepted`&&i.data.sessionId!==e.sessionId)throw new RemoteAgentCancelRequestError(`Remote agent "${e.remote.name}" cancel-turn response was invalid.`,{retryable:!1});return i.data.status===`accepted`?{sessionId:i.data.sessionId,status:`accepted`}:{status:`no_active_turn`}}function readHeader(e,t){let n=Object.keys(e).find(e=>e.toLowerCase()===t);return n===void 0?void 0:e[n]}function setHeader(e,t,n){for(let n of Object.keys(e))n.toLowerCase()===t&&delete e[n];n!==void 0&&(e[t]=n)}async function resetRemoteAgentSession(e){let t=e.headers??await resolveRemoteAgentRequestHeaders(e.remote),n=await fetch(createRemoteAgentRouteUrl(e.remote.url,createEveSessionResetRoutePath(e.sessionId)),{body:JSON.stringify({reason:`Parent session ended`}),headers:{"content-type":`application/json`,...t},method:`POST`});if(!n.ok)throw Error(`Remote agent "${e.remote.name}" reset-session request failed with HTTP ${n.status}.`);let r=ResetResponseSchema.safeParse(await n.json());if(!r.success||r.data.status===`reset`&&r.data.previousSessionId!==e.sessionId)throw Error(`Remote agent "${e.remote.name}" reset-session response was invalid.`);return r.data}function isRetryableRemoteAgentCancelError(e){return!(e instanceof RemoteAgentCancelRequestError)||e.retryable}function resolveRemoteAgentForAction(e){let t=e.registry.get(e.nodeId)?.definition;if(e.dynamicRemoteAgent!==void 0){if(t===void 0)throw Error(`Missing remote agent "${e.remoteAgentName}" in runtime registry.`);let n=resolveDynamicRemoteAgentCredentials(e.dynamicRemoteAgent),r=e.dynamicRemoteAgent,i={description:r.description,kind:`remote`,logicalPath:t.logicalPath,name:e.remoteAgentName,nodeId:e.nodeId,outputSchema:r.outputSchema,path:r.path,sourceId:t.sourceId,sourceKind:`module`,url:r.url};return r.forwardPrincipal!==void 0&&(i.forwardPrincipal=r.forwardPrincipal),n.auth!==void 0&&(i.auth=n.auth),n.headers!==void 0&&(i.headers=n.headers),i}if(t?.kind!==`remote`)throw Error(`Missing remote agent "${e.remoteAgentName}" in runtime registry.`);return t}async function resolveRemoteAgentStreamHeaders(e){if(e.resolverId===void 0)return{};let t=new Set([e.bundle.graph.root,...e.bundle.graph.nodesByNodeId.values()]);for(let n of t){let t=n.subagentRegistry.subagentsByNodeId.get(e.resolverId)?.definition;if(t!==void 0){if(t.kind!==`remote`||t.name!==e.name||t.url!==e.url)throw Error(`Remote child stream resolver does not match the authored remote agent.`);return await resolveRemoteAgentRequestHeaders(t)}}return await resolveRemoteAgentRequestHeaders(resolveDynamicRemoteAgentCredentials({credentialsStepId:e.resolverId,description:``,path:``,url:e.url}))}function resolveDynamicRemoteAgentCredentials(e){if(e.credentialsStepId===void 0)return{};let t=getStepRegistry().get(e.credentialsStepId);if(t===void 0)throw Error(`Dynamic remote subagent credentials function "${e.credentialsStepId}" is not registered.`);let n=expectObjectRecord(t(),`Dynamic remote subagent credentials are invalid.`),r={};return n.auth!==void 0&&(r.auth=expectFunction(n.auth,`Dynamic remote subagent auth is invalid.`)),n.headers!==void 0&&(r.headers=resolveDynamicRemoteAgentHeaders(n.headers)),r}function resolveDynamicRemoteAgentHeaders(e){if(typeof e==`function`)return e;let t=expectObjectRecord(e,`Dynamic remote subagent headers are invalid.`);for(let e of Object.values(t))if(typeof e!=`string`)throw Error(`Dynamic remote subagent headers are invalid.`);return t}function getStepRegistry(){let e=Symbol.for(`@workflow/core//registeredSteps`),t=globalThis,n=t[e];return n===void 0&&(n=new Map,t[e]=n),n}function createRemoteAgentSessionUrl(e){return createRemoteAgentRouteUrl(e.url,e.path)}function createRemoteAgentCancelTurnUrl(e,t){return createRemoteAgentRouteUrl(e.url,createEveSessionCancelRoutePath(t))}function createRemoteAgentContinueUrl(e,t){return createRemoteAgentRouteUrl(e.url,createEveSessionRoutePath(t))}function isRetryableRemoteCancelStatus(e){return e===408||e===425||e===429||e>=500}async function resolveRemoteAgentRequestHeaders(e){let t={};return e.headers!==void 0&&Object.assign(t,typeof e.headers==`function`?await e.headers():e.headers),e.auth!==void 0&&Object.assign(t,(await e.auth()).headers),t}function formatRemoteAgentCallInputMessage(e){let t=typeof e.action.input.message==`string`?e.action.input.message:``;return formatSubagentInput({description:e.remote.description,message:t,name:e.action.remoteAgentName,type:`remote`}).message}export{RemoteAgentContinueRequestError,cancelRemoteAgentTurn,continueRemoteAgentSession,isAmbiguousRemoteAgentContinueError,isRetryableRemoteAgentCancelError,isRetryableRemoteAgentContinueError,resetRemoteAgentSession,resolveRemoteAgentForAction,resolveRemoteAgentStreamHeaders,startRemoteAgentSession};
1
+ import{z}from"#compiled/zod/index.js";import{createEveCallbackRoutePath,createEveSessionCancelRoutePath,createEveSessionResetRoutePath,createEveSessionRoutePath}from"#protocol/routes.js";import{decisionToTraceContentCeiling}from"#shared/forwarded-trace-policy.js";import{expectFunction,expectObjectRecord}from"#internal/authored-module.js";import{CancelTurnResponseSchema}from"#protocol/cancel-turn.js";import{ResetResponseSchema}from"#protocol/reset-session.js";import{formatTraceparent,writeAgentDispatchTracestate}from"#protocol/traceparent.js";import{writeForwardedAudienceBaggage,writeForwardedParentSessionBaggage}from"#protocol/baggage.js";import{writeConversationBaggage}from"#tracing/conversation-context.js";import{createWorkflowCallbackUrl}from"#execution/workflow-callback-url.js";import{formatSubagentInput,normalizeRequestedOutputSchema}from"#subagents/invocation.js";import{readTaskIdFromInboxToken}from"#tasks/task-inbox-token.js";import{AgentHandleError}from"#protocol/agent-handle-error.js";import{createRemoteAgentRouteUrl}from"#subagents/remote-route-url.js";const CreateSessionResponseSchema=z.object({ok:z.literal(!0),sessionId:z.string().min(1),status:z.literal(`accepted`)});var RemoteAgentCancelRequestError=class extends Error{retryable;constructor(e,t){super(e),this.name=`RemoteAgentCancelRequestError`,this.retryable=t.retryable}};async function startRemoteAgentSession(e){let t=e.parent?.continuationToken??e.session.continuationToken;if(!t)throw Error(`Cannot dispatch remote agent without a parent continuation token.`);if(!e.callbackBaseUrl)throw Error(`Cannot dispatch remote agent without a callback base URL.`);let n=buildForwardedPrincipalField(e),r={capabilities:{},callback:{callId:e.action.callId,subagentName:e.action.remoteAgentName,taskId:e.taskId??readTaskIdFromInboxToken(t),token:t,url:createWorkflowCallbackUrl(e.callbackBaseUrl,createEveCallbackRoutePath(t))},message:formatRemoteAgentCallInputMessage({action:e.action,remote:e.remote}),mode:`conversation`,outputSchema:normalizeRequestedOutputSchema(e.action.input.outputSchema)??e.remote.outputSchema};e.activityObserver!==void 0&&(r.activityObserver=e.activityObserver),n!==void 0&&(r.forwardedPrincipal=n),e.operationId!==void 0&&(r.operationId=e.operationId);let i=await resolveRemoteAgentRequestHeaders(e.remote),a=formatTraceparent(e.parent?.traceContext);a!==void 0&&setHeader(i,`traceparent`,a),setHeader(i,`tracestate`,writeAgentDispatchTracestate(readHeader(i,`tracestate`),e.parent?.traceContext));let o=writeForwardedAudienceBaggage(readHeader(i,`baggage`),buildForwardedTraceAssertion({forwardedPrincipal:n,originAudience:e.originAudience,parentTraceContext:e.parent?.traceContext,traceparent:a})),s=writeConversationBaggage(o,e.parent?.conversationId);setHeader(i,`baggage`,writeForwardedParentSessionBaggage(s,e.parent?.lineage));let c=await fetch(createRemoteAgentSessionUrl(e.remote),{body:JSON.stringify(r),headers:{"content-type":`application/json`,...i},method:`POST`});if(!c.ok)throw Error(`Remote agent "${e.action.remoteAgentName}" create-session request failed with HTTP ${c.status}.`);let l;try{l=await c.json()}catch{throw Error(`Remote agent "${e.action.remoteAgentName}" create-session response was not valid JSON.`)}let u=CreateSessionResponseSchema.safeParse(l);if(!u.success)throw Error(`Remote agent "${e.action.remoteAgentName}" create-session response was invalid.`);return{sessionId:u.data.sessionId}}function buildForwardedTraceAssertion(e){let t=decisionToTraceContentCeiling(e.parentTraceContext?.decision);if(e.forwardedPrincipal!==void 0&&e.parentTraceContext!==void 0&&(e.parentTraceContext.traceFlags&1)==1&&e.traceparent!==void 0&&t!==void 0)return{ceiling:t,originAudience:e.originAudience??`unknown`}}async function continueRemoteAgentSession(e){let t=buildForwardedPrincipalField(e),n={activityObserver:e.activityObserver,callback:e.callback,message:e.message,outputSchema:e.outputSchema};t!==void 0&&(n.forwardedPrincipal=t);let r=await fetch(createRemoteAgentContinueUrl(e.remote,e.sessionId),{body:JSON.stringify(n),headers:{"content-type":`application/json`,...await resolveRemoteAgentRequestHeaders(e.remote)},method:`POST`});if(!r.ok){let n=await readRemoteAgentErrorCode(r),i=r.status===404||n===AgentHandleError.SessionNotResumable.code,a=r.status===400&&t!==void 0?` The receiver may support forwarded principals only on session creation; upgrade it before retrying.`:``;throw new RemoteAgentContinueRequestError(`Remote agent "${e.remote.name}" continue-session request failed${i?` permanently`:``} with HTTP ${r.status}.${a}`,{deliveryAmbiguous:isAmbiguousRemoteContinueStatus(r.status),retryable:!i})}}var RemoteAgentContinueRequestError=class extends Error{deliveryAmbiguous;retryable;constructor(e,t){super(e),this.name=`RemoteAgentContinueRequestError`,this.deliveryAmbiguous=t.deliveryAmbiguous,this.retryable=t.retryable}};function isRetryableRemoteAgentContinueError(e){return!(e instanceof RemoteAgentContinueRequestError)||e.retryable}function isAmbiguousRemoteAgentContinueError(e){return!(e instanceof RemoteAgentContinueRequestError)||e.deliveryAmbiguous}function isAmbiguousRemoteContinueStatus(e){return e===408||e===425||e>=500}async function readRemoteAgentErrorCode(e){let t;try{t=await e.json()}catch{return}if(typeof t!=`object`||!t)return;let n=Reflect.get(t,`code`);return typeof n==`string`?n:void 0}function buildForwardedPrincipalField(e){if(e.remote.forwardPrincipal!==!0||e.auth===null||e.auth===void 0)return;let t={current:e.auth};return e.initiatorAuth!==null&&e.initiatorAuth!==void 0&&(t.initiator=e.initiatorAuth),t}async function cancelRemoteAgentTurn(e){let t=e.headers??await resolveRemoteAgentRequestHeaders(e.remote),n=await fetch(createRemoteAgentCancelTurnUrl(e.remote,e.sessionId),{body:e.turnId===void 0&&e.taskId===void 0&&e.tasks===void 0?void 0:JSON.stringify({taskId:e.taskId,tasks:e.tasks,turnId:e.turnId}),headers:t,method:`POST`});if(!n.ok)throw new RemoteAgentCancelRequestError(`Remote agent "${e.remote.name}" cancel-turn request failed with HTTP ${n.status}.`,{retryable:isRetryableRemoteCancelStatus(n.status)});let r;try{r=await n.json()}catch{throw new RemoteAgentCancelRequestError(`Remote agent "${e.remote.name}" cancel-turn response was not valid JSON.`,{retryable:!1})}let i=CancelTurnResponseSchema.safeParse(r);if(!i.success||i.data.status===`accepted`&&i.data.sessionId!==e.sessionId)throw new RemoteAgentCancelRequestError(`Remote agent "${e.remote.name}" cancel-turn response was invalid.`,{retryable:!1});return i.data.status===`accepted`?{sessionId:i.data.sessionId,status:`accepted`}:{status:`no_active_turn`}}function readHeader(e,t){let n=Object.keys(e).find(e=>e.toLowerCase()===t);return n===void 0?void 0:e[n]}function setHeader(e,t,n){for(let n of Object.keys(e))n.toLowerCase()===t&&delete e[n];n!==void 0&&(e[t]=n)}async function resetRemoteAgentSession(e){let t=e.headers??await resolveRemoteAgentRequestHeaders(e.remote),n=await fetch(createRemoteAgentRouteUrl(e.remote.url,createEveSessionResetRoutePath(e.sessionId)),{body:JSON.stringify({reason:`Parent session ended`}),headers:{"content-type":`application/json`,...t},method:`POST`});if(!n.ok)throw Error(`Remote agent "${e.remote.name}" reset-session request failed with HTTP ${n.status}.`);let r=ResetResponseSchema.safeParse(await n.json());if(!r.success||r.data.status===`reset`&&r.data.previousSessionId!==e.sessionId)throw Error(`Remote agent "${e.remote.name}" reset-session response was invalid.`);return r.data}function isRetryableRemoteAgentCancelError(e){return!(e instanceof RemoteAgentCancelRequestError)||e.retryable}function resolveRemoteAgentForAction(e){let t=e.registry.get(e.nodeId)?.definition;if(e.dynamicRemoteAgent!==void 0){if(t===void 0)throw Error(`Missing remote agent "${e.remoteAgentName}" in runtime registry.`);let n=resolveDynamicRemoteAgentCredentials(e.dynamicRemoteAgent),r=e.dynamicRemoteAgent,i={description:r.description,kind:`remote`,logicalPath:t.logicalPath,name:e.remoteAgentName,nodeId:e.nodeId,outputSchema:r.outputSchema,path:r.path,sourceId:t.sourceId,sourceKind:`module`,url:r.url};return r.forwardPrincipal!==void 0&&(i.forwardPrincipal=r.forwardPrincipal),n.auth!==void 0&&(i.auth=n.auth),n.headers!==void 0&&(i.headers=n.headers),i}if(t?.kind!==`remote`)throw Error(`Missing remote agent "${e.remoteAgentName}" in runtime registry.`);return t}async function resolveRemoteAgentStreamHeaders(e){if(e.resolverId===void 0)return{};let t=new Set([e.bundle.graph.root,...e.bundle.graph.nodesByNodeId.values()]);for(let n of t){let t=n.subagentRegistry.subagentsByNodeId.get(e.resolverId)?.definition;if(t!==void 0){if(t.kind!==`remote`||t.name!==e.name||t.url!==e.url)throw Error(`Remote child stream resolver does not match the authored remote agent.`);return await resolveRemoteAgentRequestHeaders(t)}}return await resolveRemoteAgentRequestHeaders(resolveDynamicRemoteAgentCredentials({credentialsStepId:e.resolverId,description:``,path:``,url:e.url}))}function resolveDynamicRemoteAgentCredentials(e){if(e.credentialsStepId===void 0)return{};let t=getStepRegistry().get(e.credentialsStepId);if(t===void 0)throw Error(`Dynamic remote subagent credentials function "${e.credentialsStepId}" is not registered.`);let n=expectObjectRecord(t(),`Dynamic remote subagent credentials are invalid.`),r={};return n.auth!==void 0&&(r.auth=expectFunction(n.auth,`Dynamic remote subagent auth is invalid.`)),n.headers!==void 0&&(r.headers=resolveDynamicRemoteAgentHeaders(n.headers)),r}function resolveDynamicRemoteAgentHeaders(e){if(typeof e==`function`)return e;let t=expectObjectRecord(e,`Dynamic remote subagent headers are invalid.`);for(let e of Object.values(t))if(typeof e!=`string`)throw Error(`Dynamic remote subagent headers are invalid.`);return t}function getStepRegistry(){let e=Symbol.for(`@workflow/core//registeredSteps`),t=globalThis,n=t[e];return n===void 0&&(n=new Map,t[e]=n),n}function createRemoteAgentSessionUrl(e){return createRemoteAgentRouteUrl(e.url,e.path)}function createRemoteAgentCancelTurnUrl(e,t){return createRemoteAgentRouteUrl(e.url,createEveSessionCancelRoutePath(t))}function createRemoteAgentContinueUrl(e,t){return createRemoteAgentRouteUrl(e.url,createEveSessionRoutePath(t))}function isRetryableRemoteCancelStatus(e){return e===408||e===425||e===429||e>=500}async function resolveRemoteAgentRequestHeaders(e){let t={};return e.headers!==void 0&&Object.assign(t,typeof e.headers==`function`?await e.headers():e.headers),e.auth!==void 0&&Object.assign(t,(await e.auth()).headers),t}function formatRemoteAgentCallInputMessage(e){let t=typeof e.action.input.message==`string`?e.action.input.message:``;return formatSubagentInput({description:e.remote.description,message:t,name:e.action.remoteAgentName,type:`remote`}).message}export{RemoteAgentContinueRequestError,cancelRemoteAgentTurn,continueRemoteAgentSession,isAmbiguousRemoteAgentContinueError,isRetryableRemoteAgentCancelError,isRetryableRemoteAgentContinueError,resetRemoteAgentSession,resolveRemoteAgentForAction,resolveRemoteAgentStreamHeaders,startRemoteAgentSession};
@@ -1,3 +1,3 @@
1
- import { n as defaultMessageReducer, t as useEveAgent } from "../chunks/use-eve-agent-BRvEh9sO.js";
1
+ import { n as defaultMessageReducer, t as useEveAgent } from "../chunks/use-eve-agent-PbSMyJ6e.js";
2
2
 
3
3
  export { defaultMessageReducer, useEveAgent };
@@ -1,3 +1,3 @@
1
- import { t as useEveAgent } from "../chunks/use-eve-agent-BRvEh9sO.js";
1
+ import { t as useEveAgent } from "../chunks/use-eve-agent-PbSMyJ6e.js";
2
2
 
3
3
  export { useEveAgent };
@@ -1,4 +1,4 @@
1
- import{markFrameworkStepInput}from"#harness/messages.js";import{getBackgroundWorkflowToolRuns,readWorkflowTaskView}from"#harness/workflow-tool-runs.js";import{getTaskCohortId}from"#tasks/session-task-cohorts.js";import{EMPTY_DELIVERY_SENTINEL}from"#shared/empty-delivery.js";const TASK_DELIVERY_CONTEXT_LABEL=`[Task state]`,TASK_DELIVERY_INITIATING_INSTRUCTION=`Background task reporting: launch acknowledgement
1
+ import{markFrameworkStepInput}from"#harness/messages.js";import{getBackgroundTasks}from"#harness/workflow-tool-runs.js";import{taskIdOfDelivery}from"#tasks/notification.js";import{EMPTY_DELIVERY_SENTINEL}from"#shared/empty-delivery.js";const TASK_DELIVERY_CONTEXT_LABEL=`[Task state]`,TASK_DELIVERY_INITIATING_INSTRUCTION=`Background task reporting: launch acknowledgement
2
2
  The latest ${TASK_DELIVERY_CONTEXT_LABEL} message is runtime-authored and lists background tasks accepted so far from the current turn. They continue independently after this turn.
3
3
 
4
- Continue carrying out the user's request, including starting any remaining background work. When no further tool calls are needed in this turn, send one brief user-facing acknowledgement that the background work has started. Do not wait for results or report results that are not available yet. End the turn after the acknowledgement.`,TASK_DELIVERY_SETTLED_INSTRUCTION=`Background task reporting\nFor this background-task update, the accompanying ${TASK_DELIVERY_CONTEXT_LABEL} message is runtime-authored and lists the settled tasks in this cohort and their available terminal outputs. Report their useful results together in one user-facing response without repeating results already reported. Do not reply with ${EMPTY_DELIVERY_SENTINEL}.`,TASK_DELIVERY_AUTO_INSTRUCTION=`Background task reporting\nFor this background-task update, the accompanying ${TASK_DELIVERY_CONTEXT_LABEL} message is runtime-authored and lists the whole cohort, including pending tasks and every available terminal output. A received result has not necessarily been reported to the user. Report new results only when they are useful independently of unfinished work. When that work settles, combine its results with any previously withheld results. If there is nothing new and useful to report, reply with exactly ${EMPTY_DELIVERY_SENTINEL}. Do not repeat results already reported or send an acknowledgement just to say you are waiting.`;function getBackgroundTaskDelivery(e){if(typeof e!=`object`||!e)return;let t=e;return t.kind===`deliver`&&typeof t.taskDeliveryId==`string`?e:void 0}function markBackgroundTaskStepInput(e){return e.message===void 0?e:markFrameworkStepInput(e,`execution.background_task`)}function resolveTaskDeliveryContext(e){let t=e.taskDeliveryIds[0];if(t===void 0)return;let n=getBackgroundWorkflowToolRuns(e.state),r=n.find(e=>t.startsWith(`${e.task.taskId}:`));return r===void 0?void 0:{...projectTaskCohort(n.filter(e=>getTaskCohortId(e.task)===getTaskCohortId(r.task)),e.taskDeliveryPolicy===`auto`),rootTurnId:r.origin.turnId}}function resolveInitiatingTaskContext(e){let t=getBackgroundWorkflowToolRuns(e.state).filter(t=>t.origin.turnId===e.turnId);if(t.some(e=>e.task.outcome===void 0))return{...projectTaskCohort(t,!1),phase:`initiating`}}function projectTaskCohort(e,t){let n=e.every(e=>e.task.outcome!==void 0),r=e.map(e=>{let r=readWorkflowTaskView(e.task);return{name:e.task.metadata.name,output:n||t?r?.lastOutput:void 0,status:r?.status??`pending`,taskId:e.task.taskId}});return{context:`${TASK_DELIVERY_CONTEXT_LABEL}\n${JSON.stringify({tasks:r})}`,phase:n?`settled`:`pending`}}export{TASK_DELIVERY_AUTO_INSTRUCTION,TASK_DELIVERY_CONTEXT_LABEL,TASK_DELIVERY_INITIATING_INSTRUCTION,TASK_DELIVERY_SETTLED_INSTRUCTION,getBackgroundTaskDelivery,markBackgroundTaskStepInput,resolveInitiatingTaskContext,resolveTaskDeliveryContext};
4
+ Continue carrying out the user's request, including starting any remaining background work. When no further tool calls are needed in this turn, send one brief user-facing acknowledgement that the background work has started. Do not wait for results or report results that are not available yet. End the turn after the acknowledgement.`,TASK_DELIVERY_SETTLED_INSTRUCTION=`Background task reporting\nFor this background-task update, the accompanying ${TASK_DELIVERY_CONTEXT_LABEL} message is runtime-authored and lists the settled tasks in this cohort and their available terminal outputs. Report their useful results together in one user-facing response without repeating results already reported. Do not reply with ${EMPTY_DELIVERY_SENTINEL}.`,TASK_DELIVERY_AUTO_INSTRUCTION=`Background task reporting\nFor this background-task update, the accompanying ${TASK_DELIVERY_CONTEXT_LABEL} message is runtime-authored and lists the whole cohort, including pending tasks and every available terminal output. A received result has not necessarily been reported to the user. Report new results only when they are useful independently of unfinished work. When that work settles, combine its results with any previously withheld results. If there is nothing new and useful to report, reply with exactly ${EMPTY_DELIVERY_SENTINEL}. Do not repeat results already reported or send an acknowledgement just to say you are waiting.`;function getBackgroundTaskDelivery(e){if(typeof e!=`object`||!e)return;let t=e;return t.kind===`deliver`&&typeof t.taskDeliveryId==`string`?e:void 0}function markBackgroundTaskStepInput(e){return e.message===void 0?e:markFrameworkStepInput(e,`execution.background_task`)}function resolveTaskDeliveryContext(e){let t=e.taskDeliveryIds[0];if(t===void 0)return;let n=getBackgroundTasks(e.state),r=n.get(taskIdOfDelivery(t));if(r!==void 0)return{...projectTaskCohort(n.query({cohortId:r.cohortId}),e.taskDeliveryPolicy===`auto`),rootTurnId:r.turnId}}function resolveInitiatingTaskContext(e){let t=getBackgroundTasks(e.state);if(t.query({state:`working`,turnId:e.turnId}).length!==0)return{...projectTaskCohort(t.query({turnId:e.turnId}),!1),phase:`initiating`}}function projectTaskCohort(e,t){let n=e.every(e=>e.status!==`working`),r=e.map(e=>({name:e.metadata.name,output:n||t?e.lastOutput:void 0,status:e.status===`working`?`pending`:e.status,taskId:e.taskId}));return{context:`${TASK_DELIVERY_CONTEXT_LABEL}\n${JSON.stringify({tasks:r})}`,phase:n?`settled`:`pending`}}export{TASK_DELIVERY_AUTO_INSTRUCTION,TASK_DELIVERY_CONTEXT_LABEL,TASK_DELIVERY_INITIATING_INSTRUCTION,TASK_DELIVERY_SETTLED_INSTRUCTION,getBackgroundTaskDelivery,markBackgroundTaskStepInput,resolveInitiatingTaskContext,resolveTaskDeliveryContext};
@@ -1,7 +1,77 @@
1
- import type { z } from "#compiled/zod/index.js";
1
+ import { z } from "#compiled/zod/index.js";
2
2
  import type { JsonValue } from "#shared/json.js";
3
- import { TASK_VIEW_JSON_SCHEMA } from "#tools/framework/task-contract.js";
4
3
  import type { TaskView } from "#tasks/types.js";
4
+ /** Strict model-visible task projection. */
5
+ declare const TASK_VIEW_JSON_SCHEMA: z.ZodDiscriminatedUnion<[z.ZodObject<{
6
+ metadata: z.ZodObject<{
7
+ agentId: z.ZodOptional<z.ZodString>;
8
+ kind: z.ZodString;
9
+ mode: z.ZodOptional<z.ZodEnum<{
10
+ local: "local";
11
+ remote: "remote";
12
+ }>>;
13
+ name: z.ZodString;
14
+ }, z.core.$strip>;
15
+ taskId: z.ZodString;
16
+ status: z.ZodLiteral<"working">;
17
+ }, z.core.$strip>, z.ZodObject<{
18
+ metadata: z.ZodObject<{
19
+ agentId: z.ZodOptional<z.ZodString>;
20
+ kind: z.ZodString;
21
+ mode: z.ZodOptional<z.ZodEnum<{
22
+ local: "local";
23
+ remote: "remote";
24
+ }>>;
25
+ name: z.ZodString;
26
+ }, z.core.$strip>;
27
+ taskId: z.ZodString;
28
+ inputRequests: z.ZodReadonly<z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
29
+ status: z.ZodLiteral<"input_required">;
30
+ }, z.core.$strip>, z.ZodObject<{
31
+ metadata: z.ZodObject<{
32
+ agentId: z.ZodOptional<z.ZodString>;
33
+ kind: z.ZodString;
34
+ mode: z.ZodOptional<z.ZodEnum<{
35
+ local: "local";
36
+ remote: "remote";
37
+ }>>;
38
+ name: z.ZodString;
39
+ }, z.core.$strip>;
40
+ taskId: z.ZodString;
41
+ lastOutput: z.ZodObject<{
42
+ data: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
43
+ type: z.ZodLiteral<"result">;
44
+ }, z.core.$strip>;
45
+ status: z.ZodLiteral<"completed">;
46
+ }, z.core.$strip>, z.ZodObject<{
47
+ metadata: z.ZodObject<{
48
+ agentId: z.ZodOptional<z.ZodString>;
49
+ kind: z.ZodString;
50
+ mode: z.ZodOptional<z.ZodEnum<{
51
+ local: "local";
52
+ remote: "remote";
53
+ }>>;
54
+ name: z.ZodString;
55
+ }, z.core.$strip>;
56
+ taskId: z.ZodString;
57
+ lastOutput: z.ZodObject<{
58
+ data: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
59
+ type: z.ZodLiteral<"error">;
60
+ }, z.core.$strip>;
61
+ status: z.ZodLiteral<"failed">;
62
+ }, z.core.$strip>, z.ZodObject<{
63
+ metadata: z.ZodObject<{
64
+ agentId: z.ZodOptional<z.ZodString>;
65
+ kind: z.ZodString;
66
+ mode: z.ZodOptional<z.ZodEnum<{
67
+ local: "local";
68
+ remote: "remote";
69
+ }>>;
70
+ name: z.ZodString;
71
+ }, z.core.$strip>;
72
+ taskId: z.ZodString;
73
+ status: z.ZodLiteral<"cancelled">;
74
+ }, z.core.$strip>], "status">;
5
75
  /**
6
76
  * Model-visible task view, inferred from {@link TASK_VIEW_JSON_SCHEMA}.
7
77
  *
@@ -1 +1 @@
1
- import{TASK_VIEW_JSON_SCHEMA}from"#tools/framework/task-contract.js";function taskViewToJson(e){return TASK_VIEW_JSON_SCHEMA.parse(e)}function taskViewsToJson(e){return{tasks:e.map(e=>taskViewToJson(e))}}export{taskViewToJson,taskViewsToJson};
1
+ import{z}from"#compiled/zod/index.js";import{jsonValueSchema}from"#shared/json-schemas.js";const taskMetadataJsonSchema=z.object({agentId:z.string().optional(),kind:z.string(),mode:z.enum([`local`,`remote`]).optional(),name:z.string()}),taskOutputJsonSchema=z.object({data:jsonValueSchema,type:z.enum([`result`,`error`])}),taskViewJsonBaseShape={metadata:taskMetadataJsonSchema,taskId:z.string()},TASK_VIEW_JSON_SCHEMA=z.discriminatedUnion(`status`,[z.object({...taskViewJsonBaseShape,status:z.literal(`working`)}),z.object({...taskViewJsonBaseShape,inputRequests:z.array(jsonValueSchema).readonly(),status:z.literal(`input_required`)}),z.object({...taskViewJsonBaseShape,lastOutput:taskOutputJsonSchema.extend({type:z.literal(`result`)}),status:z.literal(`completed`)}),z.object({...taskViewJsonBaseShape,lastOutput:taskOutputJsonSchema.extend({type:z.literal(`error`)}),status:z.literal(`failed`)}),z.object({...taskViewJsonBaseShape,status:z.literal(`cancelled`)})]);function taskViewToJson(e){return TASK_VIEW_JSON_SCHEMA.parse(e)}function taskViewsToJson(e){return{tasks:e.map(e=>taskViewToJson(e))}}export{taskViewToJson,taskViewsToJson};
@@ -1,4 +1,10 @@
1
+ import type { DeliverHookPayload } from "#channel/types.js";
2
+ import type { SessionStateMap } from "#harness/types.js";
1
3
  import type { JsonValue } from "#shared/json.js";
2
4
  import type { TaskView } from "#tasks/types.js";
3
5
  export declare function formatTaskNotification(view: TaskView): string;
4
6
  export declare function formatTaskOutput(output: JsonValue): string;
7
+ /** Task delivery ids are `<taskId>` or `<taskId>:<event>`; derived task ids never contain `:`. */
8
+ export declare function taskIdOfDelivery(deliveryId: string): string;
9
+ /** The parent already recorded this task's outcome, so the delivery cannot notify the model again. */
10
+ export declare function hasRecordedTaskOutcome(delivery: DeliverHookPayload, state: SessionStateMap | undefined): boolean;
@@ -1 +1 @@
1
- function formatTaskNotification(e){let t=`Background task ${e.taskId} (${e.metadata.name})`;return e.status===`input_required`?`${t} needs input.`:e.status===`completed`?`${t} is completed.\n\nResult:\n${formatTaskOutput(e.lastOutput.data)}`:e.status===`failed`?`${t} failed.\n\nError:\n${formatTaskOutput(e.lastOutput.data)}`:`${t} is cancelled.`}function formatTaskOutput(e){return typeof e==`string`?e:JSON.stringify(e)??`null`}export{formatTaskNotification,formatTaskOutput};
1
+ import{getBackgroundTasks}from"#harness/workflow-tool-runs.js";function formatTaskNotification(e){let t=`Background task ${e.taskId} (${e.metadata.name})`;return e.status===`input_required`?`${t} needs input.`:e.status===`completed`?`${t} is completed.\n\nResult:\n${formatTaskOutput(e.lastOutput.data)}`:e.status===`failed`?`${t} failed.\n\nError:\n${formatTaskOutput(e.lastOutput.data)}`:`${t} is cancelled.`}function formatTaskOutput(e){return typeof e==`string`?e:JSON.stringify(e)??`null`}function taskIdOfDelivery(e){let t=e.indexOf(`:`);return t<0?e:e.slice(0,t)}function hasRecordedTaskOutcome(e,t){let n=e.taskDeliveryId;if(n===void 0)return!1;let r=getBackgroundTasks(t).get(taskIdOfDelivery(n));return r!==void 0&&r.status!==`working`}export{formatTaskNotification,formatTaskOutput,hasRecordedTaskOutcome,taskIdOfDelivery};
@@ -1,8 +1,9 @@
1
- import { z } from "#compiled/zod/index.js";
1
+ import type { JsonObject } from "#shared/json.js";
2
2
  export declare const AGENT_TOOL_NAME = "agent";
3
3
  export declare const AGENT_TOOL_DESCRIPTION: string;
4
- export declare const SUBAGENT_TOOL_INPUT_SCHEMA: z.ZodObject<{
5
- agentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
6
- message: z.ZodString;
7
- outputSchema: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
8
- }, z.core.$strict>;
4
+ export interface SubagentToolInput {
5
+ agentId?: string | null;
6
+ message: string;
7
+ outputSchema?: JsonObject;
8
+ }
9
+ export declare const SUBAGENT_TOOL_INPUT_SCHEMA: import("#tools/schema.js").ToolSchema<SubagentToolInput, SubagentToolInput>;
@@ -1 +1 @@
1
- import{z}from"#compiled/zod/index.js";const AGENT_TOOL_NAME=`agent`,AGENT_TOOL_DESCRIPTION=["Delegate a focused subtask to a copy of yourself, or continue or steer a previous delegation with `agentId`.",`Use it to isolate complex work or split a large task into independent pieces.`,"Issue multiple `agent` calls in one response to run a small fixed set in parallel.","A new child has fresh history and state but reuses your tools and sandbox, so include essential context in `message` and give parallel writers non-overlapping scopes."].join(` `),SUBAGENT_TOOL_INPUT_SCHEMA=z.strictObject({agentId:z.string().nullable().describe(`The id of an existing agent from the <agents> list or a task receipt. A message to a busy agent steers it: its previous task is cancelled and the updated work runs in the same child session. Omit this field (or pass null or an empty string) to start a new agent.`).optional(),message:z.string().describe(`The message to send to the subagent. Provide all context the subagent needs to complete the task; the subagent does not see the parent's history.`),outputSchema:z.looseObject({}).describe(`Only provide a non-empty JSON Schema when the caller explicitly requests structured output; otherwise omit this field. The subagent must match a provided schema, and that structured output becomes the tool result.`).optional()});export{AGENT_TOOL_DESCRIPTION,AGENT_TOOL_NAME,SUBAGENT_TOOL_INPUT_SCHEMA};
1
+ import{defineJsonSchema}from"#tools/schema.js";const AGENT_TOOL_NAME=`agent`,AGENT_TOOL_DESCRIPTION=["Delegate a focused subtask to a copy of yourself, or continue or steer a previous delegation with `agentId`.",`Use it to isolate complex work or split a large task into independent pieces.`,"Issue multiple `agent` calls in one response to run a small fixed set in parallel.","A new child has fresh history and state but reuses your tools and sandbox, so include essential context in `message` and give parallel writers non-overlapping scopes."].join(` `),SUBAGENT_TOOL_INPUT_SCHEMA=defineJsonSchema({type:`object`,properties:{agentId:{type:[`string`,`null`],description:`The id of an existing agent from the <agents> list or a task receipt. A message to a busy agent steers it: its previous task is cancelled and the updated work runs in the same child session. Omit this field (or pass null or an empty string) to start a new agent.`},message:{type:`string`,description:`The message to send to the subagent. Provide all context the subagent needs to complete the task; the subagent does not see the parent's history.`},outputSchema:{type:`object`,description:`Only provide a non-empty JSON Schema when the caller explicitly requests structured output; otherwise omit this field. The subagent must match a provided schema, and that structured output becomes the tool result.`}},required:[`message`],additionalProperties:!1});export{AGENT_TOOL_DESCRIPTION,AGENT_TOOL_NAME,SUBAGENT_TOOL_INPUT_SCHEMA};
@@ -1,18 +1,9 @@
1
- import type { z } from "#compiled/zod/index.js";
2
- import { SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA } from "#tools/framework/task-contract.js";
1
+ import { type SubagentTaskReceipt } from "#tools/framework/task-contract.js";
3
2
  export declare const agent: {
4
3
  description: string;
5
4
  execution: string;
6
- inputSchema: z.ZodObject<{
7
- agentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8
- message: z.ZodString;
9
- outputSchema: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
10
- }, z.core.$strict>;
11
- outputSchema: z.ZodObject<{
12
- agentId: z.ZodString;
13
- status: z.ZodLiteral<"working">;
14
- taskId: z.ZodString;
15
- }, z.core.$strict>;
16
- execute(): z.infer<typeof SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA>;
5
+ inputSchema: import("../schema.ts").ToolSchema<import("#tools/framework/agent-contract.js").SubagentToolInput, import("#tools/framework/agent-contract.js").SubagentToolInput>;
6
+ outputSchema: import("../schema.ts").ToolSchema<SubagentTaskReceipt, SubagentTaskReceipt>;
7
+ execute(): SubagentTaskReceipt;
17
8
  };
18
9
  export default agent;
@@ -1,20 +1,4 @@
1
1
  export declare const taskCancel: import("#tools/native-definition.js").NativeToolDefinition<{
2
2
  taskIds: string[];
3
- }, {
4
- tasks: {
5
- inputRequests?: unknown[] | undefined;
6
- lastOutput?: {
7
- data: unknown;
8
- type: "error" | "result";
9
- } | undefined;
10
- metadata: {
11
- agentId?: string | undefined;
12
- kind: string;
13
- mode?: "local" | "remote" | undefined;
14
- name: string;
15
- };
16
- status: "cancelled" | "completed" | "failed" | "input_required" | "working";
17
- taskId: string;
18
- }[];
19
- }>;
3
+ }, unknown>;
20
4
  export default taskCancel;
@@ -1,140 +1,19 @@
1
- import { z } from "#compiled/zod/index.js";
2
1
  export declare const TASK_CANCEL_TOOL_NAME = "task_cancel";
3
2
  /** Framework task-control tool names lowered by the runtime. */
4
3
  export declare const TASK_TOOL_NAMES: ReadonlySet<string>;
5
- export declare const TASK_CANCEL_INPUT_SCHEMA: z.ZodObject<{
6
- taskIds: z.ZodArray<z.ZodString>;
7
- }, z.core.$strict>;
8
- /** Strict model-visible task projection. */
9
- export declare const TASK_VIEW_JSON_SCHEMA: z.ZodDiscriminatedUnion<[z.ZodObject<{
10
- metadata: z.ZodObject<{
11
- agentId: z.ZodOptional<z.ZodString>;
12
- kind: z.ZodString;
13
- mode: z.ZodOptional<z.ZodEnum<{
14
- local: "local";
15
- remote: "remote";
16
- }>>;
17
- name: z.ZodString;
18
- }, z.core.$strip>;
19
- taskId: z.ZodString;
20
- status: z.ZodLiteral<"working">;
21
- }, z.core.$strip>, z.ZodObject<{
22
- metadata: z.ZodObject<{
23
- agentId: z.ZodOptional<z.ZodString>;
24
- kind: z.ZodString;
25
- mode: z.ZodOptional<z.ZodEnum<{
26
- local: "local";
27
- remote: "remote";
28
- }>>;
29
- name: z.ZodString;
30
- }, z.core.$strip>;
31
- taskId: z.ZodString;
32
- inputRequests: z.ZodReadonly<z.ZodArray<z.ZodType<import("../../shared/json.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("../../shared/json.ts").JsonValue, unknown>>>>;
33
- status: z.ZodLiteral<"input_required">;
34
- }, z.core.$strip>, z.ZodObject<{
35
- metadata: z.ZodObject<{
36
- agentId: z.ZodOptional<z.ZodString>;
37
- kind: z.ZodString;
38
- mode: z.ZodOptional<z.ZodEnum<{
39
- local: "local";
40
- remote: "remote";
41
- }>>;
42
- name: z.ZodString;
43
- }, z.core.$strip>;
44
- taskId: z.ZodString;
45
- lastOutput: z.ZodObject<{
46
- data: z.ZodType<import("../../shared/json.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("../../shared/json.ts").JsonValue, unknown>>;
47
- type: z.ZodLiteral<"result">;
48
- }, z.core.$strip>;
49
- status: z.ZodLiteral<"completed">;
50
- }, z.core.$strip>, z.ZodObject<{
51
- metadata: z.ZodObject<{
52
- agentId: z.ZodOptional<z.ZodString>;
53
- kind: z.ZodString;
54
- mode: z.ZodOptional<z.ZodEnum<{
55
- local: "local";
56
- remote: "remote";
57
- }>>;
58
- name: z.ZodString;
59
- }, z.core.$strip>;
60
- taskId: z.ZodString;
61
- lastOutput: z.ZodObject<{
62
- data: z.ZodType<import("../../shared/json.ts").JsonValue, unknown, z.core.$ZodTypeInternals<import("../../shared/json.ts").JsonValue, unknown>>;
63
- type: z.ZodLiteral<"error">;
64
- }, z.core.$strip>;
65
- status: z.ZodLiteral<"failed">;
66
- }, z.core.$strip>, z.ZodObject<{
67
- metadata: z.ZodObject<{
68
- agentId: z.ZodOptional<z.ZodString>;
69
- kind: z.ZodString;
70
- mode: z.ZodOptional<z.ZodEnum<{
71
- local: "local";
72
- remote: "remote";
73
- }>>;
74
- name: z.ZodString;
75
- }, z.core.$strip>;
76
- taskId: z.ZodString;
77
- status: z.ZodLiteral<"cancelled">;
78
- }, z.core.$strip>], "status">;
79
- /** Broad schema advertised by task-control tool outputs. */
80
- export declare const TASK_VIEW_OUTPUT_SCHEMA: z.ZodObject<{
81
- inputRequests: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
82
- lastOutput: z.ZodOptional<z.ZodObject<{
83
- data: z.ZodUnknown;
84
- type: z.ZodEnum<{
85
- error: "error";
86
- result: "result";
87
- }>;
88
- }, z.core.$strip>>;
89
- metadata: z.ZodObject<{
90
- agentId: z.ZodOptional<z.ZodString>;
91
- kind: z.ZodString;
92
- mode: z.ZodOptional<z.ZodEnum<{
93
- local: "local";
94
- remote: "remote";
95
- }>>;
96
- name: z.ZodString;
97
- }, z.core.$strip>;
98
- status: z.ZodEnum<{
99
- cancelled: "cancelled";
100
- completed: "completed";
101
- failed: "failed";
102
- input_required: "input_required";
103
- working: "working";
104
- }>;
105
- taskId: z.ZodString;
106
- }, z.core.$strip>;
107
- export declare const TASK_VIEWS_OUTPUT_SCHEMA: z.ZodObject<{
108
- tasks: z.ZodArray<z.ZodObject<{
109
- inputRequests: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
110
- lastOutput: z.ZodOptional<z.ZodObject<{
111
- data: z.ZodUnknown;
112
- type: z.ZodEnum<{
113
- error: "error";
114
- result: "result";
115
- }>;
116
- }, z.core.$strip>>;
117
- metadata: z.ZodObject<{
118
- agentId: z.ZodOptional<z.ZodString>;
119
- kind: z.ZodString;
120
- mode: z.ZodOptional<z.ZodEnum<{
121
- local: "local";
122
- remote: "remote";
123
- }>>;
124
- name: z.ZodString;
125
- }, z.core.$strip>;
126
- status: z.ZodEnum<{
127
- cancelled: "cancelled";
128
- completed: "completed";
129
- failed: "failed";
130
- input_required: "input_required";
131
- working: "working";
132
- }>;
133
- taskId: z.ZodString;
134
- }, z.core.$strip>>;
135
- }, z.core.$strip>;
136
- export declare const SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA: z.ZodObject<{
137
- agentId: z.ZodString;
138
- status: z.ZodLiteral<"working">;
139
- taskId: z.ZodString;
140
- }, z.core.$strict>;
4
+ export declare const TASK_CANCEL_INPUT_SCHEMA: import("#tools/schema.js").ToolSchema<{
5
+ taskIds: string[];
6
+ }, {
7
+ taskIds: string[];
8
+ }>;
9
+ /**
10
+ * Broad schema advertised by task-control tool outputs. Objects stay open so
11
+ * task metadata can grow without breaking consumers of the output contract.
12
+ */
13
+ export declare const TASK_VIEWS_OUTPUT_SCHEMA: import("#tools/schema.js").ToolSchema<unknown, unknown>;
14
+ export interface SubagentTaskReceipt {
15
+ agentId: string;
16
+ status: "working";
17
+ taskId: string;
18
+ }
19
+ export declare const SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA: import("#tools/schema.js").ToolSchema<SubagentTaskReceipt, SubagentTaskReceipt>;
@@ -1 +1 @@
1
- import{z}from"#compiled/zod/index.js";import{jsonValueSchema}from"#shared/json-schemas.js";const TASK_CANCEL_TOOL_NAME=`task_cancel`,TASK_TOOL_NAMES=new Set([TASK_CANCEL_TOOL_NAME]),TASK_IDS_SCHEMA=z.array(z.string().min(1)).min(1).describe(`Task ids from earlier subagent task receipts.`),TASK_CANCEL_INPUT_SCHEMA=z.strictObject({taskIds:TASK_IDS_SCHEMA}),taskMetadataJsonSchema=z.object({agentId:z.string().optional(),kind:z.string(),mode:z.enum([`local`,`remote`]).optional(),name:z.string()}),taskOutputJsonSchema=z.object({data:jsonValueSchema,type:z.enum([`result`,`error`])}),taskViewJsonBaseShape={metadata:taskMetadataJsonSchema,taskId:z.string()},TASK_VIEW_JSON_SCHEMA=z.discriminatedUnion(`status`,[z.object({...taskViewJsonBaseShape,status:z.literal(`working`)}),z.object({...taskViewJsonBaseShape,inputRequests:z.array(jsonValueSchema).readonly(),status:z.literal(`input_required`)}),z.object({...taskViewJsonBaseShape,lastOutput:taskOutputJsonSchema.extend({type:z.literal(`result`)}),status:z.literal(`completed`)}),z.object({...taskViewJsonBaseShape,lastOutput:taskOutputJsonSchema.extend({type:z.literal(`error`)}),status:z.literal(`failed`)}),z.object({...taskViewJsonBaseShape,status:z.literal(`cancelled`)})]),TASK_VIEW_OUTPUT_SCHEMA=z.object({inputRequests:z.array(z.unknown()).optional(),lastOutput:z.object({data:z.unknown(),type:z.enum([`result`,`error`])}).optional(),metadata:z.object({agentId:z.string().optional(),kind:z.string(),mode:z.enum([`local`,`remote`]).optional(),name:z.string()}),status:z.enum([`working`,`input_required`,`completed`,`failed`,`cancelled`]),taskId:z.string()}),TASK_VIEWS_OUTPUT_SCHEMA=z.object({tasks:z.array(TASK_VIEW_OUTPUT_SCHEMA)}),SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA=z.strictObject({agentId:z.string(),status:z.literal(`working`),taskId:z.string()});export{SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA,TASK_CANCEL_INPUT_SCHEMA,TASK_CANCEL_TOOL_NAME,TASK_TOOL_NAMES,TASK_VIEWS_OUTPUT_SCHEMA,TASK_VIEW_JSON_SCHEMA,TASK_VIEW_OUTPUT_SCHEMA};
1
+ import{defineJsonSchema}from"#tools/schema.js";const TASK_CANCEL_TOOL_NAME=`task_cancel`,TASK_TOOL_NAMES=new Set([TASK_CANCEL_TOOL_NAME]),TASK_CANCEL_INPUT_SCHEMA=defineJsonSchema({type:`object`,properties:{taskIds:{type:`array`,minItems:1,items:{type:`string`,minLength:1},description:`Task ids from earlier subagent task receipts.`}},required:[`taskIds`],additionalProperties:!1}),TASK_VIEWS_OUTPUT_SCHEMA=defineJsonSchema({type:`object`,properties:{tasks:{type:`array`,items:{type:`object`,properties:{inputRequests:{type:`array`,items:{}},lastOutput:{type:`object`,properties:{data:{},type:{type:`string`,enum:[`result`,`error`]}},required:[`data`,`type`]},metadata:{type:`object`,properties:{agentId:{type:`string`},kind:{type:`string`},mode:{type:`string`,enum:[`local`,`remote`]},name:{type:`string`}},required:[`kind`,`name`]},status:{type:`string`,enum:[`working`,`input_required`,`completed`,`failed`,`cancelled`]},taskId:{type:`string`}},required:[`metadata`,`status`,`taskId`]}}},required:[`tasks`]}),SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA=defineJsonSchema({type:`object`,properties:{agentId:{type:`string`},status:{type:`string`,const:`working`},taskId:{type:`string`}},required:[`agentId`,`status`,`taskId`],additionalProperties:!1});export{SUBAGENT_TASK_RECEIPT_OUTPUT_SCHEMA,TASK_CANCEL_INPUT_SCHEMA,TASK_CANCEL_TOOL_NAME,TASK_TOOL_NAMES,TASK_VIEWS_OUTPUT_SCHEMA};
@@ -1,22 +1,21 @@
1
- import { z } from "#compiled/zod/index.js";
2
1
  import { type ToolDefinition } from "#tools/definition.js";
2
+ export interface BashToolInput {
3
+ command: string;
4
+ }
5
+ export interface BashToolOutput {
6
+ exitCode: number;
7
+ stderr: string;
8
+ stdout: string;
9
+ truncated: boolean;
10
+ }
3
11
  /**
4
12
  * Input schema for the provided `bash` tool.
5
13
  */
6
- export declare const BASH_INPUT_SCHEMA: z.ZodObject<{
7
- command: z.ZodString;
8
- }, z.core.$strict>;
14
+ export declare const BASH_INPUT_SCHEMA: import("#tools/schema.js").ToolSchema<BashToolInput, BashToolInput>;
9
15
  /**
10
16
  * Output schema for the provided `bash` tool.
11
17
  */
12
- export declare const BASH_OUTPUT_SCHEMA: z.ZodObject<{
13
- exitCode: z.ZodNumber;
14
- stderr: z.ZodString;
15
- stdout: z.ZodString;
16
- truncated: z.ZodBoolean;
17
- }, z.core.$strict>;
18
- export type BashToolInput = z.infer<typeof BASH_INPUT_SCHEMA>;
19
- export type BashToolOutput = z.infer<typeof BASH_OUTPUT_SCHEMA>;
18
+ export declare const BASH_OUTPUT_SCHEMA: import("#tools/schema.js").ToolSchema<BashToolOutput, BashToolOutput>;
20
19
  /**
21
20
  * Framework-owned executors stay statically imported so hosted server bundles
22
21
  * can trace and rewrite them into deployable output chunks.