managed-deepagents 0.10.0-dev.8 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/README.md +881 -139
  2. package/dist/browser.d.ts +37 -0
  3. package/dist/browser.d.ts.map +1 -0
  4. package/dist/browser.js +31 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/channels/actor.d.ts +57 -0
  7. package/dist/channels/actor.d.ts.map +1 -0
  8. package/dist/channels/actor.js +24 -0
  9. package/dist/channels/actor.js.map +1 -0
  10. package/dist/channels/assistant-text.d.ts +29 -0
  11. package/dist/channels/assistant-text.d.ts.map +1 -1
  12. package/dist/channels/assistant-text.js +81 -4
  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 +44 -11
  17. package/dist/channels/binding.js.map +1 -1
  18. package/dist/channels/delivery.d.ts +51 -0
  19. package/dist/channels/delivery.d.ts.map +1 -0
  20. package/dist/channels/delivery.js +424 -0
  21. package/dist/channels/delivery.js.map +1 -0
  22. package/dist/channels/github/app-setup.d.ts +32 -0
  23. package/dist/channels/github/app-setup.d.ts.map +1 -0
  24. package/dist/channels/github/app-setup.js +146 -0
  25. package/dist/channels/github/app-setup.js.map +1 -0
  26. package/dist/channels/github/index.d.ts +5 -1
  27. package/dist/channels/github/index.d.ts.map +1 -1
  28. package/dist/channels/github/index.js +49 -51
  29. package/dist/channels/github/index.js.map +1 -1
  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 +271 -0
  35. package/dist/channels/github/schema.d.ts.map +1 -1
  36. package/dist/channels/github/schema.js +33 -0
  37. package/dist/channels/github/schema.js.map +1 -1
  38. package/dist/channels/github/types.d.ts +55 -15
  39. package/dist/channels/github/types.d.ts.map +1 -1
  40. package/dist/channels/http/endpoint.d.ts +137 -0
  41. package/dist/channels/http/endpoint.d.ts.map +1 -0
  42. package/dist/channels/http/endpoint.js +286 -0
  43. package/dist/channels/http/endpoint.js.map +1 -0
  44. package/dist/channels/http/http.d.ts.map +1 -1
  45. package/dist/channels/http/http.js +240 -95
  46. package/dist/channels/http/http.js.map +1 -1
  47. package/dist/channels/http/index.d.ts +7 -1
  48. package/dist/channels/http/index.d.ts.map +1 -1
  49. package/dist/channels/http/index.js +32 -32
  50. package/dist/channels/http/index.js.map +1 -1
  51. package/dist/channels/http/ingress.d.ts +30 -24
  52. package/dist/channels/http/ingress.d.ts.map +1 -1
  53. package/dist/channels/http/ingress.js +61 -57
  54. package/dist/channels/http/ingress.js.map +1 -1
  55. package/dist/channels/http/provider.d.ts +51 -9
  56. package/dist/channels/http/provider.d.ts.map +1 -1
  57. package/dist/channels/http/provider.js +66 -15
  58. package/dist/channels/http/provider.js.map +1 -1
  59. package/dist/channels/http/studio.d.ts +14 -5
  60. package/dist/channels/http/studio.d.ts.map +1 -1
  61. package/dist/channels/http/studio.js +20 -5
  62. package/dist/channels/http/studio.js.map +1 -1
  63. package/dist/channels/http/types.d.ts +110 -56
  64. package/dist/channels/http/types.d.ts.map +1 -1
  65. package/dist/channels/linear/app-setup.d.ts +29 -0
  66. package/dist/channels/linear/app-setup.d.ts.map +1 -0
  67. package/dist/channels/linear/app-setup.js +102 -0
  68. package/dist/channels/linear/app-setup.js.map +1 -0
  69. package/dist/channels/linear/index.d.ts +5 -1
  70. package/dist/channels/linear/index.d.ts.map +1 -1
  71. package/dist/channels/linear/index.js +75 -93
  72. package/dist/channels/linear/index.js.map +1 -1
  73. package/dist/channels/linear/schema.d.ts +11 -25
  74. package/dist/channels/linear/schema.d.ts.map +1 -1
  75. package/dist/channels/linear/schema.js +6 -0
  76. package/dist/channels/linear/schema.js.map +1 -1
  77. package/dist/channels/linear/types.d.ts +38 -16
  78. package/dist/channels/linear/types.d.ts.map +1 -1
  79. package/dist/channels/messaging-registry.d.ts +16 -0
  80. package/dist/channels/messaging-registry.d.ts.map +1 -1
  81. package/dist/channels/messaging-registry.js +29 -0
  82. package/dist/channels/messaging-registry.js.map +1 -1
  83. package/dist/channels/reserved-connections.d.ts.map +1 -1
  84. package/dist/channels/reserved-connections.js +10 -0
  85. package/dist/channels/reserved-connections.js.map +1 -1
  86. package/dist/channels/resolve-user-endpoint.d.ts +34 -0
  87. package/dist/channels/resolve-user-endpoint.d.ts.map +1 -0
  88. package/dist/channels/resolve-user-endpoint.js +51 -0
  89. package/dist/channels/resolve-user-endpoint.js.map +1 -0
  90. package/dist/channels/resolve-user.d.ts +95 -0
  91. package/dist/channels/resolve-user.d.ts.map +1 -0
  92. package/dist/channels/resolve-user.js +143 -0
  93. package/dist/channels/resolve-user.js.map +1 -0
  94. package/dist/channels/run-input.d.ts +46 -4
  95. package/dist/channels/run-input.d.ts.map +1 -1
  96. package/dist/channels/run-input.js +94 -30
  97. package/dist/channels/run-input.js.map +1 -1
  98. package/dist/channels/runtime.d.ts +5 -2
  99. package/dist/channels/runtime.d.ts.map +1 -1
  100. package/dist/channels/runtime.js +19 -10
  101. package/dist/channels/runtime.js.map +1 -1
  102. package/dist/channels/schedule-delivery.d.ts +2 -13
  103. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  104. package/dist/channels/schedule-delivery.js +9 -76
  105. package/dist/channels/schedule-delivery.js.map +1 -1
  106. package/dist/channels/slack/api.d.ts +2 -0
  107. package/dist/channels/slack/api.d.ts.map +1 -1
  108. package/dist/channels/slack/api.js +6 -0
  109. package/dist/channels/slack/api.js.map +1 -1
  110. package/dist/channels/slack/connections.d.ts +6 -0
  111. package/dist/channels/slack/connections.d.ts.map +1 -0
  112. package/dist/channels/slack/connections.js +6 -0
  113. package/dist/channels/slack/connections.js.map +1 -0
  114. package/dist/channels/slack/events.d.ts +278 -0
  115. package/dist/channels/slack/events.d.ts.map +1 -0
  116. package/dist/channels/slack/events.js +235 -0
  117. package/dist/channels/slack/events.js.map +1 -0
  118. package/dist/channels/slack/files.d.ts.map +1 -1
  119. package/dist/channels/slack/files.js +2 -3
  120. package/dist/channels/slack/files.js.map +1 -1
  121. package/dist/channels/slack/index.d.ts +90 -2
  122. package/dist/channels/slack/index.d.ts.map +1 -1
  123. package/dist/channels/slack/index.js +188 -6
  124. package/dist/channels/slack/index.js.map +1 -1
  125. package/dist/channels/slack/message-content.d.ts.map +1 -1
  126. package/dist/channels/slack/message-content.js +23 -28
  127. package/dist/channels/slack/message-content.js.map +1 -1
  128. package/dist/channels/slack/status.d.ts +76 -0
  129. package/dist/channels/slack/status.d.ts.map +1 -0
  130. package/dist/channels/slack/status.js +427 -0
  131. package/dist/channels/slack/status.js.map +1 -0
  132. package/dist/channels/trigger/client.d.ts.map +1 -1
  133. package/dist/channels/trigger/client.js +9 -11
  134. package/dist/channels/trigger/client.js.map +1 -1
  135. package/dist/channels/trigger/conversation.d.ts +11 -0
  136. package/dist/channels/trigger/conversation.d.ts.map +1 -0
  137. package/dist/channels/trigger/conversation.js +72 -0
  138. package/dist/channels/trigger/conversation.js.map +1 -0
  139. package/dist/channels/trigger/http.d.ts +130 -4
  140. package/dist/channels/trigger/http.d.ts.map +1 -1
  141. package/dist/channels/trigger/http.js +419 -82
  142. package/dist/channels/trigger/http.js.map +1 -1
  143. package/dist/channels/trigger/identity-context.d.ts +1 -1
  144. package/dist/channels/trigger/identity-context.d.ts.map +1 -1
  145. package/dist/channels/trigger/identity-context.js +3 -5
  146. package/dist/channels/trigger/identity-context.js.map +1 -1
  147. package/dist/channels/trigger/ingress.d.ts +70 -1
  148. package/dist/channels/trigger/ingress.d.ts.map +1 -1
  149. package/dist/channels/trigger/ingress.js +141 -9
  150. package/dist/channels/trigger/ingress.js.map +1 -1
  151. package/dist/channels/trigger/transport.d.ts +10 -0
  152. package/dist/channels/trigger/transport.d.ts.map +1 -1
  153. package/dist/channels/trigger/transport.js +25 -9
  154. package/dist/channels/trigger/transport.js.map +1 -1
  155. package/dist/channels/trigger/types.d.ts +92 -3
  156. package/dist/channels/trigger/types.d.ts.map +1 -1
  157. package/dist/channels/trigger/types.js +37 -0
  158. package/dist/channels/trigger/types.js.map +1 -1
  159. package/dist/channels/types.d.ts +53 -4
  160. package/dist/channels/types.d.ts.map +1 -1
  161. package/dist/channels/types.js +2 -0
  162. package/dist/channels/types.js.map +1 -1
  163. package/dist/concurrency/batch-processor.d.ts +51 -0
  164. package/dist/concurrency/batch-processor.d.ts.map +1 -0
  165. package/dist/concurrency/batch-processor.js +99 -0
  166. package/dist/concurrency/batch-processor.js.map +1 -0
  167. package/dist/connections.d.ts +5 -12
  168. package/dist/connections.d.ts.map +1 -1
  169. package/dist/connections.js +28 -30
  170. package/dist/connections.js.map +1 -1
  171. package/dist/connectors/mcp/langsmith-url.d.ts.map +1 -1
  172. package/dist/connectors/mcp/langsmith-url.js +0 -1
  173. package/dist/connectors/mcp/langsmith-url.js.map +1 -1
  174. package/dist/credential-gate.js +3 -3
  175. package/dist/credential-gate.js.map +1 -1
  176. package/dist/define-deep-agent.d.ts +2 -2
  177. package/dist/define-deep-agent.d.ts.map +1 -1
  178. package/dist/define-deep-agent.js +53 -2
  179. package/dist/define-deep-agent.js.map +1 -1
  180. package/dist/identity/index.d.ts.map +1 -1
  181. package/dist/identity/index.js +3 -1
  182. package/dist/identity/index.js.map +1 -1
  183. package/dist/identity/loopback.d.ts +7 -2
  184. package/dist/identity/loopback.d.ts.map +1 -1
  185. package/dist/identity/loopback.js +15 -4
  186. package/dist/identity/loopback.js.map +1 -1
  187. package/dist/identity/options.d.ts +9 -0
  188. package/dist/identity/options.d.ts.map +1 -1
  189. package/dist/identity/options.js +1 -1
  190. package/dist/identity/options.js.map +1 -1
  191. package/dist/identity/slack/links.js +3 -2
  192. package/dist/identity/slack/links.js.map +1 -1
  193. package/dist/identity/types.d.ts +3 -0
  194. package/dist/identity/types.d.ts.map +1 -1
  195. package/dist/index.d.ts +15 -5
  196. package/dist/index.d.ts.map +1 -1
  197. package/dist/index.js +2 -1
  198. package/dist/index.js.map +1 -1
  199. package/dist/ingress/index.d.ts +8 -0
  200. package/dist/ingress/index.d.ts.map +1 -1
  201. package/dist/ingress/index.js +32 -2
  202. package/dist/ingress/index.js.map +1 -1
  203. package/dist/ingress/loopback.d.ts +1 -0
  204. package/dist/ingress/loopback.d.ts.map +1 -1
  205. package/dist/ingress/loopback.js +7 -3
  206. package/dist/ingress/loopback.js.map +1 -1
  207. package/dist/ingress/runs.d.ts +27 -1
  208. package/dist/ingress/runs.d.ts.map +1 -1
  209. package/dist/ingress/runs.js +69 -6
  210. package/dist/ingress/runs.js.map +1 -1
  211. package/dist/managed-composition.d.ts +3 -0
  212. package/dist/managed-composition.d.ts.map +1 -1
  213. package/dist/managed-composition.js +29 -13
  214. package/dist/managed-composition.js.map +1 -1
  215. package/dist/memory/instructions-middleware.d.ts.map +1 -1
  216. package/dist/memory/instructions-middleware.js +6 -5
  217. package/dist/memory/instructions-middleware.js.map +1 -1
  218. package/dist/namespaces.d.ts +4 -21
  219. package/dist/namespaces.d.ts.map +1 -1
  220. package/dist/namespaces.js +0 -29
  221. package/dist/namespaces.js.map +1 -1
  222. package/dist/resilience/retry.d.ts +21 -0
  223. package/dist/resilience/retry.d.ts.map +1 -0
  224. package/dist/resilience/retry.js +40 -0
  225. package/dist/resilience/retry.js.map +1 -0
  226. package/dist/runtime/async-subagents.d.ts +27 -0
  227. package/dist/runtime/async-subagents.d.ts.map +1 -0
  228. package/dist/runtime/async-subagents.js +139 -0
  229. package/dist/runtime/async-subagents.js.map +1 -0
  230. package/dist/runtime/auth.d.ts +1 -2
  231. package/dist/runtime/auth.d.ts.map +1 -1
  232. package/dist/runtime/auth.js +138 -72
  233. package/dist/runtime/auth.js.map +1 -1
  234. package/dist/runtime/backend.d.ts +9 -1
  235. package/dist/runtime/backend.d.ts.map +1 -1
  236. package/dist/runtime/backend.js +36 -11
  237. package/dist/runtime/backend.js.map +1 -1
  238. package/dist/runtime/browser-facade.d.ts +10 -0
  239. package/dist/runtime/browser-facade.d.ts.map +1 -0
  240. package/dist/runtime/browser-facade.js +23 -0
  241. package/dist/runtime/browser-facade.js.map +1 -0
  242. package/dist/runtime/browser-langsmith.d.ts +143 -0
  243. package/dist/runtime/browser-langsmith.d.ts.map +1 -0
  244. package/dist/runtime/browser-langsmith.js +507 -0
  245. package/dist/runtime/browser-langsmith.js.map +1 -0
  246. package/dist/runtime/browser-recorder.py +831 -0
  247. package/dist/runtime/browser-selection.d.ts +10 -0
  248. package/dist/runtime/browser-selection.d.ts.map +1 -0
  249. package/dist/runtime/browser-selection.js +21 -0
  250. package/dist/runtime/browser-selection.js.map +1 -0
  251. package/dist/runtime/browser.d.ts +138 -0
  252. package/dist/runtime/browser.d.ts.map +1 -0
  253. package/dist/runtime/browser.js +802 -0
  254. package/dist/runtime/browser.js.map +1 -0
  255. package/dist/runtime/channel-icon.d.ts.map +1 -1
  256. package/dist/runtime/channel-icon.js +18 -7
  257. package/dist/runtime/channel-icon.js.map +1 -1
  258. package/dist/runtime/channel.d.ts +5 -0
  259. package/dist/runtime/channel.d.ts.map +1 -1
  260. package/dist/runtime/channel.js.map +1 -1
  261. package/dist/runtime/graph-build-timing.d.ts +30 -0
  262. package/dist/runtime/graph-build-timing.d.ts.map +1 -0
  263. package/dist/runtime/graph-build-timing.js +50 -0
  264. package/dist/runtime/graph-build-timing.js.map +1 -0
  265. package/dist/runtime/http.d.ts +15 -0
  266. package/dist/runtime/http.d.ts.map +1 -1
  267. package/dist/runtime/http.js +37 -0
  268. package/dist/runtime/http.js.map +1 -1
  269. package/dist/runtime/identity-http.d.ts.map +1 -1
  270. package/dist/runtime/identity-http.js +19 -7
  271. package/dist/runtime/identity-http.js.map +1 -1
  272. package/dist/runtime/identity-runtime.d.ts +4 -9
  273. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  274. package/dist/runtime/identity-runtime.js +12 -25
  275. package/dist/runtime/identity-runtime.js.map +1 -1
  276. package/dist/runtime/index.d.ts +38 -1
  277. package/dist/runtime/index.d.ts.map +1 -1
  278. package/dist/runtime/index.js +104 -52
  279. package/dist/runtime/index.js.map +1 -1
  280. package/dist/runtime/langsmith-env.d.ts +19 -0
  281. package/dist/runtime/langsmith-env.d.ts.map +1 -0
  282. package/dist/runtime/langsmith-env.js +38 -0
  283. package/dist/runtime/langsmith-env.js.map +1 -0
  284. package/dist/runtime/log.d.ts +8 -14
  285. package/dist/runtime/log.d.ts.map +1 -1
  286. package/dist/runtime/log.js +16 -7
  287. package/dist/runtime/log.js.map +1 -1
  288. package/dist/runtime/managed-middleware.d.ts.map +1 -1
  289. package/dist/runtime/managed-middleware.js +1 -14
  290. package/dist/runtime/managed-middleware.js.map +1 -1
  291. package/dist/runtime/managed-thread.d.ts +61 -0
  292. package/dist/runtime/managed-thread.d.ts.map +1 -0
  293. package/dist/runtime/managed-thread.js +76 -0
  294. package/dist/runtime/managed-thread.js.map +1 -0
  295. package/dist/runtime/managed-tools.d.ts +18 -2
  296. package/dist/runtime/managed-tools.d.ts.map +1 -1
  297. package/dist/runtime/managed-tools.js +26 -22
  298. package/dist/runtime/managed-tools.js.map +1 -1
  299. package/dist/runtime/memory/mounts.d.ts +82 -11
  300. package/dist/runtime/memory/mounts.d.ts.map +1 -1
  301. package/dist/runtime/memory/mounts.js +173 -34
  302. package/dist/runtime/memory/mounts.js.map +1 -1
  303. package/dist/runtime/memory/policy.d.ts.map +1 -1
  304. package/dist/runtime/memory/policy.js +1 -3
  305. package/dist/runtime/memory/policy.js.map +1 -1
  306. package/dist/runtime/parent-run.d.ts +33 -0
  307. package/dist/runtime/parent-run.d.ts.map +1 -0
  308. package/dist/runtime/parent-run.js +114 -0
  309. package/dist/runtime/parent-run.js.map +1 -0
  310. package/dist/runtime/run-input.d.ts +14 -1
  311. package/dist/runtime/run-input.d.ts.map +1 -1
  312. package/dist/runtime/run-input.js +118 -7
  313. package/dist/runtime/run-input.js.map +1 -1
  314. package/dist/runtime/sandbox-manager.d.ts +31 -17
  315. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  316. package/dist/runtime/sandbox-manager.js +112 -70
  317. package/dist/runtime/sandbox-manager.js.map +1 -1
  318. package/dist/runtime/schedule-auth.d.ts +79 -0
  319. package/dist/runtime/schedule-auth.d.ts.map +1 -1
  320. package/dist/runtime/schedule-auth.js +165 -7
  321. package/dist/runtime/schedule-auth.js.map +1 -1
  322. package/dist/runtime/selected-skills-backend.d.ts +3 -3
  323. package/dist/runtime/selected-skills-backend.d.ts.map +1 -1
  324. package/dist/runtime/selected-skills-backend.js +5 -5
  325. package/dist/runtime/selected-skills-backend.js.map +1 -1
  326. package/dist/runtime/static-entry.d.ts.map +1 -1
  327. package/dist/runtime/static-entry.js +1 -0
  328. package/dist/runtime/static-entry.js.map +1 -1
  329. package/dist/runtime/thread-record.d.ts +88 -0
  330. package/dist/runtime/thread-record.d.ts.map +1 -0
  331. package/dist/runtime/thread-record.js +213 -0
  332. package/dist/runtime/thread-record.js.map +1 -0
  333. package/dist/runtime/types.d.ts +12 -1
  334. package/dist/runtime/types.d.ts.map +1 -1
  335. package/dist/runtime-schedules.d.ts +15 -0
  336. package/dist/runtime-schedules.d.ts.map +1 -1
  337. package/dist/runtime-schedules.js +85 -23
  338. package/dist/runtime-schedules.js.map +1 -1
  339. package/dist/sandbox.d.ts +0 -6
  340. package/dist/sandbox.d.ts.map +1 -1
  341. package/dist/sandbox.js +3 -7
  342. package/dist/sandbox.js.map +1 -1
  343. package/dist/schedule-channel.d.ts +5 -2
  344. package/dist/schedule-channel.d.ts.map +1 -1
  345. package/dist/schedule-channel.js +13 -12
  346. package/dist/schedule-channel.js.map +1 -1
  347. package/dist/telemetry/lifecycle.d.ts +26 -0
  348. package/dist/telemetry/lifecycle.d.ts.map +1 -0
  349. package/dist/telemetry/lifecycle.js +49 -0
  350. package/dist/telemetry/lifecycle.js.map +1 -0
  351. package/dist/telemetry/metadata.d.ts.map +1 -1
  352. package/dist/telemetry/metadata.js +4 -4
  353. package/dist/telemetry/metadata.js.map +1 -1
  354. package/dist/telemetry/otel/context.d.ts +57 -0
  355. package/dist/telemetry/otel/context.d.ts.map +1 -0
  356. package/dist/telemetry/otel/context.js +122 -0
  357. package/dist/telemetry/otel/context.js.map +1 -0
  358. package/dist/telemetry/otel/exporter.d.ts +53 -0
  359. package/dist/telemetry/otel/exporter.d.ts.map +1 -0
  360. package/dist/telemetry/otel/exporter.js +190 -0
  361. package/dist/telemetry/otel/exporter.js.map +1 -0
  362. package/dist/telemetry/otel/index.d.ts +6 -0
  363. package/dist/telemetry/otel/index.d.ts.map +1 -0
  364. package/dist/telemetry/otel/index.js +3 -0
  365. package/dist/telemetry/otel/index.js.map +1 -0
  366. package/dist/telemetry/otel/otlp.d.ts +44 -0
  367. package/dist/telemetry/otel/otlp.d.ts.map +1 -0
  368. package/dist/telemetry/otel/otlp.js +7 -0
  369. package/dist/telemetry/otel/otlp.js.map +1 -0
  370. package/dist/telemetry/otel/truncate.d.ts +10 -0
  371. package/dist/telemetry/otel/truncate.d.ts.map +1 -0
  372. package/dist/telemetry/otel/truncate.js +39 -0
  373. package/dist/telemetry/otel/truncate.js.map +1 -0
  374. package/dist/telemetry/run-listener.d.ts +1 -1
  375. package/dist/telemetry/run-listener.d.ts.map +1 -1
  376. package/dist/telemetry/run-listener.js +32 -2
  377. package/dist/telemetry/run-listener.js.map +1 -1
  378. package/dist/telemetry/transport/posthog.d.ts +13 -1
  379. package/dist/telemetry/transport/posthog.d.ts.map +1 -1
  380. package/dist/telemetry/transport/posthog.js +68 -30
  381. package/dist/telemetry/transport/posthog.js.map +1 -1
  382. package/dist/types.d.ts +19 -2
  383. package/dist/types.d.ts.map +1 -1
  384. package/dist/types.js.map +1 -1
  385. package/dist/values.d.ts +15 -0
  386. package/dist/values.d.ts.map +1 -0
  387. package/dist/values.js +31 -0
  388. package/dist/values.js.map +1 -0
  389. package/package.json +26 -12
  390. package/dist/channels/http/forward.d.ts +0 -13
  391. package/dist/channels/http/forward.d.ts.map +0 -1
  392. package/dist/channels/http/forward.js +0 -128
  393. package/dist/channels/http/forward.js.map +0 -1
  394. package/dist/channels/http/reply.d.ts +0 -20
  395. package/dist/channels/http/reply.d.ts.map +0 -1
  396. package/dist/channels/http/reply.js +0 -116
  397. package/dist/channels/http/reply.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/channels/http/provider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAE9B,4EAA4E;AAC5E,MAAM,UAAU,WAAW,CAAC,OAAoB;IAC9C,OAAO,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAgB,EAChB,QAAgB,EAChB,SAA8B;IAE9B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM;QAChB,MAAM,IAAI,SAAS,CACjB,eAAe,QAAQ,cAAc,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjE,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,MAAqC,EACrC,SAA8B;IAE9B,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAChD,MAAM,IAAI,SAAS,CAAC,GAAG,QAAQ,8BAA8B,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACvC,cAAc,CACZ,QAAQ,EACR,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAC3D,SAAS,CACV,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAQD;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAoC,EACpC,KAAyD;IAEzD,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC;SAC9C,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;SACnB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,YAAoB,EACpB,MAAe;IAEf,MAAM,IAAI,GAAG,OAAO,QAAQ,QAAQ,YAAY,EAAE,CAAC;IACnD,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,KAAc,EAAE,QAAgB;IAC5D,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,WAAW,QAAQ,QAAQ,CAAC,CAAC;IAC1E,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAC3B,MAA6C;IAE7C,MAAM,OAAO,GAA8B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAC/C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAChD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAc,EACd,OAAmB,EACnB,SAAiB;IAEjB,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IACvE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,UAAU;IAIF,IAAI;IACJ,KAAK;IAJxB,MAAM,CAAuD;IAE7D,YACmB,IAAsB,EACtB,KAA2B;oBAD3B,IAAI;qBACJ,KAAK;IACrB,CAAC;IAEJ,GAAG;QACD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE;YACnD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,KAAK,GAA6C;YACtD,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CACrB,CAAC,KAAK,EAAE,EAAE;gBACR,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,OAAO,KAAK,CAAC;YACf,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;gBACjB,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;oBAAE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACnD,MAAM,KAAK,CAAC;YACd,CAAC,CACF;YACD,SAAS,EAAE,MAAM,CAAC,iBAAiB;SACpC,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,OAAO,KAAK,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,mCAAmC;IACnC,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;CACF;AAED,+EAA+E;AAC/E,MAAM,aAAa,GAAG,CAAC,GAAG,MAAM,CAAC;AACjC,2FAA2F;AAC3F,MAAM,qBAAqB,GAAG,MAAM,CAAC;AACrC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA0C,CAAC;AAE5E;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAAW,EACX,IAAsC,EACtC,KAAa;IAEb,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IAC1C,IAAI,QAAQ;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC;IAC5D,IAAI,CAAC,YAAY;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/B,IAAI,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,UAAU,CACrB,GAAG,EAAE,CACH,WAAW,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAChE,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,8BAA8B,CAAC,CAAC;YACrD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,EACJ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,aAAa,CAAC,CACzE,CAAC;QACF,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC;AACtB,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,sBAAsB;IACpC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC5B,CAAC;AAWD,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,KAA0C,EAC1C,IAA4D;IAE5D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC;QACtC,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC;KACnD,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,+BAA+B,OAAO,EAAE,CAAC,CAAC;QACjE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CACV,GAAG,QAAQ,CAAC,WAAW,EAAE,oBAAoB,OAAO,KAAK,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CACzF,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/channels/http/provider.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,24 @@
1
- import type { HttpChannelRunInfo, HttpInterruptedReason } from "./types.js";
1
+ import type { HttpDelivery, HttpFinish } from "./types.js";
2
2
  /**
3
3
  * The thread in the deployment's Studio, or the deployment's page when the
4
4
  * deployment's name or the thread's assistant is unknown. The LangSmith UI is
5
5
  * the one `mda deploy` recorded for the deployment's environment
6
6
  * (`MDA_LANGSMITH_URL`); without it there is nothing to link to.
7
7
  */
8
- export declare function studioUrl(run: HttpChannelRunInfo | undefined, env?: NodeJS.ProcessEnv): string | undefined;
8
+ export declare function studioUrl(run: HttpDelivery | undefined, env?: NodeJS.ProcessEnv): string | undefined;
9
+ /**
10
+ * `waiting` when a finished delivery's message found the thread waiting on a
11
+ * decision. A run that stopped on interrupts posts its own `interrupted`
12
+ * notice as it ends (the paused notice), so a `run` delivery has none here.
13
+ * Undefined when nothing waits, or the delivery was a cancel or lost.
14
+ */
15
+ export declare function pendingDecision(finish: HttpFinish): "waiting" | undefined;
9
16
  /**
10
17
  * What a channel tells the conversation when its thread waits on a decision,
11
- * with a link to the thread in Studio, where the decision is made. `again`
12
- * says how to continue once it is made, such as "comment again".
18
+ * with a link to the thread in Studio, where the decision is made: the run
19
+ * the delivery started stopped on interrupts (`interrupted`), or the message
20
+ * found the thread waiting (`waiting`). `again` says how to continue once it
21
+ * is made, such as "comment again".
13
22
  */
14
- export declare function interruptedNotice(reason: HttpInterruptedReason, run: HttpChannelRunInfo, again: string): string;
23
+ export declare function interruptedNotice(outcome: "interrupted" | "waiting", delivery: HttpDelivery, again: string): string;
15
24
  //# sourceMappingURL=studio.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"studio.d.ts","sourceRoot":"","sources":["../../../src/channels/http/studio.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAS5E;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,kBAAkB,GAAG,SAAS,EACnC,GAAG,oBAAc,GAChB,MAAM,GAAG,SAAS,CAsBpB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,qBAAqB,EAC7B,GAAG,EAAE,kBAAkB,EACvB,KAAK,EAAE,MAAM,GACZ,MAAM,CAMR"}
1
+ {"version":3,"file":"studio.d.ts","sourceRoot":"","sources":["../../../src/channels/http/studio.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAS3D;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,YAAY,GAAG,SAAS,EAC7B,GAAG,oBAAc,GAChB,MAAM,GAAG,SAAS,CAsBpB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAKzE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,MAAM,GACZ,MAAM,CAMR"}
@@ -37,15 +37,30 @@ export function studioUrl(run, env = process.env) {
37
37
  });
38
38
  return `${origin}/o/${workspace}/a/${encodeURIComponent(name)}/studio/thread?${query}`;
39
39
  }
40
+ /**
41
+ * `waiting` when a finished delivery's message found the thread waiting on a
42
+ * decision. A run that stopped on interrupts posts its own `interrupted`
43
+ * notice as it ends (the paused notice), so a `run` delivery has none here.
44
+ * Undefined when nothing waits, or the delivery was a cancel or lost.
45
+ */
46
+ export function pendingDecision(finish) {
47
+ if (!finish.interrupts.length)
48
+ return undefined;
49
+ return finish.type === "skipped" && finish.reason === "waiting"
50
+ ? "waiting"
51
+ : undefined;
52
+ }
40
53
  /**
41
54
  * What a channel tells the conversation when its thread waits on a decision,
42
- * with a link to the thread in Studio, where the decision is made. `again`
43
- * says how to continue once it is made, such as "comment again".
55
+ * with a link to the thread in Studio, where the decision is made: the run
56
+ * the delivery started stopped on interrupts (`interrupted`), or the message
57
+ * found the thread waiting (`waiting`). `again` says how to continue once it
58
+ * is made, such as "comment again".
44
59
  */
45
- export function interruptedNotice(reason, run, again) {
46
- const url = studioUrl(run);
60
+ export function interruptedNotice(outcome, delivery, again) {
61
+ const url = studioUrl(delivery);
47
62
  const studio = url ? `[LangSmith Studio](${url})` : "LangSmith Studio";
48
- return reason === "stopped"
63
+ return outcome === "interrupted"
49
64
  ? `I need a decision before I continue. Review the pending step in ${studio}.`
50
65
  : `I'm waiting for a decision on an earlier step in this conversation, so I haven't read this yet. Review the pending step in ${studio}, then ${again}.`;
51
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"studio.js","sourceRoot":"","sources":["../../../src/channels/http/studio.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"studio.js","sourceRoot":"","sources":["../../../src/channels/http/studio.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
+ import type { Interrupt } from "@langchain/langgraph-sdk";
1
2
  import type { MultitaskStrategy } from "../../ingress/runs.js";
2
3
  import type { MessageContent } from "@langchain/core/messages";
3
- import type { ChannelMessage, JsonValue } from "../types.js";
4
+ import type { ChannelMessage, ChannelReply, JsonValue } from "../types.js";
4
5
  import type { ChannelRunResult } from "../run-input.js";
6
+ import type { ChannelActor } from "../actor.js";
5
7
  export interface HttpChannelInboundMessage {
6
8
  userId: string;
7
9
  /** See {@link channelThreadId} for one thread per provider conversation. */
@@ -16,10 +18,25 @@ export interface HttpChannelInboundMessage {
16
18
  /**
17
19
  * The provider's ID for this delivery. A thread runs each delivery once, so
18
20
  * a redelivered event starts nothing.
21
+ *
22
+ * @experimental This may change in a minor release.
19
23
  */
20
24
  deliveryKey?: string;
25
+ /**
26
+ * Answer the provider before the adapter's `input` decides what the run
27
+ * starts with, and start it in the background: for input that may take
28
+ * longer than the provider waits, such as an event endpoint's. A failure
29
+ * then can't fail the delivery, so the provider doesn't redeliver it.
30
+ *
31
+ * @experimental This may change in a minor release.
32
+ */
33
+ background?: boolean;
21
34
  }
22
- /** The thread a `cancel` result stops, and who to tell. */
35
+ /**
36
+ * The thread a `cancel` result stops, and who to tell.
37
+ *
38
+ * @experimental This may change in a minor release.
39
+ */
23
40
  export interface HttpChannelCancelMessage {
24
41
  userId: string;
25
42
  threadId: string;
@@ -31,16 +48,18 @@ export type HttpChannelParseResult = {
31
48
  message: HttpChannelInboundMessage;
32
49
  /** Optional provider data exposed as runtime.channel.rawEvent. */
33
50
  rawEvent?: JsonValue;
51
+ /** The verified sender, which `resolveUser` maps to one of your users. */
52
+ actor?: ChannelActor;
34
53
  response?: Response;
35
54
  } | {
36
55
  type: "ignore";
37
56
  response?: Response;
38
- /** The provider's event, when it is parsed only to be forwarded. */
39
- rawEvent?: JsonValue;
40
57
  } | {
41
58
  /**
42
59
  * Stop the work on the message's thread: MDA cancels its queued and
43
- * running runs, keeping their progress, then calls `onCancelled`.
60
+ * running runs, keeping their progress, then calls `onFinish`.
61
+ *
62
+ * @experimental This may change in a minor release.
44
63
  */
45
64
  type: "cancel";
46
65
  message: HttpChannelCancelMessage;
@@ -67,86 +86,121 @@ export interface HttpChannelAdapter {
67
86
  * `rollback` cancels it and discards its progress, and `reject` starts
68
87
  * nothing. Messages to a thread that waits on an interrupt start nothing
69
88
  * either way.
89
+ *
90
+ * @experimental This may change in a minor release.
70
91
  */
71
92
  multitaskStrategy?: MultitaskStrategy;
72
93
  /**
73
- * Why `onInterrupted` is called; by default only `"waiting"`. Add `"stopped"` to
74
- * also hear when the run a delivery started stops on interrupts.
94
+ * Whether the channel posts the run's final answer with `post`: `auto`
95
+ * (the default) or `none`, to leave replying to the agent; see
96
+ * {@link ChannelReply}.
97
+ *
98
+ * @experimental This may change in a minor release.
75
99
  */
76
- interruptedReasons?: readonly HttpInterruptedReason[];
100
+ reply?: ChannelReply;
77
101
  verify(context: HttpChannelRequest): boolean | Promise<boolean>;
78
102
  /** Decode the verified request body in the provider's format. */
79
103
  parse(context: HttpChannelRequest): HttpChannelParseResult | Promise<HttpChannelParseResult>;
80
104
  post?(input: HttpChannelPostInput): Promise<HttpPostedMessage>;
105
+ /**
106
+ * The run a message started failed: tell the sender instead of the default
107
+ * apology `post` sends. Called before `onFinish`.
108
+ */
81
109
  onError?(error: unknown, target: JsonValue): Promise<void>;
82
110
  /**
83
111
  * What a message without `content` starts a run with, asked only once the
84
112
  * thread takes a new turn, never while it waits on an interrupt. `null` or
85
113
  * `undefined` starts nothing.
86
- */
87
- input?(message: HttpChannelInboundMessage, rawEvent: JsonValue | undefined): ChannelRunResult | null | undefined | Promise<ChannelRunResult | null | undefined>;
88
- /**
89
- * The thread waits on a decision. Tell the sender where to make it (Studio
90
- * resumes interrupts). Failures are logged. `reason` says why:
91
114
  *
92
- * - `"waiting"`: a message arrived while the thread waits, so MDA started
93
- * no run.
94
- * - `"stopped"`: the run this delivery started just stopped on interrupts.
95
- *
96
- * It is called only for the reasons in `interruptedReasons`.
115
+ * @experimental This may change in a minor release.
97
116
  */
98
- onInterrupted?(target: JsonValue, run: HttpChannelRunInfo, reason: HttpInterruptedReason): Promise<void>;
117
+ input?(message: HttpChannelInboundMessage, rawEvent: JsonValue | undefined): ChannelRunResult | null | undefined | Promise<ChannelRunResult | null | undefined>;
99
118
  /**
100
119
  * A verified message reached its thread, before MDA starts or queues
101
- * anything for it, and whatever it then does. For providers that
102
- * expect a prompt acknowledgement. Runs in the background; failures are
103
- * logged.
104
- */
105
- onDelivered?(target: JsonValue, run: HttpChannelRunInfo): Promise<void>;
106
- /**
107
- * Send a verified delivery on to other services, besides acting on it here.
108
- * Called for every verified delivery, after `parse`, with the delivery as
109
- * the provider sent it: its raw body and its headers, signature included,
110
- * minus the ones the platform in front of the deployment adds. Return a
111
- * request to send, such as `new Request(url, request)`, several, or nothing.
120
+ * anything for it. For providers that expect a prompt acknowledgement.
121
+ * Each message that gets it later gets `onFinish`. Runs in the
122
+ * background; failures are logged.
112
123
  *
113
- * MDA sends them in the background, at most 10, each within 10 seconds and
114
- * without following redirects; failures are logged. The provider's answer
115
- * never waits for them, so delivery is best effort: a receiver should
116
- * dedupe by the provider's delivery ID.
124
+ * @experimental This may change in a minor release.
117
125
  */
118
- forward?(request: Request, delivery: HttpForwardContext): HttpForwardResult | Promise<HttpForwardResult>;
126
+ onReceived?(target: JsonValue, delivery: HttpDelivery): Promise<void>;
119
127
  /**
120
- * MDA cancelled the thread's runs for a `cancel` result; `cancelled` says
121
- * how many were active. Runs in the background; failures are logged.
128
+ * A message is done, once, with how: the run it started ended (`run`), it
129
+ * started none and why (`skipped`), or MDA couldn't start the run or lost
130
+ * track of it (`failed`); see {@link HttpFinish}. `interrupts` are what the
131
+ * thread waits on now, non-empty while a decision is pending, made in
132
+ * Studio. Called after `onReceived` and `onError`, in the background;
133
+ * failures are logged.
134
+ *
135
+ * It runs in the process that took the delivery, so a restart loses it,
136
+ * and a run Studio resumes has no delivery. Keep a reconciliation, or set
137
+ * the run's `webhook`, for anything that must not miss a run.
138
+ *
139
+ * @experimental This may change in a minor release.
122
140
  */
123
- onCancelled?(target: JsonValue, run: HttpChannelRunInfo & {
124
- cancelled: number;
125
- }): Promise<void>;
141
+ onFinish?(target: JsonValue, delivery: HttpFinishedDelivery): Promise<void>;
126
142
  }
127
- /** The thread a notice is about, for links into LangSmith Studio. */
128
- export interface HttpChannelRunInfo {
143
+ /** A delivery's thread, for notices and links into LangSmith Studio. */
144
+ export interface HttpDelivery {
129
145
  threadId: string;
130
146
  /** The assistant that runs on the thread, when known. */
131
147
  assistantId?: string;
132
- /** The provider event of the delivery the notice is about, when parsed. */
148
+ /** The provider event `parse` returned, if any. */
133
149
  rawEvent?: JsonValue;
134
150
  }
135
- /** Why `onInterrupted` is called; see {@link HttpChannelAdapter.onInterrupted}. */
136
- export type HttpInterruptedReason = "waiting" | "stopped";
151
+ /** A delivery that is done; see {@link HttpChannelAdapter.onFinish}. */
152
+ export type HttpFinishedDelivery = HttpDelivery & HttpFinish;
153
+ /**
154
+ * How a delivery finished, to switch on by `type`. Each comes with
155
+ * `interrupts`, the thread's pending interrupts: what it waits on now.
156
+ *
157
+ * - `run`: the run it started ended; `run.status` says how.
158
+ * - `skipped`: it started no run; `reason` says why.
159
+ * - `failed`: MDA couldn't start its run after the provider got its answer,
160
+ * so nothing redelivers it (`start`); couldn't start it and answered the
161
+ * provider with an error, so it may redeliver it as a new delivery, which
162
+ * reports its own outcome (`retry`); or lost track of the run it started
163
+ * (`observe`), which may still answer. Only `start` is a final failure.
164
+ */
165
+ export type HttpFinish = {
166
+ type: "run";
167
+ run: HttpFinishedRun;
168
+ interrupts: Interrupt[];
169
+ } | {
170
+ type: "skipped";
171
+ reason: HttpSkipReason;
172
+ interrupts: Interrupt[];
173
+ } | {
174
+ type: "failed";
175
+ reason: "start" | "retry" | "observe";
176
+ interrupts: Interrupt[];
177
+ };
178
+ /**
179
+ * Why a delivery started no run:
180
+ *
181
+ * - `cancel`: it was a cancel, and MDA cancelled the thread's runs.
182
+ * - `waiting`: its thread waits on a decision; `interrupts` say on what.
183
+ * - `ignored`: its input started nothing, such as a handler that declined.
184
+ * - `duplicate`: a redelivery of a delivery the thread already took; that
185
+ * delivery's own `onFinish` reports its run.
186
+ * - `rejected`: its thread was busy, and the channel's `multitaskStrategy`
187
+ * is `reject`.
188
+ * - `dropped`: a cancel dropped it while it waited for its busy thread or
189
+ * for its input.
190
+ */
191
+ export type HttpSkipReason = "cancel" | "waiting" | "ignored" | "duplicate" | "rejected" | "dropped";
192
+ /**
193
+ * How a LangGraph run ended: `interrupted` when it was cancelled, by a cancel
194
+ * or a newer message, or replaced by a newer message's `rollback`.
195
+ */
196
+ export type HttpRunStatus = "success" | "error" | "timeout" | "interrupted";
197
+ /** A run a delivery started, and how it ended. */
198
+ export interface HttpFinishedRun {
199
+ id: string;
200
+ status: HttpRunStatus;
201
+ }
137
202
  export interface HttpChannelRequest {
138
203
  request: Request;
139
204
  rawBody: Uint8Array;
140
205
  }
141
- /** What `forward` learns about a delivery besides the request. */
142
- export interface HttpForwardContext {
143
- /** What `parse` decided. */
144
- result: "message" | "ignore" | "cancel";
145
- /** The provider's event `parse` returned, if any. */
146
- rawEvent?: JsonValue;
147
- /** The thread the delivery is for, unless it is ignored. */
148
- threadId?: string;
149
- }
150
- /** The requests `forward` sends a delivery on as. */
151
- export type HttpForwardResult = Request | readonly Request[] | null | undefined;
152
206
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/channels/http/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/channels/http/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { LinearAppOptions } from "./types.js";
2
+ /** What `mda deploy` needs to set up the Linear app. */
3
+ export type LinearAppSetup = {
4
+ /** The handled event keys, such as `Issue.create`. */
5
+ events: string[];
6
+ /** Whether the app answers agent sessions. */
7
+ sessions: boolean;
8
+ /** The webhook resource types the app subscribes to. */
9
+ webhookResourceTypes: string[];
10
+ /** The OAuth scopes the install asks for. */
11
+ scopes: string[];
12
+ /** The most the install may be granted. */
13
+ allowedScopes: string[];
14
+ /** How the app looks; deploy names it after the agent when unset. */
15
+ app?: {
16
+ name?: string;
17
+ description?: string;
18
+ icon?: string;
19
+ };
20
+ };
21
+ /**
22
+ * The app the channel's handlers and options need. The CLI reads it from the
23
+ * channel's manifest instead of working it out; the Python runtime mirrors
24
+ * these rules in `linear_app_setup.py`.
25
+ */
26
+ export declare function linearAppSetup(handlers: object, app: LinearAppOptions | undefined, options: {
27
+ sessions: boolean;
28
+ }): LinearAppSetup;
29
+ //# sourceMappingURL=app-setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-setup.d.ts","sourceRoot":"","sources":["../../../src/channels/linear/app-setup.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAkB,MAAM,YAAY,CAAC;AAqCnE,wDAAwD;AACxD,MAAM,MAAM,cAAc,GAAG;IAC3B,sDAAsD;IACtD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,8CAA8C;IAC9C,QAAQ,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,6CAA6C;IAC7C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,qEAAqE;IACrE,GAAG,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9D,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,gBAAgB,GAAG,SAAS,EACjC,OAAO,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAC7B,cAAc,CAkChB"}
@@ -0,0 +1,102 @@
1
+ import { validateChannelIconPath } from "../../runtime/channel-icon.js";
2
+ import { definedFields, handledEventKeys } from "../http/provider.js";
3
+ /** The webhook resource type that delivers each event. */
4
+ const EVENT_RESOURCE_TYPES = {
5
+ "Issue.create": "Issue",
6
+ "Issue.update": "Issue",
7
+ "Comment.create": "Comment",
8
+ "AgentSessionEvent.created": "AgentSessionEvent",
9
+ "AgentSessionEvent.prompted": "AgentSessionEvent",
10
+ };
11
+ const SESSION_EVENTS = [
12
+ "AgentSessionEvent.created",
13
+ "AgentSessionEvent.prompted",
14
+ ];
15
+ /** A revoked install, so the runtime can say why events stopped. */
16
+ const ALWAYS_SUBSCRIBED = ["OAuthAuthorization"];
17
+ /** Reading the workspace, and writing comments and agent activities. */
18
+ const BASE_SCOPES = ["read", "write"];
19
+ /** Mentioning the app and delegating issues to it, which open agent sessions. */
20
+ const SESSION_SCOPES = ["app:mentionable", "app:assignable"];
21
+ /**
22
+ * Scopes Linear can grant along with `write` without being asked. Agent Auth
23
+ * refuses a grant beyond the allowed scopes, so they are allowed.
24
+ */
25
+ const IMPLIED_SCOPES = [
26
+ "customer:read",
27
+ "customer:write",
28
+ "initiative:read",
29
+ "initiative:write",
30
+ ];
31
+ const APP_OPTIONS = ["name", "description", "icon", "teams"];
32
+ const MAX_TEAMS = 100;
33
+ const TEAM_KEY = /^[A-Za-z0-9]{1,16}$/;
34
+ /**
35
+ * The app the channel's handlers and options need. The CLI reads it from the
36
+ * channel's manifest instead of working it out; the Python runtime mirrors
37
+ * these rules in `linear_app_setup.py`.
38
+ */
39
+ export function linearAppSetup(handlers, app, options) {
40
+ checkAppOptions(app);
41
+ const events = [
42
+ ...new Set([
43
+ ...handledEventKeys(handlers),
44
+ ...(options.sessions ? SESSION_EVENTS : []),
45
+ ]),
46
+ ]
47
+ .filter(isLinearEventKey)
48
+ .sort();
49
+ // A session event handler answers sessions even with `sessions: false`.
50
+ const sessions = events.some((key) => SESSION_EVENTS.includes(key));
51
+ const scopes = sessions ? [...BASE_SCOPES, ...SESSION_SCOPES] : BASE_SCOPES;
52
+ return {
53
+ events,
54
+ sessions,
55
+ webhookResourceTypes: [
56
+ ...new Set([
57
+ ...ALWAYS_SUBSCRIBED,
58
+ ...events.map((key) => EVENT_RESOURCE_TYPES[key]),
59
+ // A change to the app's team access changes which sessions reach it.
60
+ ...(sessions ? ["PermissionChange"] : []),
61
+ ]),
62
+ ].sort(),
63
+ scopes,
64
+ allowedScopes: [...scopes, ...IMPLIED_SCOPES],
65
+ ...(app && {
66
+ app: definedFields({
67
+ name: app.name?.trim(),
68
+ description: app.description?.trim(),
69
+ icon: app.icon && validateChannelIconPath(app.icon, "Linear app.icon"),
70
+ }),
71
+ }),
72
+ };
73
+ }
74
+ function isLinearEventKey(key) {
75
+ return Object.hasOwn(EVENT_RESOURCE_TYPES, key);
76
+ }
77
+ /** Check the app options against Linear's rules before deploy sends them. */
78
+ function checkAppOptions(app) {
79
+ if (!app)
80
+ return;
81
+ // A misspelled option would silently widen what starts runs.
82
+ const unknown = Object.keys(app).filter((key) => !APP_OPTIONS.includes(key));
83
+ if (unknown.length)
84
+ throw new TypeError(`unknown Linear app option ${unknown.join(", ")}; use ${APP_OPTIONS.join(", ")}`);
85
+ const name = app.name?.trim();
86
+ if (name !== undefined &&
87
+ (name.length < 2 || name.length > 80 || /linear|https?:\/\//i.test(name)))
88
+ throw new TypeError('Linear app.name must be 2-80 characters, without "Linear" or a URL');
89
+ const description = app.description?.trim();
90
+ if (description !== undefined && (!description || description.length > 1000))
91
+ throw new TypeError("Linear app.description must be 1-1000 characters");
92
+ if (app.teams === undefined)
93
+ return;
94
+ if (app.teams.length === 0)
95
+ throw new TypeError("Linear app.teams must list team keys; omit it to allow every team");
96
+ if (app.teams.length > MAX_TEAMS)
97
+ throw new TypeError(`Linear app.teams must list at most ${MAX_TEAMS} teams`);
98
+ for (const team of app.teams)
99
+ if (!TEAM_KEY.test(team.trim()))
100
+ throw new TypeError(`Linear app.teams has an invalid team key '${team.trim()}'; use keys such as ENG`);
101
+ }
102
+ //# sourceMappingURL=app-setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-setup.js","sourceRoot":"","sources":["../../../src/channels/linear/app-setup.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,11 @@ import { type HttpChannel } from "../http/index.js";
2
2
  import type { LinearChannelOptions } from "./types.js";
3
3
  export type { LinearAppOptions, LinearChannelOptions, LinearChannelThread, LinearEvent, LinearEventCallback, LinearEventKey, LinearEventResult, LinearPayloadFor, } from "./types.js";
4
4
  export { LinearRateLimitError } from "./graphql.js";
5
- /** Adapt verified Linear webhooks into HTTP channel messages or skips. */
5
+ /**
6
+ * Adapt verified Linear webhooks into HTTP channel messages or skips.
7
+ *
8
+ * @experimental The Linear channel may change in a minor release.
9
+ */
6
10
  export declare function linearChannel(options?: LinearChannelOptions): HttpChannel;
7
11
  /** Forget the cached webhook secret; for tests. */
8
12
  export declare function resetLinearWebhookSecret(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/channels/linear/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,WAAW,EAOjB,MAAM,kBAAkB,CAAC;AAkC1B,OAAO,KAAK,EAEV,oBAAoB,EAIrB,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAyBpD,0EAA0E;AAC1E,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,WAAW,CAoE7E;AA+CD,mDAAmD;AACnD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/channels/linear/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,WAAW,EAOjB,MAAM,kBAAkB,CAAC;AA2C1B,OAAO,KAAK,EACV,oBAAoB,EAIrB,MAAM,YAAY,CAAC;AAIpB,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAwBpD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,WAAW,CAuD7E;AAgBD,mDAAmD;AACnD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}