experimental-ash 0.3.0-alpha.2 → 0.3.0-alpha.22

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 (899) hide show
  1. package/README.md +0 -1
  2. package/bin/ash.d.ts +2 -2
  3. package/bin/ash.js +19 -4
  4. package/dist/src/channel/adapter-context.d.ts +8 -0
  5. package/dist/src/channel/adapter-context.d.ts.map +1 -0
  6. package/dist/src/channel/adapter-context.js +19 -0
  7. package/dist/src/channel/adapter-context.js.map +1 -0
  8. package/dist/src/channel/adapter.d.ts +57 -29
  9. package/dist/src/channel/adapter.d.ts.map +1 -1
  10. package/dist/src/channel/adapter.js +32 -3
  11. package/dist/src/channel/adapter.js.map +1 -1
  12. package/dist/src/channel/schedule.d.ts.map +1 -1
  13. package/dist/src/channel/slack-adapter.d.ts +40 -14
  14. package/dist/src/channel/slack-adapter.d.ts.map +1 -1
  15. package/dist/src/channel/slack-adapter.js +287 -37
  16. package/dist/src/channel/slack-adapter.js.map +1 -1
  17. package/dist/src/channel/slack-render.d.ts +13 -2
  18. package/dist/src/channel/slack-render.d.ts.map +1 -1
  19. package/dist/src/channel/slack-render.js +29 -3
  20. package/dist/src/channel/slack-render.js.map +1 -1
  21. package/dist/src/channel/slack-state.d.ts +27 -9
  22. package/dist/src/channel/slack-state.d.ts.map +1 -1
  23. package/dist/src/channel/slack-types.d.ts +26 -2
  24. package/dist/src/channel/slack-types.d.ts.map +1 -1
  25. package/dist/src/channel/types.d.ts +79 -87
  26. package/dist/src/channel/types.d.ts.map +1 -1
  27. package/dist/src/cli/dev/environment.d.ts.map +1 -1
  28. package/dist/src/cli/dev/environment.js +2 -1
  29. package/dist/src/cli/dev/environment.js.map +1 -1
  30. package/dist/src/cli/dev/repl.d.ts +26 -0
  31. package/dist/src/cli/dev/repl.d.ts.map +1 -1
  32. package/dist/src/cli/dev/repl.js +98 -21
  33. package/dist/src/cli/dev/repl.js.map +1 -1
  34. package/dist/src/cli/run.js.map +1 -1
  35. package/dist/src/cli/templates/init-app/package.json +1 -1
  36. package/dist/src/cli/ui/output.js.map +1 -1
  37. package/dist/src/client/client-error.d.ts.map +1 -1
  38. package/dist/src/client/client.d.ts +0 -39
  39. package/dist/src/client/client.d.ts.map +1 -1
  40. package/dist/src/client/client.js +0 -39
  41. package/dist/src/client/client.js.map +1 -1
  42. package/dist/src/client/index.d.ts +1 -1
  43. package/dist/src/client/index.d.ts.map +1 -1
  44. package/dist/src/client/index.js.map +1 -1
  45. package/dist/src/client/message-response.d.ts +0 -14
  46. package/dist/src/client/message-response.d.ts.map +1 -1
  47. package/dist/src/client/message-response.js +0 -14
  48. package/dist/src/client/message-response.js.map +1 -1
  49. package/dist/src/client/session.d.ts +0 -19
  50. package/dist/src/client/session.d.ts.map +1 -1
  51. package/dist/src/client/session.js +0 -19
  52. package/dist/src/client/session.js.map +1 -1
  53. package/dist/src/client/types.d.ts +1 -36
  54. package/dist/src/client/types.d.ts.map +1 -1
  55. package/dist/src/compiler/channel-url.d.ts +0 -9
  56. package/dist/src/compiler/channel-url.d.ts.map +1 -1
  57. package/dist/src/compiler/channel-url.js +0 -9
  58. package/dist/src/compiler/channel-url.js.map +1 -1
  59. package/dist/src/compiler/compile-agent.d.ts +6 -0
  60. package/dist/src/compiler/compile-agent.d.ts.map +1 -1
  61. package/dist/src/compiler/compile-agent.js +4 -2
  62. package/dist/src/compiler/compile-agent.js.map +1 -1
  63. package/dist/src/compiler/compile-from-memory.d.ts +74 -0
  64. package/dist/src/compiler/compile-from-memory.d.ts.map +1 -0
  65. package/dist/src/compiler/compile-from-memory.js +61 -0
  66. package/dist/src/compiler/compile-from-memory.js.map +1 -0
  67. package/dist/src/compiler/manifest.d.ts +39 -95
  68. package/dist/src/compiler/manifest.d.ts.map +1 -1
  69. package/dist/src/compiler/manifest.js +37 -20
  70. package/dist/src/compiler/manifest.js.map +1 -1
  71. package/dist/src/compiler/module-map.d.ts +1 -1
  72. package/dist/src/compiler/module-map.d.ts.map +1 -1
  73. package/dist/src/compiler/module-map.js +5 -5
  74. package/dist/src/compiler/module-map.js.map +1 -1
  75. package/dist/src/compiler/normalize-agent-config.d.ts.map +1 -1
  76. package/dist/src/compiler/normalize-agent-config.js +6 -8
  77. package/dist/src/compiler/normalize-agent-config.js.map +1 -1
  78. package/dist/src/compiler/normalize-helpers.d.ts +1 -6
  79. package/dist/src/compiler/normalize-helpers.d.ts.map +1 -1
  80. package/dist/src/compiler/normalize-helpers.js +2 -8
  81. package/dist/src/compiler/normalize-helpers.js.map +1 -1
  82. package/dist/src/compiler/normalize-prompt-layer.js +2 -2
  83. package/dist/src/compiler/normalize-prompt-layer.js.map +1 -1
  84. package/dist/src/compiler/normalize-sandbox.d.ts +0 -12
  85. package/dist/src/compiler/normalize-sandbox.d.ts.map +1 -1
  86. package/dist/src/compiler/normalize-sandbox.js +0 -12
  87. package/dist/src/compiler/normalize-sandbox.js.map +1 -1
  88. package/dist/src/compiler/normalize-schedule.js +2 -2
  89. package/dist/src/compiler/normalize-schedule.js.map +1 -1
  90. package/dist/src/compiler/normalize-skill.d.ts +2 -2
  91. package/dist/src/compiler/normalize-skill.d.ts.map +1 -1
  92. package/dist/src/compiler/normalize-skill.js +4 -3
  93. package/dist/src/compiler/normalize-skill.js.map +1 -1
  94. package/dist/src/compiler/normalize-subagent.js +3 -2
  95. package/dist/src/compiler/normalize-subagent.js.map +1 -1
  96. package/dist/src/compiler/normalize-tool.d.ts +1 -1
  97. package/dist/src/compiler/normalize-tool.d.ts.map +1 -1
  98. package/dist/src/context/container.d.ts +9 -0
  99. package/dist/src/context/container.d.ts.map +1 -1
  100. package/dist/src/context/container.js +15 -1
  101. package/dist/src/context/container.js.map +1 -1
  102. package/dist/src/context/key.d.ts +0 -41
  103. package/dist/src/context/key.d.ts.map +1 -1
  104. package/dist/src/context/key.js +0 -41
  105. package/dist/src/context/key.js.map +1 -1
  106. package/dist/src/context/keys.d.ts +2 -2
  107. package/dist/src/context/keys.d.ts.map +1 -1
  108. package/dist/src/context/keys.js +4 -4
  109. package/dist/src/context/keys.js.map +1 -1
  110. package/dist/src/context/providers/sandbox.d.ts +1 -1
  111. package/dist/src/context/providers/sandbox.d.ts.map +1 -1
  112. package/dist/src/context/providers/sandbox.js +1 -1
  113. package/dist/src/context/providers/sandbox.js.map +1 -1
  114. package/dist/src/context/run-step.d.ts.map +1 -1
  115. package/dist/src/context/run-step.js +0 -1
  116. package/dist/src/context/run-step.js.map +1 -1
  117. package/dist/src/context/seed-keys.d.ts +7 -1
  118. package/dist/src/context/seed-keys.d.ts.map +1 -1
  119. package/dist/src/context/seed-keys.js +6 -0
  120. package/dist/src/context/seed-keys.js.map +1 -1
  121. package/dist/src/discover/connections.d.ts +3 -17
  122. package/dist/src/discover/connections.d.ts.map +1 -1
  123. package/dist/src/discover/connections.js +2 -17
  124. package/dist/src/discover/connections.js.map +1 -1
  125. package/dist/src/discover/discover-agent.d.ts +8 -0
  126. package/dist/src/discover/discover-agent.d.ts.map +1 -1
  127. package/dist/src/discover/discover-agent.js +83 -23
  128. package/dist/src/discover/discover-agent.js.map +1 -1
  129. package/dist/src/discover/discover-subagent.d.ts +6 -0
  130. package/dist/src/discover/discover-subagent.d.ts.map +1 -1
  131. package/dist/src/discover/discover-subagent.js +15 -4
  132. package/dist/src/discover/discover-subagent.js.map +1 -1
  133. package/dist/src/discover/filesystem.d.ts.map +1 -1
  134. package/dist/src/discover/grammar.d.ts +22 -24
  135. package/dist/src/discover/grammar.d.ts.map +1 -1
  136. package/dist/src/discover/grammar.js +10 -37
  137. package/dist/src/discover/grammar.js.map +1 -1
  138. package/dist/src/discover/lib.d.ts +4 -5
  139. package/dist/src/discover/lib.d.ts.map +1 -1
  140. package/dist/src/discover/lib.js +3 -1
  141. package/dist/src/discover/lib.js.map +1 -1
  142. package/dist/src/discover/manifest.d.ts +4 -23
  143. package/dist/src/discover/manifest.d.ts.map +1 -1
  144. package/dist/src/discover/manifest.js +2 -2
  145. package/dist/src/discover/manifest.js.map +1 -1
  146. package/dist/src/discover/markdown.d.ts +5 -3
  147. package/dist/src/discover/markdown.d.ts.map +1 -1
  148. package/dist/src/discover/markdown.js +4 -5
  149. package/dist/src/discover/markdown.js.map +1 -1
  150. package/dist/src/discover/project-source.d.ts +108 -0
  151. package/dist/src/discover/project-source.d.ts.map +1 -0
  152. package/dist/src/discover/project-source.js +153 -0
  153. package/dist/src/discover/project-source.js.map +1 -0
  154. package/dist/src/discover/project.d.ts +12 -3
  155. package/dist/src/discover/project.d.ts.map +1 -1
  156. package/dist/src/discover/project.js +34 -31
  157. package/dist/src/discover/project.js.map +1 -1
  158. package/dist/src/discover/resource-tree.d.ts +4 -2
  159. package/dist/src/discover/resource-tree.d.ts.map +1 -1
  160. package/dist/src/discover/resource-tree.js +4 -3
  161. package/dist/src/discover/resource-tree.js.map +1 -1
  162. package/dist/src/discover/sandboxes.d.ts +3 -15
  163. package/dist/src/discover/sandboxes.d.ts.map +1 -1
  164. package/dist/src/discover/sandboxes.js +7 -20
  165. package/dist/src/discover/sandboxes.js.map +1 -1
  166. package/dist/src/discover/skills.d.ts +6 -0
  167. package/dist/src/discover/skills.d.ts.map +1 -1
  168. package/dist/src/discover/skills.js +18 -32
  169. package/dist/src/discover/skills.js.map +1 -1
  170. package/dist/src/discover/system.d.ts +3 -2
  171. package/dist/src/discover/system.d.ts.map +1 -1
  172. package/dist/src/discover/system.js +2 -0
  173. package/dist/src/discover/system.js.map +1 -1
  174. package/dist/src/evals/define-eval-suite.d.ts +0 -38
  175. package/dist/src/evals/define-eval-suite.d.ts.map +1 -1
  176. package/dist/src/evals/define-eval-suite.js +0 -38
  177. package/dist/src/evals/define-eval-suite.js.map +1 -1
  178. package/dist/src/evals/reporters/index.js.map +1 -1
  179. package/dist/src/evals/runner/derive-run-facts.js.map +1 -1
  180. package/dist/src/evals/runner/execute-suite.d.ts.map +1 -1
  181. package/dist/src/evals/runner/execute-suite.js +2 -1
  182. package/dist/src/evals/runner/execute-suite.js.map +1 -1
  183. package/dist/src/evals/runner/reporters/braintrust.d.ts +0 -15
  184. package/dist/src/evals/runner/reporters/braintrust.d.ts.map +1 -1
  185. package/dist/src/evals/runner/reporters/braintrust.js +0 -23
  186. package/dist/src/evals/runner/reporters/braintrust.js.map +1 -1
  187. package/dist/src/evals/runner/reporters/console.d.ts.map +1 -1
  188. package/dist/src/execution/authorization-challenge-defaults.d.ts +44 -0
  189. package/dist/src/execution/authorization-challenge-defaults.d.ts.map +1 -0
  190. package/dist/src/execution/authorization-challenge-defaults.js +61 -0
  191. package/dist/src/execution/authorization-challenge-defaults.js.map +1 -0
  192. package/dist/src/execution/await-authorization-orchestrator.d.ts +39 -0
  193. package/dist/src/execution/await-authorization-orchestrator.d.ts.map +1 -0
  194. package/dist/src/execution/await-authorization-orchestrator.js +273 -0
  195. package/dist/src/execution/await-authorization-orchestrator.js.map +1 -0
  196. package/dist/src/execution/await-authorization-splice.d.ts +24 -0
  197. package/dist/src/execution/await-authorization-splice.d.ts.map +1 -0
  198. package/dist/src/execution/await-authorization-splice.js +67 -0
  199. package/dist/src/execution/await-authorization-splice.js.map +1 -0
  200. package/dist/src/execution/connection-auth-steps.d.ts +140 -0
  201. package/dist/src/execution/connection-auth-steps.d.ts.map +1 -0
  202. package/dist/src/execution/connection-auth-steps.js +325 -0
  203. package/dist/src/execution/connection-auth-steps.js.map +1 -0
  204. package/dist/src/execution/continuous-entry.d.ts +13 -3
  205. package/dist/src/execution/continuous-entry.d.ts.map +1 -1
  206. package/dist/src/execution/continuous-entry.js +258 -35
  207. package/dist/src/execution/continuous-entry.js.map +1 -1
  208. package/dist/src/execution/continuous-runtime-errors.d.ts +29 -0
  209. package/dist/src/execution/continuous-runtime-errors.d.ts.map +1 -0
  210. package/dist/src/execution/continuous-runtime-errors.js +35 -0
  211. package/dist/src/execution/continuous-runtime-errors.js.map +1 -0
  212. package/dist/src/execution/continuous-runtime.d.ts +8 -12
  213. package/dist/src/execution/continuous-runtime.d.ts.map +1 -1
  214. package/dist/src/execution/continuous-runtime.js +27 -25
  215. package/dist/src/execution/continuous-runtime.js.map +1 -1
  216. package/dist/src/execution/node-step.d.ts +10 -3
  217. package/dist/src/execution/node-step.d.ts.map +1 -1
  218. package/dist/src/execution/node-step.js +2 -1
  219. package/dist/src/execution/node-step.js.map +1 -1
  220. package/dist/src/execution/runtime-context.d.ts +0 -13
  221. package/dist/src/execution/runtime-context.d.ts.map +1 -1
  222. package/dist/src/execution/runtime-context.js +4 -14
  223. package/dist/src/execution/runtime-context.js.map +1 -1
  224. package/dist/src/execution/sandboxes/bindings/local.d.ts +1 -1
  225. package/dist/src/execution/sandboxes/bindings/local.d.ts.map +1 -1
  226. package/dist/src/execution/sandboxes/bindings/local.js +11 -0
  227. package/dist/src/execution/sandboxes/bindings/local.js.map +1 -1
  228. package/dist/src/execution/sandboxes/bindings/vercel.d.ts +1 -11
  229. package/dist/src/execution/sandboxes/bindings/vercel.d.ts.map +1 -1
  230. package/dist/src/execution/sandboxes/bindings/vercel.js +7 -16
  231. package/dist/src/execution/sandboxes/bindings/vercel.js.map +1 -1
  232. package/dist/src/execution/sandboxes/ensure.d.ts +3 -3
  233. package/dist/src/execution/sandboxes/ensure.d.ts.map +1 -1
  234. package/dist/src/execution/sandboxes/ensure.js +1 -1
  235. package/dist/src/execution/sandboxes/ensure.js.map +1 -1
  236. package/dist/src/execution/sandboxes/glob-tool.d.ts +0 -13
  237. package/dist/src/execution/sandboxes/glob-tool.d.ts.map +1 -1
  238. package/dist/src/execution/sandboxes/glob-tool.js +2 -36
  239. package/dist/src/execution/sandboxes/glob-tool.js.map +1 -1
  240. package/dist/src/execution/sandboxes/grep-tool.d.ts +0 -10
  241. package/dist/src/execution/sandboxes/grep-tool.d.ts.map +1 -1
  242. package/dist/src/execution/sandboxes/grep-tool.js +0 -24
  243. package/dist/src/execution/sandboxes/grep-tool.js.map +1 -1
  244. package/dist/src/execution/sandboxes/prewarm.js +11 -11
  245. package/dist/src/execution/sandboxes/prewarm.js.map +1 -1
  246. package/dist/src/execution/sandboxes/ripgrep-probe.d.ts.map +1 -1
  247. package/dist/src/execution/sandboxes/ripgrep-probe.js +0 -8
  248. package/dist/src/execution/sandboxes/ripgrep-probe.js.map +1 -1
  249. package/dist/src/execution/sandboxes/session.d.ts +6 -14
  250. package/dist/src/execution/sandboxes/session.d.ts.map +1 -1
  251. package/dist/src/execution/sandboxes/session.js +4 -11
  252. package/dist/src/execution/sandboxes/session.js.map +1 -1
  253. package/dist/src/execution/session.d.ts +2 -2
  254. package/dist/src/execution/session.d.ts.map +1 -1
  255. package/dist/src/execution/session.js +1 -3
  256. package/dist/src/execution/session.js.map +1 -1
  257. package/dist/src/execution/skills/access.d.ts +2 -2
  258. package/dist/src/execution/skills/access.d.ts.map +1 -1
  259. package/dist/src/execution/skills/access.js +2 -2
  260. package/dist/src/execution/skills/access.js.map +1 -1
  261. package/dist/src/execution/skills/handle.d.ts +2 -2
  262. package/dist/src/execution/skills/handle.d.ts.map +1 -1
  263. package/dist/src/execution/skills/handle.js +5 -5
  264. package/dist/src/execution/skills/handle.js.map +1 -1
  265. package/dist/src/execution/skills/instructions.d.ts +2 -2
  266. package/dist/src/execution/skills/instructions.d.ts.map +1 -1
  267. package/dist/src/execution/skills/instructions.js.map +1 -1
  268. package/dist/src/execution/skills/seed.d.ts +2 -2
  269. package/dist/src/execution/skills/seed.d.ts.map +1 -1
  270. package/dist/src/execution/skills/seed.js +3 -3
  271. package/dist/src/execution/skills/seed.js.map +1 -1
  272. package/dist/src/execution/skills/types.d.ts +2 -2
  273. package/dist/src/execution/skills/types.d.ts.map +1 -1
  274. package/dist/src/execution/subagent-adapter.d.ts +71 -0
  275. package/dist/src/execution/subagent-adapter.d.ts.map +1 -0
  276. package/dist/src/execution/subagent-adapter.js +159 -0
  277. package/dist/src/execution/subagent-adapter.js.map +1 -0
  278. package/dist/src/execution/subagent-hitl-proxy.d.ts +55 -0
  279. package/dist/src/execution/subagent-hitl-proxy.d.ts.map +1 -0
  280. package/dist/src/execution/subagent-hitl-proxy.js +82 -0
  281. package/dist/src/execution/subagent-hitl-proxy.js.map +1 -0
  282. package/dist/src/execution/subagent-invocation.d.ts +11 -2
  283. package/dist/src/execution/subagent-invocation.d.ts.map +1 -1
  284. package/dist/src/execution/subagent-invocation.js.map +1 -1
  285. package/dist/src/execution/subagent-tool.d.ts +19 -6
  286. package/dist/src/execution/subagent-tool.d.ts.map +1 -1
  287. package/dist/src/execution/subagent-tool.js +14 -14
  288. package/dist/src/execution/subagent-tool.js.map +1 -1
  289. package/dist/src/execution/tool-compaction.d.ts +2 -17
  290. package/dist/src/execution/tool-compaction.d.ts.map +1 -1
  291. package/dist/src/execution/tool-compaction.js +8 -18
  292. package/dist/src/execution/tool-compaction.js.map +1 -1
  293. package/dist/src/execution/types.d.ts +11 -6
  294. package/dist/src/execution/types.d.ts.map +1 -1
  295. package/dist/src/execution/workflow-entry.d.ts +2 -1
  296. package/dist/src/execution/workflow-entry.d.ts.map +1 -1
  297. package/dist/src/execution/workflow-entry.js +271 -61
  298. package/dist/src/execution/workflow-entry.js.map +1 -1
  299. package/dist/src/execution/workflow-runtime.d.ts +1 -11
  300. package/dist/src/execution/workflow-runtime.d.ts.map +1 -1
  301. package/dist/src/execution/workflow-runtime.js +1 -11
  302. package/dist/src/execution/workflow-runtime.js.map +1 -1
  303. package/dist/src/execution/workflow-steps.d.ts +54 -13
  304. package/dist/src/execution/workflow-steps.d.ts.map +1 -1
  305. package/dist/src/execution/workflow-steps.js +187 -62
  306. package/dist/src/execution/workflow-steps.js.map +1 -1
  307. package/dist/src/harness/attachment-staging.d.ts +31 -0
  308. package/dist/src/harness/attachment-staging.d.ts.map +1 -0
  309. package/dist/src/harness/attachment-staging.js +296 -0
  310. package/dist/src/harness/attachment-staging.js.map +1 -0
  311. package/dist/src/harness/compaction.d.ts +2 -2
  312. package/dist/src/harness/compaction.d.ts.map +1 -1
  313. package/dist/src/harness/compaction.js +1 -3
  314. package/dist/src/harness/compaction.js.map +1 -1
  315. package/dist/src/harness/emission.d.ts +19 -5
  316. package/dist/src/harness/emission.d.ts.map +1 -1
  317. package/dist/src/harness/emission.js +48 -15
  318. package/dist/src/harness/emission.js.map +1 -1
  319. package/dist/src/harness/execute-tool.d.ts +1 -16
  320. package/dist/src/harness/execute-tool.d.ts.map +1 -1
  321. package/dist/src/harness/input-requests.d.ts +5 -11
  322. package/dist/src/harness/input-requests.d.ts.map +1 -1
  323. package/dist/src/harness/input-requests.js +13 -17
  324. package/dist/src/harness/input-requests.js.map +1 -1
  325. package/dist/src/harness/messages.d.ts.map +1 -1
  326. package/dist/src/harness/messages.js +24 -3
  327. package/dist/src/harness/messages.js.map +1 -1
  328. package/dist/src/harness/model-call-error.d.ts +5 -0
  329. package/dist/src/harness/model-call-error.d.ts.map +1 -0
  330. package/dist/src/harness/model-call-error.js +56 -0
  331. package/dist/src/harness/model-call-error.js.map +1 -0
  332. package/dist/src/harness/otel-integration.js +3 -3
  333. package/dist/src/harness/otel-integration.js.map +1 -1
  334. package/dist/src/harness/prompt-cache.d.ts +0 -14
  335. package/dist/src/harness/prompt-cache.d.ts.map +1 -1
  336. package/dist/src/harness/prompt-cache.js.map +1 -1
  337. package/dist/src/harness/provider-tools.js.map +1 -1
  338. package/dist/src/harness/proxy-input-requests.d.ts +37 -0
  339. package/dist/src/harness/proxy-input-requests.d.ts.map +1 -0
  340. package/dist/src/harness/proxy-input-requests.js +92 -0
  341. package/dist/src/harness/proxy-input-requests.js.map +1 -0
  342. package/dist/src/harness/runtime-actions.d.ts +24 -9
  343. package/dist/src/harness/runtime-actions.d.ts.map +1 -1
  344. package/dist/src/harness/runtime-actions.js +57 -13
  345. package/dist/src/harness/runtime-actions.js.map +1 -1
  346. package/dist/src/harness/step-hooks.d.ts +19 -3
  347. package/dist/src/harness/step-hooks.d.ts.map +1 -1
  348. package/dist/src/harness/step-hooks.js +104 -14
  349. package/dist/src/harness/step-hooks.js.map +1 -1
  350. package/dist/src/harness/tool-loop.d.ts.map +1 -1
  351. package/dist/src/harness/tool-loop.js +179 -62
  352. package/dist/src/harness/tool-loop.js.map +1 -1
  353. package/dist/src/harness/tool-result-pruning.d.ts +3 -20
  354. package/dist/src/harness/tool-result-pruning.d.ts.map +1 -1
  355. package/dist/src/harness/tool-result-pruning.js +10 -21
  356. package/dist/src/harness/tool-result-pruning.js.map +1 -1
  357. package/dist/src/harness/tools.d.ts +7 -11
  358. package/dist/src/harness/tools.d.ts.map +1 -1
  359. package/dist/src/harness/tools.js +13 -18
  360. package/dist/src/harness/tools.js.map +1 -1
  361. package/dist/src/harness/types.d.ts +18 -13
  362. package/dist/src/harness/types.d.ts.map +1 -1
  363. package/dist/src/internal/application/package.d.ts +0 -4
  364. package/dist/src/internal/application/package.d.ts.map +1 -1
  365. package/dist/src/internal/application/package.js +14 -24
  366. package/dist/src/internal/application/package.js.map +1 -1
  367. package/dist/src/internal/application/paths.d.ts +6 -1
  368. package/dist/src/internal/application/paths.d.ts.map +1 -1
  369. package/dist/src/internal/application/paths.js +12 -2
  370. package/dist/src/internal/application/paths.js.map +1 -1
  371. package/dist/src/internal/attachments/data.d.ts +19 -0
  372. package/dist/src/internal/attachments/data.d.ts.map +1 -0
  373. package/dist/src/internal/attachments/data.js +128 -0
  374. package/dist/src/internal/attachments/data.js.map +1 -0
  375. package/dist/src/internal/attachments/errors.d.ts +33 -0
  376. package/dist/src/internal/attachments/errors.d.ts.map +1 -0
  377. package/dist/src/internal/attachments/errors.js +27 -0
  378. package/dist/src/internal/attachments/errors.js.map +1 -0
  379. package/dist/src/internal/attachments/refs.d.ts +56 -0
  380. package/dist/src/internal/attachments/refs.d.ts.map +1 -0
  381. package/dist/src/internal/attachments/refs.js +95 -0
  382. package/dist/src/internal/attachments/refs.js.map +1 -0
  383. package/dist/src/internal/attachments/sandbox-refs.d.ts +47 -0
  384. package/dist/src/internal/attachments/sandbox-refs.d.ts.map +1 -0
  385. package/dist/src/internal/attachments/sandbox-refs.js +79 -0
  386. package/dist/src/internal/attachments/sandbox-refs.js.map +1 -0
  387. package/dist/src/internal/authored-definition/connection.d.ts.map +1 -1
  388. package/dist/src/internal/authored-definition/connection.js +27 -17
  389. package/dist/src/internal/authored-definition/connection.js.map +1 -1
  390. package/dist/src/internal/authored-definition/core.d.ts +0 -1
  391. package/dist/src/internal/authored-definition/core.d.ts.map +1 -1
  392. package/dist/src/internal/authored-definition/core.js +3 -9
  393. package/dist/src/internal/authored-definition/core.js.map +1 -1
  394. package/dist/src/internal/authored-definition/schema-backed.d.ts +3 -2
  395. package/dist/src/internal/authored-definition/schema-backed.d.ts.map +1 -1
  396. package/dist/src/internal/authored-definition/schema-backed.js +4 -4
  397. package/dist/src/internal/authored-definition/schema-backed.js.map +1 -1
  398. package/dist/src/internal/authored-module.d.ts +6 -1
  399. package/dist/src/internal/authored-module.d.ts.map +1 -1
  400. package/dist/src/internal/authored-module.js +12 -0
  401. package/dist/src/internal/authored-module.js.map +1 -1
  402. package/dist/src/internal/json-schema.d.ts +2 -1
  403. package/dist/src/internal/json-schema.d.ts.map +1 -1
  404. package/dist/src/internal/json-schema.js.map +1 -1
  405. package/dist/src/internal/logging.d.ts +97 -0
  406. package/dist/src/internal/logging.d.ts.map +1 -0
  407. package/dist/src/internal/logging.js +227 -0
  408. package/dist/src/internal/logging.js.map +1 -0
  409. package/dist/src/internal/nitro/host/build-application.d.ts.map +1 -1
  410. package/dist/src/internal/nitro/host/build-application.js +59 -22
  411. package/dist/src/internal/nitro/host/build-application.js.map +1 -1
  412. package/dist/src/internal/nitro/host/channel-routes.d.ts +39 -0
  413. package/dist/src/internal/nitro/host/channel-routes.d.ts.map +1 -0
  414. package/dist/src/internal/nitro/host/channel-routes.js +126 -0
  415. package/dist/src/internal/nitro/host/channel-routes.js.map +1 -0
  416. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.d.ts +0 -10
  417. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.d.ts.map +1 -1
  418. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.js +0 -10
  419. package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.js.map +1 -1
  420. package/dist/src/internal/nitro/host/configure-nitro-routes.d.ts +11 -0
  421. package/dist/src/internal/nitro/host/configure-nitro-routes.d.ts.map +1 -0
  422. package/dist/src/internal/nitro/host/configure-nitro-routes.js +193 -0
  423. package/dist/src/internal/nitro/host/configure-nitro-routes.js.map +1 -0
  424. package/dist/src/internal/nitro/host/create-application-nitro.d.ts +9 -2
  425. package/dist/src/internal/nitro/host/create-application-nitro.d.ts.map +1 -1
  426. package/dist/src/internal/nitro/host/create-application-nitro.js +276 -34
  427. package/dist/src/internal/nitro/host/create-application-nitro.js.map +1 -1
  428. package/dist/src/internal/nitro/host/dev-authored-source-watcher.d.ts.map +1 -1
  429. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +18 -104
  430. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js.map +1 -1
  431. package/dist/src/internal/nitro/host/prepare-application-host.d.ts.map +1 -1
  432. package/dist/src/internal/nitro/host/prepare-application-host.js +0 -2
  433. package/dist/src/internal/nitro/host/prepare-application-host.js.map +1 -1
  434. package/dist/src/internal/nitro/host/schedule-task-routes.d.ts +57 -0
  435. package/dist/src/internal/nitro/host/schedule-task-routes.d.ts.map +1 -0
  436. package/dist/src/internal/nitro/host/schedule-task-routes.js +148 -0
  437. package/dist/src/internal/nitro/host/schedule-task-routes.js.map +1 -0
  438. package/dist/src/internal/nitro/host/start-development-server.js.map +1 -1
  439. package/dist/src/internal/nitro/host/types.d.ts +4 -1
  440. package/dist/src/internal/nitro/host/types.d.ts.map +1 -1
  441. package/dist/src/internal/nitro/routes/health.d.ts +1 -1
  442. package/dist/src/internal/nitro/routes/health.d.ts.map +1 -1
  443. package/dist/src/internal/nitro/routes/health.js +7 -3
  444. package/dist/src/internal/nitro/routes/health.js.map +1 -1
  445. package/dist/src/internal/nitro/routes/home-page/build-home-page-response.js.map +1 -1
  446. package/dist/src/internal/nitro/routes/home-page/load-home-page-data.d.ts +2 -2
  447. package/dist/src/internal/nitro/routes/home-page/load-home-page-data.d.ts.map +1 -1
  448. package/dist/src/internal/nitro/routes/home-page/load-home-page-data.js.map +1 -1
  449. package/dist/src/internal/nitro/routes/home.js.map +1 -1
  450. package/dist/src/internal/nitro/routes/web-ui/assets/index-BEQWswDI.js +11 -0
  451. package/dist/src/internal/nitro/routes/web-ui/assets/style-Kqb6YxTP.css +2 -0
  452. package/dist/src/internal/nitro/routes/web-ui/index.html +2 -2
  453. package/dist/src/internal/nitro/routes/workflow-data.d.ts.map +1 -1
  454. package/dist/src/internal/nitro/routes/workflow-route-helpers.d.ts.map +1 -1
  455. package/dist/src/internal/nitro/routes/workflow-run-events.d.ts.map +1 -1
  456. package/dist/src/internal/nitro/routes/workflow-run-steps.d.ts.map +1 -1
  457. package/dist/src/internal/nitro/routes/workflow-run.d.ts.map +1 -1
  458. package/dist/src/internal/nitro/routes/workflow-runs.d.ts.map +1 -1
  459. package/dist/src/internal/runtime-registry.d.ts +1 -1
  460. package/dist/src/internal/runtime-registry.d.ts.map +1 -1
  461. package/dist/src/internal/runtime-registry.js +1 -1
  462. package/dist/src/internal/runtime-registry.js.map +1 -1
  463. package/dist/src/internal/workflow-bundle/builder.d.ts +32 -0
  464. package/dist/src/internal/workflow-bundle/builder.d.ts.map +1 -0
  465. package/dist/src/internal/{message → workflow-bundle}/builder.js +42 -21
  466. package/dist/src/internal/workflow-bundle/builder.js.map +1 -0
  467. package/dist/src/internal/workflow-bundle/nitro-step-entry.d.ts +18 -0
  468. package/dist/src/internal/workflow-bundle/nitro-step-entry.d.ts.map +1 -0
  469. package/dist/src/internal/workflow-bundle/nitro-step-entry.js +132 -0
  470. package/dist/src/internal/workflow-bundle/nitro-step-entry.js.map +1 -0
  471. package/dist/src/internal/{message → workflow-bundle}/vercel-workflow-output.d.ts +1 -0
  472. package/dist/src/internal/workflow-bundle/vercel-workflow-output.d.ts.map +1 -0
  473. package/dist/src/internal/{message → workflow-bundle}/vercel-workflow-output.js +73 -5
  474. package/dist/src/internal/workflow-bundle/vercel-workflow-output.js.map +1 -0
  475. package/dist/src/protocol/message.d.ts +163 -8
  476. package/dist/src/protocol/message.d.ts.map +1 -1
  477. package/dist/src/protocol/message.js +185 -2
  478. package/dist/src/protocol/message.js.map +1 -1
  479. package/dist/src/protocol/routes.d.ts +0 -9
  480. package/dist/src/protocol/routes.d.ts.map +1 -1
  481. package/dist/src/protocol/routes.js +0 -11
  482. package/dist/src/protocol/routes.js.map +1 -1
  483. package/dist/src/public/channels/auth.d.ts +9 -129
  484. package/dist/src/public/channels/auth.d.ts.map +1 -1
  485. package/dist/src/public/channels/auth.js +5 -110
  486. package/dist/src/public/channels/auth.js.map +1 -1
  487. package/dist/src/public/channels/http.d.ts +10 -46
  488. package/dist/src/public/channels/http.d.ts.map +1 -1
  489. package/dist/src/public/channels/http.js +131 -47
  490. package/dist/src/public/channels/http.js.map +1 -1
  491. package/dist/src/public/channels/index.d.ts +5 -25
  492. package/dist/src/public/channels/index.d.ts.map +1 -1
  493. package/dist/src/public/channels/index.js +4 -24
  494. package/dist/src/public/channels/index.js.map +1 -1
  495. package/dist/src/public/channels/slack/index.d.ts +26 -111
  496. package/dist/src/public/channels/slack/index.d.ts.map +1 -1
  497. package/dist/src/public/channels/slack/index.js +271 -109
  498. package/dist/src/public/channels/slack/index.js.map +1 -1
  499. package/dist/src/public/channels/slack/lowlevel.d.ts +1 -9
  500. package/dist/src/public/channels/slack/lowlevel.d.ts.map +1 -1
  501. package/dist/src/public/channels/slack/lowlevel.js +1 -9
  502. package/dist/src/public/channels/slack/lowlevel.js.map +1 -1
  503. package/dist/src/public/channels/slack/slack-interaction.d.ts +3 -5
  504. package/dist/src/public/channels/slack/slack-interaction.d.ts.map +1 -1
  505. package/dist/src/public/channels/slack/slack-interaction.js +14 -14
  506. package/dist/src/public/channels/slack/slack-interaction.js.map +1 -1
  507. package/dist/src/public/channels/upload-policy.d.ts +95 -0
  508. package/dist/src/public/channels/upload-policy.d.ts.map +1 -0
  509. package/dist/src/public/channels/upload-policy.js +154 -0
  510. package/dist/src/public/channels/upload-policy.js.map +1 -0
  511. package/dist/src/public/connections/errors.d.ts +113 -0
  512. package/dist/src/public/connections/errors.d.ts.map +1 -0
  513. package/dist/src/public/connections/errors.js +54 -0
  514. package/dist/src/public/connections/errors.js.map +1 -0
  515. package/dist/src/public/connections/index.d.ts +5 -22
  516. package/dist/src/public/connections/index.d.ts.map +1 -1
  517. package/dist/src/public/connections/index.js +2 -20
  518. package/dist/src/public/connections/index.js.map +1 -1
  519. package/dist/src/public/context/index.d.ts +1 -1
  520. package/dist/src/public/context/index.d.ts.map +1 -1
  521. package/dist/src/public/context/index.js +1 -1
  522. package/dist/src/public/context/index.js.map +1 -1
  523. package/dist/src/public/definitions/agent.d.ts +2 -20
  524. package/dist/src/public/definitions/agent.d.ts.map +1 -1
  525. package/dist/src/public/definitions/agent.js.map +1 -1
  526. package/dist/src/public/definitions/channel.d.ts +2 -51
  527. package/dist/src/public/definitions/channel.d.ts.map +1 -1
  528. package/dist/src/public/definitions/channel.js +1 -26
  529. package/dist/src/public/definitions/channel.js.map +1 -1
  530. package/dist/src/public/definitions/connections/mcp.d.ts +26 -15
  531. package/dist/src/public/definitions/connections/mcp.d.ts.map +1 -1
  532. package/dist/src/public/definitions/connections/mcp.js +12 -0
  533. package/dist/src/public/definitions/connections/mcp.js.map +1 -1
  534. package/dist/src/public/definitions/instrumentation.d.ts +0 -15
  535. package/dist/src/public/definitions/instrumentation.d.ts.map +1 -1
  536. package/dist/src/public/definitions/instrumentation.js +0 -15
  537. package/dist/src/public/definitions/instrumentation.js.map +1 -1
  538. package/dist/src/public/definitions/sandbox.d.ts +15 -19
  539. package/dist/src/public/definitions/sandbox.d.ts.map +1 -1
  540. package/dist/src/public/definitions/sandbox.js.map +1 -1
  541. package/dist/src/public/definitions/skill.d.ts +3 -13
  542. package/dist/src/public/definitions/skill.d.ts.map +1 -1
  543. package/dist/src/public/definitions/skill.js.map +1 -1
  544. package/dist/src/public/definitions/subagent.d.ts +3 -14
  545. package/dist/src/public/definitions/subagent.d.ts.map +1 -1
  546. package/dist/src/public/definitions/subagent.js.map +1 -1
  547. package/dist/src/public/definitions/tool.d.ts +21 -76
  548. package/dist/src/public/definitions/tool.d.ts.map +1 -1
  549. package/dist/src/public/definitions/tool.js +0 -14
  550. package/dist/src/public/definitions/tool.js.map +1 -1
  551. package/dist/src/public/helpers/markdown.d.ts +0 -10
  552. package/dist/src/public/helpers/markdown.d.ts.map +1 -1
  553. package/dist/src/public/helpers/markdown.js +3 -5
  554. package/dist/src/public/helpers/markdown.js.map +1 -1
  555. package/dist/src/public/index.d.ts +1 -17
  556. package/dist/src/public/index.d.ts.map +1 -1
  557. package/dist/src/public/index.js +1 -17
  558. package/dist/src/public/index.js.map +1 -1
  559. package/dist/src/public/instrumentation/index.d.ts +1 -18
  560. package/dist/src/public/instrumentation/index.d.ts.map +1 -1
  561. package/dist/src/public/instrumentation/index.js +1 -18
  562. package/dist/src/public/instrumentation/index.js.map +1 -1
  563. package/dist/src/public/sandboxes/backends/default.d.ts +0 -12
  564. package/dist/src/public/sandboxes/backends/default.d.ts.map +1 -1
  565. package/dist/src/public/sandboxes/backends/default.js +0 -12
  566. package/dist/src/public/sandboxes/backends/default.js.map +1 -1
  567. package/dist/src/public/sandboxes/backends/vercel.d.ts +2 -20
  568. package/dist/src/public/sandboxes/backends/vercel.d.ts.map +1 -1
  569. package/dist/src/public/sandboxes/backends/vercel.js +2 -20
  570. package/dist/src/public/sandboxes/backends/vercel.js.map +1 -1
  571. package/dist/src/public/sandboxes/defaults.d.ts.map +1 -1
  572. package/dist/src/public/sandboxes/defaults.js +0 -14
  573. package/dist/src/public/sandboxes/defaults.js.map +1 -1
  574. package/dist/src/public/sandboxes/index.d.ts +1 -34
  575. package/dist/src/public/sandboxes/index.d.ts.map +1 -1
  576. package/dist/src/public/sandboxes/index.js +1 -34
  577. package/dist/src/public/sandboxes/index.js.map +1 -1
  578. package/dist/src/public/schedules/index.d.ts +1 -16
  579. package/dist/src/public/schedules/index.d.ts.map +1 -1
  580. package/dist/src/public/schedules/index.js +1 -16
  581. package/dist/src/public/schedules/index.js.map +1 -1
  582. package/dist/src/public/skills/index.d.ts +0 -17
  583. package/dist/src/public/skills/index.d.ts.map +1 -1
  584. package/dist/src/public/skills/index.js +0 -17
  585. package/dist/src/public/skills/index.js.map +1 -1
  586. package/dist/src/public/subagents/index.d.ts +0 -13
  587. package/dist/src/public/subagents/index.d.ts.map +1 -1
  588. package/dist/src/public/subagents/index.js +0 -13
  589. package/dist/src/public/subagents/index.js.map +1 -1
  590. package/dist/src/public/system/index.d.ts +1 -27
  591. package/dist/src/public/system/index.d.ts.map +1 -1
  592. package/dist/src/public/system/index.js +1 -27
  593. package/dist/src/public/system/index.js.map +1 -1
  594. package/dist/src/public/tools/approval/index.d.ts +0 -18
  595. package/dist/src/public/tools/approval/index.d.ts.map +1 -1
  596. package/dist/src/public/tools/approval/index.js +0 -18
  597. package/dist/src/public/tools/approval/index.js.map +1 -1
  598. package/dist/src/public/tools/defaults.d.ts.map +1 -1
  599. package/dist/src/public/tools/defaults.js +0 -20
  600. package/dist/src/public/tools/defaults.js.map +1 -1
  601. package/dist/src/public/tools/define-bash-tool.d.ts +1 -17
  602. package/dist/src/public/tools/define-bash-tool.d.ts.map +1 -1
  603. package/dist/src/public/tools/define-bash-tool.js +1 -17
  604. package/dist/src/public/tools/define-bash-tool.js.map +1 -1
  605. package/dist/src/public/tools/define-glob-tool.js.map +1 -1
  606. package/dist/src/public/tools/define-grep-tool.js.map +1 -1
  607. package/dist/src/public/tools/define-read-file-tool.js.map +1 -1
  608. package/dist/src/public/tools/define-write-file-tool.js.map +1 -1
  609. package/dist/src/public/tools/index.d.ts +1 -24
  610. package/dist/src/public/tools/index.d.ts.map +1 -1
  611. package/dist/src/public/tools/index.js +1 -24
  612. package/dist/src/public/tools/index.js.map +1 -1
  613. package/dist/src/public/tools/internal.d.ts +0 -10
  614. package/dist/src/public/tools/internal.d.ts.map +1 -1
  615. package/dist/src/public/tools/internal.js +0 -10
  616. package/dist/src/public/tools/internal.js.map +1 -1
  617. package/dist/src/public/types/json.d.ts +29 -0
  618. package/dist/src/public/types/json.d.ts.map +1 -0
  619. package/dist/src/public/types/json.js +14 -0
  620. package/dist/src/public/types/json.js.map +1 -0
  621. package/dist/src/runtime/actions/types.d.ts +14 -14
  622. package/dist/src/runtime/actions/types.js +2 -2
  623. package/dist/src/runtime/actions/types.js.map +1 -1
  624. package/dist/src/runtime/agent/bootstrap-model-utils.js.map +1 -1
  625. package/dist/src/runtime/agent/bootstrap.d.ts +6 -8
  626. package/dist/src/runtime/agent/bootstrap.d.ts.map +1 -1
  627. package/dist/src/runtime/agent/bootstrap.js +28 -13
  628. package/dist/src/runtime/agent/bootstrap.js.map +1 -1
  629. package/dist/src/runtime/agent/resolve-model.js.map +1 -1
  630. package/dist/src/runtime/channels/registry.d.ts +2 -0
  631. package/dist/src/runtime/channels/registry.d.ts.map +1 -1
  632. package/dist/src/runtime/channels/registry.js +87 -22
  633. package/dist/src/runtime/channels/registry.js.map +1 -1
  634. package/dist/src/runtime/connections/authorization-tokens.d.ts +57 -0
  635. package/dist/src/runtime/connections/authorization-tokens.d.ts.map +1 -0
  636. package/dist/src/runtime/connections/authorization-tokens.js +93 -0
  637. package/dist/src/runtime/connections/authorization-tokens.js.map +1 -0
  638. package/dist/src/runtime/connections/mcp-client.d.ts +7 -0
  639. package/dist/src/runtime/connections/mcp-client.d.ts.map +1 -1
  640. package/dist/src/runtime/connections/mcp-client.js +60 -2
  641. package/dist/src/runtime/connections/mcp-client.js.map +1 -1
  642. package/dist/src/runtime/connections/principal-context.d.ts +101 -0
  643. package/dist/src/runtime/connections/principal-context.d.ts.map +1 -0
  644. package/dist/src/runtime/connections/principal-context.js +112 -0
  645. package/dist/src/runtime/connections/principal-context.js.map +1 -0
  646. package/dist/src/runtime/connections/principal.d.ts +74 -0
  647. package/dist/src/runtime/connections/principal.d.ts.map +1 -0
  648. package/dist/src/runtime/connections/principal.js +107 -0
  649. package/dist/src/runtime/connections/principal.js.map +1 -0
  650. package/dist/src/runtime/connections/registry.d.ts.map +1 -1
  651. package/dist/src/runtime/connections/types.d.ts +175 -15
  652. package/dist/src/runtime/connections/types.d.ts.map +1 -1
  653. package/dist/src/runtime/connections/types.js +7 -1
  654. package/dist/src/runtime/connections/types.js.map +1 -1
  655. package/dist/src/runtime/connections/validate-authorization.d.ts +27 -0
  656. package/dist/src/runtime/connections/validate-authorization.d.ts.map +1 -0
  657. package/dist/src/runtime/connections/validate-authorization.js +57 -0
  658. package/dist/src/runtime/connections/validate-authorization.js.map +1 -0
  659. package/dist/src/runtime/framework-channels/index.d.ts +2 -18
  660. package/dist/src/runtime/framework-channels/index.d.ts.map +1 -1
  661. package/dist/src/runtime/framework-channels/index.js +2 -18
  662. package/dist/src/runtime/framework-channels/index.js.map +1 -1
  663. package/dist/src/runtime/framework-tools/ask-question.d.ts +2 -1
  664. package/dist/src/runtime/framework-tools/ask-question.d.ts.map +1 -1
  665. package/dist/src/runtime/framework-tools/ask-question.js.map +1 -1
  666. package/dist/src/runtime/framework-tools/bash.d.ts +2 -1
  667. package/dist/src/runtime/framework-tools/bash.d.ts.map +1 -1
  668. package/dist/src/runtime/framework-tools/bash.js.map +1 -1
  669. package/dist/src/runtime/framework-tools/connection-search.d.ts +52 -13
  670. package/dist/src/runtime/framework-tools/connection-search.d.ts.map +1 -1
  671. package/dist/src/runtime/framework-tools/connection-search.js +131 -13
  672. package/dist/src/runtime/framework-tools/connection-search.js.map +1 -1
  673. package/dist/src/runtime/framework-tools/connection-tools.d.ts +22 -13
  674. package/dist/src/runtime/framework-tools/connection-tools.d.ts.map +1 -1
  675. package/dist/src/runtime/framework-tools/connection-tools.js +70 -31
  676. package/dist/src/runtime/framework-tools/connection-tools.js.map +1 -1
  677. package/dist/src/runtime/framework-tools/glob.d.ts +2 -1
  678. package/dist/src/runtime/framework-tools/glob.d.ts.map +1 -1
  679. package/dist/src/runtime/framework-tools/glob.js.map +1 -1
  680. package/dist/src/runtime/framework-tools/grep.d.ts +2 -1
  681. package/dist/src/runtime/framework-tools/grep.d.ts.map +1 -1
  682. package/dist/src/runtime/framework-tools/grep.js.map +1 -1
  683. package/dist/src/runtime/framework-tools/index.d.ts +0 -4
  684. package/dist/src/runtime/framework-tools/index.d.ts.map +1 -1
  685. package/dist/src/runtime/framework-tools/index.js +1 -7
  686. package/dist/src/runtime/framework-tools/index.js.map +1 -1
  687. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.d.ts +79 -0
  688. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.d.ts.map +1 -0
  689. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.js +64 -0
  690. package/dist/src/runtime/framework-tools/pending-connection-tool-calls.js.map +1 -0
  691. package/dist/src/runtime/framework-tools/read-file.d.ts +2 -1
  692. package/dist/src/runtime/framework-tools/read-file.d.ts.map +1 -1
  693. package/dist/src/runtime/framework-tools/read-file.js.map +1 -1
  694. package/dist/src/runtime/framework-tools/write-file.d.ts +2 -1
  695. package/dist/src/runtime/framework-tools/write-file.d.ts.map +1 -1
  696. package/dist/src/runtime/framework-tools/write-file.js.map +1 -1
  697. package/dist/src/runtime/graph.d.ts +5 -5
  698. package/dist/src/runtime/graph.d.ts.map +1 -1
  699. package/dist/src/runtime/graph.js +6 -6
  700. package/dist/src/runtime/graph.js.map +1 -1
  701. package/dist/src/runtime/input/types.d.ts +3 -3
  702. package/dist/src/runtime/loaders/bundled-artifacts.d.ts +8 -3
  703. package/dist/src/runtime/loaders/bundled-artifacts.d.ts.map +1 -1
  704. package/dist/src/runtime/loaders/bundled-artifacts.js +13 -8
  705. package/dist/src/runtime/loaders/bundled-artifacts.js.map +1 -1
  706. package/dist/src/runtime/loaders/compile-metadata.d.ts.map +1 -1
  707. package/dist/src/runtime/loaders/manifest.d.ts.map +1 -1
  708. package/dist/src/runtime/loaders/module-map.d.ts.map +1 -1
  709. package/dist/src/runtime/prompt/compose.d.ts +2 -2
  710. package/dist/src/runtime/prompt/compose.d.ts.map +1 -1
  711. package/dist/src/runtime/prompt/compose.js.map +1 -1
  712. package/dist/src/runtime/resolve-agent-graph.d.ts +2 -2
  713. package/dist/src/runtime/resolve-agent-graph.d.ts.map +1 -1
  714. package/dist/src/runtime/resolve-agent-graph.js +30 -46
  715. package/dist/src/runtime/resolve-agent-graph.js.map +1 -1
  716. package/dist/src/runtime/resolve-agent.js +4 -4
  717. package/dist/src/runtime/resolve-agent.js.map +1 -1
  718. package/dist/src/runtime/resolve-channel.js +4 -3
  719. package/dist/src/runtime/resolve-channel.js.map +1 -1
  720. package/dist/src/runtime/resolve-connection.d.ts.map +1 -1
  721. package/dist/src/runtime/resolve-connection.js +9 -13
  722. package/dist/src/runtime/resolve-connection.js.map +1 -1
  723. package/dist/src/runtime/resolve-helpers.d.ts +4 -9
  724. package/dist/src/runtime/resolve-helpers.d.ts.map +1 -1
  725. package/dist/src/runtime/resolve-helpers.js +2 -9
  726. package/dist/src/runtime/resolve-helpers.js.map +1 -1
  727. package/dist/src/runtime/resolve-sandbox.d.ts.map +1 -1
  728. package/dist/src/runtime/resolve-sandbox.js +3 -2
  729. package/dist/src/runtime/resolve-sandbox.js.map +1 -1
  730. package/dist/src/runtime/resolve-tool.d.ts.map +1 -1
  731. package/dist/src/runtime/resolve-tool.js +3 -2
  732. package/dist/src/runtime/resolve-tool.js.map +1 -1
  733. package/dist/src/runtime/sandboxes/keys.d.ts +3 -3
  734. package/dist/src/runtime/sandboxes/keys.d.ts.map +1 -1
  735. package/dist/src/runtime/sandboxes/keys.js +6 -23
  736. package/dist/src/runtime/sandboxes/keys.js.map +1 -1
  737. package/dist/src/runtime/sandboxes/registry.d.ts +0 -9
  738. package/dist/src/runtime/sandboxes/registry.d.ts.map +1 -1
  739. package/dist/src/runtime/sandboxes/registry.js +0 -9
  740. package/dist/src/runtime/sandboxes/registry.js.map +1 -1
  741. package/dist/src/runtime/schedules/register.d.ts +1 -10
  742. package/dist/src/runtime/schedules/register.d.ts.map +1 -1
  743. package/dist/src/runtime/schedules/register.js +0 -31
  744. package/dist/src/runtime/schedules/register.js.map +1 -1
  745. package/dist/src/runtime/schedules/resolve-schedule.d.ts.map +1 -1
  746. package/dist/src/runtime/schedules/resolve-schedule.js.map +1 -1
  747. package/dist/src/runtime/sessions/auth.d.ts +4 -4
  748. package/dist/src/runtime/sessions/compiled-agent-cache.d.ts +10 -6
  749. package/dist/src/runtime/sessions/compiled-agent-cache.d.ts.map +1 -1
  750. package/dist/src/runtime/sessions/compiled-agent-cache.js +25 -20
  751. package/dist/src/runtime/sessions/compiled-agent-cache.js.map +1 -1
  752. package/dist/src/runtime/sessions/runtime-session.d.ts +59 -0
  753. package/dist/src/runtime/sessions/runtime-session.d.ts.map +1 -0
  754. package/dist/src/runtime/sessions/runtime-session.js +64 -0
  755. package/dist/src/runtime/sessions/runtime-session.js.map +1 -0
  756. package/dist/src/runtime/sessions/turn.d.ts +9 -18
  757. package/dist/src/runtime/sessions/turn.d.ts.map +1 -1
  758. package/dist/src/runtime/skills/load-skill-content.d.ts +2 -3
  759. package/dist/src/runtime/skills/load-skill-content.d.ts.map +1 -1
  760. package/dist/src/runtime/skills/load-skill-content.js +1 -4
  761. package/dist/src/runtime/skills/load-skill-content.js.map +1 -1
  762. package/dist/src/runtime/skills/load-skills.d.ts +2 -18
  763. package/dist/src/runtime/skills/load-skills.d.ts.map +1 -1
  764. package/dist/src/runtime/skills/load-skills.js +1 -30
  765. package/dist/src/runtime/skills/load-skills.js.map +1 -1
  766. package/dist/src/runtime/skills/source.d.ts +6 -19
  767. package/dist/src/runtime/skills/source.d.ts.map +1 -1
  768. package/dist/src/runtime/skills/source.js +33 -14
  769. package/dist/src/runtime/skills/source.js.map +1 -1
  770. package/dist/src/runtime/subagents/registry.d.ts +4 -4
  771. package/dist/src/runtime/subagents/registry.d.ts.map +1 -1
  772. package/dist/src/runtime/subagents/registry.js +8 -10
  773. package/dist/src/runtime/subagents/registry.js.map +1 -1
  774. package/dist/src/runtime/tools/registry.js.map +1 -1
  775. package/dist/src/runtime/types.d.ts +28 -67
  776. package/dist/src/runtime/types.d.ts.map +1 -1
  777. package/dist/src/runtime/workspace/spec.d.ts +2 -15
  778. package/dist/src/runtime/workspace/spec.d.ts.map +1 -1
  779. package/dist/src/runtime/workspace/spec.js +0 -13
  780. package/dist/src/runtime/workspace/spec.js.map +1 -1
  781. package/dist/src/sandbox/state.d.ts +32 -0
  782. package/dist/src/sandbox/state.d.ts.map +1 -0
  783. package/dist/src/sandbox/state.js +2 -0
  784. package/dist/src/sandbox/state.js.map +1 -0
  785. package/dist/src/services/dev-client/send-message.d.ts +1 -0
  786. package/dist/src/services/dev-client/send-message.d.ts.map +1 -1
  787. package/dist/src/services/dev-client/send-message.js +4 -0
  788. package/dist/src/services/dev-client/send-message.js.map +1 -1
  789. package/dist/src/services/dev-client/session.js.map +1 -1
  790. package/dist/src/services/dev-client/vercel-auth-error.d.ts +42 -0
  791. package/dist/src/services/dev-client/vercel-auth-error.d.ts.map +1 -0
  792. package/dist/src/services/dev-client/vercel-auth-error.js +96 -0
  793. package/dist/src/services/dev-client/vercel-auth-error.js.map +1 -0
  794. package/dist/src/services/host.js.map +1 -1
  795. package/dist/src/shared/agent-definition.d.ts +13 -0
  796. package/dist/src/shared/agent-definition.d.ts.map +1 -0
  797. package/dist/src/shared/agent-definition.js +2 -0
  798. package/dist/src/shared/agent-definition.js.map +1 -0
  799. package/dist/src/shared/errors.d.ts +18 -0
  800. package/dist/src/shared/errors.d.ts.map +1 -0
  801. package/dist/src/shared/errors.js +67 -0
  802. package/dist/src/shared/errors.js.map +1 -0
  803. package/dist/src/shared/guards.d.ts +32 -0
  804. package/dist/src/shared/guards.d.ts.map +1 -0
  805. package/dist/src/shared/guards.js +36 -0
  806. package/dist/src/shared/guards.js.map +1 -0
  807. package/dist/src/shared/json.d.ts.map +1 -0
  808. package/dist/src/shared/json.js.map +1 -0
  809. package/dist/src/shared/node.d.ts +7 -0
  810. package/dist/src/shared/node.d.ts.map +1 -0
  811. package/dist/src/shared/node.js +2 -0
  812. package/dist/src/shared/node.js.map +1 -0
  813. package/dist/src/shared/optional.d.ts +2 -0
  814. package/dist/src/shared/optional.d.ts.map +1 -0
  815. package/dist/src/shared/optional.js +2 -0
  816. package/dist/src/shared/optional.js.map +1 -0
  817. package/dist/src/shared/skill-definition.d.ts +8 -0
  818. package/dist/src/shared/skill-definition.d.ts.map +1 -0
  819. package/dist/src/shared/skill-definition.js +2 -0
  820. package/dist/src/shared/skill-definition.js.map +1 -0
  821. package/dist/src/{internal → shared}/source-ref.d.ts +17 -11
  822. package/dist/src/shared/source-ref.d.ts.map +1 -0
  823. package/dist/src/{internal → shared}/source-ref.js.map +1 -1
  824. package/dist/src/shared/subagent-definition.d.ts +18 -0
  825. package/dist/src/shared/subagent-definition.d.ts.map +1 -0
  826. package/dist/src/shared/subagent-definition.js +2 -0
  827. package/dist/src/shared/subagent-definition.js.map +1 -0
  828. package/dist/src/shared/tool-definition.d.ts +27 -0
  829. package/dist/src/shared/tool-definition.d.ts.map +1 -0
  830. package/dist/src/shared/tool-definition.js +2 -0
  831. package/dist/src/shared/tool-definition.js.map +1 -0
  832. package/docs/external-agent-protocol.md +15 -15
  833. package/docs/internals/README.md +22 -27
  834. package/docs/internals/channels.md +24 -22
  835. package/docs/internals/compiler-and-artifacts.md +2 -2
  836. package/docs/internals/context.md +16 -16
  837. package/docs/internals/discovery.md +4 -4
  838. package/docs/internals/message-runtime.md +15 -10
  839. package/docs/internals/testing.md +238 -0
  840. package/docs/public/agent-ts.md +7 -5
  841. package/docs/public/auth-and-route-protection.md +4 -1
  842. package/docs/public/channels/README.md +18 -1
  843. package/docs/public/channels/attachments.md +219 -0
  844. package/docs/public/cli-build-and-debugging.md +4 -1
  845. package/docs/public/context-control.md +4 -1
  846. package/docs/public/evals.md +4 -1
  847. package/docs/public/getting-started.md +4 -1
  848. package/docs/public/human-in-the-loop.md +10 -11
  849. package/docs/public/instrumentation.md +5 -2
  850. package/docs/public/meta.json +27 -0
  851. package/docs/public/project-layout.md +18 -15
  852. package/docs/public/runs-and-streaming.md +4 -1
  853. package/docs/public/sandboxes.md +7 -4
  854. package/docs/public/schedules.md +4 -1
  855. package/docs/public/session-context.md +7 -15
  856. package/docs/public/skills.md +4 -1
  857. package/docs/public/subagents.md +5 -2
  858. package/docs/public/tools.md +10 -12
  859. package/docs/public/typescript-api.md +12 -2
  860. package/docs/public/vercel-deployment.md +4 -1
  861. package/docs/public/workspace.md +4 -1
  862. package/package.json +38 -36
  863. package/dist/src/execution/sandboxes/types.d.ts +0 -33
  864. package/dist/src/execution/sandboxes/types.d.ts.map +0 -1
  865. package/dist/src/execution/sandboxes/types.js +0 -2
  866. package/dist/src/execution/sandboxes/types.js.map +0 -1
  867. package/dist/src/execution/session-snapshot.d.ts +0 -21
  868. package/dist/src/execution/session-snapshot.d.ts.map +0 -1
  869. package/dist/src/execution/session-snapshot.js +0 -58
  870. package/dist/src/execution/session-snapshot.js.map +0 -1
  871. package/dist/src/internal/message/builder.d.ts +0 -27
  872. package/dist/src/internal/message/builder.d.ts.map +0 -1
  873. package/dist/src/internal/message/builder.js.map +0 -1
  874. package/dist/src/internal/message/health.d.ts +0 -5
  875. package/dist/src/internal/message/health.d.ts.map +0 -1
  876. package/dist/src/internal/message/health.js +0 -13
  877. package/dist/src/internal/message/health.js.map +0 -1
  878. package/dist/src/internal/message/vercel-workflow-output.d.ts.map +0 -1
  879. package/dist/src/internal/message/vercel-workflow-output.js.map +0 -1
  880. package/dist/src/internal/nitro/host/configure-message-routes.d.ts +0 -10
  881. package/dist/src/internal/nitro/host/configure-message-routes.d.ts.map +0 -1
  882. package/dist/src/internal/nitro/host/configure-message-routes.js +0 -232
  883. package/dist/src/internal/nitro/host/configure-message-routes.js.map +0 -1
  884. package/dist/src/internal/nitro/routes/web-ui/assets/index.js +0 -11
  885. package/dist/src/internal/nitro/routes/web-ui/assets/style.css +0 -2
  886. package/dist/src/internal/nitro/shims/schedule-task-handler.d.ts +0 -16
  887. package/dist/src/internal/nitro/shims/schedule-task-handler.d.ts.map +0 -1
  888. package/dist/src/internal/nitro/shims/schedule-task-handler.js +0 -39
  889. package/dist/src/internal/nitro/shims/schedule-task-handler.js.map +0 -1
  890. package/dist/src/internal/source-ref.d.ts.map +0 -1
  891. package/dist/src/runtime/json.d.ts.map +0 -1
  892. package/dist/src/runtime/json.js.map +0 -1
  893. package/dist/src/runtime/skills/types.d.ts +0 -8
  894. package/dist/src/runtime/skills/types.d.ts.map +0 -1
  895. package/dist/src/runtime/skills/types.js +0 -2
  896. package/dist/src/runtime/skills/types.js.map +0 -1
  897. /package/dist/src/{runtime → shared}/json.d.ts +0 -0
  898. /package/dist/src/{runtime → shared}/json.js +0 -0
  899. /package/dist/src/{internal → shared}/source-ref.js +0 -0
package/README.md CHANGED
@@ -128,4 +128,3 @@ Start here:
128
128
  - [`packages/ash/README.md`](packages/ash/README.md) is the package-facing overview
129
129
  - [`skills/agent/SKILL.md`](skills/agent/SKILL.md) is the app-authoring skill
130
130
  - [`skills/framework/SKILL.md`](skills/framework/SKILL.md) is the internals skill
131
-
package/bin/ash.d.ts CHANGED
@@ -15,9 +15,9 @@ export interface BootstrapOptions {
15
15
  packageRoot?: string;
16
16
 
17
17
  /**
18
- * Absolute path to the TypeScript CLI entrypoint used for bootstrap builds.
18
+ * Absolute path to the tsgo CLI entrypoint used for bootstrap builds.
19
19
  */
20
- tscCliPath?: string;
20
+ tsgoCliPath?: string;
21
21
  }
22
22
 
23
23
  export interface BootstrapCommandOptions {
package/bin/ash.js CHANGED
@@ -18,7 +18,7 @@ function createBootstrapOptions(overrides = {}) {
18
18
  copyAssetsScriptPath:
19
19
  overrides.copyAssetsScriptPath ?? resolve(packageRoot, "scripts", "copy-static-assets.mjs"),
20
20
  packageRoot,
21
- tscCliPath: overrides.tscCliPath,
21
+ tsgoCliPath: overrides.tsgoCliPath,
22
22
  };
23
23
  }
24
24
 
@@ -105,8 +105,17 @@ function inputTsconfigPath({ packageRoot }) {
105
105
  return resolve(packageRoot, "tsconfig.json");
106
106
  }
107
107
 
108
- function resolveTscCliPath({ tscCliPath }) {
109
- return tscCliPath ?? require.resolve("typescript/bin/tsc");
108
+ function resolveTsgoCliPath({ tsgoCliPath }) {
109
+ if (tsgoCliPath) {
110
+ return tsgoCliPath;
111
+ }
112
+
113
+ // The `@typescript/native-preview` package only exports `./package.json`
114
+ // in its `exports` map, so `require.resolve("@typescript/native-preview/bin/tsgo.js")`
115
+ // fails with ERR_PACKAGE_PATH_NOT_EXPORTED. Resolve the package.json
116
+ // (which is exported) and join to the binary path manually.
117
+ const packageJsonPath = require.resolve("@typescript/native-preview/package.json");
118
+ return resolve(dirname(packageJsonPath), "bin", "tsgo.js");
110
119
  }
111
120
 
112
121
  async function runCommand(command, args, options) {
@@ -174,7 +183,7 @@ export async function ensureBuiltCli(overrides = {}, dependencies = {}) {
174
183
 
175
184
  await executeCommand(
176
185
  process.execPath,
177
- [resolveTscCliPath({ tscCliPath: options.tscCliPath }), "-p", "tsconfig.json"],
186
+ [resolveTsgoCliPath({ tsgoCliPath: options.tsgoCliPath }), "-p", "tsconfig.json"],
178
187
  {
179
188
  cwd: options.packageRoot,
180
189
  },
@@ -229,5 +238,11 @@ if (await isDirectExecution()) {
229
238
  const message = error instanceof Error ? error.message : String(error);
230
239
  console.error(message);
231
240
  process.exitCode = 1;
241
+ } finally {
242
+ // The CLI bootstraps build/dev toolchains that can leave native service
243
+ // handles alive after the command has completed. Once the top-level
244
+ // command resolves, terminate the bin process explicitly so commands like
245
+ // `ash dev` + `/exit` do not hang on leaked implementation details.
246
+ process.exit(process.exitCode ?? 0);
232
247
  }
233
248
  }
@@ -0,0 +1,8 @@
1
+ import type { ContextAccessor } from "../context/key.js";
2
+ import type { ChannelAdapter, ChannelAdapterContext } from "./adapter.js";
3
+ /**
4
+ * Builds the {@link ChannelAdapterContext} the runtime hands to an
5
+ * adapter's `deliver` hook, event handlers, and attachment resolver.
6
+ */
7
+ export declare function buildAdapterContext<TCtx extends ChannelAdapterContext<any> = ChannelAdapterContext>(adapter: ChannelAdapter<TCtx>, accessor: ContextAccessor): TCtx;
8
+ //# sourceMappingURL=adapter-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-context.d.ts","sourceRoot":"","sources":["../../../src/channel/adapter-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1E;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAC/D,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAahE"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Builds the {@link ChannelAdapterContext} the runtime hands to an
3
+ * adapter's `deliver` hook, event handlers, and attachment resolver.
4
+ */
5
+ export function buildAdapterContext(adapter, accessor) {
6
+ // `adapter.state` is stored loosely (`Record<string, unknown>`)
7
+ // because it round-trips through JSON at step boundaries. The
8
+ // adapter is responsible for seeding state in the shape its
9
+ // `createAdapterContext` / handlers expect, so the cast to the
10
+ // narrower `TCtx`-derived state is safe at this seam.
11
+ const baseCtx = {
12
+ ctx: accessor,
13
+ state: adapter.state ?? {},
14
+ };
15
+ return adapter.createAdapterContext
16
+ ? adapter.createAdapterContext(baseCtx)
17
+ : baseCtx;
18
+ }
19
+ //# sourceMappingURL=adapter-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-context.js","sourceRoot":"","sources":["../../../src/channel/adapter-context.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAEjC,OAA6B,EAAE,QAAyB;IACxD,gEAAgE;IAChE,8DAA8D;IAC9D,4DAA4D;IAC5D,+DAA+D;IAC/D,sDAAsD;IACtD,MAAM,OAAO,GAAG;QACd,GAAG,EAAE,QAAQ;QACb,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;KACiD,CAAC;IAC9E,OAAO,OAAO,CAAC,oBAAoB;QACjC,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC;QACvC,CAAC,CAAE,OAA2B,CAAC;AACnC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { ContextAccessor } from "../context/key.js";
2
2
  import type { ContextProvider } from "../context/provider.js";
3
3
  import type { StepInput } from "../harness/types.js";
4
+ import type { AttachmentRef } from "../internal/attachments/refs.js";
4
5
  import type { HandleMessageStreamEvent } from "../protocol/message.js";
5
6
  import type { DeliverPayload } from "./types.js";
6
7
  /**
@@ -24,6 +25,12 @@ export interface ChannelAdapterContext<TState = Record<string, unknown>> {
24
25
  */
25
26
  readonly ctx: ContextAccessor;
26
27
  }
28
+ /**
29
+ * Extracts the state type from a {@link ChannelAdapterContext} generic.
30
+ * Used internally so adapter-level types can declare their state shape
31
+ * once (via `TCtx`) and have helpers narrow consistently.
32
+ */
33
+ type StateOf<TCtx> = TCtx extends ChannelAdapterContext<infer S> ? S : Record<string, unknown>;
27
34
  /**
28
35
  * Extracts the `data` field type from a stream event by its `type` discriminant.
29
36
  * Events that carry no `data` field (e.g. `session.completed`) resolve to `undefined`.
@@ -47,20 +54,37 @@ export type ChannelEventHandlers<TCtx extends ChannelAdapterContext<any> = Chann
47
54
  [K in HandleMessageStreamEvent["type"]]?: EventHandler<K, TCtx>;
48
55
  };
49
56
  /**
50
- * Plain-object adapter that replaces the `Channel` abstract class.
57
+ * Enriched resolver return shape. A resolver can return either a bare
58
+ * {@link Buffer} or this record when it learns a more accurate
59
+ * `mediaType` or `filename` mid-fetch (e.g. from an HTTP
60
+ * `Content-Type` header or a storage-service listing).
51
61
  *
52
- * An adapter carries:
53
- * - `kind`: stable durable identifier (like the old static `Channel.kind`)
54
- * - `state`: initial state shape, auto-serialized at step boundaries
55
- * - `deliver`: inbound hook (side effects + optional message transform)
56
- * - Event handlers: outbound, keyed by event type name
57
- * - `contextProviders`: optional per-step virtual providers
62
+ * When fields are provided, staging prefers them over the values the
63
+ * channel populated at ingestion time the resolver is the source of
64
+ * truth for bytes *and* for anything it discovers while fetching.
65
+ */
66
+ export interface ResolvedAttachment {
67
+ readonly bytes: Buffer;
68
+ readonly mediaType?: string;
69
+ readonly filename?: string;
70
+ }
71
+ /**
72
+ * Channel-owned resolver that turns an opaque {@link AttachmentRef} back
73
+ * into raw bytes.
58
74
  *
59
- * Adapters are created via `defineSlackAdapter`, `defineHttpAdapter`, or
60
- * directly as plain objects. They are NOT classes no inheritance, no
61
- * `serialize()`, no constructor rehydration.
75
+ * Channels that emit `ash-attachment:` refs provide this so staging can
76
+ * re-fetch bytes inside a step boundary. Return a bare {@link Buffer} or
77
+ * a {@link ResolvedAttachment} when fetch-time metadata should override
78
+ * the original file part.
79
+ */
80
+ export interface AttachmentResolver<TParams = unknown, TCtx extends ChannelAdapterContext<any> = ChannelAdapterContext> {
81
+ resolve(ref: AttachmentRef<TParams>, ctx: TCtx): Promise<Buffer | ResolvedAttachment>;
82
+ }
83
+ /**
84
+ * Plain-object channel adapter with durable state, an optional inbound
85
+ * delivery hook, event handlers, and optional attachment resolution.
62
86
  */
63
- export type ChannelAdapter<TCtx extends ChannelAdapterContext<any> = ChannelAdapterContext> = {
87
+ export type ChannelAdapter<TCtx extends ChannelAdapterContext<any> = ChannelAdapterContext, TAttachmentParams = unknown> = {
64
88
  /**
65
89
  * Stable durable identifier for serialization across step boundaries.
66
90
  * Must be unique across all adapters visible to one runtime bundle.
@@ -78,17 +102,8 @@ export type ChannelAdapter<TCtx extends ChannelAdapterContext<any> = ChannelAdap
78
102
  /**
79
103
  * Inbound hook: fires once per delivery before the harness starts.
80
104
  *
81
- * Side effects (context seeding, thread refresh, custom interactions)
82
- * plus optional message transformation. Return a string to override the
83
- * message the model sees. Return void to use the original payload message.
84
- *
85
- * For Slack adapters, the route's base layer runs AFTER this:
86
- * 1. Resolves HITL against the ORIGINAL payload.message (not the
87
- * returned string). Matched inputResponses go to the harness and
88
- * the return value is ignored.
89
- * 2. If no HITL to resolve, uses the returned string (or
90
- * payload.message if void), prepends user context, and produces
91
- * the StepInput for the harness.
105
+ * Return a {@link StepInput} to override the input the harness sees, or
106
+ * return void to use the default payload projection.
92
107
  */
93
108
  deliver?(payload: DeliverPayload, ctx: TCtx): StepInput | void | Promise<StepInput | void>;
94
109
  /**
@@ -102,14 +117,27 @@ export type ChannelAdapter<TCtx extends ChannelAdapterContext<any> = ChannelAdap
102
117
  /**
103
118
  * Optional factory that builds the adapter context for this adapter.
104
119
  *
105
- * The runtime calls this before invoking `deliver` or event handlers.
106
- * Default returns a bare `ChannelAdapterContext`. Slack adapters override
107
- * this to return a `SlackAdapterContext` with `ctx.slack`.
108
- *
109
120
  * @internal — set by `createSlackBaseAdapter`, not authored by users.
110
121
  */
111
- readonly createAdapterContext?: (base: ChannelAdapterContext) => ChannelAdapterContext;
122
+ createAdapterContext?(base: ChannelAdapterContext<StateOf<TCtx>>): TCtx;
123
+ /**
124
+ * Optional resolver that turns an opaque {@link AttachmentRef}
125
+ * produced by this adapter into raw bytes.
126
+ *
127
+ * Required only for channels that put `ash-attachment:` URLs into
128
+ * `FilePart.data`.
129
+ */
130
+ readonly attachments?: AttachmentResolver<TAttachmentParams, TCtx>;
112
131
  } & ChannelEventHandlers<TCtx>;
132
+ /**
133
+ * Produces the default {@link StepInput} when no custom adapter `deliver`
134
+ * hook is defined.
135
+ *
136
+ * Passes through both `message` and `inputResponses` from the delivery
137
+ * payload so tool-approval responses (and other HITL replies) reach the
138
+ * harness even when the channel has no bespoke deliver logic.
139
+ */
140
+ export declare function defaultDeliverResult(payload: DeliverPayload): StepInput | undefined;
113
141
  /**
114
142
  * Returns the durable kind for an adapter, falling back to `"unknown"`.
115
143
  */
@@ -122,8 +150,8 @@ export declare function getAdapterContextProviders(adapter: ChannelAdapter): rea
122
150
  * Calls an adapter's event handler for a given event. Returns the event
123
151
  * unchanged (adapters don't transform events — they perform side effects).
124
152
  *
125
- * If the adapter doesn't declare a handler for the event type, this is a
126
- * no-op and returns the event as-is.
153
+ * Throwing handlers are logged and swallowed so a downstream delivery
154
+ * failure does not corrupt the event stream write path.
127
155
  */
128
156
  export declare function callAdapterEventHandler(adapter: ChannelAdapter, event: HandleMessageStreamEvent, ctx: ChannelAdapterContext): Promise<HandleMessageStreamEvent>;
129
157
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/channel/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrE;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;CAC/B;AAMD;;;GAGG;AACH,KAAK,SAAS,CAAC,CAAC,SAAS,wBAAwB,CAAC,MAAM,CAAC,IACvD,OAAO,CAAC,wBAAwB,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,SAAS,CAAC;AAE3F;;;GAGG;AACH,KAAK,YAAY,CACf,CAAC,SAAS,wBAAwB,CAAC,MAAM,CAAC,EAE1C,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,IAC7D,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5D;;;;GAIG;AAEH,MAAM,MAAM,oBAAoB,CAAC,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,IAC9F;KACG,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC;CAChE,CAAC;AAMJ;;;;;;;;;;;;;GAaG;AAEH,MAAM,MAAM,cAAc,CAAC,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,IAAI;IAC5F;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEzC;;;;;;;;;;;;;;OAcG;IAEH,OAAO,CAAC,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAE3F;;;;;;OAMG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE;;;;;;;;OAQG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,qBAAqB,CAAC;CACxF,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAM/B;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,cAAc,GACtB,SAAS,eAAe,CAAC,OAAO,CAAC,EAAE,CAErC;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,wBAAwB,EAC/B,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,wBAAwB,CAAC,CAUnC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/channel/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAQjD;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrE;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;CAC/B;AAED;;;;GAIG;AACH,KAAK,OAAO,CAAC,IAAI,IAAI,IAAI,SAAS,qBAAqB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAM/F;;;GAGG;AACH,KAAK,SAAS,CAAC,CAAC,SAAS,wBAAwB,CAAC,MAAM,CAAC,IACvD,OAAO,CAAC,wBAAwB,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,SAAS,CAAC;AAE3F;;;GAGG;AACH,KAAK,YAAY,CACf,CAAC,SAAS,wBAAwB,CAAC,MAAM,CAAC,EAC1C,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,IAC7D,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,CAAC,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,IAC9F;KACG,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC;CAChE,CAAC;AAMJ;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB,CACjC,OAAO,GAAG,OAAO,EACjB,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB;IAE/D,OAAO,CAAC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC;CACvF;AAMD;;;GAGG;AACH,MAAM,MAAM,cAAc,CACxB,IAAI,SAAS,qBAAqB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAC/D,iBAAiB,GAAG,OAAO,IACzB;IACF;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEzC;;;;;OAKG;IACH,OAAO,CAAC,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAE3F;;;;;;OAMG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE;;;;OAIG;IACH,oBAAoB,CAAC,CAAC,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IAExE;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;CACpE,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAM/B;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,SAAS,CAUnF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,cAAc,GACtB,SAAS,eAAe,CAAC,OAAO,CAAC,EAAE,CAErC;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,wBAAwB,EAC/B,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,wBAAwB,CAAC,CAoBnC"}
@@ -1,6 +1,25 @@
1
+ import { createLogger } from "../internal/logging.js";
2
+ const log = createLogger("channel.adapter");
1
3
  // ---------------------------------------------------------------------------
2
4
  // Helpers
3
5
  // ---------------------------------------------------------------------------
6
+ /**
7
+ * Produces the default {@link StepInput} when no custom adapter `deliver`
8
+ * hook is defined.
9
+ *
10
+ * Passes through both `message` and `inputResponses` from the delivery
11
+ * payload so tool-approval responses (and other HITL replies) reach the
12
+ * harness even when the channel has no bespoke deliver logic.
13
+ */
14
+ export function defaultDeliverResult(payload) {
15
+ if (payload.message !== undefined) {
16
+ return { inputResponses: payload.inputResponses, message: payload.message };
17
+ }
18
+ if (payload.inputResponses !== undefined && payload.inputResponses.length > 0) {
19
+ return { inputResponses: payload.inputResponses };
20
+ }
21
+ return undefined;
22
+ }
4
23
  /**
5
24
  * Returns the durable kind for an adapter, falling back to `"unknown"`.
6
25
  */
@@ -17,14 +36,24 @@ export function getAdapterContextProviders(adapter) {
17
36
  * Calls an adapter's event handler for a given event. Returns the event
18
37
  * unchanged (adapters don't transform events — they perform side effects).
19
38
  *
20
- * If the adapter doesn't declare a handler for the event type, this is a
21
- * no-op and returns the event as-is.
39
+ * Throwing handlers are logged and swallowed so a downstream delivery
40
+ * failure does not corrupt the event stream write path.
22
41
  */
23
42
  export async function callAdapterEventHandler(adapter, event, ctx) {
24
43
  const handler = adapter[event.type];
25
- if (handler !== undefined) {
44
+ if (handler === undefined) {
45
+ return event;
46
+ }
47
+ try {
26
48
  await handler("data" in event ? event.data : undefined, ctx);
27
49
  }
50
+ catch (error) {
51
+ log.error("adapter event handler threw — event swallowed", {
52
+ adapterKind: getAdapterKind(adapter),
53
+ eventType: event.type,
54
+ error,
55
+ });
56
+ }
28
57
  return event;
29
58
  }
30
59
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/channel/adapter.ts"],"names":[],"mappings":"AA4IA,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAuB;IACpD,OAAO,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAuB;IAEvB,OAAO,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAuB,EACvB,KAA+B,EAC/B,GAA0B;IAE1B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAErB,CAAC;IAEd,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/channel/adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,MAAM,GAAG,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC;AAoK5C,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAuB;IAC1D,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9E,CAAC;IAED,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9E,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;IACpD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAuB;IACpD,OAAO,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAuB;IAEvB,OAAO,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAuB,EACvB,KAA+B,EAC/B,GAA0B;IAE1B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAErB,CAAC;IAEd,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,KAAK,CAAC,+CAA+C,EAAE;YACzD,WAAW,EAAE,cAAc,CAAC,OAAO,CAAC;YACpC,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../src/channel/schedule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAsB,MAAM,YAAY,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAEtB,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE;IAI3C,OAAO,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC;CAU/D"}
1
+ {"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../src/channel/schedule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAsB,MAAM,YAAY,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC,YAAY,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE,EAEhD;IAEK,OAAO,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,CAS7D;CACF"}
@@ -1,14 +1,12 @@
1
1
  /**
2
2
  * Slack adapter context, base layer, and factory.
3
- *
4
- * The Slack adapter context extends the generic ChannelAdapterContext with
5
- * a `slack` handle for Slack thread operations. The base layer provides
6
- * default Slack behaviors (typing, posting, HITL cards) that user adapters
7
- * can override per event type.
8
3
  */
4
+ import type { FilePart } from "ai";
5
+ import type { SerializedThread } from "chat";
6
+ import { type UploadPolicy } from "../public/channels/upload-policy.js";
9
7
  import type { ChannelAdapter, ChannelAdapterContext } from "./adapter.js";
10
- import type { SlackUserContext } from "./slack-state.js";
11
- import type { SlackInteraction, SlackRenderable, SlackThreadMessage } from "./slack-types.js";
8
+ import type { SlackChannelState, SlackUserContext } from "./slack-state.js";
9
+ import type { SlackInteraction, SlackRenderable, SlackThreadMessage, SlackResponse } from "./slack-types.js";
12
10
  /**
13
11
  * Extended adapter context for Slack adapters. Provides a `slack` handle
14
12
  * for posting messages, editing messages, typing indicators, and reading
@@ -16,9 +14,16 @@ import type { SlackInteraction, SlackRenderable, SlackThreadMessage } from "./sl
16
14
  *
17
15
  * Constructed by the slack base layer before calling user adapter handlers.
18
16
  */
19
- export interface SlackAdapterContext<TState = Record<string, unknown>> extends ChannelAdapterContext<TState> {
17
+ export interface SlackAdapterContext<TState extends SlackChannelState = SlackChannelState> extends ChannelAdapterContext<TState> {
20
18
  readonly slack: SlackHandle;
21
19
  }
20
+ /**
21
+ * Params carried by Slack `ash-attachment:` refs.
22
+ */
23
+ export interface SlackAttachmentParams {
24
+ /** Authenticated `files.slack.com` URL to the raw attachment bytes. */
25
+ readonly url: string;
26
+ }
22
27
  /**
23
28
  * Platform handle for Slack operations. Injected into the adapter context
24
29
  * by the slack base layer.
@@ -34,6 +39,8 @@ export interface SlackHandle {
34
39
  refresh(): Promise<void>;
35
40
  /** Get recent thread messages (call refresh first). */
36
41
  listRecentMessages(): Promise<readonly SlackThreadMessage[]>;
42
+ /** Perform a raw, authenticated request to the Slack API. */
43
+ request(operation: string, body: unknown): Promise<SlackResponse>;
37
44
  /** Slack channel ID. */
38
45
  readonly channelId: string;
39
46
  /** Chat SDK thread ID. */
@@ -58,8 +65,19 @@ export interface SlackHandle {
58
65
  */
59
66
  export declare function createSlackBaseAdapter(input: {
60
67
  readonly userAdapter?: ChannelAdapter<any>;
61
- readonly slackState: Record<string, unknown>;
62
- }): ChannelAdapter;
68
+ /**
69
+ * Seed state for the route-time or session-time Slack adapter.
70
+ */
71
+ readonly slackState: Partial<SlackChannelState>;
72
+ /**
73
+ * Effective upload policy for inbound Slack attachments. The Slack
74
+ * base layer filters disallowed parts out of the `FilePart` array
75
+ * before it reaches the harness; violations are logged and dropped
76
+ * rather than surfaced as an error so the text turn still goes
77
+ * through. Defaults to {@link DEFAULT_UPLOAD_POLICY}.
78
+ */
79
+ readonly uploadPolicy?: UploadPolicy;
80
+ }): ChannelAdapter<SlackAdapterContext, SlackAttachmentParams>;
63
81
  /**
64
82
  * Creates a SlackHandle from the Chat SDK thread, lazily initialized.
65
83
  *
@@ -67,8 +85,8 @@ export declare function createSlackBaseAdapter(input: {
67
85
  * pattern as the old SlackChannel.getThread()).
68
86
  */
69
87
  export declare function createSlackHandle(input: {
70
- readonly botToken?: string;
71
- readonly serializedThread: unknown;
88
+ readonly botToken: string;
89
+ readonly serializedThread: SerializedThread;
72
90
  readonly userContext?: SlackUserContext;
73
91
  }): SlackHandle;
74
92
  /**
@@ -85,7 +103,15 @@ export declare function deriveInputResponsesFromInteraction(interaction: SlackIn
85
103
  * Defines a Slack adapter. Validates the shape and returns the adapter
86
104
  * unchanged so it can be passed to `slackRoute({ adapter })`.
87
105
  *
88
- * This is a convenience you can also pass a plain object literal.
106
+ * `TExtra` lets a user adapter declare the custom state fields it
107
+ * manages; Ash intersects it with framework-managed
108
+ * {@link SlackChannelState}.
109
+ */
110
+ export declare function defineSlackAdapter<TExtra extends Record<string, unknown> = {}>(adapter: ChannelAdapter<SlackAdapterContext<TExtra & SlackChannelState>>): ChannelAdapter<SlackAdapterContext<TExtra & SlackChannelState>>;
111
+ /**
112
+ * Converts attachments on the most recent non-bot thread message into
113
+ * AI SDK `FilePart`s. Disallowed or unreadable attachments are logged
114
+ * and dropped so the text turn can continue.
89
115
  */
90
- export declare function defineSlackAdapter<TState extends object = Record<string, unknown>>(adapter: ChannelAdapter<SlackAdapterContext<TState>>): ChannelAdapter<SlackAdapterContext<TState>>;
116
+ export declare function collectFilePartsFromMessages(messages: readonly SlackThreadMessage[], uploadPolicy?: UploadPolicy): Promise<FilePart[]>;
91
117
  //# sourceMappingURL=slack-adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slack-adapter.d.ts","sourceRoot":"","sources":["../../../src/channel/slack-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAwB,MAAM,cAAc,CAAC;AAShG,OAAO,KAAK,EAAuB,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAO9F;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACnE,SAAQ,qBAAqB,CAAC,MAAM,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,0DAA0D;IAC1D,IAAI,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,6CAA6C;IAC7C,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,0DAA0D;IAC1D,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,0CAA0C;IAC1C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,uDAAuD;IACvD,kBAAkB,IAAI,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;IAC7D,wBAAwB;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,6BAA6B;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB;IACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;CACzC;AAsDD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAE5C,QAAQ,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C,GAAG,cAAc,CA0MjB;AAMD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;CACzC,GAAG,WAAW,CA8Fd;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mCAAmC,CACjD,WAAW,EAAE,gBAAgB,GAC5B,SAAS,OAAO,2BAA2B,EAAE,aAAa,EAAE,CA6B9D;AAUD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChF,OAAO,EAAE,cAAc,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,GACnD,cAAc,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAE7C"}
1
+ {"version":3,"file":"slack-adapter.d.ts","sourceRoot":"","sources":["../../../src/channel/slack-adapter.ts"],"names":[],"mappings":"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"}