eve 0.68.0 → 0.70.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1196) hide show
  1. package/CHANGELOG.md +132 -0
  2. package/bin/eve.js +15 -0
  3. package/dist/src/_virtual/_rolldown/runtime.js +1 -1
  4. package/dist/src/acp/adapter.js +1 -1
  5. package/dist/src/approval/definition.d.ts +19 -5
  6. package/dist/src/channel/adapter.d.ts +2 -0
  7. package/dist/src/channel/auth/oidc.js +1 -1
  8. package/dist/src/channel/channel-address.d.ts +1 -4
  9. package/dist/src/channel/channel-address.js +1 -1
  10. package/dist/src/channel/channel-operations.d.ts +4 -11
  11. package/dist/src/channel/channel-operations.js +1 -1
  12. package/dist/src/channel/compiled-channel.d.ts +0 -2
  13. package/dist/src/channel/compiled-channel.js +2 -2
  14. package/dist/src/channel/cross-channel-receive.d.ts +1 -3
  15. package/dist/src/channel/cross-channel-receive.js +1 -1
  16. package/dist/src/channel/forwarded-principal.js +1 -1
  17. package/dist/src/channel/schedule-auth.d.ts +16 -0
  18. package/dist/src/channel/schedule-auth.js +1 -1
  19. package/dist/src/channel/session-callback.js +1 -1
  20. package/dist/src/channel/session.d.ts +3 -8
  21. package/dist/src/channel/session.js +1 -1
  22. package/dist/src/channel/task-card.d.ts +121 -0
  23. package/dist/src/channel/task-card.js +1 -0
  24. package/dist/src/channel/types.d.ts +30 -57
  25. package/dist/src/chunks/{use-eve-agent-D4HVZBjn.js → use-eve-agent-CJQeE7-t.js} +2058 -1331
  26. package/dist/src/chunks/{use-eve-agent-DXcE_8Ja.js → use-eve-agent-DdemtY6C.js} +2061 -1331
  27. package/dist/src/cli/commands/info.d.ts +11 -0
  28. package/dist/src/cli/commands/info.js +1 -1
  29. package/dist/src/cli/commands/init-agent-workspace.js +1 -1
  30. package/dist/src/cli/commands/init.js +1 -1
  31. package/dist/src/cli/dev/command-options.d.ts +2 -2
  32. package/dist/src/cli/dev/command.js +1 -1
  33. package/dist/src/cli/dev/console-records-preload.d.ts +1 -0
  34. package/dist/src/cli/dev/console-records-preload.js +1 -0
  35. package/dist/src/cli/dev/console-records.d.ts +17 -0
  36. package/dist/src/cli/dev/console-records.js +3 -0
  37. package/dist/src/cli/dev/diagnostic-sink.d.ts +1 -0
  38. package/dist/src/cli/dev/local-server-process.js +1 -1
  39. package/dist/src/cli/dev/tui/blocks.d.ts +21 -19
  40. package/dist/src/cli/dev/tui/blocks.js +4 -4
  41. package/dist/src/cli/dev/tui/command-typeahead.d.ts +3 -6
  42. package/dist/src/cli/dev/tui/conversation-view.d.ts +54 -0
  43. package/dist/src/cli/dev/tui/conversation-view.js +1 -0
  44. package/dist/src/cli/dev/tui/diagnostic-presentation.d.ts +10 -0
  45. package/dist/src/cli/dev/tui/diagnostic-presentation.js +3 -2
  46. package/dist/src/cli/dev/tui/flow-drawer.d.ts +5 -2
  47. package/dist/src/cli/dev/tui/flow-drawer.js +1 -1
  48. package/dist/src/cli/dev/tui/log-display-mode.d.ts +4 -10
  49. package/dist/src/cli/dev/tui/log-display-mode.js +1 -1
  50. package/dist/src/cli/dev/tui/message-queue.d.ts +7 -63
  51. package/dist/src/cli/dev/tui/message-queue.js +3 -1
  52. package/dist/src/cli/dev/tui/prompt-commands.js +1 -1
  53. package/dist/src/cli/dev/tui/prompt-placeholder.d.ts +2 -0
  54. package/dist/src/cli/dev/tui/prompt-placeholder.js +1 -0
  55. package/dist/src/cli/dev/tui/question-panel.d.ts +3 -1
  56. package/dist/src/cli/dev/tui/question-panel.js +1 -1
  57. package/dist/src/cli/dev/tui/rail.d.ts +1 -1
  58. package/dist/src/cli/dev/tui/runner.d.ts +60 -174
  59. package/dist/src/cli/dev/tui/runner.js +3 -3
  60. package/dist/src/cli/dev/tui/status-line.d.ts +4 -2
  61. package/dist/src/cli/dev/tui/status-line.js +1 -1
  62. package/dist/src/cli/dev/tui/task-activity.d.ts +59 -0
  63. package/dist/src/cli/dev/tui/task-activity.js +1 -0
  64. package/dist/src/cli/dev/tui/terminal-renderer.d.ts +18 -57
  65. package/dist/src/cli/dev/tui/terminal-renderer.js +10 -13
  66. package/dist/src/cli/dev/tui/terminal-tool-part.d.ts +2 -0
  67. package/dist/src/cli/dev/tui/terminal-tool-part.js +1 -0
  68. package/dist/src/cli/dev/tui/test/fake-eve-server.d.ts +34 -0
  69. package/dist/src/cli/dev/tui/test/fake-eve-server.js +1 -0
  70. package/dist/src/cli/dev/tui/test/index.d.ts +1 -0
  71. package/dist/src/cli/dev/tui/test/index.js +1 -1
  72. package/dist/src/cli/dev/tui/theme.d.ts +1 -1
  73. package/dist/src/cli/dev/tui/theme.js +1 -1
  74. package/dist/src/cli/dev/tui/tool-block-groups.d.ts +6 -9
  75. package/dist/src/cli/dev/tui/tool-block-groups.js +1 -1
  76. package/dist/src/cli/dev/tui/tool-presentation.d.ts +17 -3
  77. package/dist/src/cli/dev/tui/tool-presentation.js +1 -1
  78. package/dist/src/cli/dev/tui/tool-rows.d.ts +1 -0
  79. package/dist/src/cli/dev/tui/tool-rows.js +2 -2
  80. package/dist/src/cli/dev/tui/traces/trace-conversation.js +3 -1
  81. package/dist/src/cli/dev/tui/traces/trace-view.js +1 -1
  82. package/dist/src/cli/dev/tui/transcript-parts.d.ts +73 -0
  83. package/dist/src/cli/dev/tui/transcript-parts.js +3 -0
  84. package/dist/src/cli/dev/tui/transcript.d.ts +47 -0
  85. package/dist/src/cli/dev/tui/transcript.js +1 -0
  86. package/dist/src/cli/dev/tui/tui.js +1 -1
  87. package/dist/src/cli/dev/tui/turn-clock.d.ts +11 -26
  88. package/dist/src/cli/dev/tui/turn-clock.js +1 -1
  89. package/dist/src/cli/dev/tui/types.d.ts +13 -9
  90. package/dist/src/cli/dev/ui-options.d.ts +2 -2
  91. package/dist/src/cli/dev/ui-options.js +1 -1
  92. package/dist/src/cli/option-parsers.d.ts +3 -1
  93. package/dist/src/cli/option-parsers.js +1 -1
  94. package/dist/src/cli/ui/terminal-text.js +1 -1
  95. package/dist/src/client/agent-info-schema.d.ts +150 -9
  96. package/dist/src/client/agent-info-schema.js +1 -1
  97. package/dist/src/client/agent-session.d.ts +28 -0
  98. package/dist/src/client/agent-session.js +1 -0
  99. package/dist/src/client/agent-stream-follower.d.ts +26 -0
  100. package/dist/src/client/agent-stream-follower.js +1 -0
  101. package/dist/src/client/authorization-message-parts.js +1 -1
  102. package/dist/src/client/conversation-client.d.ts +40 -0
  103. package/dist/src/client/conversation-client.js +1 -0
  104. package/dist/src/client/conversation-reducer.d.ts +29 -0
  105. package/dist/src/client/conversation-reducer.js +1 -0
  106. package/dist/src/client/conversation-state.d.ts +110 -0
  107. package/dist/src/client/conversation-state.js +1 -0
  108. package/dist/src/client/eve-agent-projection.d.ts +24 -7
  109. package/dist/src/client/eve-agent-projection.js +1 -1
  110. package/dist/src/client/eve-agent-store-helpers.d.ts +20 -1
  111. package/dist/src/client/eve-agent-store-helpers.js +2 -2
  112. package/dist/src/client/eve-agent-store-state.d.ts +15 -3
  113. package/dist/src/client/eve-agent-store.d.ts +10 -1
  114. package/dist/src/client/eve-agent-store.js +1 -1
  115. package/dist/src/client/index.d.ts +5 -1
  116. package/dist/src/client/index.js +1 -1
  117. package/dist/src/client/message-action-parts.js +1 -1
  118. package/dist/src/client/message-reducer-primitives.d.ts +1 -2
  119. package/dist/src/client/message-reducer-primitives.js +1 -1
  120. package/dist/src/client/message-reducer-types.d.ts +9 -2
  121. package/dist/src/client/message-reducer.js +1 -1
  122. package/dist/src/client/message-response.js +1 -1
  123. package/dist/src/client/message-run-parts.d.ts +10 -6
  124. package/dist/src/client/message-run-parts.js +1 -1
  125. package/dist/src/client/message-task-parts.d.ts +8 -0
  126. package/dist/src/client/message-task-parts.js +1 -0
  127. package/dist/src/client/optimistic-message-submissions.d.ts +6 -4
  128. package/dist/src/client/optimistic-message-submissions.js +1 -1
  129. package/dist/src/client/reducer.d.ts +5 -1
  130. package/dist/src/client/session-controls.d.ts +0 -1
  131. package/dist/src/client/session-turn-dispatch.d.ts +15 -0
  132. package/dist/src/client/session-turn-dispatch.js +1 -0
  133. package/dist/src/client/session-utils.d.ts +29 -2
  134. package/dist/src/client/session-utils.js +1 -1
  135. package/dist/src/client/session.d.ts +8 -16
  136. package/dist/src/client/session.js +1 -1
  137. package/dist/src/client/stream-version.js +1 -1
  138. package/dist/src/client/types.d.ts +4 -5
  139. package/dist/src/compiled/.vendor-stamp.json +3 -2
  140. package/dist/src/compiled/@eve/catalog/index.js +1 -1
  141. package/dist/src/compiled/@vercel/connect/LICENSE +202 -0
  142. package/dist/src/compiled/@vercel/connect/authorization-details.d.ts +11 -0
  143. package/dist/src/compiled/@vercel/connect/authorization.d.ts +47 -0
  144. package/dist/src/compiled/@vercel/connect/connector.d.ts +32 -0
  145. package/dist/src/compiled/@vercel/connect/index.d.ts +5 -0
  146. package/dist/src/compiled/@vercel/connect/index.js +26 -0
  147. package/dist/src/compiled/@vercel/connect/installation.d.ts +48 -0
  148. package/dist/src/compiled/@vercel/connect/token.d.ts +137 -0
  149. package/dist/src/compiled/@workflow/core/runtime.js +3 -3
  150. package/dist/src/compiler/bundled-extension.d.ts +7 -1
  151. package/dist/src/compiler/bundled-extension.js +1 -1
  152. package/dist/src/compiler/default-tool-policy.d.ts +2 -2
  153. package/dist/src/compiler/default-tool-policy.js +1 -1
  154. package/dist/src/compiler/development-extensions.js +1 -1
  155. package/dist/src/compiler/extension-compatibility.d.ts +54 -18
  156. package/dist/src/compiler/extension-compatibility.js +1 -1
  157. package/dist/src/compiler/extension-mount-bindings.d.ts +5 -0
  158. package/dist/src/compiler/extension-mount-bindings.js +1 -0
  159. package/dist/src/compiler/load-binding-namespace.d.ts +10 -2
  160. package/dist/src/compiler/load-binding-namespace.js +1 -1
  161. package/dist/src/compiler/manifest.d.ts +19 -17
  162. package/dist/src/compiler/manifest.js +1 -1
  163. package/dist/src/compiler/module-lifecycle.d.ts +2 -2
  164. package/dist/src/compiler/module-lifecycle.js +1 -1
  165. package/dist/src/compiler/module-map.d.ts +1 -1
  166. package/dist/src/compiler/module-map.js +3 -3
  167. package/dist/src/compiler/normalize-manifest-helpers.d.ts +18 -1
  168. package/dist/src/compiler/normalize-manifest-helpers.js +1 -1
  169. package/dist/src/compiler/normalize-manifest-types.d.ts +2 -0
  170. package/dist/src/compiler/normalize-manifest.js +1 -1
  171. package/dist/src/compiler/normalize-subagent.js +1 -1
  172. package/dist/src/compiler/normalize-tool.js +1 -1
  173. package/dist/src/compiler/project-sources.d.ts +4 -0
  174. package/dist/src/compiler/project-sources.js +1 -1
  175. package/dist/src/compiler/remote-agent-node.js +1 -1
  176. package/dist/src/compiler/source-graph.d.ts +5 -0
  177. package/dist/src/compiler/source-graph.js +1 -1
  178. package/dist/src/computer-use/extension/lib/computer-use-sandbox.d.ts +8 -0
  179. package/dist/src/computer-use/extension/lib/computer-use-sandbox.js +3 -3
  180. package/dist/src/computer-use/extension/lib/computer-use.d.ts +2 -0
  181. package/dist/src/computer-use/extension/lib/computer-use.js +2 -1
  182. package/dist/src/computer-use/extension/tools/computer_use.js +1 -1
  183. package/dist/src/context/build-dynamic-tools.js +1 -1
  184. package/dist/src/context/dynamic-subagent-lifecycle.d.ts +5 -0
  185. package/dist/src/context/dynamic-subagent-lifecycle.js +1 -1
  186. package/dist/src/context/dynamic-tool-lifecycle.js +1 -1
  187. package/dist/src/context/dynamic-tool-metadata.d.ts +1 -1
  188. package/dist/src/context/key-names.d.ts +0 -1
  189. package/dist/src/context/key-names.js +1 -1
  190. package/dist/src/context/keys.d.ts +12 -15
  191. package/dist/src/context/keys.js +1 -1
  192. package/dist/src/context/memory-lifecycle.js +1 -1
  193. package/dist/src/context/memory-tools.d.ts +0 -1
  194. package/dist/src/context/provider.d.ts +5 -11
  195. package/dist/src/context/run-step.d.ts +5 -6
  196. package/dist/src/context/run-step.js +1 -1
  197. package/dist/src/context/serialize.js +1 -1
  198. package/dist/src/discover/bundled-extension.js +1 -1
  199. package/dist/src/discover/discover-agent.js +1 -1
  200. package/dist/src/discover/extensions.d.ts +0 -7
  201. package/dist/src/discover/extensions.js +1 -1
  202. package/dist/src/discover/manifest.d.ts +4 -0
  203. package/dist/src/evals/assertions/run.d.ts +4 -3
  204. package/dist/src/evals/assertions/run.js +1 -1
  205. package/dist/src/evals/index.d.ts +1 -1
  206. package/dist/src/evals/match.d.ts +4 -4
  207. package/dist/src/evals/mock-model.js +1 -1
  208. package/dist/src/evals/runner/derive-run-facts.d.ts +3 -3
  209. package/dist/src/evals/runner/derive-run-facts.js +1 -1
  210. package/dist/src/evals/runner/execute-task.js +1 -1
  211. package/dist/src/evals/runner/reporters/assertion-scores.d.ts +19 -0
  212. package/dist/src/evals/runner/reporters/assertion-scores.js +1 -0
  213. package/dist/src/evals/runner/reporters/braintrust.js +1 -1
  214. package/dist/src/evals/runner/reporters/datadog-client.d.ts +123 -0
  215. package/dist/src/evals/runner/reporters/datadog-client.js +4 -0
  216. package/dist/src/evals/runner/reporters/datadog.d.ts +9 -98
  217. package/dist/src/evals/runner/reporters/datadog.js +2 -3
  218. package/dist/src/evals/session-content.js +1 -1
  219. package/dist/src/evals/session.d.ts +4 -4
  220. package/dist/src/evals/session.js +2 -2
  221. package/dist/src/evals/types.d.ts +34 -15
  222. package/dist/src/eve-channel/create-request.d.ts +5 -4
  223. package/dist/src/eve-channel/create-request.js +1 -1
  224. package/dist/src/eve-channel/index.d.ts +0 -9
  225. package/dist/src/eve-channel/index.js +1 -1
  226. package/dist/src/eve-channel/request.d.ts +3 -7
  227. package/dist/src/eve-channel/request.js +1 -1
  228. package/dist/src/eve-channel/support.d.ts +15 -5
  229. package/dist/src/eve-channel/support.js +1 -1
  230. package/dist/src/eve-channel/turn-policy-request.d.ts +2 -0
  231. package/dist/src/eve-channel/turn-policy-request.js +1 -0
  232. package/dist/src/eve-channel/types.d.ts +4 -0
  233. package/dist/src/execution/agent-sessions/context.d.ts +62 -0
  234. package/dist/src/execution/agent-sessions/context.js +1 -0
  235. package/dist/src/{subagents/remote-dispatch.d.ts → execution/agent-sessions/remote.d.ts} +17 -40
  236. package/dist/src/execution/agent-sessions/remote.js +1 -0
  237. package/dist/src/execution/agent-sessions/requests.d.ts +20 -0
  238. package/dist/src/execution/agent-sessions/requests.js +1 -0
  239. package/dist/src/execution/agent-sessions/session.d.ts +12 -0
  240. package/dist/src/execution/agent-sessions/session.js +1 -0
  241. package/dist/src/execution/agent-sessions/steps.d.ts +59 -0
  242. package/dist/src/execution/agent-sessions/steps.js +1 -0
  243. package/dist/src/execution/agent-sessions/target.d.ts +45 -0
  244. package/dist/src/execution/agent-sessions/target.js +1 -0
  245. package/dist/src/execution/agent-sessions/usage.d.ts +18 -0
  246. package/dist/src/execution/agent-sessions/usage.js +1 -0
  247. package/dist/src/execution/authorization-callback-match.d.ts +2 -4
  248. package/dist/src/execution/authorization-callback-match.js +1 -1
  249. package/dist/src/execution/cancel-descendant-turns-step.d.ts +1 -5
  250. package/dist/src/execution/cancel-descendant-turns-step.js +1 -1
  251. package/dist/src/execution/cancelled-model-call-batch.js +1 -1
  252. package/dist/src/execution/connection-announcement.d.ts +7 -0
  253. package/dist/src/execution/connection-announcement.js +4 -0
  254. package/dist/src/execution/continuation-conflict-step.d.ts +2 -3
  255. package/dist/src/execution/continuation-conflict-step.js +1 -1
  256. package/dist/src/execution/coordination-dispatch-shared.d.ts +12 -28
  257. package/dist/src/execution/coordination-dispatch-shared.js +1 -1
  258. package/dist/src/execution/coordination-dispatch-step.d.ts +3 -2
  259. package/dist/src/execution/coordination-dispatch-step.js +1 -1
  260. package/dist/src/execution/create-session-step.d.ts +4 -3
  261. package/dist/src/execution/create-session-step.js +1 -1
  262. package/dist/src/execution/deliver-payloads.js +1 -1
  263. package/dist/src/execution/durable-session-store.d.ts +10 -5
  264. package/dist/src/execution/durable-session-store.js +1 -1
  265. package/dist/src/execution/dynamic-connections.js +1 -1
  266. package/dist/src/execution/dynamic-workflow/program-step.js +1 -1
  267. package/dist/src/execution/dynamic-workflow/schema.d.ts +1 -3
  268. package/dist/src/execution/dynamic-workflow/schema.js +1 -1
  269. package/dist/src/execution/dynamic-workflow/tool.d.ts +1 -1
  270. package/dist/src/execution/dynamic-workflow/tool.js +1 -1
  271. package/dist/src/execution/dynamic-workflow/workflow.js +1 -1
  272. package/dist/src/execution/forward-session-input.d.ts +4 -0
  273. package/dist/src/execution/forward-session-input.js +1 -0
  274. package/dist/src/execution/legacy-remote-agent/protocol.d.ts +41 -0
  275. package/dist/src/execution/legacy-remote-agent/protocol.js +1 -0
  276. package/dist/src/execution/legacy-session/authorization.js +1 -1
  277. package/dist/src/execution/legacy-session/completion-step.d.ts +2 -0
  278. package/dist/src/execution/legacy-session/completion-step.js +1 -1
  279. package/dist/src/execution/legacy-session/inbox.js +1 -1
  280. package/dist/src/execution/legacy-session/input.js +1 -1
  281. package/dist/src/execution/legacy-session/interrupt-step.js +1 -1
  282. package/dist/src/execution/legacy-session/prepare-step.d.ts +1 -0
  283. package/dist/src/execution/legacy-session/prepare-step.js +1 -1
  284. package/dist/src/execution/legacy-session/snapshot.d.ts +8 -4
  285. package/dist/src/execution/legacy-session/snapshot.js +1 -1
  286. package/dist/src/execution/legacy-session/turn-workflow.js +1 -1
  287. package/dist/src/execution/model-call-batching.js +1 -1
  288. package/dist/src/execution/node-step.d.ts +1 -1
  289. package/dist/src/execution/node-step.js +1 -1
  290. package/dist/src/execution/proxied-deliver-step.d.ts +9 -6
  291. package/dist/src/execution/proxied-deliver-step.js +1 -1
  292. package/dist/src/execution/publish-session-events.d.ts +150 -0
  293. package/dist/src/execution/publish-session-events.js +1 -0
  294. package/dist/src/execution/reconcile-session-continuation-token.d.ts +2 -2
  295. package/dist/src/execution/route-child-delivery.d.ts +5 -4
  296. package/dist/src/execution/route-child-delivery.js +1 -3
  297. package/dist/src/execution/runtime-context.js +1 -1
  298. package/dist/src/execution/sandbox/prewarm.js +1 -1
  299. package/dist/src/execution/session/active-turn.d.ts +97 -0
  300. package/dist/src/execution/session/active-turn.js +1 -0
  301. package/dist/src/execution/session/admission.d.ts +1 -12
  302. package/dist/src/execution/session/admission.js +1 -1
  303. package/dist/src/execution/session/entry-input.d.ts +0 -2
  304. package/dist/src/execution/session/entry.js +1 -1
  305. package/dist/src/execution/session/finalization.js +1 -1
  306. package/dist/src/execution/session/handoff-steps.d.ts +13 -2
  307. package/dist/src/execution/session/handoff-steps.js +1 -1
  308. package/dist/src/execution/session/handoff.d.ts +21 -5
  309. package/dist/src/execution/session/handoff.js +1 -1
  310. package/dist/src/execution/session/input-queue.d.ts +44 -39
  311. package/dist/src/execution/session/input-queue.js +1 -1
  312. package/dist/src/execution/session/next-input.d.ts +7 -10
  313. package/dist/src/execution/session/next-input.js +1 -1
  314. package/dist/src/execution/session/pending-turn-state.d.ts +2 -0
  315. package/dist/src/execution/session/pending-turn-state.js +1 -1
  316. package/dist/src/execution/session/principal.d.ts +14 -0
  317. package/dist/src/execution/session/principal.js +1 -0
  318. package/dist/src/execution/session/program.d.ts +2 -0
  319. package/dist/src/execution/session/program.js +1 -1
  320. package/dist/src/execution/session/route-selected-delivery.js +1 -1
  321. package/dist/src/execution/session/state-cursor.d.ts +26 -18
  322. package/dist/src/execution/session/state-cursor.js +1 -1
  323. package/dist/src/execution/session/state-delta.d.ts +40 -0
  324. package/dist/src/execution/session/state-delta.js +1 -0
  325. package/dist/src/execution/session/timeout-steps.js +1 -1
  326. package/dist/src/execution/session/turn-event-handler.d.ts +2 -2
  327. package/dist/src/execution/session/turn-event-handler.js +1 -1
  328. package/dist/src/execution/session/turn-step-result.d.ts +1 -3
  329. package/dist/src/execution/session/turn-step-result.js +1 -1
  330. package/dist/src/execution/session/turn-step-types.d.ts +37 -19
  331. package/dist/src/execution/session/turn-step.d.ts +2 -2
  332. package/dist/src/execution/session/turn-step.js +1 -1
  333. package/dist/src/execution/session/turn-waiting-step.d.ts +4 -0
  334. package/dist/src/execution/session/turn-waiting-step.js +1 -0
  335. package/dist/src/execution/session/turn.d.ts +41 -3
  336. package/dist/src/execution/session/turn.js +1 -1
  337. package/dist/src/execution/session-callback-request.js +1 -1
  338. package/dist/src/execution/session-event-stream.d.ts +33 -0
  339. package/dist/src/execution/session-event-stream.js +1 -0
  340. package/dist/src/execution/session-inbox/inbox.d.ts +2 -0
  341. package/dist/src/execution/session-inbox/inbox.js +1 -1
  342. package/dist/src/execution/session-inbox/protocol.js +1 -1
  343. package/dist/src/execution/session-inbox/release-step.js +1 -1
  344. package/dist/src/execution/session-inbox/resume.js +1 -1
  345. package/dist/src/execution/session-workflow-tool-run.d.ts +11 -2
  346. package/dist/src/execution/session-workflow-tool-run.js +1 -1
  347. package/dist/src/execution/session.d.ts +5 -6
  348. package/dist/src/execution/session.js +2 -2
  349. package/dist/src/execution/settle-cancelled-turn-step.d.ts +23 -10
  350. package/dist/src/execution/settle-cancelled-turn-step.js +1 -1
  351. package/dist/src/execution/stable-workflow-names.d.ts +0 -1
  352. package/dist/src/execution/stable-workflow-names.js +1 -1
  353. package/dist/src/execution/tasks/calls.d.ts +42 -0
  354. package/dist/src/execution/tasks/calls.js +1 -0
  355. package/dist/src/execution/tasks/model-step.d.ts +58 -0
  356. package/dist/src/execution/tasks/model-step.js +1 -0
  357. package/dist/src/execution/tasks/render.d.ts +66 -0
  358. package/dist/src/execution/tasks/render.js +8 -0
  359. package/dist/src/execution/tasks/session.d.ts +19 -0
  360. package/dist/src/execution/tasks/session.js +1 -0
  361. package/dist/src/execution/tasks/start.d.ts +34 -0
  362. package/dist/src/execution/tasks/start.js +1 -0
  363. package/dist/src/execution/tasks/steps.d.ts +31 -0
  364. package/dist/src/execution/tasks/steps.js +1 -0
  365. package/dist/src/execution/tasks/table.d.ts +192 -0
  366. package/dist/src/execution/tasks/table.js +1 -0
  367. package/dist/src/execution/tasks/task-id-input.d.ts +19 -0
  368. package/dist/src/execution/tasks/task-id-input.js +1 -0
  369. package/dist/src/execution/tasks/tool-entry-point.d.ts +11 -0
  370. package/dist/src/execution/tasks/tool-entry-point.js +1 -0
  371. package/dist/src/execution/tasks/workflow-target.d.ts +2 -0
  372. package/dist/src/execution/tasks/workflow-target.js +1 -1
  373. package/dist/src/execution/terminal-session-completion-step.d.ts +2 -0
  374. package/dist/src/execution/terminal-session-completion-step.js +1 -1
  375. package/dist/src/execution/terminal-session-failure-step.d.ts +2 -0
  376. package/dist/src/execution/terminal-session-failure-step.js +1 -1
  377. package/dist/src/execution/terminate-child-sessions-step.d.ts +2 -9
  378. package/dist/src/execution/terminate-child-sessions-step.js +1 -1
  379. package/dist/src/execution/tool-auth.js +1 -1
  380. package/dist/src/execution/tools/agent-router-workflow.d.ts +1 -1
  381. package/dist/src/execution/tools/agent-router-workflow.js +1 -1
  382. package/dist/src/execution/tools/agent-router.d.ts +1 -1
  383. package/dist/src/execution/tools/agent-router.js +1 -1
  384. package/dist/src/execution/tools/connection-approval.d.ts +25 -0
  385. package/dist/src/execution/tools/connection-approval.js +1 -0
  386. package/dist/src/execution/tools/connection-search-rank.d.ts +21 -0
  387. package/dist/src/execution/tools/connection-search-rank.js +1 -0
  388. package/dist/src/execution/tools/connection-target.d.ts +18 -0
  389. package/dist/src/execution/tools/connection-target.js +1 -0
  390. package/dist/src/execution/tools/connection-tools.d.ts +10 -0
  391. package/dist/src/execution/tools/connection-tools.js +2 -0
  392. package/dist/src/execution/tools/load-skill.js +1 -1
  393. package/dist/src/execution/tools/workflow/answer.d.ts +7 -4
  394. package/dist/src/execution/tools/workflow/answer.js +1 -1
  395. package/dist/src/execution/tools/workflow/ask.d.ts +73 -10
  396. package/dist/src/execution/tools/workflow/ask.js +1 -1
  397. package/dist/src/execution/tools/workflow/body.d.ts +60 -19
  398. package/dist/src/execution/tools/workflow/body.js +1 -1
  399. package/dist/src/execution/tools/workflow/cancel.d.ts +7 -2
  400. package/dist/src/execution/tools/workflow/cancel.js +1 -1
  401. package/dist/src/execution/tools/workflow/emit-workflow-tool-run-report-step.d.ts +10 -4
  402. package/dist/src/execution/tools/workflow/emit-workflow-tool-run-report-step.js +1 -1
  403. package/dist/src/execution/tools/workflow/{background.d.ts → harness-definition.d.ts} +6 -6
  404. package/dist/src/execution/tools/workflow/harness-definition.js +1 -0
  405. package/dist/src/execution/tools/workflow/interrupt.d.ts +6 -0
  406. package/dist/src/execution/tools/workflow/interrupt.js +1 -0
  407. package/dist/src/execution/tools/workflow/messages.d.ts +135 -10
  408. package/dist/src/execution/tools/workflow/messages.js +1 -1
  409. package/dist/src/execution/tools/workflow/owner-inbox.js +1 -1
  410. package/dist/src/execution/tools/workflow/owner.d.ts +15 -4
  411. package/dist/src/execution/tools/workflow/owner.js +1 -1
  412. package/dist/src/execution/tools/workflow/serve.d.ts +3 -0
  413. package/dist/src/execution/tools/workflow/serve.js +1 -0
  414. package/dist/src/execution/tools/workflow/start.d.ts +18 -11
  415. package/dist/src/execution/tools/workflow/start.js +1 -1
  416. package/dist/src/execution/tools/workflow/step-execution.js +1 -1
  417. package/dist/src/execution/tools/workflow/step.js +1 -1
  418. package/dist/src/execution/tools/workflow/types.d.ts +0 -10
  419. package/dist/src/execution/tools/workflow/withdraw-step.d.ts +31 -0
  420. package/dist/src/execution/tools/workflow/withdraw-step.js +1 -0
  421. package/dist/src/execution/tools/workflow/workflow-owner-blocking.d.ts +3 -5
  422. package/dist/src/execution/tools/workflow/workflow-owner-blocking.js +1 -1
  423. package/dist/src/execution/tools/workflow/workflow.d.ts +3 -3
  424. package/dist/src/execution/tools/workflow/workflow.js +1 -1
  425. package/dist/src/execution/web-fetch/request.js +1 -1
  426. package/dist/src/execution/workflow-callback-url.d.ts +0 -5
  427. package/dist/src/execution/workflow-callback-url.js +1 -1
  428. package/dist/src/execution/workflow-runtime.d.ts +3 -5
  429. package/dist/src/execution/workflow-runtime.js +1 -1
  430. package/dist/src/execution/workflow-webhook-route.js +1 -1
  431. package/dist/src/extensions/code/extension/lib/connect-authentication.js +1 -1
  432. package/dist/src/extensions/code/extension/lib/github-shell.js +1 -1
  433. package/dist/src/extensions/code/extension/lib/prwatch-github.js +1 -1
  434. package/dist/src/framework/sources/modules/agent.d.ts +1 -0
  435. package/dist/src/framework/sources/modules/agent.js +1 -1
  436. package/dist/src/framework/sources/registry.js +1 -1
  437. package/dist/src/harness/action-presentation.js +1 -1
  438. package/dist/src/harness/action-result-helpers.d.ts +1 -0
  439. package/dist/src/harness/action-result-helpers.js +1 -1
  440. package/dist/src/harness/advertised-tools.d.ts +1 -1
  441. package/dist/src/harness/advertised-tools.js +1 -1
  442. package/dist/src/harness/announcements.d.ts +22 -0
  443. package/dist/src/harness/announcements.js +1 -0
  444. package/dist/src/harness/approval-candidates.d.ts +10 -2
  445. package/dist/src/harness/approval-candidates.js +1 -1
  446. package/dist/src/harness/approval-delivery-coordinator.d.ts +4 -5
  447. package/dist/src/harness/approval-delivery-coordinator.js +1 -1
  448. package/dist/src/harness/approval-recheck.d.ts +7 -0
  449. package/dist/src/harness/approval-recheck.js +1 -0
  450. package/dist/src/harness/authorization-event-fields.d.ts +13 -0
  451. package/dist/src/harness/authorization-event-fields.js +1 -0
  452. package/dist/src/harness/authorization.d.ts +17 -3
  453. package/dist/src/harness/authorization.js +1 -1
  454. package/dist/src/harness/cancelled-turn-emission.d.ts +2 -1
  455. package/dist/src/harness/cancelled-turn-emission.js +1 -1
  456. package/dist/src/harness/coordination.d.ts +36 -30
  457. package/dist/src/harness/coordination.js +1 -1
  458. package/dist/src/harness/current-messages.d.ts +6 -1
  459. package/dist/src/harness/current-messages.js +1 -1
  460. package/dist/src/harness/emission.d.ts +11 -2
  461. package/dist/src/harness/emission.js +1 -1
  462. package/dist/src/harness/execute-tool.d.ts +4 -15
  463. package/dist/src/harness/held-requests.d.ts +18 -0
  464. package/dist/src/harness/held-requests.js +1 -0
  465. package/dist/src/harness/hitl/approval-input-requests.d.ts +16 -0
  466. package/dist/src/harness/hitl/approval-input-requests.js +1 -1
  467. package/dist/src/harness/hitl/session-limit-input-requests.d.ts +2 -0
  468. package/dist/src/harness/hitl/session-limit-input-requests.js +1 -1
  469. package/dist/src/harness/input-extraction.js +1 -1
  470. package/dist/src/harness/input-request-resolution.d.ts +5 -2
  471. package/dist/src/harness/input-request-resolution.js +1 -1
  472. package/dist/src/harness/input-requests.d.ts +0 -4
  473. package/dist/src/harness/input-requests.js +1 -1
  474. package/dist/src/harness/messages.d.ts +11 -3
  475. package/dist/src/harness/messages.js +1 -1
  476. package/dist/src/harness/model-call-error.js +1 -1
  477. package/dist/src/harness/nested-actions.d.ts +23 -0
  478. package/dist/src/harness/nested-actions.js +1 -0
  479. package/dist/src/harness/pending-input-batches.d.ts +8 -6
  480. package/dist/src/harness/pending-input-batches.js +1 -1
  481. package/dist/src/harness/provider-tool-history.d.ts +7 -2
  482. package/dist/src/harness/provider-tool-history.js +1 -1
  483. package/dist/src/harness/proxy-input-requests.d.ts +45 -40
  484. package/dist/src/harness/proxy-input-requests.js +1 -1
  485. package/dist/src/harness/session-limit-enforcement.js +1 -1
  486. package/dist/src/harness/stale-input-responses.js +1 -1
  487. package/dist/src/harness/step-hooks.js +1 -1
  488. package/dist/src/harness/tool-loop.js +2 -2
  489. package/dist/src/harness/tool-model-output.js +1 -1
  490. package/dist/src/harness/tool-presentation.js +1 -1
  491. package/dist/src/harness/tools.d.ts +1 -5
  492. package/dist/src/harness/tools.js +1 -1
  493. package/dist/src/harness/turn-tag-state.d.ts +8 -5
  494. package/dist/src/harness/turn-tag-state.js +1 -1
  495. package/dist/src/harness/types.d.ts +25 -21
  496. package/dist/src/harness/workflow-dispatch.d.ts +30 -0
  497. package/dist/src/harness/workflow-dispatch.js +1 -0
  498. package/dist/src/harness/workflow-tool-runs.d.ts +5 -65
  499. package/dist/src/harness/workflow-tool-runs.js +1 -1
  500. package/dist/src/instrumentation/channel-delivery.d.ts +1 -0
  501. package/dist/src/instrumentation/channel-delivery.js +1 -1
  502. package/dist/src/instrumentation/lifecycle.d.ts +7 -0
  503. package/dist/src/instrumentation/memory.d.ts +2 -0
  504. package/dist/src/instrumentation/memory.js +1 -1
  505. package/dist/src/instrumentation/native-events.d.ts +1 -7
  506. package/dist/src/instrumentation/native-events.js +1 -1
  507. package/dist/src/instrumentation/runtime.d.ts +5 -7
  508. package/dist/src/instrumentation/runtime.js +1 -1
  509. package/dist/src/instrumentation/session-init.js +1 -1
  510. package/dist/src/instrumentation/state.d.ts +0 -6
  511. package/dist/src/instrumentation/state.js +1 -1
  512. package/dist/src/internal/application/package.js +1 -1
  513. package/dist/src/internal/authored-definition/schema-backed.d.ts +10 -0
  514. package/dist/src/internal/authored-definition/schema-backed.js +1 -1
  515. package/dist/src/internal/authored-module-loader.d.ts +20 -6
  516. package/dist/src/internal/authored-module-loader.js +2 -2
  517. package/dist/src/internal/authored-module-map-loader.js +1 -1
  518. package/dist/src/internal/authored-package-boundary.d.ts +3 -0
  519. package/dist/src/internal/authored-package-boundary.js +1 -1
  520. package/dist/src/internal/bundler/extension-mount-plugin.d.ts +14 -0
  521. package/dist/src/internal/bundler/extension-mount-plugin.js +1 -0
  522. package/dist/src/internal/bundler/extension-scope-plugin.d.ts +8 -11
  523. package/dist/src/internal/bundler/extension-scope-plugin.js +2 -3
  524. package/dist/src/internal/invocation/workflow-execution.d.ts +2 -2
  525. package/dist/src/internal/invocation/workflow-execution.js +1 -1
  526. package/dist/src/internal/mount-state.d.ts +1 -0
  527. package/dist/src/internal/mount-state.js +1 -0
  528. package/dist/src/internal/nitro/host/build-application.js +1 -1
  529. package/dist/src/internal/nitro/host/create-application-nitro.js +1 -1
  530. package/dist/src/internal/nitro/host/dev-host-fingerprint.js +1 -1
  531. package/dist/src/internal/nitro/host/extension-capability-requirements.js +1 -1
  532. package/dist/src/internal/nitro/host/workspace-extensions.js +1 -1
  533. package/dist/src/internal/nitro/routes/runtime-stack.js +1 -1
  534. package/dist/src/internal/node-esm-compat-banner.js +1 -1
  535. package/dist/src/internal/workflow/development-world-client.js +1 -1
  536. package/dist/src/internal/workflow-bundle/authored-workflow-directives.d.ts +4 -3
  537. package/dist/src/internal/workflow-bundle/authored-workflow-directives.js +1 -1
  538. package/dist/src/internal/workflow-bundle/builder.js +1 -1
  539. package/dist/src/internal/workflow-bundle/dynamic-capability-transform-plugin.js +1 -1
  540. package/dist/src/internal/workflow-bundle/dynamic-remote-agent-transform.js +1 -1
  541. package/dist/src/internal/workflow-bundle/dynamic-tool-ast-references.d.ts +27 -1
  542. package/dist/src/internal/workflow-bundle/dynamic-tool-ast-references.js +1 -1
  543. package/dist/src/internal/workflow-bundle/dynamic-tool-transform.js +2 -2
  544. package/dist/src/internal/workflow-bundle/workflow-builders.js +1 -1
  545. package/dist/src/models/auto.d.ts +6 -0
  546. package/dist/src/models/auto.js +2 -2
  547. package/dist/src/protocol/message-version.d.ts +1 -0
  548. package/dist/src/protocol/message-version.js +1 -1
  549. package/dist/src/protocol/message.d.ts +166 -69
  550. package/dist/src/protocol/message.js +2 -2
  551. package/dist/src/protocol/remote-agent-protocol.d.ts +16 -0
  552. package/dist/src/protocol/remote-agent-protocol.js +1 -0
  553. package/dist/src/protocol/routes.d.ts +0 -6
  554. package/dist/src/protocol/routes.js +1 -1
  555. package/dist/src/protocol/task-tools.d.ts +21 -0
  556. package/dist/src/protocol/task-tools.js +1 -0
  557. package/dist/src/public/channels/auth.js +1 -1
  558. package/dist/src/public/channels/chat-sdk/chatSdkChannel.d.ts +25 -16
  559. package/dist/src/public/channels/chat-sdk/chatSdkChannel.js +2 -2
  560. package/dist/src/public/channels/chat-sdk/index.d.ts +1 -1
  561. package/dist/src/public/channels/chat-sdk/input-actions.d.ts +8 -0
  562. package/dist/src/public/channels/chat-sdk/input-actions.js +1 -0
  563. package/dist/src/public/channels/index.d.ts +1 -1
  564. package/dist/src/public/channels/linq/linqChannel.js +1 -1
  565. package/dist/src/public/channels/photon/photonIMessageChannel.js +1 -1
  566. package/dist/src/public/channels/slack/action-status.d.ts +11 -12
  567. package/dist/src/public/channels/slack/action-status.js +1 -1
  568. package/dist/src/public/channels/slack/api.js +1 -1
  569. package/dist/src/public/channels/slack/approval-cards.d.ts +15 -0
  570. package/dist/src/public/channels/slack/approval-cards.js +2 -0
  571. package/dist/src/public/channels/slack/attachments.js +1 -1
  572. package/dist/src/public/channels/slack/auth.d.ts +5 -0
  573. package/dist/src/public/channels/slack/auth.js +1 -1
  574. package/dist/src/public/channels/slack/connections.d.ts +20 -16
  575. package/dist/src/public/channels/slack/connections.js +1 -1
  576. package/dist/src/public/channels/slack/defaults.d.ts +13 -33
  577. package/dist/src/public/channels/slack/defaults.js +3 -4
  578. package/dist/src/public/channels/slack/hitl.d.ts +22 -13
  579. package/dist/src/public/channels/slack/hitl.js +2 -2
  580. package/dist/src/public/channels/slack/inbound.d.ts +10 -2
  581. package/dist/src/public/channels/slack/inbound.js +1 -1
  582. package/dist/src/public/channels/slack/index.d.ts +6 -3
  583. package/dist/src/public/channels/slack/index.js +1 -1
  584. package/dist/src/public/channels/slack/input-response.d.ts +1 -5
  585. package/dist/src/public/channels/slack/input-response.js +1 -1
  586. package/dist/src/public/channels/slack/interaction-cards.js +1 -1
  587. package/dist/src/public/channels/slack/interactions.js +1 -1
  588. package/dist/src/public/channels/slack/limits.d.ts +5 -3
  589. package/dist/src/public/channels/slack/private-approval-delivery.js +1 -1
  590. package/dist/src/public/channels/slack/renderers.d.ts +76 -0
  591. package/dist/src/public/channels/slack/renderers.js +1 -0
  592. package/dist/src/public/channels/slack/reply-delivery.d.ts +72 -0
  593. package/dist/src/public/channels/slack/reply-delivery.js +1 -0
  594. package/dist/src/public/channels/slack/session-operations.d.ts +6 -0
  595. package/dist/src/public/channels/slack/session-operations.js +1 -1
  596. package/dist/src/public/channels/slack/sign-in-cancel.d.ts +20 -0
  597. package/dist/src/public/channels/slack/sign-in-cancel.js +1 -0
  598. package/dist/src/public/channels/slack/slackChannel.d.ts +62 -103
  599. package/dist/src/public/channels/slack/slackChannel.js +1 -1
  600. package/dist/src/public/channels/slack/task-card.d.ts +24 -0
  601. package/dist/src/public/channels/slack/task-card.js +1 -0
  602. package/dist/src/public/channels/teams/defaults.d.ts +1 -1
  603. package/dist/src/public/channels/teams/defaults.js +2 -2
  604. package/dist/src/public/channels/telegram/hitl.d.ts +7 -1
  605. package/dist/src/public/channels/telegram/hitl.js +2 -1
  606. package/dist/src/public/channels/telegram/state.js +1 -1
  607. package/dist/src/public/channels/telegram/telegramChannel.d.ts +5 -0
  608. package/dist/src/public/channels/telegram/telegramChannel.js +1 -1
  609. package/dist/src/public/definitions/channel.d.ts +7 -1
  610. package/dist/src/public/definitions/channel.js +1 -1
  611. package/dist/src/public/definitions/connections/mcp.d.ts +4 -6
  612. package/dist/src/public/definitions/connections/openapi.d.ts +7 -8
  613. package/dist/src/public/definitions/extension.d.ts +2 -2
  614. package/dist/src/public/definitions/extension.js +1 -1
  615. package/dist/src/public/definitions/hook.d.ts +4 -4
  616. package/dist/src/public/definitions/state.d.ts +4 -2
  617. package/dist/src/public/definitions/state.js +1 -1
  618. package/dist/src/public/memory/index.d.ts +0 -1
  619. package/dist/src/public/models/openai/index.d.ts +1 -1
  620. package/dist/src/public/models/openai/index.js +1 -1
  621. package/dist/src/public/next/index.js +1 -1
  622. package/dist/src/public/next/server.d.ts +2 -0
  623. package/dist/src/public/next/server.js +1 -2
  624. package/dist/src/public/nuxt/module.d.ts +6 -0
  625. package/dist/src/public/nuxt/module.js +1 -1
  626. package/dist/src/public/schedules/index.d.ts +1 -0
  627. package/dist/src/public/schedules/index.js +1 -1
  628. package/dist/src/public/server/index.d.ts +28 -0
  629. package/dist/src/public/server/index.js +1 -0
  630. package/dist/src/public/tools/index.d.ts +3 -2
  631. package/dist/src/public/tools/index.js +1 -1
  632. package/dist/src/public/tools/no-reply.d.ts +1 -0
  633. package/dist/src/public/tools/no-reply.js +1 -0
  634. package/dist/src/react/index.d.ts +3 -0
  635. package/dist/src/react/index.js +1 -1
  636. package/dist/src/react/use-eve-agent.d.ts +7 -5
  637. package/dist/src/react/use-eve-agent.js +1 -1
  638. package/dist/src/runtime/agent/bootstrap-model-utils.d.ts +6 -7
  639. package/dist/src/runtime/agent/bootstrap-model-utils.js +1 -1
  640. package/dist/src/runtime/agent/bootstrap.d.ts +0 -1
  641. package/dist/src/runtime/agent/bootstrap.js +1 -1
  642. package/dist/src/runtime/agent/mock-model-adapter.js +1 -1
  643. package/dist/src/runtime/agent/mock-model-fixtures.d.ts +1 -1
  644. package/dist/src/runtime/agent/mock-model-fixtures.js +2 -2
  645. package/dist/src/runtime/channels/registry.js +1 -1
  646. package/dist/src/runtime/connections/mcp-client.d.ts +1 -9
  647. package/dist/src/runtime/connections/mcp-client.js +1 -1
  648. package/dist/src/runtime/connections/openapi-client.js +1 -1
  649. package/dist/src/runtime/connections/scoped-authorization.d.ts +3 -1
  650. package/dist/src/runtime/connections/scoped-authorization.js +1 -1
  651. package/dist/src/runtime/connections/tool-result.d.ts +27 -0
  652. package/dist/src/runtime/connections/tool-result.js +2 -0
  653. package/dist/src/runtime/connections/tool-signature.d.ts +14 -0
  654. package/dist/src/runtime/connections/tool-signature.js +1 -0
  655. package/dist/src/runtime/local-dev-capability.js +1 -1
  656. package/dist/src/runtime/prompt/compose.d.ts +1 -3
  657. package/dist/src/runtime/prompt/compose.js +3 -3
  658. package/dist/src/runtime/resolve-agent-graph.js +1 -1
  659. package/dist/src/runtime/resolve-tool.js +1 -1
  660. package/dist/src/runtime/sessions/compiled-agent-cache.js +1 -1
  661. package/dist/src/runtime/sessions/runtime-context-keys.js +1 -1
  662. package/dist/src/runtime/sessions/turn.d.ts +1 -16
  663. package/dist/src/runtime/subagents/dynamic-remote-agent-config.js +1 -1
  664. package/dist/src/runtime/subagents/registry.js +1 -1
  665. package/dist/src/runtime/subagents/workflow-reference.d.ts +6 -3
  666. package/dist/src/runtime/subagents/workflow-reference.js +1 -1
  667. package/dist/src/runtime/subagents/workflow.d.ts +12 -6
  668. package/dist/src/runtime/subagents/workflow.js +1 -1
  669. package/dist/src/runtime/tools/registry.js +1 -1
  670. package/dist/src/self-modification/extension/classify-registry-item.d.ts +3 -0
  671. package/dist/src/self-modification/extension/classify-registry-item.js +1 -1
  672. package/dist/src/self-modification/extension/subagents/agent/agent.d.ts +1 -1
  673. package/dist/src/self-modification/extension/subagents/agent/agent.js +1 -1
  674. package/dist/src/self-modification/extension/subagents/agent/instructions.js +7 -7
  675. package/dist/src/self-modification/extension/subagents/agent/tools/registry_add.js +1 -1
  676. package/dist/src/self-modification/extension/subagents/agent/tools/search_registry.d.ts +2 -0
  677. package/dist/src/self-modification/extension/subagents/agent/tools/search_registry.js +1 -1
  678. package/dist/src/self-modification/scaffold.d.ts +2 -0
  679. package/dist/src/self-modification/scaffold.js +7 -0
  680. package/dist/src/self-modification/setup.js +1 -7
  681. package/dist/src/setup/boxes/deploy-project.js +1 -1
  682. package/dist/src/setup/boxes/select-model.js +1 -1
  683. package/dist/src/setup/integrations/shopify/templates.d.ts +1 -1
  684. package/dist/src/setup/integrations/shopify/templates.js +31 -19
  685. package/dist/src/setup/integrations/web/setup.js +6 -2
  686. package/dist/src/setup/scaffold/create/agent-paths.d.ts +5 -0
  687. package/dist/src/setup/scaffold/create/agent-paths.js +1 -0
  688. package/dist/src/setup/scaffold/create/instructions-template.d.ts +1 -0
  689. package/dist/src/setup/scaffold/create/instructions-template.js +8 -0
  690. package/dist/src/setup/scaffold/create/project.js +3 -10
  691. package/dist/src/setup/scaffold/create/web-template.d.ts +2 -2
  692. package/dist/src/setup/scaffold/create/web-template.js +28 -9
  693. package/dist/src/setup/vercel-project-framework.js +1 -1
  694. package/dist/src/shared/action-request-name.d.ts +3 -0
  695. package/dist/src/shared/action-request-name.js +1 -0
  696. package/dist/src/shared/action-types.d.ts +49 -21
  697. package/dist/src/shared/action-types.js +1 -1
  698. package/dist/src/shared/agent-definition.d.ts +0 -7
  699. package/dist/src/shared/chatgpt-model.d.ts +1 -1
  700. package/dist/src/shared/chatgpt-model.js +1 -1
  701. package/dist/src/shared/connection-types.d.ts +2 -8
  702. package/dist/src/shared/default-agent-model.d.ts +10 -1
  703. package/dist/src/shared/default-agent-model.js +1 -1
  704. package/dist/src/shared/display-name.d.ts +15 -0
  705. package/dist/src/shared/display-name.js +1 -0
  706. package/dist/src/shared/extension-mount.d.ts +2 -0
  707. package/dist/src/shared/extension-mount.js +1 -0
  708. package/dist/src/shared/format-duration.d.ts +2 -0
  709. package/dist/src/shared/format-duration.js +1 -0
  710. package/dist/src/shared/framework-eve-server.d.ts +43 -0
  711. package/dist/src/shared/framework-eve-server.js +2 -0
  712. package/dist/src/shared/input.d.ts +1 -0
  713. package/dist/src/shared/memory-state.d.ts +1 -0
  714. package/dist/src/shared/memory-state.js +1 -1
  715. package/dist/src/shared/model-helper.d.ts +2 -2
  716. package/dist/src/shared/model-helper.js +1 -1
  717. package/dist/src/shared/model-summary.d.ts +2 -6
  718. package/dist/src/shared/model-summary.js +1 -1
  719. package/dist/src/shared/presentation-text.d.ts +5 -0
  720. package/dist/src/shared/presentation-text.js +1 -1
  721. package/dist/src/shared/serialized-observability-state.d.ts +0 -4
  722. package/dist/src/shared/serialized-observability-state.js +1 -1
  723. package/dist/src/shared/token-usage.d.ts +2 -0
  724. package/dist/src/shared/token-usage.js +1 -1
  725. package/dist/src/shared/trace-root.d.ts +8 -0
  726. package/dist/src/shared/trace-root.js +1 -0
  727. package/dist/src/shared/value-delta.d.ts +39 -0
  728. package/dist/src/shared/value-delta.js +1 -0
  729. package/dist/src/subagents/adapter-state.d.ts +0 -2
  730. package/dist/src/subagents/adapter-state.js +1 -1
  731. package/dist/src/subagents/adapter.js +1 -1
  732. package/dist/src/subagents/callback-route.js +1 -1
  733. package/dist/src/subagents/event-proxy-step.d.ts +16 -29
  734. package/dist/src/subagents/event-proxy-step.js +1 -1
  735. package/dist/src/subagents/hitl-proxy.d.ts +38 -20
  736. package/dist/src/subagents/hitl-proxy.js +1 -1
  737. package/dist/src/subagents/invocation.d.ts +4 -3
  738. package/dist/src/subagents/parent-notification.d.ts +2 -1
  739. package/dist/src/subagents/parent-notification.js +1 -1
  740. package/dist/src/subagents/token-budget.d.ts +8 -9
  741. package/dist/src/subagents/token-budget.js +1 -1
  742. package/dist/src/subagents/tool.d.ts +6 -12
  743. package/dist/src/subagents/tool.js +1 -1
  744. package/dist/src/svelte/index.d.ts +3 -0
  745. package/dist/src/svelte/index.js +2 -2
  746. package/dist/src/svelte/use-eve-agent.d.ts +7 -4
  747. package/dist/src/svelte/use-eve-agent.js +1 -1
  748. package/dist/src/tools/behavior.d.ts +5 -5
  749. package/dist/src/tools/definition.d.ts +50 -14
  750. package/dist/src/tools/definition.js +1 -1
  751. package/dist/src/tools/durable-callbacks.d.ts +1 -1
  752. package/dist/src/tools/dynamic.d.ts +6 -0
  753. package/dist/src/tools/framework/agent-contract.d.ts +2 -5
  754. package/dist/src/tools/framework/agent-contract.js +1 -1
  755. package/dist/src/tools/framework/agent.d.ts +2 -5
  756. package/dist/src/tools/framework/agent.js +1 -1
  757. package/dist/src/tools/framework/connection-tools.d.ts +3 -0
  758. package/dist/src/tools/framework/connection-tools.js +1 -0
  759. package/dist/src/tools/provided/agent-router.d.ts +6 -3
  760. package/dist/src/tools/provided/agent-router.js +1 -1
  761. package/dist/src/{execution/tools → tools/provided}/ask-question-workflow.d.ts +3 -4
  762. package/dist/src/tools/provided/ask-question-workflow.js +1 -0
  763. package/dist/src/tools/provided/ask-question.d.ts +20 -5
  764. package/dist/src/tools/provided/ask-question.js +2 -1
  765. package/dist/src/tools/provided/interrupted.d.ts +18 -0
  766. package/dist/src/tools/provided/interrupted.js +1 -0
  767. package/dist/src/tools/provided/load-skill.js +1 -1
  768. package/dist/src/tools/provided/no-reply.d.ts +19 -0
  769. package/dist/src/tools/provided/no-reply.js +1 -0
  770. package/dist/src/tools/provided/sleep-workflow.d.ts +4 -0
  771. package/dist/src/tools/provided/sleep-workflow.js +1 -0
  772. package/dist/src/tools/provided/sleep.d.ts +11 -5
  773. package/dist/src/tools/provided/sleep.js +1 -1
  774. package/dist/src/tools/provided/task-cancel.d.ts +6 -0
  775. package/dist/src/tools/provided/task-cancel.js +1 -0
  776. package/dist/src/tools/provided/task-wait.d.ts +9 -0
  777. package/dist/src/tools/provided/task-wait.js +1 -0
  778. package/dist/src/tools/provided/workflow.d.ts +2 -2
  779. package/dist/src/tools/provided/workflow.js +1 -1
  780. package/dist/src/tools/schema-emission.d.ts +23 -0
  781. package/dist/src/tools/schema-emission.js +1 -0
  782. package/dist/src/tools/schema.d.ts +22 -8
  783. package/dist/src/tools/schema.js +1 -1
  784. package/dist/src/tools/workflow-definition.d.ts +187 -85
  785. package/dist/src/tools/workflow-definition.js +1 -1
  786. package/dist/src/tools/workflow-entry-point.d.ts +3 -0
  787. package/dist/src/tools/workflow-entry-point.js +1 -0
  788. package/dist/src/tracing/agent-action-instrumentation.d.ts +1 -3
  789. package/dist/src/tracing/agent-action-instrumentation.js +1 -1
  790. package/dist/src/tracing/agent-approval-instrumentation.js +1 -1
  791. package/dist/src/tracing/agent-invocation-coordinator.d.ts +9 -18
  792. package/dist/src/tracing/agent-invocation-coordinator.js +1 -1
  793. package/dist/src/tracing/agent-memory-instrumentation.js +1 -1
  794. package/dist/src/tracing/agent-otel-attributes.d.ts +6 -0
  795. package/dist/src/tracing/agent-otel-attributes.js +1 -1
  796. package/dist/src/tracing/agent-otel-content.d.ts +0 -2
  797. package/dist/src/tracing/agent-otel-content.js +3 -3
  798. package/dist/src/tracing/agent-otel-provider.js +2 -2
  799. package/dist/src/tracing/agent-otel-runtime-context.d.ts +20 -0
  800. package/dist/src/tracing/agent-otel-runtime-context.js +1 -1
  801. package/dist/src/tracing/agent-otel-session-context.js +1 -1
  802. package/dist/src/tracing/agent-otel-usage.js +1 -1
  803. package/dist/src/tracing/agent-span-contract.d.ts +1 -1
  804. package/dist/src/tracing/agent-span-contract.js +1 -1
  805. package/dist/src/tracing/agent-span-id-generator.d.ts +0 -1
  806. package/dist/src/tracing/agent-span-id-generator.js +1 -1
  807. package/dist/src/tracing/agent-tool-instrumentation.js +1 -1
  808. package/dist/src/tracing/agent-trace-context-codec.d.ts +5 -2
  809. package/dist/src/tracing/agent-trace-context-codec.js +1 -1
  810. package/dist/src/tracing/agent-trace-context-store.d.ts +2 -27
  811. package/dist/src/tracing/agent-trace-context-store.js +1 -1
  812. package/dist/src/tracing/agent-trace-span-processor.js +1 -1
  813. package/dist/src/tracing/agent-trace-state.d.ts +4 -19
  814. package/dist/src/tracing/content-attributes.js +1 -1
  815. package/dist/src/tracing/conversation-context.d.ts +10 -0
  816. package/dist/src/tracing/conversation-context.js +1 -1
  817. package/dist/src/tracing/install-instrumentation-runtime.js +1 -1
  818. package/dist/src/tracing/otel-registration.js +1 -1
  819. package/dist/src/vue/index.d.ts +3 -0
  820. package/dist/src/vue/index.js +2 -2
  821. package/dist/src/vue/use-eve-agent.d.ts +7 -3
  822. package/dist/src/vue/use-eve-agent.js +1 -1
  823. package/docs/agent-config.md +36 -13
  824. package/docs/channels/chat-sdk.mdx +15 -4
  825. package/docs/channels/custom.mdx +89 -17
  826. package/docs/channels/eve.mdx +1 -1
  827. package/docs/channels/mcp.mdx +1 -1
  828. package/docs/channels/overview.mdx +14 -56
  829. package/docs/channels/slack.mdx +287 -45
  830. package/docs/channels/telegram.mdx +2 -0
  831. package/docs/concepts/built-in-tools.md +37 -28
  832. package/docs/concepts/context-control.md +2 -2
  833. package/docs/concepts/execution-model-and-durability.mdx +10 -11
  834. package/docs/concepts/sessions-runs-and-streaming.md +69 -49
  835. package/docs/connections/mcp.mdx +4 -4
  836. package/docs/connections/openapi.mdx +2 -2
  837. package/docs/connections/overview.mdx +11 -5
  838. package/docs/evals/assertions.mdx +5 -5
  839. package/docs/evals/cases.mdx +1 -1
  840. package/docs/evals/reporters.mdx +10 -4
  841. package/docs/extensions.md +22 -2
  842. package/docs/guides/client/streaming.mdx +33 -12
  843. package/docs/guides/deployment/vercel.mdx +2 -1
  844. package/docs/guides/dev-tui.md +26 -16
  845. package/docs/guides/dynamic-capabilities.md +6 -4
  846. package/docs/guides/evaluate.md +29 -2
  847. package/docs/guides/frontend/nuxt.mdx +24 -4
  848. package/docs/guides/frontend/overview.mdx +45 -41
  849. package/docs/guides/frontend/use-eve-agent-svelte.mdx +4 -10
  850. package/docs/guides/frontend/use-eve-agent-vue.mdx +4 -10
  851. package/docs/guides/hooks.md +16 -12
  852. package/docs/guides/instrumentation/instrumentation.mdx +2 -0
  853. package/docs/guides/instrumentation/otel.mdx +24 -6
  854. package/docs/guides/remote-agents.md +38 -22
  855. package/docs/guides/self-modification.md +10 -0
  856. package/docs/instructions.mdx +1 -1
  857. package/docs/patterns/multi-tenant-approvals.md +1 -1
  858. package/docs/protocols/ucp.mdx +20 -16
  859. package/docs/reference/cli.md +64 -11
  860. package/docs/reference/typescript-api.md +43 -41
  861. package/docs/schedules.mdx +14 -34
  862. package/docs/subagents/index.mdx +24 -56
  863. package/docs/tools/human-in-the-loop.md +50 -15
  864. package/docs/tools/meta.json +1 -1
  865. package/docs/tools/overview.mdx +80 -60
  866. package/docs/tools/tasks-upgrade.md +201 -0
  867. package/docs/tools/tasks.md +315 -0
  868. package/docs/tools/workflows.mdx +368 -154
  869. package/package.json +18 -12
  870. package/dist/src/channel/activity-renderer.d.ts +0 -21
  871. package/dist/src/channel/activity-renderer.js +0 -1
  872. package/dist/src/channel/activity-sink.d.ts +0 -2
  873. package/dist/src/channel/activity-sink.js +0 -1
  874. package/dist/src/cli/dev/tui/steering-stream.d.ts +0 -15
  875. package/dist/src/cli/dev/tui/steering-stream.js +0 -1
  876. package/dist/src/cli/dev/tui/subagent-pump.d.ts +0 -142
  877. package/dist/src/cli/dev/tui/subagent-pump.js +0 -1
  878. package/dist/src/eve-channel/activity-observer-request.d.ts +0 -7
  879. package/dist/src/eve-channel/activity-observer-request.js +0 -1
  880. package/dist/src/eve-channel/delivery-policy-request.d.ts +0 -4
  881. package/dist/src/eve-channel/delivery-policy-request.js +0 -1
  882. package/dist/src/execution/activity-cohort.d.ts +0 -20
  883. package/dist/src/execution/activity-cohort.js +0 -1
  884. package/dist/src/execution/activity-collector.d.ts +0 -12
  885. package/dist/src/execution/activity-collector.js +0 -1
  886. package/dist/src/execution/activity-events.d.ts +0 -8
  887. package/dist/src/execution/activity-events.js +0 -1
  888. package/dist/src/execution/activity-route.d.ts +0 -2
  889. package/dist/src/execution/activity-route.js +0 -1
  890. package/dist/src/execution/activity-work-id.d.ts +0 -9
  891. package/dist/src/execution/activity-work-id.js +0 -1
  892. package/dist/src/execution/activity-work.d.ts +0 -30
  893. package/dist/src/execution/activity-work.js +0 -1
  894. package/dist/src/execution/cancel-indexed-session-tasks-step.d.ts +0 -7
  895. package/dist/src/execution/cancel-indexed-session-tasks-step.js +0 -1
  896. package/dist/src/execution/dispatch-action-failures.d.ts +0 -8
  897. package/dist/src/execution/dispatch-action-failures.js +0 -1
  898. package/dist/src/execution/dispatch-start-operation.d.ts +0 -15
  899. package/dist/src/execution/dispatch-start-operation.js +0 -1
  900. package/dist/src/execution/publish-channel-event.d.ts +0 -23
  901. package/dist/src/execution/publish-channel-event.js +0 -1
  902. package/dist/src/execution/scheduled-launch-delivery.d.ts +0 -7
  903. package/dist/src/execution/scheduled-launch-delivery.js +0 -1
  904. package/dist/src/execution/session/event-sink.d.ts +0 -26
  905. package/dist/src/execution/session/event-sink.js +0 -1
  906. package/dist/src/execution/session-activity-projection.d.ts +0 -16
  907. package/dist/src/execution/session-activity-projection.js +0 -1
  908. package/dist/src/execution/session-activity-renderer-step.d.ts +0 -15
  909. package/dist/src/execution/session-activity-renderer-step.js +0 -1
  910. package/dist/src/execution/session-activity.d.ts +0 -3
  911. package/dist/src/execution/session-activity.js +0 -1
  912. package/dist/src/execution/submit-activity.d.ts +0 -7
  913. package/dist/src/execution/submit-activity.js +0 -1
  914. package/dist/src/execution/task-event-callback.d.ts +0 -12
  915. package/dist/src/execution/task-event-callback.js +0 -1
  916. package/dist/src/execution/task-input-capability.d.ts +0 -4
  917. package/dist/src/execution/task-input-capability.js +0 -1
  918. package/dist/src/execution/task-input-response-route.d.ts +0 -2
  919. package/dist/src/execution/task-input-response-route.js +0 -1
  920. package/dist/src/execution/tasks/child/notify.d.ts +0 -44
  921. package/dist/src/execution/tasks/child/notify.js +0 -1
  922. package/dist/src/execution/tasks/parent/control-shared.d.ts +0 -23
  923. package/dist/src/execution/tasks/parent/control-shared.js +0 -1
  924. package/dist/src/execution/tasks/parent/delegate.d.ts +0 -35
  925. package/dist/src/execution/tasks/parent/delegate.js +0 -1
  926. package/dist/src/execution/tasks/parent/dispatch.d.ts +0 -22
  927. package/dist/src/execution/tasks/parent/dispatch.js +0 -1
  928. package/dist/src/execution/tasks/parent/hitl-proxy-steps.d.ts +0 -27
  929. package/dist/src/execution/tasks/parent/hitl-proxy-steps.js +0 -1
  930. package/dist/src/execution/tasks/parent/run-parent.d.ts +0 -58
  931. package/dist/src/execution/tasks/parent/run-parent.js +0 -1
  932. package/dist/src/execution/tasks/parent/subagent-task-projection.d.ts +0 -26
  933. package/dist/src/execution/tasks/parent/subagent-task-projection.js +0 -1
  934. package/dist/src/execution/tasks/parent/task-cancel.d.ts +0 -12
  935. package/dist/src/execution/tasks/parent/task-cancel.js +0 -1
  936. package/dist/src/execution/tasks/parent/tool-execution.d.ts +0 -45
  937. package/dist/src/execution/tasks/parent/tool-execution.js +0 -1
  938. package/dist/src/execution/terminal-session-event.d.ts +0 -13
  939. package/dist/src/execution/terminal-session-event.js +0 -1
  940. package/dist/src/execution/tools/ask-question-workflow.js +0 -1
  941. package/dist/src/execution/tools/ask-question.d.ts +0 -19
  942. package/dist/src/execution/tools/ask-question.js +0 -2
  943. package/dist/src/execution/tools/connection-search.d.ts +0 -2
  944. package/dist/src/execution/tools/connection-search.js +0 -2
  945. package/dist/src/execution/tools/sleep-workflow.d.ts +0 -3
  946. package/dist/src/execution/tools/sleep-workflow.js +0 -1
  947. package/dist/src/execution/tools/sleep.d.ts +0 -10
  948. package/dist/src/execution/tools/sleep.js +0 -1
  949. package/dist/src/execution/tools/subagent/accept-event-step.d.ts +0 -7
  950. package/dist/src/execution/tools/subagent/accept-event-step.js +0 -1
  951. package/dist/src/execution/tools/subagent/emit-event-step.d.ts +0 -12
  952. package/dist/src/execution/tools/subagent/emit-event-step.js +0 -1
  953. package/dist/src/execution/tools/subagent/invoke-agent.d.ts +0 -42
  954. package/dist/src/execution/tools/subagent/invoke-agent.js +0 -1
  955. package/dist/src/execution/tools/subagent/invoke-preparation.d.ts +0 -44
  956. package/dist/src/execution/tools/subagent/invoke-preparation.js +0 -1
  957. package/dist/src/execution/tools/subagent/invoke-step.d.ts +0 -64
  958. package/dist/src/execution/tools/subagent/invoke-step.js +0 -1
  959. package/dist/src/execution/tools/subagent/receipt-identity.d.ts +0 -11
  960. package/dist/src/execution/tools/subagent/receipt-identity.js +0 -1
  961. package/dist/src/execution/tools/subagent/start.d.ts +0 -51
  962. package/dist/src/execution/tools/subagent/start.js +0 -1
  963. package/dist/src/execution/tools/subagent/steer.d.ts +0 -13
  964. package/dist/src/execution/tools/subagent/steer.js +0 -1
  965. package/dist/src/execution/tools/subagent/task-agent-requests.d.ts +0 -24
  966. package/dist/src/execution/tools/subagent/task-agent-requests.js +0 -1
  967. package/dist/src/execution/tools/subagent/task-cancel.d.ts +0 -10
  968. package/dist/src/execution/tools/subagent/task-cancel.js +0 -1
  969. package/dist/src/execution/tools/tasks.d.ts +0 -3
  970. package/dist/src/execution/tools/tasks.js +0 -1
  971. package/dist/src/execution/tools/workflow/background.js +0 -1
  972. package/dist/src/execution/tools/workflow/workflow-owner-background.d.ts +0 -14
  973. package/dist/src/execution/tools/workflow/workflow-owner-background.js +0 -1
  974. package/dist/src/harness/background-tools.d.ts +0 -45
  975. package/dist/src/harness/background-tools.js +0 -1
  976. package/dist/src/instrumentation/background-task-runtime.d.ts +0 -18
  977. package/dist/src/instrumentation/background-task-runtime.js +0 -1
  978. package/dist/src/node_modules/.pnpm/@vercel_cli-config@0.3.0/node_modules/@vercel/cli-config/dist/index.js +0 -21
  979. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/envpath.js +0 -1
  980. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/errors.js +0 -2
  981. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/errutils.js +0 -1
  982. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/exec.js +0 -1
  983. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/fsutils.js +0 -1
  984. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/index.js +0 -1
  985. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/lookup.js +0 -1
  986. package/dist/src/node_modules/.pnpm/@vercel_cli-exec@1.0.1/node_modules/@vercel/cli-exec/dist/safety.js +0 -1
  987. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/authorization.js +0 -1
  988. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/connector.js +0 -1
  989. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/index.js +0 -1
  990. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/installation.js +0 -1
  991. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/internal/base-url.js +0 -1
  992. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/internal/default-scopes.js +0 -1
  993. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/internal/env.js +0 -1
  994. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/internal/url-validation.js +0 -1
  995. package/dist/src/node_modules/.pnpm/@vercel_connect@2.3.3_@ai-sdk_mcp@2.0.52_zod@4.5.4__@auth_core@0.41.2_@chat-adapter_sla_a37674779346d612fa7d2ca9bd316494/node_modules/@vercel/connect/dist/token.js +0 -1
  996. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/auth-errors.js +0 -1
  997. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/exchange-vercel-oidc-token.js +0 -1
  998. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/get-context.js +0 -1
  999. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/get-vercel-oidc-token-sync.js +0 -1
  1000. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/get-vercel-oidc-token-with-refresh.js +0 -2
  1001. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/index.js +0 -1
  1002. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/oauth.js +0 -1
  1003. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/token-error.js +0 -1
  1004. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/token-io.js +0 -1
  1005. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/token-util.js +0 -2
  1006. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/token.js +0 -1
  1007. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/verify-vercel-oidc-token.js +0 -1
  1008. package/dist/src/node_modules/.pnpm/@vercel_oidc@3.8.9/node_modules/@vercel/oidc/dist/version.js +0 -1
  1009. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js +0 -1
  1010. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js +0 -1
  1011. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js +0 -1
  1012. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js +0 -1
  1013. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js +0 -1
  1014. package/dist/src/node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -1
  1015. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js +0 -1
  1016. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js +0 -1
  1017. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js +0 -2
  1018. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js +0 -1
  1019. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js +0 -1
  1020. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js +0 -1
  1021. package/dist/src/node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js +0 -1
  1022. package/dist/src/node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js +0 -1
  1023. package/dist/src/node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js +0 -1
  1024. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js +0 -1
  1025. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js +0 -1
  1026. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js +0 -1
  1027. package/dist/src/node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js +0 -1
  1028. package/dist/src/node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js +0 -1
  1029. package/dist/src/node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js +0 -1
  1030. package/dist/src/node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js +0 -1
  1031. package/dist/src/node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js +0 -1
  1032. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/index.js +0 -1
  1033. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/compact/decrypt.js +0 -1
  1034. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/compact/encrypt.js +0 -1
  1035. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/flattened/decrypt.js +0 -1
  1036. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/flattened/encrypt.js +0 -1
  1037. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/general/decrypt.js +0 -1
  1038. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwe/general/encrypt.js +0 -1
  1039. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwk/embedded.js +0 -1
  1040. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwk/thumbprint.js +0 -1
  1041. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwks/local.js +0 -1
  1042. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwks/remote.js +0 -1
  1043. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/compact/sign.js +0 -1
  1044. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/compact/verify.js +0 -1
  1045. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/flattened/sign.js +0 -1
  1046. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/flattened/verify.js +0 -1
  1047. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/general/sign.js +0 -1
  1048. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jws/general/verify.js +0 -1
  1049. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/decrypt.js +0 -1
  1050. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/encrypt.js +0 -1
  1051. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/produce.js +0 -1
  1052. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/sign.js +0 -1
  1053. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/unsecured.js +0 -1
  1054. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/jwt/verify.js +0 -1
  1055. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/export.js +0 -1
  1056. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/generate_key_pair.js +0 -1
  1057. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/generate_secret.js +0 -1
  1058. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/key/import.js +0 -1
  1059. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/aesgcmkw.js +0 -1
  1060. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/buffer_utils.js +0 -1
  1061. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/cek.js +0 -1
  1062. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/check_iv_length.js +0 -1
  1063. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/check_key_type.js +0 -1
  1064. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/check_p2s.js +0 -1
  1065. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/crypto_key.js +0 -1
  1066. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/decrypt_key_management.js +0 -1
  1067. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/encrypt_key_management.js +0 -1
  1068. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/epoch.js +0 -1
  1069. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/invalid_key_input.js +0 -1
  1070. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/is_disjoint.js +0 -1
  1071. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/is_jwk.js +0 -1
  1072. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/is_object.js +0 -1
  1073. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/iv.js +0 -1
  1074. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/jwt_claims_set.js +0 -1
  1075. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/private_symbols.js +0 -1
  1076. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/secs.js +0 -1
  1077. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/validate_algorithms.js +0 -1
  1078. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/lib/validate_crit.js +0 -1
  1079. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/aeskw.js +0 -1
  1080. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/asn1.js +0 -1
  1081. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/base64url.js +0 -1
  1082. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/cbc_tag.js +0 -1
  1083. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/check_cek_length.js +0 -1
  1084. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/check_key_length.js +0 -1
  1085. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/ciphers.js +0 -1
  1086. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/decrypt.js +0 -1
  1087. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/digest.js +0 -1
  1088. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/dsa_digest.js +0 -1
  1089. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/ecdhes.js +0 -1
  1090. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/encrypt.js +0 -1
  1091. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/fetch_jwks.js +0 -1
  1092. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/generate.js +0 -1
  1093. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/get_named_curve.js +0 -1
  1094. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/get_sign_verify_key.js +0 -1
  1095. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/hmac_digest.js +0 -1
  1096. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/is_key_like.js +0 -1
  1097. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/is_key_object.js +0 -1
  1098. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/jwk_to_key.js +0 -1
  1099. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/key_to_jwk.js +0 -1
  1100. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/node_key.js +0 -1
  1101. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/normalize_key.js +0 -1
  1102. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/pbes2kw.js +0 -1
  1103. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/random.js +0 -1
  1104. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/rsaes.js +0 -1
  1105. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/runtime.js +0 -1
  1106. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/sign.js +0 -1
  1107. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/timing_safe_equal.js +0 -1
  1108. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/verify.js +0 -1
  1109. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/runtime/webcrypto.js +0 -1
  1110. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/base64url.js +0 -1
  1111. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/decode_jwt.js +0 -1
  1112. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/decode_protected_header.js +0 -1
  1113. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/errors.js +0 -1
  1114. package/dist/src/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/cjs/util/runtime.js +0 -1
  1115. package/dist/src/node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js +0 -1
  1116. package/dist/src/node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js +0 -1
  1117. package/dist/src/node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js +0 -1
  1118. package/dist/src/node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js +0 -1
  1119. package/dist/src/node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js +0 -1
  1120. package/dist/src/node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js +0 -1
  1121. package/dist/src/node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js +0 -1
  1122. package/dist/src/node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/index.js +0 -1
  1123. package/dist/src/node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/signals.js +0 -1
  1124. package/dist/src/node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js +0 -2
  1125. package/dist/src/node_modules/.pnpm/which@2.0.2/node_modules/which/which.js +0 -1
  1126. package/dist/src/protocol/activity.d.ts +0 -112
  1127. package/dist/src/protocol/activity.js +0 -1
  1128. package/dist/src/protocol/agent-handle-error.d.ts +0 -13
  1129. package/dist/src/protocol/agent-handle-error.js +0 -1
  1130. package/dist/src/public/channels/slack/activity-plan.d.ts +0 -5
  1131. package/dist/src/public/channels/slack/activity-plan.js +0 -1
  1132. package/dist/src/public/channels/slack/activity.d.ts +0 -63
  1133. package/dist/src/public/channels/slack/activity.js +0 -2
  1134. package/dist/src/public/nuxt/dev-server.d.ts +0 -25
  1135. package/dist/src/public/nuxt/dev-server.js +0 -1
  1136. package/dist/src/public/tools/connection-search.d.ts +0 -1
  1137. package/dist/src/public/tools/connection-search.js +0 -1
  1138. package/dist/src/public/tools/task-cancel.d.ts +0 -1
  1139. package/dist/src/public/tools/task-cancel.js +0 -1
  1140. package/dist/src/runtime/prompt/connections.d.ts +0 -9
  1141. package/dist/src/runtime/prompt/connections.js +0 -2
  1142. package/dist/src/shared/empty-delivery.d.ts +0 -3
  1143. package/dist/src/shared/empty-delivery.js +0 -1
  1144. package/dist/src/subagents/agent-handle-errors.d.ts +0 -25
  1145. package/dist/src/subagents/agent-handle-errors.js +0 -1
  1146. package/dist/src/subagents/callback-step.d.ts +0 -11
  1147. package/dist/src/subagents/callback-step.js +0 -1
  1148. package/dist/src/subagents/continuation-bundle.d.ts +0 -13
  1149. package/dist/src/subagents/continuation-bundle.js +0 -1
  1150. package/dist/src/subagents/handle-dispatch.d.ts +0 -65
  1151. package/dist/src/subagents/handle-dispatch.js +0 -1
  1152. package/dist/src/subagents/handles/operation-id.d.ts +0 -15
  1153. package/dist/src/subagents/handles/operation-id.js +0 -1
  1154. package/dist/src/subagents/handles/prompt.d.ts +0 -52
  1155. package/dist/src/subagents/handles/prompt.js +0 -3
  1156. package/dist/src/subagents/handles/query.d.ts +0 -41
  1157. package/dist/src/subagents/handles/query.js +0 -1
  1158. package/dist/src/subagents/handles/state-key.d.ts +0 -8
  1159. package/dist/src/subagents/handles/state-key.js +0 -1
  1160. package/dist/src/subagents/handles/store.d.ts +0 -217
  1161. package/dist/src/subagents/handles/store.js +0 -1
  1162. package/dist/src/subagents/handles/transitions.d.ts +0 -103
  1163. package/dist/src/subagents/handles/transitions.js +0 -1
  1164. package/dist/src/subagents/remote-dispatch.js +0 -1
  1165. package/dist/src/subagents/start-local.d.ts +0 -29
  1166. package/dist/src/subagents/start-local.js +0 -1
  1167. package/dist/src/subagents/start-remote.d.ts +0 -21
  1168. package/dist/src/subagents/start-remote.js +0 -1
  1169. package/dist/src/tasks/delivery-context.d.ts +0 -32
  1170. package/dist/src/tasks/delivery-context.js +0 -4
  1171. package/dist/src/tasks/delivery-policy.d.ts +0 -14
  1172. package/dist/src/tasks/delivery-policy.js +0 -1
  1173. package/dist/src/tasks/json.d.ts +0 -88
  1174. package/dist/src/tasks/json.js +0 -1
  1175. package/dist/src/tasks/notification.d.ts +0 -10
  1176. package/dist/src/tasks/notification.js +0 -1
  1177. package/dist/src/tasks/task-id.d.ts +0 -31
  1178. package/dist/src/tasks/task-id.js +0 -1
  1179. package/dist/src/tasks/task-inbox-token.d.ts +0 -2
  1180. package/dist/src/tasks/task-inbox-token.js +0 -1
  1181. package/dist/src/tasks/transitions.d.ts +0 -17
  1182. package/dist/src/tasks/transitions.js +0 -1
  1183. package/dist/src/tasks/types.d.ts +0 -138
  1184. package/dist/src/tasks/types.js +0 -1
  1185. package/dist/src/tools/framework/connection-search.d.ts +0 -3
  1186. package/dist/src/tools/framework/connection-search.js +0 -1
  1187. package/dist/src/tools/framework/task-cancel.d.ts +0 -4
  1188. package/dist/src/tools/framework/task-cancel.js +0 -1
  1189. package/dist/src/tools/framework/task-contract.d.ts +0 -19
  1190. package/dist/src/tools/framework/task-contract.js +0 -1
  1191. package/dist/src/tools/native-definition.d.ts +0 -7
  1192. package/dist/src/tools/native-definition.js +0 -1
  1193. package/dist/src/tracing/agent-invocation-terminal.d.ts +0 -18
  1194. package/dist/src/tracing/agent-invocation-terminal.js +0 -1
  1195. /package/dist/src/execution/{tools/subagent → agent-sessions}/metadata.d.ts +0 -0
  1196. /package/dist/src/execution/{tools/subagent → agent-sessions}/metadata.js +0 -0
@@ -1,18 +1,31 @@
1
- import { type DurableSessionState } from "#execution/durable-session-store.js";
1
+ import type { DurableSessionState } from "#execution/durable-session-store.js";
2
+ import { type SessionHistoryStepState } from "#execution/publish-session-events.js";
3
+ import { type WithSessionStateDelta } from "#execution/session/state-delta.js";
4
+ import type { HarnessModelMessage } from "#harness/messages.js";
2
5
  import type { TokenUsage } from "#shared/token-usage.js";
3
6
  export interface CancelledTurnSettleResult {
4
7
  readonly serializedContext: Record<string, unknown>;
5
8
  readonly sessionState: DurableSessionState;
9
+ readonly history: HarnessModelMessage[];
10
+ /** What the session spent since its caller's last report, when asked to report it. */
6
11
  readonly usage?: TokenUsage;
7
12
  }
13
+ /** Takes the history because the turn's pending calls move into it, each answered as cancelled. */
14
+ interface CancelledTurnSettleInput extends SessionHistoryStepState {
15
+ /**
16
+ * Whether a caller receives the turn's usage. Only then is it marked
17
+ * reported; otherwise the next settled turn reports it.
18
+ */
19
+ readonly reportUsage: boolean;
20
+ }
8
21
  /**
9
- * Settles one cancelled turn: emits `turn.cancelled` → `session.waiting`,
10
- * drops pending coordination state, and persists the between-turns
11
- * session. Runs in the owner, whose wake sources exclude the
12
- * cancel hook, so a queued cancel wake cannot re-dispatch it.
22
+ * Settles one cancelled turn: relays `input.resolved` for every request the
23
+ * session proxies, emits `turn.cancelled` → `session.waiting`, drops pending
24
+ * coordination state, and persists the between-turns session. Runs in the
25
+ * owner, whose wake sources exclude the cancel hook, so a queued cancel wake
26
+ * cannot re-dispatch it.
13
27
  */
14
- export declare function settleCancelledTurnStep(input: {
15
- readonly sessionWritable: WritableStream<Uint8Array>;
16
- readonly serializedContext: Record<string, unknown>;
17
- readonly sessionState: DurableSessionState;
18
- }): Promise<CancelledTurnSettleResult>;
28
+ export declare function settleCancelledTurnStep(input: CancelledTurnSettleInput): Promise<WithSessionStateDelta<CancelledTurnSettleResult>>;
29
+ /** {@link settleCancelledTurnStep} for a caller that is already a step and adopts the whole state. */
30
+ export declare function settleCancelledTurn(input: CancelledTurnSettleInput): Promise<CancelledTurnSettleResult>;
31
+ export {};
@@ -1 +1 @@
1
- import{TurnDeliveryIdsKey}from"#context/keys.js";import{BundleKey,ChannelKey}from"#runtime/sessions/runtime-context-keys.js";import{getHarnessEmissionState,isHarnessBetweenTurns,setHarnessEmissionState}from"#harness/emission.js";import{clearPendingCoordinationBatch,getPendingCoordinationBatch}from"#harness/coordination.js";import{deserializeContext,serializeContext}from"#context/serialize.js";import{createDurableSessionState,readDurableSession}from"#execution/durable-session-store.js";import{getBlockingWorkflowToolRuns,removeBlockingWorkflowToolRuns}from"#harness/workflow-tool-runs.js";import{resolveEffectiveAgentRuntime}from"#execution/effective-agent-config.js";import{hydrateDurableSession}from"#execution/session.js";import{buildAdapterContext}from"#channel/adapter-context.js";import{withContextScope}from"#context/run-step.js";import{activeTurnId}from"#harness/active-turn-id.js";import{clearAllProxyInputRequests,getProxyInputRequests,hasProxyInputRequests}from"#harness/proxy-input-requests.js";import{publishChannelEvent}from"#execution/publish-channel-event.js";import{observeSessionActivity}from"#execution/session-activity-projection.js";import{getTurnUsageState,toUsage}from"#harness/turn-tag-state.js";import{clearPendingSessionLimitPrompt}from"#harness/input-requests.js";import{bindSessionInstrumentation}from"#instrumentation/runtime.js";import{reconcileSessionContinuationToken}from"#execution/reconcile-session-continuation-token.js";import{emitCancelledTurn}from"#harness/cancelled-turn-emission.js";import{abandonAgentInvocationOwners,abandonRunningAgentTurns}from"#subagents/handles/transitions.js";async function settleCancelledTurnStep(e){"use step";let t=readDurableSession(e.sessionState),n=await deserializeContext(e.serializedContext),r=n.require(ChannelKey),i=buildAdapterContext(r,n),a=n.require(BundleKey),o=resolveEffectiveAgentRuntime(a,n),s=hydrateDurableSession({compactionOverrides:{thresholdPercent:o.thresholdPercent},durable:t,turnAgent:o.turnAgent}),c=bindSessionInstrumentation({agentName:o.turnAgent.id,ctx:n,rootSessionId:s.rootSessionId??s.sessionId,sessionId:s.sessionId}),l=getHarnessEmissionState(t.state),u=[...getProxyInputRequests(t.state).values()].some(e=>e.kind===`session-limit`);if(!(isHarnessBetweenTurns(s)&&hasProxyInputRequests(t.state)&&!u)){let t=e.sessionWritable.getWriter();try{let e=await withContextScope(n,s,async e=>{let baseEmit=async e=>{let a=await publishChannelEvent({adapter:r,adapterCtx:i,ctx:n,writer:t,event:e,deliveryIds:n.get(TurnDeliveryIdsKey)});observeSessionActivity({ctx:n,event:a,sessionId:s.sessionId})},a=c?.createHandleEvent({handleEvent:baseEmit,turnId:activeTurnId(l)})??baseEmit;return{result:await emitCancelledTurn(a,l),session:e}});l=e.result,s=e.session}finally{await c?.flush(),t.releaseLock()}}let d=getPendingCoordinationBatch(s.state)?.event.turnId??e.sessionState.emissionState.turnId,f=getBlockingWorkflowToolRuns(s.state,d);s=abandonAgentInvocationOwners(s,new Set(f.map(e=>e.address.runId)));let p=reconcileSessionContinuationToken(n,setHarnessEmissionState(clearPendingSessionLimitPrompt(clearAllProxyInputRequests(clearPendingCoordinationBatch(removeBlockingWorkflowToolRuns(abandonRunningAgentTurns({...s,outputSchema:void 0}),d)))),l)),m=getTurnUsageState(s.state)?.session,h={serializedContext:serializeContext(n),sessionState:createDurableSessionState({session:p})};return m===void 0?h:{...h,usage:toUsage(m)}}export{settleCancelledTurnStep};
1
+ import{createInputResolvedEvent}from"#protocol/message.js";import{getHarnessEmissionState,setHarnessEmissionState}from"#harness/emission.js";import{getSessionUsage,getTurnUsageState,takeSessionUsageDelta}from"#harness/turn-tag-state.js";import{commitCancelledCoordinationBatch,getPendingCoordinationBatch}from"#harness/coordination.js";import{removeBlockingWorkflowToolRuns}from"#harness/workflow-tool-runs.js";import{publishFromSessionStep,restoreSessionStep}from"#execution/publish-session-events.js";import{withSessionStateDelta}from"#execution/session/state-delta.js";import{clearPendingSessionLimitPrompt}from"#harness/input-requests.js";import{relayWithdrawnRequests}from"#execution/tools/workflow/withdraw-step.js";import{emitCancelledTurn}from"#harness/cancelled-turn-emission.js";import{declinedSignInEvents,withdrawHeldSignIns}from"#harness/held-requests.js";import{cancelApprovalInputBatches,getPendingApprovalRequests}from"#harness/hitl/approval-input-requests.js";const CANCELLED_REASON=`Cancelled.`;async function settleCancelledTurnStep(e){"use step";return await withSessionStateDelta(e,settleCancelledTurn)}async function settleCancelledTurn(e){let t=await relayWithdrawnRequests(e,()=>!0),n={...await restoreSessionStep({...t,sessionWritable:e.sessionWritable}),history:e.history},r=n.durableSession.state,i={completedAt:Date.now(),reason:CANCELLED_REASON},a=withdrawHeldSignIns(r,i),o=getPendingApprovalRequests(r),{published:s,result:c}=await publishFromSessionStep(n,{origin:`own`,async publish(e){let t=getHarnessEmissionState(r);for(let n of declinedSignInEvents(a.withdrawn,CANCELLED_REASON,t))await e(n);return o.length>0&&await e(createInputResolvedEvent({resolutions:o.map(e=>({kind:e.kind,outcome:`cancelled`,requestId:e.requestId})),sequence:t.sequence,stepIndex:t.stepIndex,turnId:t.turnId})),await emitCancelledTurn(e,t,getSessionUsage(n.durableSession))},updateSession(t,n){let r={...t,state:withdrawHeldSignIns(t.state,i).state},a=getPendingCoordinationBatch(r.state)?.event.turnId??e.sessionState.emissionState.turnId,o=setHarnessEmissionState(clearPendingSessionLimitPrompt(cancelApprovalInputBatches(commitCancelledCoordinationBatch(removeBlockingWorkflowToolRuns({...r,outputSchema:void 0},a)))),n);if(!e.reportUsage||getTurnUsageState(r.state)===void 0)return{session:o};let s=takeSessionUsageDelta(o);return{result:s.delta,session:s.session}}});return c===void 0?s:{...s,usage:c}}export{settleCancelledTurn,settleCancelledTurnStep};
@@ -1,5 +1,4 @@
1
1
  export declare const WORKFLOW_ENTRY_NAME = "workflowEntry";
2
2
  export declare const SESSION_TIMEOUT_WORKFLOW_NAME = "sessionTimeoutWorkflow";
3
3
  export declare const WORKFLOW_TOOL_RUN_WORKFLOW_NAME = "workflowToolRunWorkflow";
4
- export declare const ACTIVITY_COLLECTOR_WORKFLOW_NAME = "activityCollectorWorkflow";
5
4
  export declare const STABLE_WORKFLOW_NAMES: ReadonlySet<string>;
@@ -1 +1 @@
1
- const WORKFLOW_ENTRY_NAME=`workflowEntry`,SESSION_TIMEOUT_WORKFLOW_NAME=`sessionTimeoutWorkflow`,WORKFLOW_TOOL_RUN_WORKFLOW_NAME=`workflowToolRunWorkflow`,ACTIVITY_COLLECTOR_WORKFLOW_NAME=`activityCollectorWorkflow`,STABLE_WORKFLOW_NAMES=new Set([WORKFLOW_ENTRY_NAME,`turnWorkflow`,SESSION_TIMEOUT_WORKFLOW_NAME,WORKFLOW_TOOL_RUN_WORKFLOW_NAME,ACTIVITY_COLLECTOR_WORKFLOW_NAME]);export{ACTIVITY_COLLECTOR_WORKFLOW_NAME,SESSION_TIMEOUT_WORKFLOW_NAME,STABLE_WORKFLOW_NAMES,WORKFLOW_ENTRY_NAME,WORKFLOW_TOOL_RUN_WORKFLOW_NAME};
1
+ const WORKFLOW_ENTRY_NAME=`workflowEntry`,SESSION_TIMEOUT_WORKFLOW_NAME=`sessionTimeoutWorkflow`,WORKFLOW_TOOL_RUN_WORKFLOW_NAME=`workflowToolRunWorkflow`,STABLE_WORKFLOW_NAMES=new Set([WORKFLOW_ENTRY_NAME,`turnWorkflow`,SESSION_TIMEOUT_WORKFLOW_NAME,WORKFLOW_TOOL_RUN_WORKFLOW_NAME]);export{SESSION_TIMEOUT_WORKFLOW_NAME,STABLE_WORKFLOW_NAMES,WORKFLOW_ENTRY_NAME,WORKFLOW_TOOL_RUN_WORKFLOW_NAME};
@@ -0,0 +1,42 @@
1
+ import type { ModelMessage } from "ai";
2
+ import type { RuntimeToolResultActionResult } from "#shared/action-types.js";
3
+ import type { JsonValue } from "#shared/json.js";
4
+ /**
5
+ * Calls to the task tools. They defer out of the model step like
6
+ * workflow tool calls; the session answers them instead of a workflow run.
7
+ */
8
+ export type TaskToolCall = {
9
+ readonly callId: string;
10
+ readonly kind: "task_wait";
11
+ readonly timeoutMs?: number;
12
+ } | {
13
+ readonly callId: string;
14
+ readonly kind: "task_cancel";
15
+ readonly taskId: string;
16
+ };
17
+ /**
18
+ * The task tool calls a parked step's response still waits on. The response
19
+ * is the one record of these calls: a call without a result is pending, and
20
+ * a call with invalid input already carries its error result. The names are
21
+ * reserved, so no authored tool's call matches.
22
+ */
23
+ export declare function pendingTaskToolCalls(messages: readonly ModelMessage[]): TaskToolCall[];
24
+ /** Why a `task_wait` call, or a held turn, stopped waiting. */
25
+ export type TaskWaitResult = {
26
+ readonly status: "settled";
27
+ /** Tasks whose results follow; both lists are empty when nothing was working. */
28
+ readonly settled: readonly {
29
+ readonly id: string;
30
+ readonly status: "completed" | "failed";
31
+ }[];
32
+ readonly working: readonly string[];
33
+ } | {
34
+ readonly status: "timeout" | "interrupt";
35
+ readonly working: readonly string[];
36
+ };
37
+ export interface TaskCancelResult {
38
+ readonly resumable: boolean;
39
+ readonly status: "cancelled" | "already_finished";
40
+ readonly tool: string;
41
+ }
42
+ export declare function taskToolResult(callId: string, toolName: string, output: JsonValue): RuntimeToolResultActionResult;
@@ -0,0 +1 @@
1
+ import{TASK_CANCEL_TOOL_NAME,TASK_WAIT_TOOL_NAME}from"#protocol/task-tools.js";function pendingTaskToolCalls(e){let t=new Set;for(let n of e)if(typeof n.content!=`string`)for(let e of n.content)e.type===`tool-result`&&t.add(e.toolCallId);let n=[];for(let r of e)if(r.role===`assistant`&&typeof r.content!=`string`)for(let e of r.content){if(e.type!==`tool-call`||t.has(e.toolCallId))continue;let r=typeof e.input==`object`&&e.input!==null?e.input:{};if(e.toolName===TASK_CANCEL_TOOL_NAME){let t=String(Reflect.get(r,`taskId`));n.push({callId:e.toolCallId,kind:`task_cancel`,taskId:t})}else if(e.toolName===TASK_WAIT_TOOL_NAME){let t=Reflect.get(r,`timeoutSeconds`);n.push(typeof t==`number`?{callId:e.toolCallId,kind:`task_wait`,timeoutMs:t*1e3}:{callId:e.toolCallId,kind:`task_wait`})}}return n}function taskToolResult(e,t,n){return{callId:e,kind:`tool-result`,output:n,toolName:t}}export{pendingTaskToolCalls,taskToolResult};
@@ -0,0 +1,58 @@
1
+ import type { ModelMessage, SystemModelMessage } from "ai";
2
+ import type { HarnessToolDefinition } from "#harness/execute-tool.js";
3
+ import { type HarnessModelMessage } from "#harness/messages.js";
4
+ import type { HarnessSession, HarnessToolMap } from "#harness/types.js";
5
+ import type { WorkflowToolCallEntry } from "#shared/action-types.js";
6
+ import type { JsonObject } from "#shared/json.js";
7
+ export declare function isTaskTool(definition: HarnessToolDefinition | undefined): boolean;
8
+ /** Whether the agent can start tasks, so the task tools and system block are offered. */
9
+ export declare function offersTasks(tools: HarnessToolMap): boolean;
10
+ /** Adds `task_wait` and `task_cancel` to a tool set that can start tasks. */
11
+ export declare function withTaskTools(tools: HarnessToolMap): HarnessToolMap;
12
+ /**
13
+ * The task block, when the agent can start tasks. `finalReplyOnly` is set for a
14
+ * child or schedule session, which hides a held turn's text, so a reply before
15
+ * a result would reach no one.
16
+ */
17
+ export declare function taskSystemMessages(tools: HarnessToolMap, options: {
18
+ readonly finalReplyOnly: boolean;
19
+ }): SystemModelMessage[];
20
+ /** A deferred call as the model made it, before the session knows what it enters. */
21
+ export interface DeferredCall {
22
+ readonly callId: string;
23
+ readonly definition: HarnessToolDefinition | undefined;
24
+ /** The call's model input. */
25
+ readonly input: JsonObject;
26
+ readonly toolName: string;
27
+ readonly turnId: string;
28
+ }
29
+ /** How a deferred call enters its workflow, with the tool's own input. */
30
+ export interface CommittedCallEntry {
31
+ readonly entry: WorkflowToolCallEntry;
32
+ readonly input: JsonObject;
33
+ readonly session: HarnessSession;
34
+ }
35
+ /**
36
+ * How a deferred call enters its workflow. A call that starts a task commits
37
+ * the task's record alongside the call, so the run starts with its id; a
38
+ * `serve` tool's call with `taskId` goes to that task's `receive()`, which the
39
+ * session checks when it sends the call.
40
+ */
41
+ export declare function commitCallEntry(session: HarnessSession, call: DeferredCall): CommittedCallEntry;
42
+ export declare function workingTaskIds(session: HarnessSession): readonly string[];
43
+ /**
44
+ * The messages a model step appends for tasks, before any new input: one
45
+ * `task.result` message with every settled result, then the
46
+ * `[Tasks]` note when the listing changed. The results are marked delivered
47
+ * in the same step. The message lives only in the model's history: clients
48
+ * read outcomes from `task.settled`.
49
+ */
50
+ export declare function appendTaskContext(input: {
51
+ readonly messages: readonly HarnessModelMessage[];
52
+ readonly projectHistory: (messages: readonly ModelMessage[], state: HarnessSession["state"]) => readonly ModelMessage[];
53
+ readonly session: HarnessSession;
54
+ readonly tools: HarnessToolMap;
55
+ }): Promise<{
56
+ readonly messages: readonly HarnessModelMessage[];
57
+ readonly session: HarnessSession;
58
+ }>;
@@ -0,0 +1 @@
1
+ import{TASK_CANCEL_TOOL_NAME,TASK_WAIT_TOOL_NAME}from"#protocol/task-tools.js";import{createFrameworkUserMessage}from"#harness/messages.js";import{FINAL_REPLY_TASK_SYSTEM_BLOCK,TASKS_NOTE_LABEL,TASK_SYSTEM_BLOCK,renderModelOutputText,renderTaskResults,renderTasksNote}from"#execution/tasks/render.js";import{createTask,idleTasks,readTaskTable,takeTaskResults,workingTasks,writeTaskTable}from"#execution/tasks/table.js";import{splitTaskIdInput}from"#execution/tasks/task-id-input.js";import{entryPointOf,isAgentTool,startsTasks}from"#execution/tasks/tool-entry-point.js";import{taskCancelTool}from"#tools/provided/task-cancel.js";import{taskWaitTool}from"#tools/provided/task-wait.js";function isTaskTool(e){return e?.frameworkAction===`task-wait`||e?.frameworkAction===`task-cancel`}function offersTasks(e){for(let t of e.values())if(startsTasks(t))return!0;return!1}function withTaskTools(e){return offersTasks(e)?new Map([...e,[TASK_WAIT_TOOL_NAME,taskWaitTool],[TASK_CANCEL_TOOL_NAME,taskCancelTool]]):e}function taskSystemMessages(e,t){return offersTasks(e)?[{content:t.finalReplyOnly?FINAL_REPLY_TASK_SYSTEM_BLOCK:TASK_SYSTEM_BLOCK,role:`system`}]:[]}function commitCallEntry(e,t){let n=entryPointOf(t.definition);switch(n){case`execute`:return{entry:{entryPoint:n},input:t.input,session:e};case`task`:return commitTask(e,t,n,t.input);case`serve`:{let{input:r,taskId:i}=splitTaskIdInput(t.input);return i===void 0?commitTask(e,t,n,r):{entry:{entryPoint:`receive`,taskId:i},input:r,session:e}}}}function commitTask(e,t,n,r){let i=createTask(readTaskTable(e.state),{callId:t.callId,kind:isAgentTool(t.definition)?`agent`:`tool`,name:t.toolName,resumable:n===`serve`,turnId:t.turnId});return{entry:{entryPoint:n,taskId:i.taskId},input:r,session:writeTaskTable(e,i.table)}}function workingTaskIds(e){return workingTasks(readTaskTable(e.state)).map(e=>e.id)}async function appendTaskContext(e){let t=[],n=await deliverTaskResults(e);n.message!==void 0&&t.push(createFrameworkUserMessage(`task.result`,n.message));let r=resolveTasksNote({messages:e.projectHistory([...e.messages,...t],n.session.state),session:n.session});return r!==void 0&&t.push(createFrameworkUserMessage(`context.state`,r)),{messages:t,session:n.session}}async function deliverTaskResults(e){let{table:t,taken:n}=takeTaskResults(readTaskTable(e.session.state));if(n.length===0)return{session:e.session};let r=[];for(let t of n)for(let n of t.results)r.push(await toResultBlock(t,n,e.tools.get(t.name)));return{message:renderTaskResults(r),session:writeTaskTable(e.session,t)}}async function toResultBlock(e,t,n){let r={taskId:e.id,tool:e.name};return t.status===`failed`?{...r,body:t.error,status:`failed`}:{...r,body:await projectOutput(t.output,n),status:`completed`}}async function projectOutput(e,t){if(t?.toModelOutput===void 0)return renderModelOutputText(e);try{return renderModelOutputText(await t.toModelOutput(e))}catch{return renderModelOutputText(e)}}function resolveTasksNote(e){let t=readTaskTable(e.session.state),n=workingTasks(t).map(toListedTask),r=idleTasks(t).map(toListedTask),i=e.messages.findLast(isTasksNote);if(i===void 0&&n.length===0&&r.length===0)return;let a=renderTasksNote({idle:r,working:n});return i?.content===a?void 0:a}function toListedTask(e){return{id:e.id,tool:e.name}}function isTasksNote(e){return e.role===`user`&&typeof e.content==`string`&&e.content.startsWith(TASKS_NOTE_LABEL)}export{appendTaskContext,commitCallEntry,isTaskTool,offersTasks,taskSystemMessages,withTaskTools,workingTaskIds};
@@ -0,0 +1,66 @@
1
+ import type { TaskCancelResult, TaskWaitResult } from "#execution/tasks/calls.js";
2
+ export declare const TASK_WAIT_DESCRIPTION = "Call task_wait sparingly, only when you deliberately want to withhold a message from the user while waiting for a task result. Tasks keep running and their results reach you without calling task_wait. If the user should hear from you now, reply instead. Wait silently until any of your tasks has a result, a new message arrives, or timeoutSeconds pass. It returns after the first result, which follows in a <task_result> message; wait again only if you still want to withhold a reply until another result arrives. Waiting never stops a task.";
3
+ export declare const TASK_WAIT_TIMEOUT_DESCRIPTION = "Optional. Seconds to wait before returning without a result. Omit it to wait for a result or a new message, which is almost always right. Don't use short timeouts to check on tasks: results reach you without checking.";
4
+ export declare const TASK_CANCEL_DESCRIPTION = "Stop a task's current work. That work never reports back; if it already had a result, that result is still delivered. An agent, or any task that accepts more input, stays available: call its tool with its taskId to give it new work.";
5
+ export declare const TASK_CANCEL_TASK_ID_DESCRIPTION = "The id of the task to stop, copied from its \"Started task\" receipt or the [Tasks] note.";
6
+ /** The task block for a session a person reads, where a reply before a result is posted. */
7
+ export declare const TASK_SYSTEM_BLOCK: string;
8
+ /** The task block for a child or schedule session, whose caller reads only the final reply. */
9
+ export declare const FINAL_REPLY_TASK_SYSTEM_BLOCK: string;
10
+ /** Appended to a `serve` tool's description. */
11
+ export declare const SERVE_TOOL_DESCRIPTION = "To send this task more input, call this tool again with its taskId; without taskId, each call starts a new task.";
12
+ /** Appended to an agent tool's description, in place of the `serve` tool sentence. */
13
+ export declare const AGENT_SERVE_TOOL_DESCRIPTION = "It does not see this conversation, so put everything it needs in message. To correct or continue an agent task, call this tool again with its taskId; without taskId, each call starts a new agent.";
14
+ /** Describes the `taskId` eve adds to a `serve` tool's model input. */
15
+ export declare const TASK_ID_INPUT_DESCRIPTION = "The id of a task this tool started, copied from its \"Started task\" receipt or the [Tasks] note, to send it this input. Omit it to start a new task.";
16
+ /** Labels the `context.state` note that lists the turn's tasks. */
17
+ export declare const TASKS_NOTE_LABEL = "[Tasks]";
18
+ /** Opens every block of a `task.result` message. */
19
+ export declare const TASK_RESULT_TAG = "<task_result";
20
+ /** The failure a task reports when its record could not be decoded. */
21
+ export declare const UNREADABLE_TASK_ERROR = "The task's state could not be read.";
22
+ /** The receipt for a call that starts a task; a resumable task's says how to reach it again. */
23
+ export declare function renderTaskReceipt(task: {
24
+ readonly id: string;
25
+ readonly resumable: boolean;
26
+ readonly tool: string;
27
+ }): string;
28
+ /** The receipt for a call that reaches a resumable task by its `taskId`. */
29
+ export declare function renderTaskSentReceipt(taskId: string): string;
30
+ export declare function renderUnknownTaskError(taskId: string, tool: string): string;
31
+ export declare function renderUnknownCancelTaskError(taskId: string): string;
32
+ /** What the model reads when `task_cancel` answers. */
33
+ export declare function renderTaskCancelResult(taskId: string, result: TaskCancelResult): string;
34
+ export declare function renderTooManyTasksError(max: number, workingIds: readonly string[]): string;
35
+ export declare function renderFinalOutputWhileWorkingError(workingIds: readonly string[]): string;
36
+ /** What the model reads when `task_wait` returns after waiting `waitedMs`. */
37
+ export declare function renderTaskWaitResult(result: TaskWaitResult, waitedMs: number): string;
38
+ /** One `<task_result>` block of a `task.result` message. */
39
+ export interface TaskResultBlock {
40
+ readonly body: string;
41
+ readonly status: "completed" | "failed";
42
+ readonly taskId: string;
43
+ readonly tool: string;
44
+ }
45
+ /**
46
+ * The `task.result` message: one `<task_result>` block per result. All
47
+ * bodies share one size budget; a body past it is cut and marked.
48
+ */
49
+ export declare function renderTaskResults(results: readonly TaskResultBlock[]): string;
50
+ /**
51
+ * The blocks of a `task.result` message, in order, as a deterministic mock
52
+ * model reads them back; empty for any other text.
53
+ */
54
+ export declare function readTaskResults(message: string): TaskResultBlock[];
55
+ /** The text of a tool's `toModelOutput` result, or of a raw output without one. */
56
+ export declare function renderModelOutputText(output: unknown): string;
57
+ /** A task as the `[Tasks]` note lists it. */
58
+ export interface ListedTask {
59
+ readonly id: string;
60
+ readonly tool: string;
61
+ }
62
+ /** The `[Tasks]` note: working tasks, then idle resumable tasks when there are any. */
63
+ export declare function renderTasksNote(input: {
64
+ readonly idle: readonly ListedTask[];
65
+ readonly working: readonly ListedTask[];
66
+ }): string;
@@ -0,0 +1,8 @@
1
+ import{formatDuration}from"#shared/format-duration.js";const TASK_WAIT_DESCRIPTION=`Call task_wait sparingly, only when you deliberately want to withhold a message from the user while waiting for a task result. Tasks keep running and their results reach you without calling task_wait. If the user should hear from you now, reply instead. Wait silently until any of your tasks has a result, a new message arrives, or timeoutSeconds pass. It returns after the first result, which follows in a <task_result> message; wait again only if you still want to withhold a reply until another result arrives. Waiting never stops a task.`,TASK_WAIT_TIMEOUT_DESCRIPTION=`Optional. Seconds to wait before returning without a result. Omit it to wait for a result or a new message, which is almost always right. Don't use short timeouts to check on tasks: results reach you without checking.`,TASK_CANCEL_DESCRIPTION=`Stop a task's current work. That work never reports back; if it already had a result, that result is still delivered. An agent, or any task that accepts more input, stays available: call its tool with its taskId to give it new work.`,TASK_ID_SOURCE=`copied from its "Started task" receipt or the [Tasks] note`,TASK_CANCEL_TASK_ID_DESCRIPTION=`The id of the task to stop, ${TASK_ID_SOURCE}.`,TASK_SYSTEM_BLOCK_OPENING=[`Tasks`,`- A call that returns "Started task <id>" is a task: it keeps working while you continue. Every agent call is a task.`,`- Each result arrives once, in a <task_result> message. Until then you know nothing about it, so don't guess or report its result.`,`- Ending your reply doesn't end your turn. While tasks work, eve holds your turn and calls you again with each result.`],TASK_SYSTEM_BLOCK_CLOSING=[`- Don't redo work you delegated. Never use sleep or shell commands to wait for a task.`,`- To correct or continue an agent, or any task that accepts more input, call its tool again with its taskId. A new message never stops your tasks: answer it if it asks you something, decide whether it changes the work, then keep each task, correct an agent by taskId, or stop a task with task_cancel.`],TASK_SYSTEM_BLOCK=[...TASK_SYSTEM_BLOCK_OPENING,`- If you have nothing to tell the person until a result arrives, call task_wait. Start every independent task first, then wait.`,`- If the person should hear from you now, for example to confirm work is underway when they don't need the result yet, reply. When results arrive, report them without repeating yourself.`,...TASK_SYSTEM_BLOCK_CLOSING].join(`
2
+ `),FINAL_REPLY_TASK_SYSTEM_BLOCK=[...TASK_SYSTEM_BLOCK_OPENING,`- Only your final reply reaches your caller. While tasks work, call task_wait instead of replying. Start every independent task first, then wait.`,...TASK_SYSTEM_BLOCK_CLOSING].join(`
3
+ `),SERVE_TOOL_DESCRIPTION=`To send this task more input, call this tool again with its taskId; without taskId, each call starts a new task.`,AGENT_SERVE_TOOL_DESCRIPTION=`It does not see this conversation, so put everything it needs in message. To correct or continue an agent task, call this tool again with its taskId; without taskId, each call starts a new agent.`,TASK_ID_INPUT_DESCRIPTION=`The id of a task this tool started, ${TASK_ID_SOURCE}, to send it this input. Omit it to start a new task.`,TASKS_NOTE_LABEL=`[Tasks]`,TASK_RESULT_TAG=`<task_result`,UNREADABLE_TASK_ERROR=`The task's state could not be read.`;function renderTaskReceipt(e){let t=`Started task ${e.id}. Its result will arrive in a <task_result> message.`;return e.resumable?`${t} To send it another message, call ${e.tool} again with taskId ${e.id}.`:t}function renderTaskSentReceipt(e){return`Sent to task ${e}. Its reply will arrive in a <task_result> message.`}function renderUnknownTaskError(e,t){return`No task "${e}" is available to ${t}: it may have ended or belong to another tool. Start a new one by calling ${t} without taskId.`}function renderUnknownCancelTaskError(e){return`No task "${e}" is in this session. Copy an id from a "Started task" receipt or the [Tasks] note.`}function renderTaskCancelResult(e,t){return t.status===`already_finished`?`${e} had no work to stop.`:t.resumable?`Stopped ${e}'s current work; it won't report back. To give it new work, call ${t.tool} again with taskId ${e}.`:`Stopped ${e}; it won't report back.`}function renderTooManyTasksError(e,t){return`${String(e)} tasks are already working (${t.join(`, `)}). Wait with task_wait or stop one with task_cancel, then try again.`}function renderFinalOutputWhileWorkingError(e){return`You can't give your final output while tasks you started are working (${e.join(`, `)}). Wait for their results with task_wait, or stop a task with task_cancel, then call final_output.`}function renderTaskWaitResult(e,t){switch(e.status){case`settled`:return renderSettledWait(e.settled,e.working);case`timeout`:return`Stopped waiting after ${formatDuration(t)}; ${countWorking(e.working)}. ${resultsArriveLater(e.working.length)}`;case`interrupt`:return`A new message arrived, so the wait ended after ${formatDuration(t)}; ${countWorking(e.working)}. Read the message, answer it if it asks you something, and decide whether it changes this work: ${interruptChoices(e.working.length)}`}}function renderSettledWait(e,t){if(e.length===0&&t.length===0)return`No tasks are working.`;let n=[];if(e.length>0){let t=e.map(e=>`${e.id} ${e.status}`),r=e.length===1?`its result follows`:`their results follow`;n.push(`${joinList(t)}; ${r}.`)}return t.length>0&&n.push(`${capitalize(countWorking(t))}: ${t.join(`, `)}.`),n.join(` `)}function countWorking(e){return e.length===1?`1 task is still working`:`${String(e.length)} tasks are still working`}function resultsArriveLater(e){return e===1?`Its result arrives before your turn ends; wait again only if you need it now.`:`Their results arrive before your turn ends; wait again only if you need them now.`}function interruptChoices(e){return`${e===1?`keep the task`:`keep the tasks`}, call an agent again with its taskId to correct it, or stop a task with task_cancel.`}function renderTaskResults(e){let t={bytes:51200,lines:2e3};return e.map(e=>{let n=fitToBudget(escapeTaskResultBody(e.body),t),r=`id="${escapeAttribute(e.taskId)}" tool="${escapeAttribute(e.tool)}" status="${e.status}"`;return`${TASK_RESULT_TAG} ${r}>${n}</task_result>`}).join(`
4
+ `)}const TASK_RESULT_BLOCK=RegExp(`${TASK_RESULT_TAG} id="([^"]*)" tool="([^"]*)" status="(completed|failed)">([\\s\\S]*?)</task_result>`,`g`);function readTaskResults(e){return[...e.matchAll(TASK_RESULT_BLOCK)].map(([,e,t,n,r])=>({body:r.replaceAll(`<\\/task_result`,`</task_result`),status:n,taskId:e,tool:t}))}function fitToBudget(e,t){let n=new TextEncoder,r=e.split(`
5
+ `),i=[];for(let e of r){let r=n.encode(e).byteLength+1;if(t.lines===0||r>t.bytes){i.push(`[truncated]`),t.lines=0,t.bytes=0;break}i.push(e),--t.lines,t.bytes-=r}return i.join(`
6
+ `)}function escapeTaskResultBody(e){return e.replaceAll(`</task_result`,`<\\/task_result`)}function renderModelOutputText(e){if(typeof e==`string`)return e;if(isModelOutput(e))switch(e.type){case`text`:return String(e.value);case`json`:return JSON.stringify(e.value);case`content`:return renderContentParts(e.value)}return JSON.stringify(e??null)}function renderContentParts(e){return Array.isArray(e)?e.map(e=>e.type===`text`?String(e.text):`[file: ${typeof e.filename==`string`?e.filename:String(e.mediaType)}]`).join(`
7
+ `):``}function isModelOutput(e){if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`type`);return(t===`text`||t===`json`||t===`content`)&&`value`in e}function renderTasksNote(e){let t=[TASKS_NOTE_LABEL,`<tasks>`];for(let n of e.working)t.push(`<task ${listedTaskAttributes(n)} status="working"/>`);if(t.push(`</tasks>`),e.idle.length>0){t.push(`<idle>`);for(let n of e.idle)t.push(`<task ${listedTaskAttributes(n)}/>`);t.push(`</idle>`)}return t.join(`
8
+ `)}function listedTaskAttributes(e){return`id="${escapeAttribute(e.id)}" tool="${escapeAttribute(e.tool)}"`}function joinList(e){return e.length<=1?e.join(``):`${e.slice(0,-1).join(`, `)} and ${e.at(-1)}`}function capitalize(e){return e.charAt(0).toUpperCase()+e.slice(1)}function escapeAttribute(e){return e.replaceAll(`&`,`&amp;`).replaceAll(`"`,`&quot;`).replaceAll(`<`,`&lt;`).replaceAll(`>`,`&gt;`)}export{AGENT_SERVE_TOOL_DESCRIPTION,FINAL_REPLY_TASK_SYSTEM_BLOCK,SERVE_TOOL_DESCRIPTION,TASKS_NOTE_LABEL,TASK_CANCEL_DESCRIPTION,TASK_CANCEL_TASK_ID_DESCRIPTION,TASK_ID_INPUT_DESCRIPTION,TASK_RESULT_TAG,TASK_SYSTEM_BLOCK,TASK_WAIT_DESCRIPTION,TASK_WAIT_TIMEOUT_DESCRIPTION,UNREADABLE_TASK_ERROR,readTaskResults,renderFinalOutputWhileWorkingError,renderModelOutputText,renderTaskCancelResult,renderTaskReceipt,renderTaskResults,renderTaskSentReceipt,renderTaskWaitResult,renderTasksNote,renderTooManyTasksError,renderUnknownCancelTaskError,renderUnknownTaskError};
@@ -0,0 +1,19 @@
1
+ import type { SessionStateCursor } from "#execution/session/state-cursor.js";
2
+ import { type TaskToolCall } from "#execution/tasks/calls.js";
3
+ import { type TaskRunMessage } from "#execution/tasks/steps.js";
4
+ import { type TaskTable } from "#execution/tasks/table.js";
5
+ import type { WorkflowToolRunMessage } from "#execution/tools/workflow/messages.js";
6
+ import type { TaskCancelReason } from "#protocol/message.js";
7
+ import type { RuntimeActionResult } from "#shared/action-types.js";
8
+ /** Whether a run's message changes a task record. */
9
+ export declare function isTaskRunMessage(message: WorkflowToolRunMessage): message is TaskRunMessage;
10
+ /** The session's task table as the workflow body last committed it. */
11
+ export declare function sessionTaskTable(cursor: SessionStateCursor): TaskTable;
12
+ /**
13
+ * Cancels every working task: `session.cancel()` stops them, and a turn that
14
+ * ends anyway, such as by failing, cancels the tasks it held on.
15
+ */
16
+ export declare function cancelWorkingTasks(cursor: SessionStateCursor, reason: Exclude<TaskCancelReason, "task_cancel">): Promise<void>;
17
+ export declare function answerTaskCancel(cursor: SessionStateCursor, call: Extract<TaskToolCall, {
18
+ readonly kind: "task_cancel";
19
+ }>): Promise<RuntimeActionResult>;
@@ -0,0 +1 @@
1
+ import{TASK_CANCEL_TOOL_NAME,UNKNOWN_TASK_CODE}from"#protocol/task-tools.js";import{renderTaskCancelResult,renderUnknownCancelTaskError}from"#execution/tasks/render.js";import{readTaskTable,taskCancelResult,workingTasks}from"#execution/tasks/table.js";import{taskToolResult}from"#execution/tasks/calls.js";import{cancelTasksStep}from"#execution/tasks/steps.js";function isTaskRunMessage(e){return e.from.taskId===void 0?!1:e.kind===`started`||e.kind===`reply`||e.kind===`usage`||e.kind===`outcome`}function sessionTaskTable(e){return readTaskTable(e.sessionState.snapshot.session.state)}async function cancelWorkingTasks(e,t){let n=workingTasks(sessionTaskTable(e)).map(e=>e.id);n.length!==0&&await e.advance(e=>cancelTasksStep({...e,reason:t,taskIds:n}))}async function answerTaskCancel(e,t){let n=taskCancelResult(sessionTaskTable(e),t.taskId);if(n===void 0){let e={code:UNKNOWN_TASK_CODE,message:renderUnknownCancelTaskError(t.taskId)};return{...taskToolResult(t.callId,TASK_CANCEL_TOOL_NAME,e),isError:!0}}return n.status===`cancelled`&&await e.advance(e=>cancelTasksStep({...e,reason:`task_cancel`,taskIds:[t.taskId]})),taskToolResult(t.callId,TASK_CANCEL_TOOL_NAME,renderTaskCancelResult(t.taskId,n))}export{answerTaskCancel,cancelWorkingTasks,isTaskRunMessage,sessionTaskTable};
@@ -0,0 +1,34 @@
1
+ import { type StartWorkflowTaskInput } from "#execution/tools/workflow/start.js";
2
+ import type { HarnessSessionBase } from "#harness/types.js";
3
+ import { type TaskStartedStreamEvent } from "#protocol/message.js";
4
+ import type { RuntimeToolResultActionResult, WorkflowToolRunEntry } from "#shared/action-types.js";
5
+ type TaskDispatchInput = StartWorkflowTaskInput & {
6
+ readonly taskId: string;
7
+ };
8
+ /** The call's answer, and the `task.started` event the dispatch step publishes for it. */
9
+ interface TaskDispatchResult {
10
+ readonly result: RuntimeToolResultActionResult;
11
+ readonly session: HarnessSessionBase;
12
+ readonly started?: TaskStartedStreamEvent;
13
+ }
14
+ /** The entry of a run that does a task's work. */
15
+ type TaskRunEntry = Extract<WorkflowToolRunEntry, {
16
+ readonly taskId: string;
17
+ }>;
18
+ /**
19
+ * Starts the run for a task its model step committed, once, and answers the
20
+ * call with its receipt and the `task.started` event the dispatch step
21
+ * publishes. Runs inside that step, where the task's cap is enforced: past
22
+ * it, the record is dropped and the call fails.
23
+ */
24
+ export declare function startTaskRun(input: StartWorkflowTaskInput & {
25
+ readonly entry: TaskRunEntry;
26
+ }): Promise<TaskDispatchResult>;
27
+ /**
28
+ * Sends a call to the `serve` task it names by `taskId`. The task must be
29
+ * available to the tool, and a call that makes an idle task work again
30
+ * counts toward the cap. The call is recorded, reported as started, and sent
31
+ * to the task's run, whose body receives it from `receive()`.
32
+ */
33
+ export declare function sendToTask(input: TaskDispatchInput): Promise<TaskDispatchResult>;
34
+ export {};
@@ -0,0 +1 @@
1
+ import{createLogger,logError}from"#internal/logging.js";import{TOO_MANY_TASKS_CODE,UNKNOWN_TASK_CODE}from"#protocol/task-tools.js";import{createTaskStartedEvent}from"#protocol/message.js";import{renderTaskReceipt,renderTaskSentReceipt,renderTooManyTasksError,renderUnknownTaskError}from"#execution/tasks/render.js";import{MAX_WORKING_TASKS,findTask,isTaskAvailable,isTaskWorking,readTaskTable,recordTaskCall,recordTaskRun,removeTask,workingTasks,writeTaskTable}from"#execution/tasks/table.js";import{startFailureResult,startWorkflowToolCallRun}from"#execution/tools/workflow/start.js";import{sendTaskRunCommands}from"#execution/tasks/steps.js";import{createRuntimeToolResultFromValue}from"#harness/action-result-helpers.js";const log=createLogger(`execution.tasks`);async function startTaskRun(e){let{entry:t,session:n,task:r}=e,{taskId:i}=t,a={...e,taskId:i},o=startReceipt(a,t.entryPoint===`serve`),s=readTaskTable(n.state),c=findTask(s,i);if(c===void 0||!isTaskWorking(c))return{result:o,session:n};let l=tooManyTasks(a,s);if(l!==void 0)return{result:l,session:writeTaskTable(n,removeTask(s,i))};let u;try{u=await startWorkflowToolCallRun(e,t)}catch(e){return logError(log,`task run failed to start`,e,{taskId:i,toolName:r.toolName}),{result:startFailureResult(r,e),session:writeTaskTable(n,removeTask(s,i))}}return{result:o,session:writeTaskTable(n,recordTaskRun(s,i,u)),started:taskStartedEvent(a,c)}}async function sendToTask(e){let{session:t,task:n,taskId:r}=e,i=readTaskTable(t.state),a=findTask(i,r);if(!isTaskAvailable(a,n.toolName))return{result:unknownTaskResult(e),session:t};if(!isTaskWorking(a)){let n=tooManyTasks(e,i);if(n!==void 0)return{result:n,session:t}}let o=recordTaskCall(i,r,{agentContext:e.agentContext,auth:e.auth,callId:n.callId,executeInput:n.executeInput,input:n.input,sequence:e.batchEvent.sequence,stepIndex:e.batchEvent.stepIndex,turnId:e.batchEvent.turnId});return o.send!==void 0&&await sendTaskRunCommands(o.send),{result:toolResult(e,renderTaskSentReceipt(r)),session:writeTaskTable(t,o.table),started:taskStartedEvent(e,a)}}function tooManyTasks(e,t){let n=workingTasks(t).filter(e=>e.run!==void 0);if(n.length<MAX_WORKING_TASKS)return;let r=n.map(e=>e.id);return createRuntimeToolResultFromValue({callId:e.task.callId,isError:!0,output:{code:TOO_MANY_TASKS_CODE,message:renderTooManyTasksError(MAX_WORKING_TASKS,r)},toolName:e.task.toolName})}function unknownTaskResult(e){return createRuntimeToolResultFromValue({callId:e.task.callId,isError:!0,output:{code:UNKNOWN_TASK_CODE,message:renderUnknownTaskError(e.taskId,e.task.toolName)},toolName:e.task.toolName})}function taskStartedEvent(e,t){return createTaskStartedEvent({callId:e.task.callId,kind:t.kind,name:e.task.toolName,taskId:e.taskId,turnId:e.batchEvent.turnId})}function startReceipt(e,t){return toolResult(e,renderTaskReceipt({id:e.taskId,resumable:t,tool:e.task.toolName}))}function toolResult(e,t){return createRuntimeToolResultFromValue({callId:e.task.callId,output:t,toolName:e.task.toolName})}export{sendToTask,startTaskRun};
@@ -0,0 +1,31 @@
1
+ import { type TaskRunCommands } from "#execution/tasks/table.js";
2
+ import { type SessionStepState } from "#execution/publish-session-events.js";
3
+ import { type SessionStateTransition } from "#execution/session/state-delta.js";
4
+ import type { WorkflowToolRunMessage } from "#execution/tools/workflow/messages.js";
5
+ import { type TaskCancelReason } from "#protocol/message.js";
6
+ /** The messages a task's run sends that change its record. */
7
+ export type TaskRunMessage = Extract<WorkflowToolRunMessage, {
8
+ readonly kind: "outcome" | "reply" | "started" | "usage";
9
+ }>;
10
+ /** Applies one message from a task's run: started, a reply, usage no reply carried, or the run's outcome. */
11
+ export declare function applyTaskRunMessageStep(input: SessionStepState & {
12
+ readonly message: TaskRunMessage;
13
+ }): Promise<SessionStateTransition>;
14
+ /**
15
+ * Cancels tasks: their calls settle as cancelled and their runs are told to
16
+ * stop. A run ends itself within its cleanup deadline and reports cancelled.
17
+ * A `task()` run's cancel settles every request it relayed, so the session
18
+ * withdraws them in the same step and accepts no answer after it. A `serve()`
19
+ * run withdraws its stretch's questions itself, and the session decides each one.
20
+ */
21
+ export declare function cancelTasksStep(input: SessionStepState & TaskCancellationInput): Promise<SessionStateTransition>;
22
+ interface TaskCancellationInput {
23
+ readonly reason: TaskCancelReason;
24
+ readonly taskIds: readonly string[];
25
+ }
26
+ /**
27
+ * Sends commands to a task's run, in order. A run that already finished takes
28
+ * none; its outcome settles any call still waiting.
29
+ */
30
+ export declare function sendTaskRunCommands(commands: TaskRunCommands): Promise<void>;
31
+ export {};
@@ -0,0 +1 @@
1
+ import{createTaskSettledEvent}from"#protocol/message.js";import{cancelTask,findTask,finishTaskRun,markTaskRunStarted,readTaskTable,recordTaskRunUsage,settleRemainingTaskCalls,settleTaskCalls,writeTaskTable}from"#execution/tasks/table.js";import{readDurableSession,replaceDurableSessionSnapshot}from"#execution/durable-session-store.js";import{publishSessionEvents,relaySessionEvents}from"#execution/publish-session-events.js";import{withSessionStateDelta}from"#execution/session/state-delta.js";import{withdrawProxyInputRequests}from"#harness/proxy-input-requests.js";import{resumeHook}from"#internal/workflow/runtime.js";import{countRunUsage}from"#execution/agent-sessions/usage.js";import{workflowToolRunFailureOutput}from"#execution/tools/workflow/owner-inbox.js";import{ignoreGoneTarget}from"#execution/tasks/workflow-target.js";async function applyTaskRunMessageStep(e){"use step";return await withSessionStateDelta(e,applyTaskRunMessage)}async function applyTaskRunMessage(e){let{message:t}=e,n=t.from.taskId,r=readDurableSession(e.sessionState);if(n===void 0)return{serializedContext:e.serializedContext,sessionState:e.sessionState};let i=readTaskTable(r.state),a=[],o=[];switch(t.kind){case`started`:{let e=markTaskRunStarted(i,n,t.from.runId);i=e.table,e.held!==void 0&&await sendTaskRunCommands(e.held);break}case`reply`:{({session:r,table:i}=countTaskRunUsage(r,i,n,t));let e={output:t.output,status:`completed`},o=findTask(i,n),s=settleTaskCalls(i,{callIds:t.callIds,outcome:e,taskId:n});i=s.table,a.push(...taskSettledEvents(o,s.settled,e));break}case`usage`:({session:r,table:i}=countTaskRunUsage(r,i,n,t));break;case`outcome`:{({session:r,table:i}=countTaskRunUsage(r,i,n,t));let e=toOutcome(t),s=findTask(i,n),c=settleRemainingTaskCalls(i,n,e);a.push(...taskSettledEvents(s,c.settled,e)),i=finishTaskRun(c.table,n,t.from.runId),{events:o,session:r}=withdrawProxyInputRequests(r,(e,n)=>n.runId===t.from.runId);break}}let s=await relaySessionEvents({...e,sessionState:saveTable(e.sessionState,r,i)},o);return await publishSessionEvents({...e,...s},a)}async function cancelTasksStep(e){"use step";return await withSessionStateDelta(e,cancelTasks)}async function cancelTasks(e){let t=readDurableSession(e.sessionState),n=readTaskTable(t.state),r=[],i=new Set,a={reason:e.reason,status:`cancelled`};for(let t of e.taskIds){let e=findTask(n,t),o=cancelTask(n,t);n=o.table,r.push(...taskSettledEvents(e,o.settled,a)),o.send!==void 0&&(e?.resumable===!1&&i.add(o.send.run.runId),await sendTaskRunCommands(o.send))}let o=withdrawProxyInputRequests(t,(e,t)=>t.runId!==void 0&&i.has(t.runId)),s=await relaySessionEvents({...e,sessionState:saveTable(e.sessionState,o.session,n)},o.events);return await publishSessionEvents({...e,...s},r)}function taskSettledEvents(e,t,n){return e===void 0?[]:t.map(t=>taskSettledEvent(e,t,n))}function taskSettledEvent(e,t,n){let r={callId:t.callId,kind:e.kind,name:e.name,taskId:e.id,turnId:t.turnId};switch(n.status){case`completed`:return createTaskSettledEvent({...r,output:n.output,status:`completed`});case`failed`:return createTaskSettledEvent({...r,error:{message:n.error},status:`failed`});case`cancelled`:return createTaskSettledEvent(n.reason===void 0?{...r,status:`cancelled`}:{...r,cancel:{reason:n.reason},status:`cancelled`})}}async function sendTaskRunCommands(e){for(let t of e.commands)await ignoreGoneTarget(resumeHook(e.run.hookToken,toControlMessage(t)))}function toControlMessage(e){switch(e.kind){case`cancel`:return{kind:`cancel`,reason:`The task was cancelled.`};case`call`:return{call:e.call,kind:`call`}}}function toOutcome(e){switch(e.result.status){case`completed`:return{output:e.result.output,status:`completed`};case`failed`:return{error:failureMessage(e),status:`failed`};case`cancelled`:return{status:`cancelled`}}}function failureMessage(e){let t=workflowToolRunFailureOutput(e);if(typeof t==`string`)return t;let n=typeof t==`object`&&t?Reflect.get(t,`message`):void 0;return typeof n==`string`?n:JSON.stringify(t)}function countTaskRunUsage(e,t,n,r){let i=findTask(t,n)?.run;return r.usage===void 0||i?.runId!==r.from.runId?{session:e,table:t}:{session:countRunUsage(e,r.usage,i.usage),table:recordTaskRunUsage(t,n,r.usage)}}function saveTable(e,t,n){return replaceDurableSessionSnapshot({session:writeTaskTable(t,n),state:e})}export{applyTaskRunMessageStep,cancelTasksStep,sendTaskRunCommands};
@@ -0,0 +1,192 @@
1
+ import type { TaskCancelResult, TaskWaitResult } from "#execution/tasks/calls.js";
2
+ import type { WorkflowToolRunCall } from "#execution/tools/workflow/messages.js";
3
+ import type { SessionStateMap } from "#harness/types.js";
4
+ import type { JsonValue } from "#shared/json.js";
5
+ import type { TokenUsage } from "#shared/token-usage.js";
6
+ import type { TaskCancelReason, TaskStartedStreamEvent } from "#protocol/message.js";
7
+ /** At most this many tasks work at once in one session: a backstop normal use shouldn't reach. */
8
+ export declare const MAX_WORKING_TASKS = 32;
9
+ export interface TaskRunAddress {
10
+ readonly hookToken: string;
11
+ readonly runId: string;
12
+ }
13
+ /** The workflow run doing a task's work. `started` once its control hook can take commands. */
14
+ export interface TaskRun extends TaskRunAddress {
15
+ readonly started: boolean;
16
+ /** The run's delegated spend the session counted so far, which later totals count from. */
17
+ readonly usage?: TokenUsage;
18
+ }
19
+ /** A call the task admitted and hasn't settled, with the turn that made it. */
20
+ export interface TaskCall {
21
+ readonly callId: string;
22
+ readonly turnId: string;
23
+ }
24
+ /**
25
+ * A command for a task's run. Commands go over the run's one control hook, so
26
+ * the run sees calls and cancels in the order the session issued them.
27
+ */
28
+ export type TaskRunCommand = {
29
+ readonly kind: "cancel";
30
+ } | {
31
+ readonly call: WorkflowToolRunCall;
32
+ readonly kind: "call";
33
+ };
34
+ /** Commands for one run, to send in order. */
35
+ export interface TaskRunCommands {
36
+ readonly commands: readonly TaskRunCommand[];
37
+ readonly run: TaskRunAddress;
38
+ }
39
+ /** How a task call ended, as `task.settled` reports it. */
40
+ export type TaskOutcome = {
41
+ readonly output: JsonValue;
42
+ readonly status: "completed";
43
+ } | {
44
+ readonly error: string;
45
+ readonly status: "failed";
46
+ } | {
47
+ readonly reason?: TaskCancelReason;
48
+ readonly status: "cancelled";
49
+ };
50
+ /**
51
+ * An outcome the model receives, one per reply or run end, however many calls
52
+ * it settled. Cancelled work never reports back.
53
+ */
54
+ export type TaskResult = Exclude<TaskOutcome, {
55
+ readonly status: "cancelled";
56
+ }>;
57
+ export interface TaskRecord {
58
+ readonly id: string;
59
+ /** Whether the tool is an agent's, as `task.started` reports it. */
60
+ readonly kind: TaskStartedStreamEvent["data"]["kind"];
61
+ /** The tool whose call started the task. */
62
+ readonly name: string;
63
+ /** A `serve` tool's task: it takes more calls by its id, and is idle between results. */
64
+ readonly resumable: boolean;
65
+ /** Calls without a result. The task is working while any remain. */
66
+ readonly calls: readonly TaskCall[];
67
+ /** Results not yet delivered to the model. */
68
+ readonly results: readonly TaskResult[];
69
+ /** The task's run, from its start until it finishes. */
70
+ readonly run?: TaskRun;
71
+ /** Commands issued before the run could take them, sent in order once it reports started. */
72
+ readonly held?: readonly TaskRunCommand[];
73
+ }
74
+ export interface TaskTable {
75
+ readonly tasks: readonly TaskRecord[];
76
+ }
77
+ export declare function readTaskTable(state: SessionStateMap | undefined): TaskTable;
78
+ export declare function writeTaskTable<T extends {
79
+ readonly state?: SessionStateMap;
80
+ }>(session: T, table: TaskTable): T;
81
+ export declare function findTask(table: TaskTable, taskId: string): TaskRecord | undefined;
82
+ export declare function isTaskWorking(record: TaskRecord): boolean;
83
+ export declare function workingTasks(table: TaskTable): readonly TaskRecord[];
84
+ /**
85
+ * The most recently used idle resumable tasks, oldest first. The table keeps
86
+ * records in order of use, so the last ones are the most recent.
87
+ */
88
+ export declare function idleTasks(table: TaskTable): readonly TaskRecord[];
89
+ /**
90
+ * Whether a call may reach the task by its id: the task is resumable and
91
+ * unfinished, and was started by this tool.
92
+ */
93
+ export declare function isTaskAvailable(record: TaskRecord | undefined, toolName: string): record is TaskRecord & {
94
+ readonly run: TaskRun;
95
+ };
96
+ /** Tasks whose results the model has not received yet. */
97
+ export declare function tasksWithResults(table: TaskTable): readonly TaskRecord[];
98
+ /**
99
+ * What a wait on the turn's tasks returns now, or `undefined` to keep
100
+ * waiting. A waiting result, or nothing left working, ends it first;
101
+ * cancelled work never does.
102
+ */
103
+ export declare function taskWaitResult(table: TaskTable, wake: {
104
+ readonly interrupted: boolean;
105
+ readonly timedOut: boolean;
106
+ }): TaskWaitResult | undefined;
107
+ /**
108
+ * What `task_cancel` answers, or `undefined` for a task that doesn't exist.
109
+ * `cancelled` means the caller cancels the working task.
110
+ */
111
+ export declare function taskCancelResult(table: TaskTable, taskId: string): TaskCancelResult | undefined;
112
+ /** Runs that may still be doing work, including cancelled runs that haven't confirmed yet. */
113
+ export declare function liveTaskRuns(table: TaskTable): readonly TaskRunAddress[];
114
+ /** Records a task for a call the model just made, with a new id. */
115
+ export declare function createTask(table: TaskTable, input: {
116
+ readonly callId: string;
117
+ readonly kind: TaskRecord["kind"];
118
+ readonly name: string;
119
+ readonly resumable: boolean;
120
+ readonly turnId: string;
121
+ }): {
122
+ readonly table: TaskTable;
123
+ readonly taskId: string;
124
+ };
125
+ /** Drops a task that never started, such as one past the cap. */
126
+ export declare function removeTask(table: TaskTable, taskId: string): TaskTable;
127
+ export declare function recordTaskRun(table: TaskTable, taskId: string, run: TaskRunAddress): TaskTable;
128
+ /**
129
+ * The run can take commands now. Commands issued before this were held on the
130
+ * record; they are returned, in order, so the caller sends them.
131
+ */
132
+ export declare function markTaskRunStarted(table: TaskTable, taskId: string, runId: string): {
133
+ readonly held?: TaskRunCommands;
134
+ readonly table: TaskTable;
135
+ };
136
+ /**
137
+ * Records a call that reaches an available task by its id: the task is
138
+ * working until the call has a result. The call goes to a started run now, or
139
+ * is held until the run reports started. The record moves to the end of the
140
+ * table, which keeps records in order of use.
141
+ */
142
+ export declare function recordTaskCall(table: TaskTable, taskId: string, call: WorkflowToolRunCall): {
143
+ readonly send?: TaskRunCommands;
144
+ readonly table: TaskTable;
145
+ };
146
+ /**
147
+ * Settles calls that share one outcome, as one reply does, in one step. Each
148
+ * call settles once, with its own `task.settled`; the first outcome wins, so a
149
+ * call already settled, including one its owner cancelled, is dropped. The
150
+ * model receives the outcome once, since every call it settles would repeat it.
151
+ */
152
+ export declare function settleTaskCalls(table: TaskTable, input: {
153
+ readonly callIds: readonly string[];
154
+ readonly outcome: TaskOutcome;
155
+ readonly taskId: string;
156
+ }): {
157
+ readonly settled: readonly TaskCall[];
158
+ readonly table: TaskTable;
159
+ };
160
+ /**
161
+ * Settles every call still without a result with one outcome, as a run's
162
+ * return or failure does: a task's one call, or every call a resumable task
163
+ * received, or never received, since its last reply.
164
+ */
165
+ export declare function settleRemainingTaskCalls(table: TaskTable, taskId: string, outcome: TaskOutcome): {
166
+ readonly settled: readonly TaskCall[];
167
+ readonly table: TaskTable;
168
+ };
169
+ /** Records the run's delegated spend the session just counted. */
170
+ export declare function recordTaskRunUsage(table: TaskTable, taskId: string, usage: TokenUsage): TaskTable;
171
+ /** The task's run finished; nothing is left to cancel. */
172
+ export declare function finishTaskRun(table: TaskTable, taskId: string, runId: string): TaskTable;
173
+ /** What cancelling a task changed, and the command to send its run, if any. */
174
+ export interface TaskCancellation {
175
+ readonly send?: TaskRunCommands;
176
+ readonly settled: readonly TaskCall[];
177
+ readonly table: TaskTable;
178
+ }
179
+ /**
180
+ * Cancels a task's current work: its calls settle as cancelled and never
181
+ * report back, and a live run is told to stop. A run that hasn't started
182
+ * holds the cancel. A resumable task stays available and becomes idle.
183
+ */
184
+ export declare function cancelTask(table: TaskTable, taskId: string): TaskCancellation;
185
+ /**
186
+ * Hands every undelivered result to the model, which receives each
187
+ * once: `taken` is each record with its results, before they were cleared.
188
+ */
189
+ export declare function takeTaskResults(table: TaskTable): {
190
+ readonly taken: readonly TaskRecord[];
191
+ readonly table: TaskTable;
192
+ };
@@ -0,0 +1 @@
1
+ import{isNonEmptyString,isObject}from"#shared/guards.js";import{UNREADABLE_TASK_ERROR}from"#execution/tasks/render.js";const TASK_TABLE_STATE_KEY=`eve.taskTable`,MAX_WORKING_TASKS=32,EMPTY_TABLE={tasks:[]};function readTaskTable(e){let t=e?.[TASK_TABLE_STATE_KEY];return!isObject(t)||t.version!==1||!Array.isArray(t.tasks)?EMPTY_TABLE:{tasks:Array.from(t.tasks).flatMap(e=>{let t=decodeTaskRecord(e);return t===void 0?[]:[t]})}}function writeTaskTable(e,t){let n=pruneFinishedRecords(t.tasks);if(n.length===0){let t={...e.state};return delete t[TASK_TABLE_STATE_KEY],{...e,state:Object.keys(t).length===0?void 0:t}}let r={tasks:n,version:1};return{...e,state:{...e.state,[TASK_TABLE_STATE_KEY]:r}}}function findTask(e,t){return e.tasks.find(e=>e.id===t)}function isTaskWorking(e){return e.calls.length>0}function workingTasks(e){return e.tasks.filter(isTaskWorking)}function idleTasks(e){return e.tasks.filter(isResumableTaskIdle).slice(-10)}function isTaskAvailable(e,t){return e!==void 0&&e.resumable&&e.run!==void 0&&e.name===t}function tasksWithResults(e){return e.tasks.filter(e=>e.results.length>0)}function taskWaitResult(e,t){let n=tasksWithResults(e).map(e=>({id:e.id,status:e.results.at(-1).status})),r=workingTasks(e).map(e=>e.id);if(n.length>0||r.length===0)return{settled:n,status:`settled`,working:r};if(t.interrupted)return{status:`interrupt`,working:r};if(t.timedOut)return{status:`timeout`,working:r}}function taskCancelResult(e,t){let n=findTask(e,t);if(n!==void 0)return{resumable:n.resumable,status:isTaskWorking(n)?`cancelled`:`already_finished`,tool:n.name}}function liveTaskRuns(e){return e.tasks.flatMap(e=>e.run===void 0?[]:[toRunAddress(e.run)])}function createTask(e,t){let n=createTaskId(e,t.name),r={calls:[{callId:t.callId,turnId:t.turnId}],id:n,kind:t.kind,name:t.name,results:[],resumable:t.resumable};return{table:{...e,tasks:[...e.tasks,r]},taskId:n}}function removeTask(e,t){return{...e,tasks:e.tasks.filter(e=>e.id!==t)}}function recordTaskRun(e,t,n){return updateTask(e,t,e=>({...e,run:{...n,started:!1}}))}function markTaskRunStarted(e,t,n){let r=findTask(e,t);if(r?.run===void 0||r.run.runId!==n||r.run.started)return{table:e};let i={...r.run,started:!0},a=updateTask(e,t,e=>{let{held:t,...n}=e;return{...n,run:i}});return r.held===void 0?{table:a}:{held:{commands:r.held,run:toRunAddress(i)},table:a}}function recordTaskCall(e,t,n){let r=findTask(e,t);if(r?.run===void 0)return{table:e};let i={call:n,kind:`call`},a=r.run,o={callId:n.callId,turnId:n.turnId},s={...r,calls:[...r.calls,o]};a.started||(s={...s,held:[...r.held??[],i]});let c={...e,tasks:[...removeTask(e,t).tasks,s]};return a.started?{send:{commands:[i],run:toRunAddress(a)},table:c}:{table:c}}function settleTaskCalls(e,t){let n=new Set(t.callIds),r=(findTask(e,t.taskId)?.calls??[]).filter(e=>n.has(e.callId));if(r.length===0)return{settled:r,table:e};let{outcome:i}=t;return{settled:r,table:updateTask(e,t.taskId,e=>({...e,calls:e.calls.filter(e=>!n.has(e.callId)),results:i.status===`cancelled`?e.results:[...e.results,i]}))}}function settleRemainingTaskCalls(e,t,n){return settleTaskCalls(e,{callIds:findTask(e,t)?.calls.map(e=>e.callId)??[],outcome:n,taskId:t})}function recordTaskRunUsage(e,t,n){return updateTask(e,t,e=>e.run===void 0?e:{...e,run:{...e.run,usage:n}})}function finishTaskRun(e,t,n){return updateTask(e,t,e=>{if(e.run?.runId!==n)return e;let{held:t,run:r,...i}=e;return i})}function cancelTask(e,t){let n=findTask(e,t);if(n===void 0)return{settled:[],table:e};if(n.resumable)return cancelResumableTask(e,n);let r=cancelledCalls(n),i=n.run,a=updateTask(e,t,e=>{let t={...e,calls:[]};return i===void 0||i.started?t:{...t,held:[{kind:`cancel`}]}});return i===void 0||!i.started?{settled:r,table:a}:{send:cancelCommand(i),settled:r,table:a}}function cancelResumableTask(e,t){let n=t.run;if(n===void 0||!isTaskWorking(t))return{settled:[],table:e};let r=cancelledCalls(t),i=updateTask(e,t.id,e=>{let t={...e,calls:[]};return n.started?t:{...t,held:[{kind:`cancel`}]}});return n.started?{send:cancelCommand(n),settled:r,table:i}:{settled:r,table:i}}function cancelCommand(e){return{commands:[{kind:`cancel`}],run:toRunAddress(e)}}function takeTaskResults(e){let t=tasksWithResults(e),n=e.tasks.map(e=>t.includes(e)?{...e,results:[]}:e);return{table:{...e,tasks:n},taken:t}}function updateTask(e,t,n){return{...e,tasks:e.tasks.map(e=>e.id===t?n(e):e)}}function cancelledCalls(e){return e.run===void 0?[]:e.calls}function toRunAddress(e){return{hookToken:e.hookToken,runId:e.runId}}function createTaskId(e,t){for(;;){let n=crypto.getRandomValues(new Uint8Array(6)),r=`${t}-${Array.from(n,e=>`0123456789abcdefghjkmnpqrstvwxyz`[e%32]).join(``)}`;if(findTask(e,r)===void 0)return r}}function isResumableTaskIdle(e){return e.resumable&&e.run!==void 0&&!isTaskWorking(e)}function isFinishedRecord(e){return e.calls.length===0&&e.results.length===0&&e.run===void 0}function pruneFinishedRecords(e){let t=e.filter(isFinishedRecord),n=t.length-100;if(n<=0)return e;let r=new Set(t.slice(0,n));return e.filter(e=>!r.has(e))}function decodeTaskRecord(e){if(isTaskRecord(e))return e;if(isObject(e)&&isNonEmptyString(e.id)&&isNonEmptyString(e.name))return{calls:[],id:e.id,kind:e.kind===`agent`?`agent`:`tool`,name:e.name,results:[{error:UNREADABLE_TASK_ERROR,status:`failed`}],resumable:!1}}function isTaskRecord(e){return isObject(e)&&isNonEmptyString(e.id)&&isNonEmptyString(e.name)&&(e.kind===`agent`||e.kind===`tool`)&&typeof e.resumable==`boolean`&&Array.isArray(e.calls)&&Array.from(e.calls).every(isTaskCall)&&Array.isArray(e.results)&&Array.from(e.results).every(isTaskResult)&&(e.run===void 0||isTaskRun(e.run))&&(e.held===void 0||Array.isArray(e.held)&&Array.from(e.held).every(isTaskRunCommand))}function isTaskRunCommand(e){return isObject(e)?e.kind===`cancel`||e.kind===`call`&&isObject(e.call)&&isNonEmptyString(e.call.callId):!1}function isTaskResult(e){return isObject(e)?e.status===`completed`?`output`in e:e.status===`failed`&&typeof e.error==`string`:!1}function isTaskRun(e){return isObject(e)&&isNonEmptyString(e.runId)&&isNonEmptyString(e.hookToken)&&typeof e.started==`boolean`&&(e.usage===void 0||isObject(e.usage))}function isTaskCall(e){return isObject(e)&&isNonEmptyString(e.callId)&&typeof e.turnId==`string`}export{MAX_WORKING_TASKS,cancelTask,createTask,findTask,finishTaskRun,idleTasks,isTaskAvailable,isTaskWorking,liveTaskRuns,markTaskRunStarted,readTaskTable,recordTaskCall,recordTaskRun,recordTaskRunUsage,removeTask,settleRemainingTaskCalls,settleTaskCalls,takeTaskResults,taskCancelResult,taskWaitResult,tasksWithResults,workingTasks,writeTaskTable};