managed-deepagents 0.9.6-dev.14 → 0.9.6-dev.15

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 (336) hide show
  1. package/README.md +953 -57
  2. package/dist/agent-auth.d.ts +1 -1
  3. package/dist/agent-auth.d.ts.map +1 -1
  4. package/dist/agent-auth.js +36 -12
  5. package/dist/agent-auth.js.map +1 -1
  6. package/dist/channels/actor.d.ts +43 -0
  7. package/dist/channels/actor.d.ts.map +1 -0
  8. package/dist/channels/actor.js +2 -0
  9. package/dist/channels/actor.js.map +1 -0
  10. package/dist/channels/assistant-text.d.ts +24 -0
  11. package/dist/channels/assistant-text.d.ts.map +1 -1
  12. package/dist/channels/assistant-text.js +65 -1
  13. package/dist/channels/assistant-text.js.map +1 -1
  14. package/dist/channels/binding.d.ts +20 -1
  15. package/dist/channels/binding.d.ts.map +1 -1
  16. package/dist/channels/binding.js +39 -10
  17. package/dist/channels/binding.js.map +1 -1
  18. package/dist/channels/delivery.d.ts +21 -0
  19. package/dist/channels/delivery.d.ts.map +1 -0
  20. package/dist/channels/delivery.js +196 -0
  21. package/dist/channels/delivery.js.map +1 -0
  22. package/dist/channels/github/connections.d.ts +11 -0
  23. package/dist/channels/github/connections.d.ts.map +1 -0
  24. package/dist/channels/github/connections.js +14 -0
  25. package/dist/channels/github/connections.js.map +1 -0
  26. package/dist/channels/github/index.d.ts +8 -0
  27. package/dist/channels/github/index.d.ts.map +1 -0
  28. package/dist/channels/github/index.js +274 -0
  29. package/dist/channels/github/index.js.map +1 -0
  30. package/dist/channels/github/mentions.d.ts +12 -0
  31. package/dist/channels/github/mentions.d.ts.map +1 -0
  32. package/dist/channels/github/mentions.js +185 -0
  33. package/dist/channels/github/mentions.js.map +1 -0
  34. package/dist/channels/github/schema.d.ts +4165 -0
  35. package/dist/channels/github/schema.d.ts.map +1 -0
  36. package/dist/channels/github/schema.js +221 -0
  37. package/dist/channels/github/schema.js.map +1 -0
  38. package/dist/channels/github/types.d.ts +163 -0
  39. package/dist/channels/github/types.d.ts.map +1 -0
  40. package/dist/channels/github/types.js +2 -0
  41. package/dist/channels/github/types.js.map +1 -0
  42. package/dist/channels/http/endpoint.d.ts +95 -0
  43. package/dist/channels/http/endpoint.d.ts.map +1 -0
  44. package/dist/channels/http/endpoint.js +276 -0
  45. package/dist/channels/http/endpoint.js.map +1 -0
  46. package/dist/channels/http/http.d.ts.map +1 -1
  47. package/dist/channels/http/http.js +386 -65
  48. package/dist/channels/http/http.js.map +1 -1
  49. package/dist/channels/http/index.d.ts +2 -1
  50. package/dist/channels/http/index.d.ts.map +1 -1
  51. package/dist/channels/http/index.js +14 -10
  52. package/dist/channels/http/index.js.map +1 -1
  53. package/dist/channels/http/ingress.d.ts +65 -5
  54. package/dist/channels/http/ingress.d.ts.map +1 -1
  55. package/dist/channels/http/ingress.js +149 -33
  56. package/dist/channels/http/ingress.js.map +1 -1
  57. package/dist/channels/http/provider.d.ts +119 -0
  58. package/dist/channels/http/provider.d.ts.map +1 -0
  59. package/dist/channels/http/provider.js +227 -0
  60. package/dist/channels/http/provider.js.map +1 -0
  61. package/dist/channels/http/studio.d.ts +24 -0
  62. package/dist/channels/http/studio.d.ts.map +1 -0
  63. package/dist/channels/http/studio.js +95 -0
  64. package/dist/channels/http/studio.js.map +1 -0
  65. package/dist/channels/http/threads.d.ts +7 -0
  66. package/dist/channels/http/threads.d.ts.map +1 -0
  67. package/dist/channels/http/threads.js +10 -0
  68. package/dist/channels/http/threads.js.map +1 -0
  69. package/dist/channels/http/types.d.ts +143 -2
  70. package/dist/channels/http/types.d.ts.map +1 -1
  71. package/dist/channels/linear/connections.d.ts +11 -0
  72. package/dist/channels/linear/connections.d.ts.map +1 -0
  73. package/dist/channels/linear/connections.js +14 -0
  74. package/dist/channels/linear/connections.js.map +1 -0
  75. package/dist/channels/linear/graphql.d.ts +57 -0
  76. package/dist/channels/linear/graphql.d.ts.map +1 -0
  77. package/dist/channels/linear/graphql.js +167 -0
  78. package/dist/channels/linear/graphql.js.map +1 -0
  79. package/dist/channels/linear/index.d.ts +9 -0
  80. package/dist/channels/linear/index.d.ts.map +1 -0
  81. package/dist/channels/linear/index.js +489 -0
  82. package/dist/channels/linear/index.js.map +1 -0
  83. package/dist/channels/linear/schema.d.ts +1050 -0
  84. package/dist/channels/linear/schema.d.ts.map +1 -0
  85. package/dist/channels/linear/schema.js +255 -0
  86. package/dist/channels/linear/schema.js.map +1 -0
  87. package/dist/channels/linear/types.d.ts +162 -0
  88. package/dist/channels/linear/types.d.ts.map +1 -0
  89. package/dist/channels/linear/types.js +2 -0
  90. package/dist/channels/linear/types.js.map +1 -0
  91. package/dist/channels/message-schema.d.ts +2 -0
  92. package/dist/channels/message-schema.d.ts.map +1 -1
  93. package/dist/channels/message-schema.js +4 -0
  94. package/dist/channels/message-schema.js.map +1 -1
  95. package/dist/channels/messaging-registry.d.ts +16 -0
  96. package/dist/channels/messaging-registry.d.ts.map +1 -1
  97. package/dist/channels/messaging-registry.js +29 -0
  98. package/dist/channels/messaging-registry.js.map +1 -1
  99. package/dist/channels/reserved-connections.d.ts +12 -0
  100. package/dist/channels/reserved-connections.d.ts.map +1 -0
  101. package/dist/channels/reserved-connections.js +55 -0
  102. package/dist/channels/reserved-connections.js.map +1 -0
  103. package/dist/channels/run-input.d.ts +71 -0
  104. package/dist/channels/run-input.d.ts.map +1 -0
  105. package/dist/channels/run-input.js +155 -0
  106. package/dist/channels/run-input.js.map +1 -0
  107. package/dist/channels/runtime.d.ts +1 -1
  108. package/dist/channels/runtime.d.ts.map +1 -1
  109. package/dist/channels/runtime.js +1 -1
  110. package/dist/channels/runtime.js.map +1 -1
  111. package/dist/channels/schedule-delivery.d.ts +1 -1
  112. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  113. package/dist/channels/schedule-delivery.js +12 -23
  114. package/dist/channels/schedule-delivery.js.map +1 -1
  115. package/dist/channels/slack/api.d.ts +2 -0
  116. package/dist/channels/slack/api.d.ts.map +1 -1
  117. package/dist/channels/slack/api.js +6 -0
  118. package/dist/channels/slack/api.js.map +1 -1
  119. package/dist/channels/slack/connections.d.ts +6 -0
  120. package/dist/channels/slack/connections.d.ts.map +1 -0
  121. package/dist/channels/slack/connections.js +6 -0
  122. package/dist/channels/slack/connections.js.map +1 -0
  123. package/dist/channels/slack/events.d.ts +272 -0
  124. package/dist/channels/slack/events.d.ts.map +1 -0
  125. package/dist/channels/slack/events.js +235 -0
  126. package/dist/channels/slack/events.js.map +1 -0
  127. package/dist/channels/slack/files.d.ts.map +1 -1
  128. package/dist/channels/slack/files.js +2 -3
  129. package/dist/channels/slack/files.js.map +1 -1
  130. package/dist/channels/slack/index.d.ts +76 -2
  131. package/dist/channels/slack/index.d.ts.map +1 -1
  132. package/dist/channels/slack/index.js +177 -6
  133. package/dist/channels/slack/index.js.map +1 -1
  134. package/dist/channels/slack/message-content.d.ts.map +1 -1
  135. package/dist/channels/slack/message-content.js +23 -28
  136. package/dist/channels/slack/message-content.js.map +1 -1
  137. package/dist/channels/slack/status.d.ts +76 -0
  138. package/dist/channels/slack/status.d.ts.map +1 -0
  139. package/dist/channels/slack/status.js +427 -0
  140. package/dist/channels/slack/status.js.map +1 -0
  141. package/dist/channels/source-providers.js +1 -1
  142. package/dist/channels/source-providers.js.map +1 -1
  143. package/dist/channels/trigger/client.d.ts.map +1 -1
  144. package/dist/channels/trigger/client.js +6 -15
  145. package/dist/channels/trigger/client.js.map +1 -1
  146. package/dist/channels/trigger/http.d.ts +114 -3
  147. package/dist/channels/trigger/http.d.ts.map +1 -1
  148. package/dist/channels/trigger/http.js +314 -82
  149. package/dist/channels/trigger/http.js.map +1 -1
  150. package/dist/channels/trigger/identity-context.d.ts +1 -1
  151. package/dist/channels/trigger/identity-context.d.ts.map +1 -1
  152. package/dist/channels/trigger/identity-context.js +2 -3
  153. package/dist/channels/trigger/identity-context.js.map +1 -1
  154. package/dist/channels/trigger/ingress.d.ts +38 -1
  155. package/dist/channels/trigger/ingress.d.ts.map +1 -1
  156. package/dist/channels/trigger/ingress.js +49 -23
  157. package/dist/channels/trigger/ingress.js.map +1 -1
  158. package/dist/channels/trigger/types.d.ts +82 -3
  159. package/dist/channels/trigger/types.d.ts.map +1 -1
  160. package/dist/channels/trigger/types.js +36 -0
  161. package/dist/channels/trigger/types.js.map +1 -1
  162. package/dist/channels/types.d.ts +19 -3
  163. package/dist/channels/types.d.ts.map +1 -1
  164. package/dist/channels/types.js +2 -0
  165. package/dist/channels/types.js.map +1 -1
  166. package/dist/connections.d.ts +31 -0
  167. package/dist/connections.d.ts.map +1 -1
  168. package/dist/connections.js +108 -11
  169. package/dist/connections.js.map +1 -1
  170. package/dist/credential-gate.d.ts +2 -0
  171. package/dist/credential-gate.d.ts.map +1 -1
  172. package/dist/credential-gate.js +37 -3
  173. package/dist/credential-gate.js.map +1 -1
  174. package/dist/define-deep-agent.d.ts.map +1 -1
  175. package/dist/define-deep-agent.js +6 -0
  176. package/dist/define-deep-agent.js.map +1 -1
  177. package/dist/identity/loopback.d.ts +2 -14
  178. package/dist/identity/loopback.d.ts.map +1 -1
  179. package/dist/identity/loopback.js +4 -25
  180. package/dist/identity/loopback.js.map +1 -1
  181. package/dist/identity/slack/links.js +3 -3
  182. package/dist/identity/slack/links.js.map +1 -1
  183. package/dist/index.d.ts +15 -4
  184. package/dist/index.d.ts.map +1 -1
  185. package/dist/index.js +2 -1
  186. package/dist/index.js.map +1 -1
  187. package/dist/ingress/index.d.ts +0 -8
  188. package/dist/ingress/index.d.ts.map +1 -1
  189. package/dist/ingress/index.js +2 -32
  190. package/dist/ingress/index.js.map +1 -1
  191. package/dist/ingress/loopback.js +4 -4
  192. package/dist/ingress/loopback.js.map +1 -1
  193. package/dist/ingress/runs.d.ts +74 -1
  194. package/dist/ingress/runs.d.ts.map +1 -1
  195. package/dist/ingress/runs.js +176 -16
  196. package/dist/ingress/runs.js.map +1 -1
  197. package/dist/managed-composition.d.ts.map +1 -1
  198. package/dist/managed-composition.js +8 -13
  199. package/dist/managed-composition.js.map +1 -1
  200. package/dist/memory/instructions-middleware.d.ts.map +1 -1
  201. package/dist/memory/instructions-middleware.js +5 -6
  202. package/dist/memory/instructions-middleware.js.map +1 -1
  203. package/dist/namespaces.d.ts +21 -21
  204. package/dist/namespaces.d.ts.map +1 -1
  205. package/dist/namespaces.js +4 -29
  206. package/dist/namespaces.js.map +1 -1
  207. package/dist/runtime/auth.d.ts.map +1 -1
  208. package/dist/runtime/auth.js +151 -21
  209. package/dist/runtime/auth.js.map +1 -1
  210. package/dist/runtime/channel-icon.d.ts +22 -0
  211. package/dist/runtime/channel-icon.d.ts.map +1 -0
  212. package/dist/runtime/channel-icon.js +70 -0
  213. package/dist/runtime/channel-icon.js.map +1 -0
  214. package/dist/runtime/channel.d.ts +6 -0
  215. package/dist/runtime/channel.d.ts.map +1 -1
  216. package/dist/runtime/channel.js.map +1 -1
  217. package/dist/runtime/http.d.ts +0 -15
  218. package/dist/runtime/http.d.ts.map +1 -1
  219. package/dist/runtime/http.js +0 -37
  220. package/dist/runtime/http.js.map +1 -1
  221. package/dist/runtime/identity-http.d.ts +2 -0
  222. package/dist/runtime/identity-http.d.ts.map +1 -1
  223. package/dist/runtime/identity-http.js +40 -16
  224. package/dist/runtime/identity-http.js.map +1 -1
  225. package/dist/runtime/identity-runtime.d.ts +10 -0
  226. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  227. package/dist/runtime/identity-runtime.js +22 -0
  228. package/dist/runtime/identity-runtime.js.map +1 -1
  229. package/dist/runtime/index.d.ts.map +1 -1
  230. package/dist/runtime/index.js +46 -47
  231. package/dist/runtime/index.js.map +1 -1
  232. package/dist/runtime/log.d.ts +14 -8
  233. package/dist/runtime/log.d.ts.map +1 -1
  234. package/dist/runtime/log.js +7 -16
  235. package/dist/runtime/log.js.map +1 -1
  236. package/dist/runtime/managed-middleware.d.ts.map +1 -1
  237. package/dist/runtime/managed-middleware.js +14 -1
  238. package/dist/runtime/managed-middleware.js.map +1 -1
  239. package/dist/runtime/managed-thread.d.ts +60 -0
  240. package/dist/runtime/managed-thread.d.ts.map +1 -0
  241. package/dist/runtime/managed-thread.js +76 -0
  242. package/dist/runtime/managed-thread.js.map +1 -0
  243. package/dist/runtime/managed-tools.d.ts +10 -10
  244. package/dist/runtime/managed-tools.d.ts.map +1 -1
  245. package/dist/runtime/managed-tools.js +24 -24
  246. package/dist/runtime/managed-tools.js.map +1 -1
  247. package/dist/runtime/memory/mounts.d.ts +11 -82
  248. package/dist/runtime/memory/mounts.d.ts.map +1 -1
  249. package/dist/runtime/memory/mounts.js +34 -173
  250. package/dist/runtime/memory/mounts.js.map +1 -1
  251. package/dist/runtime/memory/policy.d.ts.map +1 -1
  252. package/dist/runtime/memory/policy.js +1 -3
  253. package/dist/runtime/memory/policy.js.map +1 -1
  254. package/dist/runtime/run-input.d.ts +10 -0
  255. package/dist/runtime/run-input.d.ts.map +1 -1
  256. package/dist/runtime/run-input.js +47 -19
  257. package/dist/runtime/run-input.js.map +1 -1
  258. package/dist/runtime/sandbox-manager.d.ts +1 -1
  259. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  260. package/dist/runtime/sandbox-manager.js +9 -7
  261. package/dist/runtime/sandbox-manager.js.map +1 -1
  262. package/dist/runtime/schedule-auth.d.ts +17 -0
  263. package/dist/runtime/schedule-auth.d.ts.map +1 -1
  264. package/dist/runtime/schedule-auth.js +41 -3
  265. package/dist/runtime/schedule-auth.js.map +1 -1
  266. package/dist/runtime/selected-skills-backend.d.ts +3 -3
  267. package/dist/runtime/selected-skills-backend.d.ts.map +1 -1
  268. package/dist/runtime/selected-skills-backend.js +5 -5
  269. package/dist/runtime/selected-skills-backend.js.map +1 -1
  270. package/dist/runtime/thread-record.d.ts +81 -0
  271. package/dist/runtime/thread-record.d.ts.map +1 -0
  272. package/dist/runtime/thread-record.js +205 -0
  273. package/dist/runtime/thread-record.js.map +1 -0
  274. package/dist/runtime/types.d.ts +5 -1
  275. package/dist/runtime/types.d.ts.map +1 -1
  276. package/dist/runtime-schedules.d.ts +13 -0
  277. package/dist/runtime-schedules.d.ts.map +1 -1
  278. package/dist/runtime-schedules.js +86 -22
  279. package/dist/runtime-schedules.js.map +1 -1
  280. package/dist/sandbox.d.ts +0 -6
  281. package/dist/sandbox.d.ts.map +1 -1
  282. package/dist/sandbox.js +3 -7
  283. package/dist/sandbox.js.map +1 -1
  284. package/dist/schedule-channel.d.ts +5 -2
  285. package/dist/schedule-channel.d.ts.map +1 -1
  286. package/dist/schedule-channel.js +13 -12
  287. package/dist/schedule-channel.js.map +1 -1
  288. package/dist/telemetry/run-listener.d.ts +1 -1
  289. package/dist/telemetry/run-listener.d.ts.map +1 -1
  290. package/dist/telemetry/run-listener.js +2 -32
  291. package/dist/telemetry/run-listener.js.map +1 -1
  292. package/dist/telemetry/transport/posthog.d.ts +1 -13
  293. package/dist/telemetry/transport/posthog.d.ts.map +1 -1
  294. package/dist/telemetry/transport/posthog.js +30 -68
  295. package/dist/telemetry/transport/posthog.js.map +1 -1
  296. package/dist/values.d.ts +15 -0
  297. package/dist/values.d.ts.map +1 -0
  298. package/dist/values.js +31 -0
  299. package/dist/values.js.map +1 -0
  300. package/package.json +11 -11
  301. package/dist/concurrency/batch-processor.d.ts +0 -51
  302. package/dist/concurrency/batch-processor.d.ts.map +0 -1
  303. package/dist/concurrency/batch-processor.js +0 -99
  304. package/dist/concurrency/batch-processor.js.map +0 -1
  305. package/dist/resilience/retry.d.ts +0 -21
  306. package/dist/resilience/retry.d.ts.map +0 -1
  307. package/dist/resilience/retry.js +0 -40
  308. package/dist/resilience/retry.js.map +0 -1
  309. package/dist/runtime/graph-build-timing.d.ts +0 -30
  310. package/dist/runtime/graph-build-timing.d.ts.map +0 -1
  311. package/dist/runtime/graph-build-timing.js +0 -50
  312. package/dist/runtime/graph-build-timing.js.map +0 -1
  313. package/dist/telemetry/lifecycle.d.ts +0 -26
  314. package/dist/telemetry/lifecycle.d.ts.map +0 -1
  315. package/dist/telemetry/lifecycle.js +0 -49
  316. package/dist/telemetry/lifecycle.js.map +0 -1
  317. package/dist/telemetry/otel/context.d.ts +0 -57
  318. package/dist/telemetry/otel/context.d.ts.map +0 -1
  319. package/dist/telemetry/otel/context.js +0 -122
  320. package/dist/telemetry/otel/context.js.map +0 -1
  321. package/dist/telemetry/otel/exporter.d.ts +0 -53
  322. package/dist/telemetry/otel/exporter.d.ts.map +0 -1
  323. package/dist/telemetry/otel/exporter.js +0 -190
  324. package/dist/telemetry/otel/exporter.js.map +0 -1
  325. package/dist/telemetry/otel/index.d.ts +0 -6
  326. package/dist/telemetry/otel/index.d.ts.map +0 -1
  327. package/dist/telemetry/otel/index.js +0 -3
  328. package/dist/telemetry/otel/index.js.map +0 -1
  329. package/dist/telemetry/otel/otlp.d.ts +0 -44
  330. package/dist/telemetry/otel/otlp.d.ts.map +0 -1
  331. package/dist/telemetry/otel/otlp.js +0 -7
  332. package/dist/telemetry/otel/otlp.js.map +0 -1
  333. package/dist/telemetry/otel/truncate.d.ts +0 -10
  334. package/dist/telemetry/otel/truncate.d.ts.map +0 -1
  335. package/dist/telemetry/otel/truncate.js +0 -39
  336. package/dist/telemetry/otel/truncate.js.map +0 -1
@@ -0,0 +1,55 @@
1
+ import { GITHUB_TOKEN_SLUG, githubAppConnectionSlug, } from "./github/connections.js";
2
+ import { LINEAR_TOKEN_SLUG, linearAppConnectionSlug, } from "./linear/connections.js";
3
+ import { SLACK_BOT_TOKEN_SLUG } from "./slack/connections.js";
4
+ // First-party channels' reserved agent connection names, listed here so
5
+ // resolution does not depend on adapter modules being loaded.
6
+ const builtinReservedConnections = new Map([
7
+ [
8
+ GITHUB_TOKEN_SLUG,
9
+ {
10
+ resolve: githubAppConnectionSlug,
11
+ token: "the GitHub App's installation token",
12
+ actsAs: "act on GitHub as the App",
13
+ },
14
+ ],
15
+ [
16
+ LINEAR_TOKEN_SLUG,
17
+ {
18
+ resolve: linearAppConnectionSlug,
19
+ token: "the Linear app's token",
20
+ actsAs: "act in Linear as the app",
21
+ },
22
+ ],
23
+ [
24
+ SLACK_BOT_TOKEN_SLUG,
25
+ {
26
+ // The Slack app's connection has the reserved name itself.
27
+ resolve: () => SLACK_BOT_TOKEN_SLUG,
28
+ token: "the Slack app's bot token",
29
+ actsAs: "act in Slack as the app",
30
+ },
31
+ ],
32
+ ]);
33
+ /**
34
+ * Why a channel's reserved agent connection cannot be read as a user
35
+ * connection, or undefined for any other slug. Reading an app's token as the
36
+ * person running the agent is not supported yet.
37
+ */
38
+ export function reservedUserConnectionError(slug) {
39
+ const reserved = builtinReservedConnections.get(slug);
40
+ if (!reserved)
41
+ return undefined;
42
+ const name = JSON.stringify(slug);
43
+ return (`${name} is not supported as a user connection yet: it is ${reserved.token}, ` +
44
+ `an agent connection. Use connections.get(${name}, { type: "agent" }) to ` +
45
+ `${reserved.actsAs}.`);
46
+ }
47
+ /**
48
+ * The connection that actually holds a channel's reserved agent connection;
49
+ * other slugs pass through unchanged.
50
+ */
51
+ export function reservedAgentConnectionSlug(slug, deploymentId) {
52
+ const reserved = builtinReservedConnections.get(slug);
53
+ return reserved && deploymentId ? reserved.resolve(deploymentId) : slug;
54
+ }
55
+ //# sourceMappingURL=reserved-connections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reserved-connections.js","sourceRoot":"","sources":["../../src/channels/reserved-connections.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wEAAwE;AACxE,8DAA8D;AAC9D,MAAM,0BAA0B,GAAG,IAAI,GAAG,CASxC;IACA;QACE,iBAAiB;QACjB;YACE,OAAO,EAAE,uBAAuB;YAChC,KAAK,EAAE,qCAAqC;YAC5C,MAAM,EAAE,0BAA0B;SACnC;KACF;IACD;QACE,iBAAiB;QACjB;YACE,OAAO,EAAE,uBAAuB;YAChC,KAAK,EAAE,wBAAwB;YAC/B,MAAM,EAAE,0BAA0B;SACnC;KACF;IACD;QACE,oBAAoB;QACpB;YACE,2DAA2D;YAC3D,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB;YACnC,KAAK,EAAE,2BAA2B;YAClC,MAAM,EAAE,yBAAyB;SAClC;KACF;CACF,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAY;IACtD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,CACL,GAAG,IAAI,qDAAqD,QAAQ,CAAC,KAAK,IAAI;QAC9E,4CAA4C,IAAI,0BAA0B;QAC1E,GAAG,QAAQ,CAAC,MAAM,GAAG,CACtB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CACzC,IAAY,EACZ,YAAgC;IAEhC,MAAM,QAAQ,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,OAAO,QAAQ,IAAI,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1E,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * What a channel handler starts a run with, in the shapes `agent.invoke`
3
+ * takes, normalized to the JSON the Agent Server accepts.
4
+ */
5
+ import { type BaseMessage, type BaseMessageLike } from "@langchain/core/messages";
6
+ import type { LangGraphRunnableConfig } from "@langchain/langgraph";
7
+ import type { JsonObject } from "./manifest.js";
8
+ import type { JsonValue } from "./types.js";
9
+ /**
10
+ * State to start a run with, as `agent.invoke` takes it: `messages` plus any
11
+ * other keys of the agent's state.
12
+ */
13
+ export interface ChannelStateInput {
14
+ messages?: BaseMessageLike[];
15
+ [key: string]: unknown;
16
+ }
17
+ /** A user message's text, a message, or state to start a run with. */
18
+ export type ChannelRunInput = string | BaseMessage | ChannelStateInput;
19
+ /** Run options a handler may set with its input, as `agent.invoke` takes them. */
20
+ export type ChannelRunOptions = Pick<LangGraphRunnableConfig<Record<string, unknown>>, "context"> & {
21
+ /**
22
+ * Metadata for the run, such as where it came from, to find it by in
23
+ * LangSmith. Keys are letters, digits, `_`, `.` or `-` and start with a
24
+ * letter. Keys the Agent Server and LangSmith set are reserved: those
25
+ * starting with `mda_`, `langgraph_` or `ls_`, and ids such as `thread_id`,
26
+ * `session_id`, `run_id` or `user_id`.
27
+ */
28
+ metadata?: {
29
+ readonly [key: string]: JsonValue;
30
+ };
31
+ /**
32
+ * A URL the Agent Server POSTs the finished run to (its status, metadata,
33
+ * values and any error), as LangGraph's `runs.create({ webhook })` does:
34
+ * from the server, so it reaches you even if the deployment restarts.
35
+ * http(s), without credentials in it.
36
+ */
37
+ webhook?: string;
38
+ };
39
+ /**
40
+ * What a channel handler may return to start a run: the input, or the input
41
+ * with run options, as `agent.invoke(input, options)` takes them.
42
+ */
43
+ export type ChannelRunResult = ChannelRunInput | readonly [ChannelRunInput, ChannelRunOptions];
44
+ /** A handler's result as the Agent Server takes it. */
45
+ export interface NormalizedRunInput {
46
+ /** Messages as JSON, each with a `role`. */
47
+ messages: JsonObject[];
48
+ /** Other state keys. */
49
+ state: JsonObject;
50
+ context?: JsonObject;
51
+ metadata?: JsonObject;
52
+ webhook?: string;
53
+ }
54
+ /**
55
+ * A handler's run input as `startIngressRun` takes it, with MDA's own
56
+ * `metadata` over the handler's, so a handler can't replace it. Empty state
57
+ * and metadata are left out.
58
+ */
59
+ export declare function runStartOptions(input: NormalizedRunInput, metadata?: JsonObject): {
60
+ messages: JsonObject[];
61
+ state?: JsonObject;
62
+ metadata?: JsonObject;
63
+ webhook?: string;
64
+ };
65
+ /**
66
+ * Normalize what a handler returned. `null` and `undefined` start nothing;
67
+ * anything else that is not valid input throws a `TypeError`. A run option
68
+ * that is `null` or `undefined` is not set.
69
+ */
70
+ export declare function normalizeRunInput(value: unknown): NormalizedRunInput | undefined;
71
+ //# sourceMappingURL=run-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-input.d.ts","sourceRoot":"","sources":["../../src/channels/run-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,sEAAsE;AACtE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,iBAAiB,CAAC;AAEvE,kFAAkF;AAClF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAChD,SAAS,CACV,GAAG;IACF;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IACjD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GACxB,eAAe,GACf,SAAS,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;AAElD,uDAAuD;AACvD,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,wBAAwB;IACxB,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,kBAAkB,EACzB,QAAQ,GAAE,UAAe,GACxB;IACD,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAQA;AASD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,GACb,kBAAkB,GAAG,SAAS,CAsBhC"}
@@ -0,0 +1,155 @@
1
+ /**
2
+ * What a channel handler starts a run with, in the shapes `agent.invoke`
3
+ * takes, normalized to the JSON the Agent Server accepts.
4
+ */
5
+ import { HumanMessage, coerceMessageLikeToMessage, isBaseMessage, } from "@langchain/core/messages";
6
+ import { isJsonValue } from "./message-schema.js";
7
+ import { isPlainObject } from "../values.js";
8
+ /**
9
+ * A handler's run input as `startIngressRun` takes it, with MDA's own
10
+ * `metadata` over the handler's, so a handler can't replace it. Empty state
11
+ * and metadata are left out.
12
+ */
13
+ export function runStartOptions(input, metadata = {}) {
14
+ const merged = { ...input.metadata, ...metadata };
15
+ return {
16
+ messages: input.messages,
17
+ ...(Object.keys(input.state).length && { state: input.state }),
18
+ ...(Object.keys(merged).length && { metadata: merged }),
19
+ ...(input.webhook !== undefined && { webhook: input.webhook }),
20
+ };
21
+ }
22
+ const MESSAGE_ROLES = new Set([
23
+ "human",
24
+ "ai",
25
+ "system",
26
+ "tool",
27
+ ]);
28
+ /**
29
+ * Normalize what a handler returned. `null` and `undefined` start nothing;
30
+ * anything else that is not valid input throws a `TypeError`. A run option
31
+ * that is `null` or `undefined` is not set.
32
+ */
33
+ export function normalizeRunInput(value) {
34
+ if (value === null || value === undefined)
35
+ return undefined;
36
+ const [input, options] = Array.isArray(value)
37
+ ? value
38
+ : [value, undefined];
39
+ if (Array.isArray(value) && value.length !== 2 && value.length !== 1)
40
+ throw new TypeError("run input must be [input, options]");
41
+ const normalized = normalizeInput(input);
42
+ if (options === undefined)
43
+ return normalized;
44
+ if (!isPlainObject(options))
45
+ throw new TypeError("run options must be an object");
46
+ const { context, metadata, webhook, ...rest } = options;
47
+ if (Object.keys(rest).length)
48
+ throw new TypeError(`unsupported run option ${Object.keys(rest).join(", ")}; use context, metadata or webhook`);
49
+ return {
50
+ ...normalized,
51
+ ...(context != null && { context: runContext(context) }),
52
+ ...(metadata != null && { metadata: runMetadata(metadata) }),
53
+ ...(webhook != null && { webhook: runWebhook(webhook) }),
54
+ };
55
+ }
56
+ const WEBHOOK_PREFIX = /^https?:\/\//i;
57
+ // eslint-disable-next-line no-control-regex
58
+ const UNSAFE_URL_CHARACTER = /[\s\u0000-\u001f\u007f]/;
59
+ /**
60
+ * The webhook as given, once it is `http://` or `https://`, a host and an
61
+ * optional port, without credentials, whitespace or control characters. The
62
+ * Python runtime checks it the same way, so both pass the Agent Server the
63
+ * same string.
64
+ */
65
+ function runWebhook(webhook) {
66
+ let url;
67
+ try {
68
+ url =
69
+ typeof webhook === "string" &&
70
+ WEBHOOK_PREFIX.test(webhook) &&
71
+ !UNSAFE_URL_CHARACTER.test(webhook)
72
+ ? new URL(webhook)
73
+ : undefined;
74
+ }
75
+ catch {
76
+ url = undefined;
77
+ }
78
+ if (!url || !url.hostname || url.username || url.password)
79
+ throw new TypeError("run webhook must be an http(s) URL, without credentials in it");
80
+ return webhook;
81
+ }
82
+ function runContext(context) {
83
+ if (!isPlainObject(context) || !isJsonValue(context))
84
+ throw new TypeError("run context must be a JSON object");
85
+ for (const key of ["channel", "mda_channel"])
86
+ if (key in context)
87
+ throw new TypeError(`context.${key} is reserved for managed ingress`);
88
+ return context;
89
+ }
90
+ /** The metadata keys a handler may set. */
91
+ const METADATA_KEY = /^[A-Za-z][A-Za-z0-9_.-]{0,63}$/;
92
+ /**
93
+ * Keys MDA, the Agent Server and LangSmith set, which a handler's would
94
+ * override or confuse (LangSmith groups a thread's runs by `thread_id`,
95
+ * `session_id` or `conversation_id`), and object internals.
96
+ */
97
+ const RESERVED_METADATA_KEY = /^(mda_|langgraph_|ls_)|^(assistant_id|graph_id|run_id|run_attempt|thread_id|session_id|conversation_id|user_id|owner|checkpoint_id|checkpoint_ns|constructor|prototype)$/i;
98
+ function runMetadata(metadata) {
99
+ if (!isPlainObject(metadata) || !isJsonValue(metadata))
100
+ throw new TypeError("run metadata must be a JSON object");
101
+ for (const key of Object.keys(metadata)) {
102
+ if (!METADATA_KEY.test(key) || RESERVED_METADATA_KEY.test(key))
103
+ throw new TypeError(`run metadata keys are letters, digits, _, . or -, start with a letter, and aren't reserved (${key})`);
104
+ }
105
+ return metadata;
106
+ }
107
+ function normalizeInput(input) {
108
+ if (typeof input === "string") {
109
+ if (!input.trim())
110
+ throw new TypeError("run input must not be blank");
111
+ return { messages: [messageJson(new HumanMessage(input))], state: {} };
112
+ }
113
+ if (isBaseMessage(input))
114
+ return { messages: [messageJson(input)], state: {} };
115
+ if (!isPlainObject(input))
116
+ throw new TypeError("run input must be a string, a message, or an object of state");
117
+ const { messages, ...state } = input;
118
+ if (messages !== undefined && !Array.isArray(messages))
119
+ throw new TypeError("run input messages must be an array");
120
+ if (!isJsonValue(state))
121
+ throw new TypeError("run input state must be JSON");
122
+ const normalized = (messages ?? []).map(messageLike);
123
+ if (!normalized.length && !Object.keys(state).length)
124
+ throw new TypeError("run input must not be empty");
125
+ return { messages: normalized, state: state };
126
+ }
127
+ function messageLike(message) {
128
+ if (typeof message === "string" && !message.trim())
129
+ throw new TypeError("a message must not be blank");
130
+ try {
131
+ return messageJson(coerceMessageLikeToMessage(message));
132
+ }
133
+ catch (error) {
134
+ if (error instanceof TypeError)
135
+ throw error;
136
+ throw new TypeError("a message must be a string, a message, or JSON");
137
+ }
138
+ }
139
+ /**
140
+ * A message as the JSON the Agent Server turns back into a message: its
141
+ * `toDict()` fields with a `role`. `toDict()` puts content built from
142
+ * `contentBlocks` under `content_blocks`, which the server does not read, so
143
+ * the message's `content` is sent instead.
144
+ */
145
+ function messageJson(message) {
146
+ const role = message.getType();
147
+ if (!MESSAGE_ROLES.has(role))
148
+ throw new TypeError(`unsupported message type ${role}`);
149
+ const { content_blocks: _blocks, ...fields } = message.toDict().data;
150
+ const json = { ...fields, role, content: message.content };
151
+ if (!isJsonValue(json))
152
+ throw new TypeError("a message must be JSON");
153
+ return json;
154
+ }
155
+ //# sourceMappingURL=run-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-input.js","sourceRoot":"","sources":["../../src/channels/run-input.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export interface ChannelMessagingAdapter {
10
10
  export interface CreateRuntimeChannelOptions {
11
11
  name: string;
12
12
  provider: string;
13
- event: ChannelEvent;
13
+ event: ChannelEvent | null;
14
14
  rawEvent?: JsonValue;
15
15
  target: JsonValue;
16
16
  transport?: ChannelMessagingAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/channels/runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,8DAA8D;AAC9D,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,EAAE,cAAc,CAAC;QACxB,MAAM,EAAE,SAAS,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACnC;AACD,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAU5C;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAO7D;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,2BAA2B,GACnC,cAAc,CAkBhB;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,OAAO,IAAI,cAAc,CAEnC;AAED,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAelE"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/channels/runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,8DAA8D;AAC9D,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,EAAE,cAAc,CAAC;QACxB,MAAM,EAAE,SAAS,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACnC;AACD,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAU5C;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAO7D;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,2BAA2B,GACnC,cAAc,CAkBhB;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,OAAO,IAAI,cAAc,CAEnC;AAED,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAelE"}
@@ -29,7 +29,7 @@ export function createRuntimeChannel(options) {
29
29
  return transport.post({
30
30
  message: immutableCopy(message),
31
31
  target,
32
- ...(facts.event.type === "schedule"
32
+ ...(facts.event?.type === "schedule"
33
33
  ? { newThread: facts.event.new_thread }
34
34
  : {}),
35
35
  });
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/channels/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/channels/runtime.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** Deliver trusted schedule results through captured or explicit channel targets. */
1
+ /** Deliver trusted schedule results to their explicit `deliverTo` channel targets. */
2
2
  import type { ManagedMiddleware } from "../runtime/managed-middleware.js";
3
3
  import type { ChannelAddress } from "./types.js";
4
4
  /** Override LangGraph run metadata resolution. @internal Test-only. */
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-delivery.d.ts","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAYrF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAc1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD,uEAAuE;AACvE,wBAAgB,2BAA2B,CACzC,MAAM,CAAC,EAAE,MAAM;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,GAC3E,IAAI,CAEN;AAED,uDAAuD;AACvD,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EACE;QAAE,IAAI,EAAE,uBAAuB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GACzD;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,OAAO,GACX,2BAA2B,GAAG,SAAS,CA8CzC;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,2BAA2B,CAAC,IAAI,CAAC,GACpC,cAAc,CAKhB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,2BAA2B,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxB;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAC7B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,GAAG,SAAS,CAMpB;AAED,qFAAqF;AACrF,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC,CAsF1C;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,OAAO,CAQT;AAmBD,qEAAqE;AACrE,wBAAgB,gCAAgC,CAAC,OAAO,CAAC,EAAE;IACzD,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,qBAAqB,CAAC;CACzC,GAAG,iBAAiB,CAqDpB"}
1
+ {"version":3,"file":"schedule-delivery.d.ts","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAYtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAO1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD,uEAAuE;AACvE,wBAAgB,2BAA2B,CACzC,MAAM,CAAC,EAAE,MAAM;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,GAC3E,IAAI,CAEN;AAED,uDAAuD;AACvD,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EACE;QAAE,IAAI,EAAE,uBAAuB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GACzD;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,OAAO,GACX,2BAA2B,GAAG,SAAS,CA8CzC;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,2BAA2B,CAAC,IAAI,CAAC,GACpC,cAAc,CAKhB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,2BAA2B,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxB;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAC7B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,GAAG,SAAS,CAMpB;AAED,qFAAqF;AACrF,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC,CAmF1C;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,OAAO,CAQT;AAmBD,qEAAqE;AACrE,wBAAgB,gCAAgC,CAAC,OAAO,CAAC,EAAE;IACzD,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,qBAAqB,CAAC;CACzC,GAAG,iBAAiB,CAqCpB"}
@@ -1,10 +1,10 @@
1
- /** Deliver trusted schedule results through captured or explicit channel targets. */
1
+ /** Deliver trusted schedule results to their explicit `deliverTo` channel targets. */
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { getConfig } from "@langchain/langgraph";
4
4
  import { configurableFromRuntime, resolveAmbientConfigurable, } from "../runtime/identity-runtime.js";
5
5
  import { logger } from "../runtime/log.js";
6
- import { extractAssistantContent, extractAssistantText, } from "./assistant-text.js";
7
- import { SLACK_BOT_TOKEN_ENV, currentChannelBinding, resolveRuntimeChannel, } from "./binding.js";
6
+ import { extractAssistantText } from "./assistant-text.js";
7
+ import { SLACK_BOT_TOKEN_ENV, currentChannelBinding } from "./binding.js";
8
8
  import { createSlackWebApiTransport } from "./slack/transport.js";
9
9
  import { createTriggerClient } from "./trigger/client.js";
10
10
  let scheduleMetadataForTests;
@@ -96,7 +96,7 @@ export async function deliverScheduleResult(input) {
96
96
  return "posted";
97
97
  }
98
98
  catch (error) {
99
- logger.error(`schedule Slack delivery failed (${logger.safeErrorLabel(error)})`, error);
99
+ logger.error(`schedule Slack delivery failed (${logger.safeErrorLabel(error)})`);
100
100
  return "failed";
101
101
  }
102
102
  }
@@ -123,7 +123,7 @@ export async function deliverScheduleResult(input) {
123
123
  return "posted";
124
124
  }
125
125
  catch (error) {
126
- logger.error(`schedule Trigger channel delivery failed (${logger.safeErrorLabel(error)})`, error);
126
+ logger.error(`schedule Trigger channel delivery failed (${logger.safeErrorLabel(error)})`);
127
127
  return "failed";
128
128
  }
129
129
  }
@@ -141,7 +141,7 @@ export async function deliverScheduleResult(input) {
141
141
  return "posted";
142
142
  }
143
143
  catch (error) {
144
- logger.error(`schedule Slack delivery failed (${logger.safeErrorLabel(error)})`, error);
144
+ logger.error(`schedule Slack delivery failed (${logger.safeErrorLabel(error)})`);
145
145
  return "failed";
146
146
  }
147
147
  }
@@ -186,24 +186,13 @@ export function createScheduleDeliveryMiddleware(options) {
186
186
  "messages" in state
187
187
  ? state.messages
188
188
  : undefined;
189
- const replyText = extractAssistantText({ messages });
190
- const routing = currentChannelBinding.getStore()?.routing ?? {};
191
- const savedChannel = routing.mda_channel;
192
- if (savedChannel != null) {
193
- const channel = resolveRuntimeChannel({ mda_channel: savedChannel }, configurable);
194
- if (!channel?.post)
195
- throw new Error("Scheduled channel delivery is unavailable");
196
- const binding = savedChannel;
197
- const content = binding.transport === "trigger_server"
198
- ? replyText || null
199
- : extractAssistantContent({ messages });
200
- if (content !== null)
201
- await channel.post({
202
- type: "content",
203
- content,
204
- });
189
+ const scope = currentChannelBinding.getStore();
190
+ // A schedule on a channel thread answers there in the run's delivery
191
+ // step; `deliverTo` covers the rest.
192
+ if (scope?.thread?.thread?.origin)
205
193
  return undefined;
206
- }
194
+ const replyText = extractAssistantText({ messages });
195
+ const routing = scope?.routing ?? {};
207
196
  const schedule = routing.mda_schedule;
208
197
  const deliverTo = readScheduleDeliverTo(schedule?.deliver_to);
209
198
  if (deliverTo) {
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-delivery.js","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schedule-delivery.js","sourceRoot":"","sources":["../../src/channels/schedule-delivery.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import { ChannelError } from "../errors.js";
2
2
  export declare const SLACK_API = "https://slack.com/api";
3
+ /** The Slack app's bot token, an agent connection `mda deploy` sets up. */
4
+ export declare function slackBotToken(): Promise<string>;
3
5
  /** A Slack error code, separate from HTTP and network failures. */
4
6
  export declare class SlackApiError extends ChannelError {
5
7
  readonly providerError: string;
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/api.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,eAAO,MAAM,SAAS,0BAA0B,CAAC;AAEjD,mEAAmE;AACnE,qBAAa,aAAc,SAAQ,YAAY;IAG3C,QAAQ,CAAC,aAAa,EAAE,MAAM;IAFhC,YACE,MAAM,EAAE,MAAM,EACL,aAAa,EAAE,MAAM,EAM/B;CACF;AAED,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,EACE,OAAmB,EACnB,KAAK,EAAE,OAAe,EACtB,UAAmB,GACpB,GAAE;IACD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACxB,GACL,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA4DlC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/api.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAI5C,eAAO,MAAM,SAAS,0BAA0B,CAAC;AAEjD,2EAA2E;AAC3E,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAErD;AAED,mEAAmE;AACnE,qBAAa,aAAc,SAAQ,YAAY;IAG3C,QAAQ,CAAC,aAAa,EAAE,MAAM;IAFhC,YACE,MAAM,EAAE,MAAM,EACL,aAAa,EAAE,MAAM,EAM/B;CACF;AAED,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,EACE,OAAmB,EACnB,KAAK,EAAE,OAAe,EACtB,UAAmB,GACpB,GAAE;IACD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACxB,GACL,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA4DlC"}
@@ -1,6 +1,12 @@
1
1
  import { fetchWithTimeout, PROVIDER_HTTP_TIMEOUT_MS, } from "../../runtime/http.js";
2
2
  import { ChannelError } from "../errors.js";
3
+ import { connections } from "../../connections.js";
4
+ import { SLACK_BOT_TOKEN_SLUG } from "./connections.js";
3
5
  export const SLACK_API = "https://slack.com/api";
6
+ /** The Slack app's bot token, an agent connection `mda deploy` sets up. */
7
+ export async function slackBotToken() {
8
+ return await connections.get(SLACK_BOT_TOKEN_SLUG, { type: "agent" });
9
+ }
4
10
  /** A Slack error code, separate from HTTP and network failures. */
5
11
  export class SlackApiError extends ChannelError {
6
12
  providerError;
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/channels/slack/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/channels/slack/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Reserved agent connection for the Slack channel's app: reading it returns
3
+ * the app's bot token, to call Slack's Web API as the app.
4
+ */
5
+ export declare const SLACK_BOT_TOKEN_SLUG = "mda/slack-bot-token";
6
+ //# sourceMappingURL=connections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/connections.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,oBAAoB,wBAAwB,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Reserved agent connection for the Slack channel's app: reading it returns
3
+ * the app's bot token, to call Slack's Web API as the app.
4
+ */
5
+ export const SLACK_BOT_TOKEN_SLUG = "mda/slack-bot-token";
6
+ //# sourceMappingURL=connections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connections.js","sourceRoot":"","sources":["../../../src/channels/slack/connections.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC"}