managed-deepagents 0.5.0-dev.88 → 0.5.0-dev.90

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 (213) hide show
  1. package/README.md +2 -2
  2. package/dist/channels/index.d.ts +7 -6
  3. package/dist/channels/index.d.ts.map +1 -1
  4. package/dist/channels/index.js +6 -5
  5. package/dist/channels/index.js.map +1 -1
  6. package/dist/channels/manifest.d.ts +0 -30
  7. package/dist/channels/manifest.d.ts.map +1 -1
  8. package/dist/channels/messaging-registry.d.ts +8 -4
  9. package/dist/channels/messaging-registry.d.ts.map +1 -1
  10. package/dist/channels/messaging-registry.js +22 -16
  11. package/dist/channels/messaging-registry.js.map +1 -1
  12. package/dist/channels/registry-types.d.ts +1 -1
  13. package/dist/channels/registry.d.ts.map +1 -1
  14. package/dist/channels/registry.js +1 -3
  15. package/dist/channels/registry.js.map +1 -1
  16. package/dist/channels/schedule-delivery.js +1 -1
  17. package/dist/channels/schedule-delivery.js.map +1 -1
  18. package/dist/{connectors → channels}/slack/adapter-core.d.ts +1 -1
  19. package/dist/channels/slack/adapter-core.d.ts.map +1 -0
  20. package/dist/channels/slack/adapter-core.js.map +1 -0
  21. package/dist/{connectors → channels}/slack/adapter.d.ts +3 -3
  22. package/dist/channels/slack/adapter.d.ts.map +1 -0
  23. package/dist/{connectors → channels}/slack/adapter.js +0 -1
  24. package/dist/channels/slack/adapter.js.map +1 -0
  25. package/dist/{connectors → channels}/slack/http.d.ts +3 -3
  26. package/dist/channels/slack/http.d.ts.map +1 -0
  27. package/dist/{connectors → channels}/slack/http.js +6 -10
  28. package/dist/channels/slack/http.js.map +1 -0
  29. package/dist/channels/slack/index.d.ts +89 -0
  30. package/dist/channels/slack/index.d.ts.map +1 -0
  31. package/dist/channels/slack/index.js +148 -0
  32. package/dist/channels/slack/index.js.map +1 -0
  33. package/dist/{connectors → channels}/slack/normalize.d.ts +3 -4
  34. package/dist/channels/slack/normalize.d.ts.map +1 -0
  35. package/dist/{connectors → channels}/slack/normalize.js +1 -5
  36. package/dist/channels/slack/normalize.js.map +1 -0
  37. package/dist/channels/slack/source-thread.d.ts.map +1 -0
  38. package/dist/channels/slack/source-thread.js.map +1 -0
  39. package/dist/{connectors → channels}/slack/transport.d.ts +1 -1
  40. package/dist/channels/slack/transport.d.ts.map +1 -0
  41. package/dist/{connectors → channels}/slack/transport.js +1 -1
  42. package/dist/channels/slack/transport.js.map +1 -0
  43. package/dist/connectors/slack/index.d.ts +10 -94
  44. package/dist/connectors/slack/index.d.ts.map +1 -1
  45. package/dist/connectors/slack/index.js +25 -152
  46. package/dist/connectors/slack/index.js.map +1 -1
  47. package/dist/connectors/toolserver/catalog.d.ts +4 -10
  48. package/dist/connectors/toolserver/catalog.d.ts.map +1 -1
  49. package/dist/connectors/toolserver/catalog.js +6 -54
  50. package/dist/connectors/toolserver/catalog.js.map +1 -1
  51. package/dist/connectors/toolserver/index.d.ts +5 -7
  52. package/dist/connectors/toolserver/index.d.ts.map +1 -1
  53. package/dist/connectors/toolserver/index.js +4 -6
  54. package/dist/connectors/toolserver/index.js.map +1 -1
  55. package/dist/connectors/toolserver/integrations.d.ts +4 -4
  56. package/dist/connectors/toolserver/integrations.d.ts.map +1 -1
  57. package/dist/extension.d.ts +1 -1
  58. package/dist/extension.js +1 -1
  59. package/dist/identity/claims.d.ts +0 -2
  60. package/dist/identity/claims.d.ts.map +1 -1
  61. package/dist/identity/claims.js +0 -4
  62. package/dist/identity/claims.js.map +1 -1
  63. package/dist/identity/connect-inference.d.ts +6 -7
  64. package/dist/identity/connect-inference.d.ts.map +1 -1
  65. package/dist/identity/connect-inference.js +7 -9
  66. package/dist/identity/connect-inference.js.map +1 -1
  67. package/dist/identity/github/connect-http.d.ts +4 -4
  68. package/dist/identity/github/connect-http.js +4 -4
  69. package/dist/identity/github/index.d.ts +0 -2
  70. package/dist/identity/github/index.d.ts.map +1 -1
  71. package/dist/identity/github/index.js +0 -2
  72. package/dist/identity/github/index.js.map +1 -1
  73. package/dist/identity/index.d.ts +4 -4
  74. package/dist/identity/index.d.ts.map +1 -1
  75. package/dist/identity/index.js +27 -15
  76. package/dist/identity/index.js.map +1 -1
  77. package/dist/identity/memory-slices.d.ts +4 -7
  78. package/dist/identity/memory-slices.d.ts.map +1 -1
  79. package/dist/identity/memory-slices.js +27 -49
  80. package/dist/identity/memory-slices.js.map +1 -1
  81. package/dist/identity/options.d.ts +6 -26
  82. package/dist/identity/options.d.ts.map +1 -1
  83. package/dist/identity/options.js +22 -58
  84. package/dist/identity/options.js.map +1 -1
  85. package/dist/identity/slack/connect-http.d.ts +3 -1
  86. package/dist/identity/slack/connect-http.d.ts.map +1 -1
  87. package/dist/identity/slack/connect-http.js +3 -1
  88. package/dist/identity/slack/connect-http.js.map +1 -1
  89. package/dist/identity/slack/links.d.ts +2 -1
  90. package/dist/identity/slack/links.d.ts.map +1 -1
  91. package/dist/identity/slack/links.js +2 -1
  92. package/dist/identity/slack/links.js.map +1 -1
  93. package/dist/identity/types.d.ts +12 -60
  94. package/dist/identity/types.d.ts.map +1 -1
  95. package/dist/index.d.ts +5 -7
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +1 -1
  98. package/dist/index.js.map +1 -1
  99. package/dist/ingress/index.d.ts +0 -2
  100. package/dist/ingress/index.d.ts.map +1 -1
  101. package/dist/ingress/index.js +1 -6
  102. package/dist/ingress/index.js.map +1 -1
  103. package/dist/namespaces.d.ts +45 -83
  104. package/dist/namespaces.d.ts.map +1 -1
  105. package/dist/namespaces.js +12 -21
  106. package/dist/namespaces.js.map +1 -1
  107. package/dist/runtime/auth.d.ts +11 -13
  108. package/dist/runtime/auth.d.ts.map +1 -1
  109. package/dist/runtime/auth.js +29 -54
  110. package/dist/runtime/auth.js.map +1 -1
  111. package/dist/runtime/channel.d.ts +91 -0
  112. package/dist/runtime/channel.d.ts.map +1 -0
  113. package/dist/runtime/channel.js +98 -0
  114. package/dist/runtime/channel.js.map +1 -0
  115. package/dist/runtime/connector.d.ts +3 -3
  116. package/dist/runtime/connector.js +5 -1
  117. package/dist/runtime/connector.js.map +1 -1
  118. package/dist/runtime/cors.d.ts +1 -1
  119. package/dist/runtime/cors.d.ts.map +1 -1
  120. package/dist/runtime/cors.js +5 -1
  121. package/dist/runtime/cors.js.map +1 -1
  122. package/dist/runtime/credentials.d.ts +6 -6
  123. package/dist/runtime/credentials.js +8 -10
  124. package/dist/runtime/credentials.js.map +1 -1
  125. package/dist/runtime/http.d.ts +1 -2
  126. package/dist/runtime/http.d.ts.map +1 -1
  127. package/dist/runtime/http.js +1 -2
  128. package/dist/runtime/http.js.map +1 -1
  129. package/dist/runtime/identity-http.d.ts +8 -3
  130. package/dist/runtime/identity-http.d.ts.map +1 -1
  131. package/dist/runtime/identity-http.js +50 -8
  132. package/dist/runtime/identity-http.js.map +1 -1
  133. package/dist/runtime/identity-runtime.d.ts +13 -13
  134. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  135. package/dist/runtime/identity-runtime.js +14 -41
  136. package/dist/runtime/identity-runtime.js.map +1 -1
  137. package/dist/runtime/index.d.ts +2 -0
  138. package/dist/runtime/index.d.ts.map +1 -1
  139. package/dist/runtime/index.js +7 -5
  140. package/dist/runtime/index.js.map +1 -1
  141. package/dist/runtime/memory/lazy-context-backend.d.ts +2 -2
  142. package/dist/runtime/memory/lazy-context-backend.js +2 -2
  143. package/dist/runtime/memory/mounts.js +1 -1
  144. package/dist/runtime/memory/mounts.js.map +1 -1
  145. package/dist/runtime/memory/user-repo.d.ts.map +1 -1
  146. package/dist/runtime/memory/user-repo.js +3 -4
  147. package/dist/runtime/memory/user-repo.js.map +1 -1
  148. package/dist/runtime/types.d.ts +8 -0
  149. package/dist/runtime/types.d.ts.map +1 -1
  150. package/dist/runtime/validated-token.d.ts +1 -1
  151. package/dist/runtime/validated-token.d.ts.map +1 -1
  152. package/dist/runtime/validated-token.js +3 -16
  153. package/dist/runtime/validated-token.js.map +1 -1
  154. package/package.json +7 -7
  155. package/dist/connectors/github/adapter-core.d.ts +0 -15
  156. package/dist/connectors/github/adapter-core.d.ts.map +0 -1
  157. package/dist/connectors/github/adapter-core.js +0 -52
  158. package/dist/connectors/github/adapter-core.js.map +0 -1
  159. package/dist/connectors/github/define.d.ts +0 -168
  160. package/dist/connectors/github/define.d.ts.map +0 -1
  161. package/dist/connectors/github/define.js +0 -72
  162. package/dist/connectors/github/define.js.map +0 -1
  163. package/dist/connectors/github/http.d.ts +0 -25
  164. package/dist/connectors/github/http.d.ts.map +0 -1
  165. package/dist/connectors/github/http.js +0 -146
  166. package/dist/connectors/github/http.js.map +0 -1
  167. package/dist/connectors/github/index.d.ts +0 -121
  168. package/dist/connectors/github/index.d.ts.map +0 -1
  169. package/dist/connectors/github/index.js +0 -192
  170. package/dist/connectors/github/index.js.map +0 -1
  171. package/dist/connectors/github/match.d.ts +0 -20
  172. package/dist/connectors/github/match.d.ts.map +0 -1
  173. package/dist/connectors/github/match.js +0 -41
  174. package/dist/connectors/github/match.js.map +0 -1
  175. package/dist/connectors/github/normalize.d.ts +0 -32
  176. package/dist/connectors/github/normalize.d.ts.map +0 -1
  177. package/dist/connectors/github/normalize.js +0 -152
  178. package/dist/connectors/github/normalize.js.map +0 -1
  179. package/dist/connectors/github/sandbox.d.ts +0 -54
  180. package/dist/connectors/github/sandbox.d.ts.map +0 -1
  181. package/dist/connectors/github/sandbox.js +0 -532
  182. package/dist/connectors/github/sandbox.js.map +0 -1
  183. package/dist/connectors/github/source-thread.d.ts +0 -24
  184. package/dist/connectors/github/source-thread.d.ts.map +0 -1
  185. package/dist/connectors/github/source-thread.js +0 -54
  186. package/dist/connectors/github/source-thread.js.map +0 -1
  187. package/dist/connectors/github/transport.d.ts +0 -25
  188. package/dist/connectors/github/transport.d.ts.map +0 -1
  189. package/dist/connectors/github/transport.js +0 -106
  190. package/dist/connectors/github/transport.js.map +0 -1
  191. package/dist/connectors/langsmith/index.d.ts +0 -397
  192. package/dist/connectors/langsmith/index.d.ts.map +0 -1
  193. package/dist/connectors/langsmith/index.js +0 -436
  194. package/dist/connectors/langsmith/index.js.map +0 -1
  195. package/dist/connectors/langsmith/routes.d.ts +0 -236
  196. package/dist/connectors/langsmith/routes.d.ts.map +0 -1
  197. package/dist/connectors/langsmith/routes.js +0 -1173
  198. package/dist/connectors/langsmith/routes.js.map +0 -1
  199. package/dist/connectors/slack/adapter-core.d.ts.map +0 -1
  200. package/dist/connectors/slack/adapter-core.js.map +0 -1
  201. package/dist/connectors/slack/adapter.d.ts.map +0 -1
  202. package/dist/connectors/slack/adapter.js.map +0 -1
  203. package/dist/connectors/slack/http.d.ts.map +0 -1
  204. package/dist/connectors/slack/http.js.map +0 -1
  205. package/dist/connectors/slack/normalize.d.ts.map +0 -1
  206. package/dist/connectors/slack/normalize.js.map +0 -1
  207. package/dist/connectors/slack/source-thread.d.ts.map +0 -1
  208. package/dist/connectors/slack/source-thread.js.map +0 -1
  209. package/dist/connectors/slack/transport.d.ts.map +0 -1
  210. package/dist/connectors/slack/transport.js.map +0 -1
  211. /package/dist/{connectors → channels}/slack/adapter-core.js +0 -0
  212. /package/dist/{connectors → channels}/slack/source-thread.d.ts +0 -0
  213. /package/dist/{connectors → channels}/slack/source-thread.js +0 -0
@@ -6,11 +6,8 @@
6
6
  * and providers can be added without growing the barrel:
7
7
  *
8
8
  * ```ts
9
- * connectors.slack({ on: ["app_mention"] });
10
- * connectors.github({
11
- * repositories: [{ repo: "acme/api", path: "api" }],
12
- * events: [{ on: "pull_request.opened", prompt: () => "review" }],
13
- * });
9
+ * channels.slack({ on: ["app_mention"] });
10
+ * connectors.slack({ includeTools: ["slack_list_channels"] });
14
11
  * sandboxes.langsmith({ defaultTimeout: 600 });
15
12
  * auth.supabase({ projectRef: "abc" });
16
13
  * credentials.github({ read: ["user"] });
@@ -25,10 +22,9 @@
25
22
  * cannot contribute its own — `defineExtension` stays internal.
26
23
  */
27
24
  import { LangSmithSandbox } from "deepagents";
28
- import { githubConnector } from "./connectors/github/index.js";
29
- import { annotationQueues, chatFeedback, examples, feedback, langsmithConnector, prompts, runs, threads, traceViewer, } from "./connectors/langsmith/index.js";
30
25
  import { marketplaceConnectors, } from "./connectors/marketplace/index.js";
31
26
  import { mcpConnector } from "./connectors/mcp/index.js";
27
+ import { slackChannel } from "./channels/slack/index.js";
32
28
  import { slackConnector } from "./connectors/slack/index.js";
33
29
  import { toolServerConnectors, } from "./connectors/toolserver/index.js";
34
30
  import { defineExtension } from "./extension.js";
@@ -56,16 +52,6 @@ export const sandboxes = {
56
52
  return langsmithSandbox(options);
57
53
  },
58
54
  };
59
- const langsmithConnectors = Object.assign(langsmithConnector, {
60
- runs,
61
- feedback,
62
- examples,
63
- annotationQueues,
64
- prompts,
65
- threads,
66
- chatFeedback,
67
- traceViewer,
68
- });
69
55
  /**
70
56
  * Integrations: tools, HTTP routes, sandbox provisioning, inbound events, and
71
57
  * named messaging. Exported from `connectors/*`.
@@ -78,9 +64,14 @@ export const connectors = {
78
64
  ...toolServerConnectors,
79
65
  ...marketplaceConnectors,
80
66
  mcp: mcpConnector,
81
- github: githubConnector,
82
67
  slack: slackConnector,
83
- langsmith: langsmithConnectors,
68
+ };
69
+ /**
70
+ * Inbound messaging surfaces. Factories are assigned by reference so signatures
71
+ * stay in step with the channel modules. Hover docs come from {@link Channels}.
72
+ */
73
+ export const channels = {
74
+ slack: slackChannel,
84
75
  };
85
76
  /** Third-party token resolvers. Composed into `defineIdentity({ credentials })`. */
86
77
  export const credentials = {
@@ -99,8 +90,8 @@ export const credentials = {
99
90
  * per-actor tokens for tools, sandbox git/`gh`, or Fleet toolserver subjects.
100
91
  *
101
92
  * Authors rarely list providers by hand. Prefer inference: a user-scoped
102
- * identity plus `connectors.github` / `credentials.github({ read: ["user"] })`,
103
- * Slack Events, Google/Microsoft/LinkedIn/X toolserver connectors, or marketplace
93
+ * identity plus `credentials.github({ read: ["user"] })`, Slack Events,
94
+ * Google/Microsoft/LinkedIn/X toolserver connectors, or marketplace
104
95
  * bridges (`connectors.notion`, `connectors.neon`, …) mounts the matching
105
96
  * Connect flow automatically. Use this namespace when you need an explicit
106
97
  * opt-in or a custom options bag.
@@ -1 +1 @@
1
- {"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,IAAI,EACJ,OAAO,EACP,WAAW,GACZ,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,GAEtB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,oBAAoB,GAErB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EACL,kBAAkB,GAEnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAGN,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,MAAM,gBAAgB,GAAG,eAAe,CAAC,SAAS,EAAE;IAClD,KAAK,EAAE,qBAAqB;IAC5B,QAAQ,EAAE,gBAAgB;IAC1B,2EAA2E;IAC3E,2EAA2E;IAC3E,6BAA6B;IAC7B,IAAI,EAAE,CAAC,OAAiC,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE;CAC3D,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,SAAS,CACP,OAAiC;QAEjC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;CACF,CAAC;AAuHF,MAAM,mBAAmB,GAAiC,MAAM,CAAC,MAAM,CACrE,kBAAkB,EAClB;IACE,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,gBAAgB;IAChB,OAAO;IACP,OAAO;IACP,YAAY;IACZ,WAAW;CACZ,CACF,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAe;IACpC,GAAG,oBAAoB;IACvB,GAAG,qBAAqB;IACxB,GAAG,EAAE,YAAY;IACjB,MAAM,EAAE,eAAe;IACvB,KAAK,EAAE,cAAc;IACrB,SAAS,EAAE,mBAAmB;CAC/B,CAAC;AAEF,oFAAoF;AACpF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,iBAAiB;CAC1B,CAAC;AAgHF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,OAAO,GAAY;IAC9B,GAAG,kBAAkB;IACrB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,SAAS,EAAE,gBAAgB;IAC3B,QAAQ,EAAE,eAAe;IACzB,CAAC,EAAE,QAAQ;IACX,KAAK,EAAE,YAAY;CACpB,CAAC"}
1
+ {"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EACL,qBAAqB,GAEtB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,oBAAoB,GAErB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EACL,kBAAkB,GAEnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAGN,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,MAAM,gBAAgB,GAAG,eAAe,CAAC,SAAS,EAAE;IAClD,KAAK,EAAE,qBAAqB;IAC5B,QAAQ,EAAE,gBAAgB;IAC1B,2EAA2E;IAC3E,2EAA2E;IAC3E,6BAA6B;IAC7B,IAAI,EAAE,CAAC,OAAiC,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE;CAC3D,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,SAAS,CACP,OAAiC;QAEjC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;CACF,CAAC;AAuDF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAe;IACpC,GAAG,oBAAoB;IACvB,GAAG,qBAAqB;IACxB,GAAG,EAAE,YAAY;IACjB,KAAK,EAAE,cAAc;CACtB,CAAC;AAyBF;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,oFAAoF;AACpF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,iBAAiB;CAC1B,CAAC;AAgHF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,OAAO,GAAY;IAC9B,GAAG,kBAAkB;IACrB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,SAAS,EAAE,gBAAgB;IAC3B,QAAQ,EAAE,eAAe;IACzB,CAAC,EAAE,QAAQ;IACX,KAAK,EAAE,YAAY;CACpB,CAAC"}
@@ -1,14 +1,13 @@
1
1
  import { Auth } from "@langchain/langgraph-sdk/auth";
2
2
  import { type IdentityConfig, type IdentityDefinition, type RuntimeIdentity } from "../identity/index.js";
3
3
  /**
4
- * Reserved transport for the trusted-backend ingress mode. User/organization
5
- * travel as reserved headers (mapped into `config.configurable` by the generated
4
+ * Reserved transport for the trusted-backend ingress mode. User identity
5
+ * travels as reserved headers (mapped into `config.configurable` by the generated
6
6
  * `langgraph.json` allowlist); the ingress secret is validated here and is
7
7
  * deliberately **not** allowlisted, so it never reaches `config.configurable`.
8
8
  */
9
9
  /** Trusted-backend / channel-loopback identity headers (single source of truth). */
10
10
  export declare const USER_HEADER = "x-mda-user-id";
11
- export declare const ORGANIZATION_HEADER = "x-mda-organization-id";
12
11
  /** Comma- or space-delimited group memberships. */
13
12
  export declare const GROUPS_HEADER = "x-mda-groups";
14
13
  export declare const INGRESS_SECRET_HEADER = "x-mda-ingress-secret";
@@ -30,7 +29,6 @@ export interface ManagedUser {
30
29
  identity: string;
31
30
  permissions: string[];
32
31
  mda_user_id: string;
33
- mda_organization_id?: string;
34
32
  mda_user_email?: string;
35
33
  /** Group memberships the ingress asserted; read-only, never an isolation key. */
36
34
  mda_groups?: string[];
@@ -74,17 +72,17 @@ export declare const GITHUB_CREDENTIALS_STORE_PREFIX = "mda_github_credentials";
74
72
  */
75
73
  export declare const IDENTITY_LINKS_SERVICE_USER = "mda:identity-links";
76
74
  /**
77
- * Fail-closed (403) unless the store `namespace` contains the identity segments
78
- * the user memory partition requires as a contiguous ordered prefix (typically
79
- * after the deployment id). No user slice → no per-identity restriction.
75
+ * Fail-closed (403) unless the store `namespace` contains the caller id as a
76
+ * contiguous ordered prefix (typically after the deployment id). No user slice
77
+ * → no per-identity restriction.
80
78
  */
81
79
  export declare function assertStoreAccess(cfg: IdentityConfig, user: ManagedUser, value: unknown): void;
82
80
  /** True when `required` appears as a contiguous ordered subsequence of `namespace`. */
83
81
  export declare function namespaceHasOrderedSegments(namespace: string[], required: string[]): boolean;
84
82
  /**
85
83
  * Resolve the caller identity for `trusted_backend`: validate the shared ingress
86
- * secret, then trust the reserved user/organization headers. Fail-closed (401) on a
87
- * missing/invalid secret, a missing user, or a missing organization when one is required.
84
+ * secret, then trust the reserved user headers. Fail-closed (401) on a
85
+ * missing/invalid secret or a missing user.
88
86
  *
89
87
  * Under `mda dev` (`MDA_LOCAL_DEV=1`), requests without a valid ingress secret
90
88
  * resolve to a synthetic local service principal so LangGraph Studio can talk
@@ -107,12 +105,12 @@ export declare function isLocalDevUnscopedUser(user: unknown): boolean;
107
105
  * Returns `null` when local-dev mode is off or real ingress credentials are
108
106
  * present (so the normal trusted-backend path runs).
109
107
  */
110
- export declare function tryLocalDevTrustedUser(cfg: IdentityConfig, request: Request): ManagedUser | null;
111
- /** Derive the owner value `@auth.on.threads` filters on, per the `threads` axis. */
112
- export declare function threadOwnerKey(cfg: IdentityConfig, user: ManagedUser): string;
108
+ export declare function tryLocalDevTrustedUser(_cfg: IdentityConfig, request: Request): ManagedUser | null;
109
+ /** Derive the owner value `@auth.on.threads` filters on (the caller user id). */
110
+ export declare function threadOwnerKey(user: ManagedUser): string;
113
111
  /** True when this deployment exposes guest issuance and the request targets it. */
114
112
  export declare function isGuestIssuanceRequest(request: Request, cfg: IdentityConfig): boolean;
115
- /** True when the request targets a public connector Events ingress route. */
113
+ /** True when the request targets a public channel/connector Events ingress route. */
116
114
  export declare function isChannelEventsRequest(request: Request): boolean;
117
115
  /** True when the request is a public identity-provider OAuth/OIDC callback. */
118
116
  export declare function isIdentityProviderCallbackRequest(request: Request): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/runtime/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/runtime/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAGL,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,sBAAsB,CAAC;AAO9B;;;;;GAKG;AACH,oFAAoF;AACpF,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAC3C,mDAAmD;AACnD,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAC5C,eAAO,MAAM,qBAAqB,yBAAyB,CAAC;AAC5D;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,0BAA0B,CAAC;AAC9D,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAE7D,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAkDvD;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAmDnE;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,eAAe,CAAC,CAoB1B;AAED,uEAAuE;AACvE,eAAO,MAAM,2BAA2B,uBAAuB,CAAC;AAEhE;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,2BAA2B,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,2BAA2B,uBAAuB,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,OAAO,GACb,IAAI,CAkCN;AAED,uFAAuF;AACvF,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAeT;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,OAAO,GACf,WAAW,CAoDb;AAOD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAgB7D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,OAAO,GACf,WAAW,GAAG,IAAI,CAgBpB;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAExD;AAkBD,mFAAmF;AACnF,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,cAAc,GAClB,OAAO,CAaT;AAED,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAQhE;AAED,+EAA+E;AAC/E,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAM3E;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,IAAI,WAAW,CAMrD;AAED,gFAAgF;AAChF,wBAAgB,uBAAuB,IAAI,WAAW,CAMrD"}
@@ -1,18 +1,17 @@
1
1
  import { Auth, HTTPException, isStudioUser, } from "@langchain/langgraph-sdk/auth";
2
2
  import { trustedMessagingProviders } from "../channels/messaging-registry.js";
3
3
  import { trustedChannelSourceProviders } from "../channels/registry-store.js";
4
- import { normalizeGroups, userMemoryPartition, } from "../identity/index.js";
4
+ import { normalizeGroups, hasUserMemorySlice, } from "../identity/index.js";
5
5
  import { buildRuntimeIdentity, memoryIdentitySegments, } from "./identity-runtime.js";
6
6
  import { resolveValidatedTokenUser } from "./validated-token.js";
7
7
  /**
8
- * Reserved transport for the trusted-backend ingress mode. User/organization
9
- * travel as reserved headers (mapped into `config.configurable` by the generated
8
+ * Reserved transport for the trusted-backend ingress mode. User identity
9
+ * travels as reserved headers (mapped into `config.configurable` by the generated
10
10
  * `langgraph.json` allowlist); the ingress secret is validated here and is
11
11
  * deliberately **not** allowlisted, so it never reaches `config.configurable`.
12
12
  */
13
13
  /** Trusted-backend / channel-loopback identity headers (single source of truth). */
14
14
  export const USER_HEADER = "x-mda-user-id";
15
- export const ORGANIZATION_HEADER = "x-mda-organization-id";
16
15
  /** Comma- or space-delimited group memberships. */
17
16
  export const GROUPS_HEADER = "x-mda-groups";
18
17
  export const INGRESS_SECRET_HEADER = "x-mda-ingress-secret";
@@ -41,7 +40,12 @@ const GUEST_ISSUANCE_PATH = "/identity/guest";
41
40
  */
42
41
  const IDENTITY_PROVIDER_CALLBACK_PATH = /^\/identity\/[^/]+\/callback\/?$/;
43
42
  /**
44
- * Connector Events routes authenticate via provider signatures (Slack HMAC),
43
+ * Channel Events routes authenticate via provider signatures (Slack HMAC),
44
+ * not MDA ingress. Path shape: `/channels/{name}/events`.
45
+ */
46
+ const CHANNEL_EVENTS_PATH = /^\/channels\/[^/]+\/events\/?$/;
47
+ /**
48
+ * Connector Events routes authenticate via provider signatures (GitHub HMAC),
45
49
  * not MDA ingress. Path shape: `/connectors/{name}/events`.
46
50
  */
47
51
  const CONNECTOR_EVENTS_PATH = /^\/connectors\/[^/]+\/events\/?$/;
@@ -92,7 +96,7 @@ export function buildManagedAuth(identity) {
92
96
  if (isStudioUser(user) || isLocalDevUnscopedUser(user)) {
93
97
  return true;
94
98
  }
95
- const key = threadOwnerKey(cfg, user);
99
+ const key = threadOwnerKey(user);
96
100
  if (value && typeof value === "object") {
97
101
  const container = value;
98
102
  container.metadata = { ...container.metadata, owner: key };
@@ -152,12 +156,14 @@ export const GITHUB_CREDENTIALS_STORE_PREFIX = "mda_github_credentials";
152
156
  */
153
157
  export const IDENTITY_LINKS_SERVICE_USER = "mda:identity-links";
154
158
  /**
155
- * Fail-closed (403) unless the store `namespace` contains the identity segments
156
- * the user memory partition requires as a contiguous ordered prefix (typically
157
- * after the deployment id). No user slice → no per-identity restriction.
159
+ * Fail-closed (403) unless the store `namespace` contains the caller id as a
160
+ * contiguous ordered prefix (typically after the deployment id). No user slice
161
+ * → no per-identity restriction.
158
162
  */
159
163
  export function assertStoreAccess(cfg, user, value) {
160
- const required = memoryIdentitySegments(userMemoryPartition(cfg.scope.memory), cfg.organization, user.mda_user_id ? String(user.mda_user_id) : undefined, user.mda_organization_id ? String(user.mda_organization_id) : undefined);
164
+ const required = hasUserMemorySlice(cfg.scope.memory)
165
+ ? memoryIdentitySegments(user.mda_user_id ? String(user.mda_user_id) : undefined)
166
+ : [];
161
167
  if (required.length === 0) {
162
168
  return;
163
169
  }
@@ -201,8 +207,8 @@ export function namespaceHasOrderedSegments(namespace, required) {
201
207
  }
202
208
  /**
203
209
  * Resolve the caller identity for `trusted_backend`: validate the shared ingress
204
- * secret, then trust the reserved user/organization headers. Fail-closed (401) on a
205
- * missing/invalid secret, a missing user, or a missing organization when one is required.
210
+ * secret, then trust the reserved user headers. Fail-closed (401) on a
211
+ * missing/invalid secret or a missing user.
206
212
  *
207
213
  * Under `mda dev` (`MDA_LOCAL_DEV=1`), requests without a valid ingress secret
208
214
  * resolve to a synthetic local service principal so LangGraph Studio can talk
@@ -222,8 +228,6 @@ export function resolveTrustedBackendUser(cfg, request) {
222
228
  if (!userId) {
223
229
  throw new HTTPException(401, { message: `missing ${USER_HEADER}` });
224
230
  }
225
- const organizationId = trustedOrganizationId(request);
226
- assertOrganizationPresentIfRequired(cfg, organizationId);
227
231
  const groups = normalizeGroups(request.headers.get(GROUPS_HEADER));
228
232
  const sourceProvider = request.headers.get(SOURCE_PROVIDER_HEADER) ?? undefined;
229
233
  const sourceThread = request.headers.get(SOURCE_THREAD_HEADER) ?? undefined;
@@ -244,11 +248,15 @@ export function resolveTrustedBackendUser(cfg, request) {
244
248
  message: `missing ${SOURCE_PROVIDER_HEADER}`,
245
249
  });
246
250
  }
251
+ // Only the fixed Slack agent principal is a service. Connected Slack Events
252
+ // loopback as the linked person (`sourceProvider: "slack"`) and must stay
253
+ // kind=person so credentials/memory follow the caller.
254
+ const isService = userId === "mda:slack";
247
255
  return {
248
256
  identity: userId,
249
257
  permissions: [],
250
258
  mda_user_id: userId,
251
- ...(organizationId ? { mda_organization_id: organizationId } : {}),
259
+ ...(isService ? { mda_user_kind: "service" } : {}),
252
260
  ...(groups.length > 0 ? { mda_groups: groups } : {}),
253
261
  ...(sourceProvider
254
262
  ? {
@@ -262,10 +270,6 @@ export function resolveTrustedBackendUser(cfg, request) {
262
270
  function trustedUserId(request) {
263
271
  return request.headers.get(USER_HEADER) ?? undefined;
264
272
  }
265
- /** Active organization from the trusted headers. */
266
- function trustedOrganizationId(request) {
267
- return request.headers.get(ORGANIZATION_HEADER) ?? undefined;
268
- }
269
273
  /**
270
274
  * Under `mda dev`, synthetic local/Companion service principals are unscoped
271
275
  * for thread search + store so authors can see Studio-created Local threads.
@@ -292,7 +296,7 @@ export function isLocalDevUnscopedUser(user) {
292
296
  * Returns `null` when local-dev mode is off or real ingress credentials are
293
297
  * present (so the normal trusted-backend path runs).
294
298
  */
295
- export function tryLocalDevTrustedUser(cfg, request) {
299
+ export function tryLocalDevTrustedUser(_cfg, request) {
296
300
  if (process.env[LOCAL_DEV_ENV] !== "1") {
297
301
  return null;
298
302
  }
@@ -300,38 +304,16 @@ export function tryLocalDevTrustedUser(cfg, request) {
300
304
  return null;
301
305
  }
302
306
  const userId = trustedUserId(request) ?? LOCAL_DEV_USER;
303
- const organizationId = trustedOrganizationId(request) ??
304
- (cfg.organization === "required"
305
- ? "mda:local-dev-organization"
306
- : undefined);
307
307
  return {
308
308
  identity: userId,
309
309
  permissions: [],
310
310
  mda_user_id: userId,
311
311
  mda_user_kind: "service",
312
- ...(organizationId ? { mda_organization_id: organizationId } : {}),
313
312
  };
314
313
  }
315
- /** Derive the owner value `@auth.on.threads` filters on, per the `threads` axis. */
316
- export function threadOwnerKey(cfg, user) {
317
- const scope = cfg.scope.threads ?? "user";
318
- const userId = String(user.mda_user_id ?? "");
319
- const organizationId = user.mda_organization_id
320
- ? String(user.mda_organization_id)
321
- : undefined;
322
- if (scope === "organization") {
323
- return organizationId ?? userId;
324
- }
325
- if (scope === "conversation") {
326
- const channel = user.mda_source_thread_id;
327
- // Slack (and other conversation sources) own by source thread; web callers
328
- // without a source stamp fall back to user-owned threads.
329
- if (channel && String(channel).length > 0) {
330
- return String(channel);
331
- }
332
- return userId;
333
- }
334
- return userId;
314
+ /** Derive the owner value `@auth.on.threads` filters on (the caller user id). */
315
+ export function threadOwnerKey(user) {
316
+ return String(user.mda_user_id ?? "");
335
317
  }
336
318
  function requireIngressSecret(request) {
337
319
  if (!hasValidIngressSecret(request)) {
@@ -345,13 +327,6 @@ function hasValidIngressSecret(request) {
345
327
  const provided = request.headers.get(INGRESS_SECRET_HEADER);
346
328
  return Boolean(expected && provided && constantTimeEquals(expected, provided));
347
329
  }
348
- function assertOrganizationPresentIfRequired(cfg, organizationId) {
349
- if (cfg.organization === "required" && !organizationId) {
350
- throw new HTTPException(401, {
351
- message: `missing ${ORGANIZATION_HEADER} for an organization-scoped deployment`,
352
- });
353
- }
354
- }
355
330
  /** True when this deployment exposes guest issuance and the request targets it. */
356
331
  export function isGuestIssuanceRequest(request, cfg) {
357
332
  if (request.method !== "POST") {
@@ -367,13 +342,13 @@ export function isGuestIssuanceRequest(request, cfg) {
367
342
  }
368
343
  return http.providers.some((provider) => provider.guest?.issue);
369
344
  }
370
- /** True when the request targets a public connector Events ingress route. */
345
+ /** True when the request targets a public channel/connector Events ingress route. */
371
346
  export function isChannelEventsRequest(request) {
372
347
  if (request.method !== "POST") {
373
348
  return false;
374
349
  }
375
350
  const { pathname } = new URL(request.url);
376
- return CONNECTOR_EVENTS_PATH.test(pathname);
351
+ return (CHANNEL_EVENTS_PATH.test(pathname) || CONNECTOR_EVENTS_PATH.test(pathname));
377
352
  }
378
353
  /** True when the request is a public identity-provider OAuth/OIDC callback. */
379
354
  export function isIdentityProviderCallbackRequest(request) {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/runtime/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/runtime/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * The managed channel protocol.
3
+ *
4
+ * A channel is one inbound messaging surface with one external platform. It may
5
+ * contribute Events ingress, outbound messaging, and deploy requirements.
6
+ * Discovery is file-based: the CLI globs modules under `channels/` that export a
7
+ * `channel`, imports each one, and hands them to {@link collectChannels}, which
8
+ * stamps each with its file-stem `name`.
9
+ */
10
+ import type { ChannelManifest } from "../channels/manifest.js";
11
+ import type { ChannelTransport } from "../channels/runtime.js";
12
+ /**
13
+ * Realm-global brand marking a value as a managed channel. `Symbol.for` keeps
14
+ * the identity stable across duplicate module instances.
15
+ */
16
+ export declare const CHANNEL_BRAND: unique symbol;
17
+ /**
18
+ * Context handed to {@link Channel.events} for the conventional public inbound
19
+ * route at `/channels/{name}/events`.
20
+ */
21
+ export interface ChannelEventsContext {
22
+ /** File-stem channel name (route segment). */
23
+ readonly name: string;
24
+ /** The inbound request. */
25
+ readonly request: Request;
26
+ /**
27
+ * Pre-read raw body when the HTTP framework may have consumed `request`
28
+ * (Hono mount passes `await c.req.text()`).
29
+ */
30
+ readonly rawBody?: string | Uint8Array;
31
+ /** The live channel instance. */
32
+ readonly channel: Channel;
33
+ }
34
+ /** Deploy/runtime requirements a channel declares. */
35
+ export type ChannelRequirements = ChannelManifest;
36
+ /**
37
+ * A managed channel. Implement at least one of {@link Channel.events},
38
+ * {@link Channel.messaging}, or {@link Channel.requirements}; a channel
39
+ * implementing none does nothing and is rejected by {@link collectChannels}.
40
+ */
41
+ export interface Channel {
42
+ readonly [CHANNEL_BRAND]: true;
43
+ /**
44
+ * Diagnostic / provider label (e.g. `"slack"`).
45
+ * HTTP mounts use {@link name}, not kind.
46
+ */
47
+ readonly kind: string;
48
+ /**
49
+ * File-stem instance name, stamped by {@link collectChannels}. Mount
50
+ * namespace and messaging address (`runtime.channel` / `deliverTo`).
51
+ */
52
+ readonly name?: string;
53
+ /**
54
+ * Handle `POST /channels/{name}/events` (verify + normalize + ACK + work).
55
+ * Public by construction; provider signature verification is the adapter's job.
56
+ */
57
+ events?(ctx: ChannelEventsContext): Response | Promise<Response>;
58
+ /** Build outbound messaging transport for `runtime.channel` / schedule delivery. */
59
+ messaging?(env: NodeJS.ProcessEnv): ChannelTransport | undefined;
60
+ /** Deploy/runtime requirements (env, permissions, connection, provider config). */
61
+ requirements?(name: string): ChannelRequirements;
62
+ }
63
+ /** True when any channel can start an ingress run via {@link Channel.events}. */
64
+ export declare function hasIngressChannels(channels: readonly Channel[] | undefined): boolean;
65
+ /**
66
+ * Build the requirements map (file-stem → manifest) from channels that
67
+ * implement {@link Channel.requirements}.
68
+ */
69
+ export declare function requirementsFromChannels(channels: readonly Channel[]): Record<string, ChannelRequirements>;
70
+ /** A discovered `channels/` module paired with its source path for diagnostics. */
71
+ export interface DiscoveredChannelModule {
72
+ /** Project-relative path of the module, used in error messages. */
73
+ readonly source: string;
74
+ /** The imported module namespace; its `channel` export is the channel. */
75
+ readonly module: {
76
+ channel?: unknown;
77
+ } & Record<string, unknown>;
78
+ }
79
+ /** Narrow an arbitrary value to a {@link Channel} by its brand. */
80
+ export declare function isChannel(value: unknown): value is Channel;
81
+ /**
82
+ * Validate and collect the channels discovered under `channels/`.
83
+ *
84
+ * Each module should expose exactly one channel as `export const channel`.
85
+ * The file stem becomes the instance {@link Channel.name} (mount namespace and
86
+ * messaging address). Duplicate stems are a hard error. Modules with no such
87
+ * export, or whose `channel` is not branded, are skipped. A branded channel
88
+ * that implements no hooks is still a hard error.
89
+ */
90
+ export declare function collectChannels(modules: readonly DiscoveredChannelModule[]): Channel[];
91
+ //# sourceMappingURL=channel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/runtime/channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,OAAO,MAAkC,CAAC;AAEtE;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,8CAA8C;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACvC,iCAAiC;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAElD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,MAAM,CAAC,CAAC,GAAG,EAAE,oBAAoB,GAAG,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjE,oFAAoF;IACpF,SAAS,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACjE,mFAAmF;IACnF,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,CAAC;CAClD;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,GACvC,OAAO,CAIT;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAC3B,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CASrC;AAED,mFAAmF;AACnF,MAAM,WAAW,uBAAuB;IACtC,mEAAmE;IACnE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClE;AAED,mEAAmE;AACnE,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,OAAO,CAM1D;AAUD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,uBAAuB,EAAE,GAC1C,OAAO,EAAE,CAmCX"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * The managed channel protocol.
3
+ *
4
+ * A channel is one inbound messaging surface with one external platform. It may
5
+ * contribute Events ingress, outbound messaging, and deploy requirements.
6
+ * Discovery is file-based: the CLI globs modules under `channels/` that export a
7
+ * `channel`, imports each one, and hands them to {@link collectChannels}, which
8
+ * stamps each with its file-stem `name`.
9
+ */
10
+ /**
11
+ * Realm-global brand marking a value as a managed channel. `Symbol.for` keeps
12
+ * the identity stable across duplicate module instances.
13
+ */
14
+ export const CHANNEL_BRAND = Symbol.for("mda.channel");
15
+ /** True when any channel can start an ingress run via {@link Channel.events}. */
16
+ export function hasIngressChannels(channels) {
17
+ return (channels ?? []).some((channel) => typeof channel.events === "function");
18
+ }
19
+ /**
20
+ * Build the requirements map (file-stem → manifest) from channels that
21
+ * implement {@link Channel.requirements}.
22
+ */
23
+ export function requirementsFromChannels(channels) {
24
+ const out = {};
25
+ for (const channel of channels) {
26
+ if (typeof channel.requirements !== "function" || !channel.name) {
27
+ continue;
28
+ }
29
+ out[channel.name] = channel.requirements(channel.name);
30
+ }
31
+ return out;
32
+ }
33
+ /** Narrow an arbitrary value to a {@link Channel} by its brand. */
34
+ export function isChannel(value) {
35
+ if (typeof value !== "object" || value === null) {
36
+ return false;
37
+ }
38
+ const branded = value[CHANNEL_BRAND];
39
+ return branded === true;
40
+ }
41
+ function channelHasHook(channel) {
42
+ return (typeof channel.events === "function" ||
43
+ typeof channel.messaging === "function" ||
44
+ typeof channel.requirements === "function");
45
+ }
46
+ /**
47
+ * Validate and collect the channels discovered under `channels/`.
48
+ *
49
+ * Each module should expose exactly one channel as `export const channel`.
50
+ * The file stem becomes the instance {@link Channel.name} (mount namespace and
51
+ * messaging address). Duplicate stems are a hard error. Modules with no such
52
+ * export, or whose `channel` is not branded, are skipped. A branded channel
53
+ * that implements no hooks is still a hard error.
54
+ */
55
+ export function collectChannels(modules) {
56
+ const collected = [];
57
+ const seenObjects = new Set();
58
+ const seenNames = new Set();
59
+ for (const { source, module } of modules) {
60
+ const candidate = module.channel;
61
+ if (candidate === undefined || !isChannel(candidate)) {
62
+ continue;
63
+ }
64
+ if (!channelHasHook(candidate)) {
65
+ throw new Error(`${source} channel (kind "${candidate.kind}") implements none of ` +
66
+ `\`events\`, \`messaging\`, or \`requirements\` and would do nothing.`);
67
+ }
68
+ const name = channelStemName(source);
69
+ if (seenNames.has(name)) {
70
+ throw new Error(`duplicate channel name '${name}' from channels/`);
71
+ }
72
+ seenNames.add(name);
73
+ if (seenObjects.has(candidate)) {
74
+ continue;
75
+ }
76
+ seenObjects.add(candidate);
77
+ Object.defineProperty(candidate, "name", {
78
+ value: name,
79
+ enumerable: false,
80
+ writable: false,
81
+ configurable: true,
82
+ });
83
+ collected.push(candidate);
84
+ }
85
+ return collected;
86
+ }
87
+ function channelStemName(source) {
88
+ // Keep in sync with CLI `plugin_module_extensions` (ts/tsx/mts/cts) plus
89
+ // emitted js/mjs and Python sources that may appear in diagnostics paths.
90
+ const base = source
91
+ .replace(/^.*\//, "")
92
+ .replace(/\.(ts|tsx|mts|cts|js|mjs|py)$/, "");
93
+ if (!base || base === "channel") {
94
+ throw new Error(`invalid channel path "${source}": use channels/<name>.ts (not channel.ts)`);
95
+ }
96
+ return base;
97
+ }
98
+ //# sourceMappingURL=channel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/runtime/channel.ts"],"names":[],"mappings":"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"}
@@ -72,8 +72,8 @@ export interface EventsContext {
72
72
  /**
73
73
  * Deploy/runtime requirements a connector declares.
74
74
  *
75
- * Generalizes the former channel manifest: required env, permissions, opaque
76
- * provider config, and optional provider connection provisioning.
75
+ * Generalizes the former channel manifest: required env, permissions, and
76
+ * opaque provider config.
77
77
  */
78
78
  export type ConnectorRequirements = ChannelManifest;
79
79
  /**
@@ -144,7 +144,7 @@ export type ConnectorToolList = unknown[];
144
144
  export interface Connector {
145
145
  readonly [CONNECTOR_BRAND]: true;
146
146
  /**
147
- * Diagnostic / provider label (e.g. `"mcp_servers"`, `"langsmith"`, `"slack"`).
147
+ * Diagnostic / provider label (e.g. `"mcp_servers"`, `"github"`, `"slack"`).
148
148
  * HTTP mounts use {@link name}, not kind.
149
149
  */
150
150
  readonly kind: string;
@@ -119,7 +119,11 @@ export function collectConnectors(modules) {
119
119
  return collected;
120
120
  }
121
121
  function connectorStemName(source) {
122
- const base = source.replace(/^.*\//, "").replace(/\.(ts|js|mts|mjs|py)$/, "");
122
+ // Keep in sync with CLI `plugin_module_extensions` (ts/tsx/mts/cts) plus
123
+ // emitted js/mjs and Python sources that may appear in diagnostics paths.
124
+ const base = source
125
+ .replace(/^.*\//, "")
126
+ .replace(/\.(ts|tsx|mts|cts|js|mjs|py)$/, "");
123
127
  if (!base || base === "connector") {
124
128
  throw new Error(`invalid connector path "${source}": use connectors/<name>.ts (not connector.ts)`);
125
129
  }