managed-deepagents 0.5.0-dev.78 → 0.5.0-dev.80

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 (322) hide show
  1. package/README.md +50 -8
  2. package/dist/channels/assistant-text.js +1 -1
  3. package/dist/channels/assistant-text.js.map +1 -1
  4. package/dist/channels/binding.d.ts.map +1 -1
  5. package/dist/channels/binding.js +3 -1
  6. package/dist/channels/binding.js.map +1 -1
  7. package/dist/channels/index.d.ts +6 -8
  8. package/dist/channels/index.d.ts.map +1 -1
  9. package/dist/channels/index.js +5 -5
  10. package/dist/channels/index.js.map +1 -1
  11. package/dist/channels/manifest.d.ts +36 -3
  12. package/dist/channels/manifest.d.ts.map +1 -1
  13. package/dist/channels/messaging-registry.d.ts +17 -0
  14. package/dist/channels/messaging-registry.d.ts.map +1 -0
  15. package/dist/channels/messaging-registry.js +44 -0
  16. package/dist/channels/messaging-registry.js.map +1 -0
  17. package/dist/channels/registry.d.ts +4 -3
  18. package/dist/channels/registry.d.ts.map +1 -1
  19. package/dist/channels/registry.js +6 -5
  20. package/dist/channels/registry.js.map +1 -1
  21. package/dist/channels/schedule-delivery.d.ts +4 -1
  22. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  23. package/dist/channels/schedule-delivery.js +4 -2
  24. package/dist/channels/schedule-delivery.js.map +1 -1
  25. package/dist/connectors/github/adapter-core.d.ts +15 -0
  26. package/dist/connectors/github/adapter-core.d.ts.map +1 -0
  27. package/dist/connectors/github/adapter-core.js +52 -0
  28. package/dist/connectors/github/adapter-core.js.map +1 -0
  29. package/dist/{channels → connectors}/github/define.d.ts +28 -58
  30. package/dist/connectors/github/define.d.ts.map +1 -0
  31. package/dist/connectors/github/define.js +72 -0
  32. package/dist/connectors/github/define.js.map +1 -0
  33. package/dist/{channels → connectors}/github/http.d.ts +4 -4
  34. package/dist/connectors/github/http.d.ts.map +1 -0
  35. package/dist/{channels → connectors}/github/http.js +13 -24
  36. package/dist/connectors/github/http.js.map +1 -0
  37. package/dist/connectors/github/index.d.ts +59 -16
  38. package/dist/connectors/github/index.d.ts.map +1 -1
  39. package/dist/connectors/github/index.js +159 -73
  40. package/dist/connectors/github/index.js.map +1 -1
  41. package/dist/connectors/github/match.d.ts +20 -0
  42. package/dist/connectors/github/match.d.ts.map +1 -0
  43. package/dist/connectors/github/match.js +41 -0
  44. package/dist/connectors/github/match.js.map +1 -0
  45. package/dist/{channels → connectors}/github/normalize.d.ts +1 -1
  46. package/dist/connectors/github/normalize.d.ts.map +1 -0
  47. package/dist/{channels → connectors}/github/normalize.js +2 -2
  48. package/dist/connectors/github/normalize.js.map +1 -0
  49. package/dist/connectors/github/sandbox.d.ts.map +1 -1
  50. package/dist/connectors/github/sandbox.js +30 -23
  51. package/dist/connectors/github/sandbox.js.map +1 -1
  52. package/dist/connectors/github/source-thread.d.ts.map +1 -0
  53. package/dist/connectors/github/source-thread.js.map +1 -0
  54. package/dist/{channels → connectors}/github/transport.d.ts +7 -1
  55. package/dist/connectors/github/transport.d.ts.map +1 -0
  56. package/dist/{channels → connectors}/github/transport.js +18 -4
  57. package/dist/connectors/github/transport.js.map +1 -0
  58. package/dist/connectors/langsmith/index.d.ts +29 -17
  59. package/dist/connectors/langsmith/index.d.ts.map +1 -1
  60. package/dist/connectors/langsmith/index.js +34 -29
  61. package/dist/connectors/langsmith/index.js.map +1 -1
  62. package/dist/connectors/langsmith/routes.d.ts +4 -15
  63. package/dist/connectors/langsmith/routes.d.ts.map +1 -1
  64. package/dist/connectors/langsmith/routes.js +63 -72
  65. package/dist/connectors/langsmith/routes.js.map +1 -1
  66. package/dist/connectors/mcp/index.d.ts +13 -20
  67. package/dist/connectors/mcp/index.d.ts.map +1 -1
  68. package/dist/connectors/mcp/index.js +92 -112
  69. package/dist/connectors/mcp/index.js.map +1 -1
  70. package/dist/connectors/mcp/load.d.ts.map +1 -1
  71. package/dist/connectors/mcp/load.js +16 -40
  72. package/dist/connectors/mcp/load.js.map +1 -1
  73. package/dist/{channels → connectors}/slack/adapter-core.d.ts +1 -1
  74. package/dist/connectors/slack/adapter-core.d.ts.map +1 -0
  75. package/dist/connectors/slack/adapter-core.js.map +1 -0
  76. package/dist/{channels → connectors}/slack/adapter.d.ts +3 -4
  77. package/dist/connectors/slack/adapter.d.ts.map +1 -0
  78. package/dist/{channels → connectors}/slack/adapter.js +1 -1
  79. package/dist/connectors/slack/adapter.js.map +1 -0
  80. package/dist/{channels → connectors}/slack/http.d.ts +6 -40
  81. package/dist/connectors/slack/http.d.ts.map +1 -0
  82. package/dist/{channels → connectors}/slack/http.js +22 -125
  83. package/dist/connectors/slack/http.js.map +1 -0
  84. package/dist/connectors/slack/index.d.ts +108 -0
  85. package/dist/connectors/slack/index.d.ts.map +1 -0
  86. package/dist/connectors/slack/index.js +191 -0
  87. package/dist/connectors/slack/index.js.map +1 -0
  88. package/dist/{channels → connectors}/slack/normalize.d.ts +5 -5
  89. package/dist/connectors/slack/normalize.d.ts.map +1 -0
  90. package/dist/{channels → connectors}/slack/normalize.js +21 -20
  91. package/dist/connectors/slack/normalize.js.map +1 -0
  92. package/dist/connectors/slack/source-thread.d.ts.map +1 -0
  93. package/dist/connectors/slack/source-thread.js.map +1 -0
  94. package/dist/{channels → connectors}/slack/transport.d.ts +1 -1
  95. package/dist/connectors/slack/transport.d.ts.map +1 -0
  96. package/dist/{channels → connectors}/slack/transport.js +4 -3
  97. package/dist/connectors/slack/transport.js.map +1 -0
  98. package/dist/connectors/tool-selection.d.ts +31 -0
  99. package/dist/connectors/tool-selection.d.ts.map +1 -0
  100. package/dist/connectors/tool-selection.js +54 -0
  101. package/dist/connectors/tool-selection.js.map +1 -0
  102. package/dist/connectors/toolserver/catalog.d.ts +134 -0
  103. package/dist/connectors/toolserver/catalog.d.ts.map +1 -0
  104. package/dist/connectors/toolserver/catalog.js +74 -0
  105. package/dist/connectors/toolserver/catalog.js.map +1 -0
  106. package/dist/connectors/toolserver/index.d.ts +119 -0
  107. package/dist/connectors/toolserver/index.d.ts.map +1 -0
  108. package/dist/connectors/toolserver/index.js +150 -0
  109. package/dist/connectors/toolserver/index.js.map +1 -0
  110. package/dist/connectors/toolserver/load.d.ts +55 -0
  111. package/dist/connectors/toolserver/load.d.ts.map +1 -0
  112. package/dist/connectors/toolserver/load.js +162 -0
  113. package/dist/connectors/toolserver/load.js.map +1 -0
  114. package/dist/extension.d.ts +77 -0
  115. package/dist/extension.d.ts.map +1 -0
  116. package/dist/extension.js +127 -0
  117. package/dist/extension.js.map +1 -0
  118. package/dist/identity/claims.d.ts +18 -0
  119. package/dist/identity/claims.d.ts.map +1 -0
  120. package/dist/identity/claims.js +37 -0
  121. package/dist/identity/claims.js.map +1 -0
  122. package/dist/identity/connect-inference.d.ts +28 -0
  123. package/dist/identity/connect-inference.d.ts.map +1 -0
  124. package/dist/identity/connect-inference.js +39 -0
  125. package/dist/identity/connect-inference.js.map +1 -0
  126. package/dist/identity/connect-provider-types.d.ts +23 -6
  127. package/dist/identity/connect-provider-types.d.ts.map +1 -1
  128. package/dist/identity/connect-provider-types.js +3 -1
  129. package/dist/identity/connect-provider-types.js.map +1 -1
  130. package/dist/identity/connect-provider.d.ts +9 -4
  131. package/dist/identity/connect-provider.d.ts.map +1 -1
  132. package/dist/identity/connect-provider.js +19 -9
  133. package/dist/identity/connect-provider.js.map +1 -1
  134. package/dist/identity/credential-resolvers.d.ts +33 -0
  135. package/dist/identity/credential-resolvers.d.ts.map +1 -0
  136. package/dist/identity/credential-resolvers.js +62 -0
  137. package/dist/identity/credential-resolvers.js.map +1 -0
  138. package/dist/identity/github/connect-http.d.ts +3 -3
  139. package/dist/identity/github/connect-http.d.ts.map +1 -1
  140. package/dist/identity/github/connect-http.js +21 -13
  141. package/dist/identity/github/connect-http.js.map +1 -1
  142. package/dist/identity/github/credentials-store.d.ts +10 -10
  143. package/dist/identity/github/credentials-store.d.ts.map +1 -1
  144. package/dist/identity/github/credentials-store.js +40 -43
  145. package/dist/identity/github/credentials-store.js.map +1 -1
  146. package/dist/identity/github/credentials.d.ts +16 -13
  147. package/dist/identity/github/credentials.d.ts.map +1 -1
  148. package/dist/identity/github/credentials.js +43 -23
  149. package/dist/identity/github/credentials.js.map +1 -1
  150. package/dist/identity/github/index.d.ts +2 -3
  151. package/dist/identity/github/index.d.ts.map +1 -1
  152. package/dist/identity/github/index.js +1 -2
  153. package/dist/identity/github/index.js.map +1 -1
  154. package/dist/identity/github/oauth.d.ts +3 -3
  155. package/dist/identity/github/oauth.d.ts.map +1 -1
  156. package/dist/identity/github/oauth.js +10 -9
  157. package/dist/identity/github/oauth.js.map +1 -1
  158. package/dist/identity/index.d.ts +35 -29
  159. package/dist/identity/index.d.ts.map +1 -1
  160. package/dist/identity/index.js +98 -131
  161. package/dist/identity/index.js.map +1 -1
  162. package/dist/identity/loopback.d.ts +27 -2
  163. package/dist/identity/loopback.d.ts.map +1 -1
  164. package/dist/identity/loopback.js +61 -8
  165. package/dist/identity/loopback.js.map +1 -1
  166. package/dist/identity/options.d.ts +90 -0
  167. package/dist/identity/options.d.ts.map +1 -0
  168. package/dist/identity/options.js +171 -0
  169. package/dist/identity/options.js.map +1 -0
  170. package/dist/identity/slack/connect-http.d.ts +3 -3
  171. package/dist/identity/slack/connect-http.d.ts.map +1 -1
  172. package/dist/identity/slack/connect-http.js +22 -14
  173. package/dist/identity/slack/connect-http.js.map +1 -1
  174. package/dist/identity/slack/index.d.ts +1 -2
  175. package/dist/identity/slack/index.d.ts.map +1 -1
  176. package/dist/identity/slack/index.js +1 -2
  177. package/dist/identity/slack/index.js.map +1 -1
  178. package/dist/identity/slack/links.d.ts +15 -15
  179. package/dist/identity/slack/links.d.ts.map +1 -1
  180. package/dist/identity/slack/links.js +50 -53
  181. package/dist/identity/slack/links.js.map +1 -1
  182. package/dist/identity/slack/oauth.d.ts +2 -2
  183. package/dist/identity/slack/oauth.d.ts.map +1 -1
  184. package/dist/identity/slack/oauth.js +9 -24
  185. package/dist/identity/slack/oauth.js.map +1 -1
  186. package/dist/identity/supabase.js +9 -9
  187. package/dist/identity/supabase.js.map +1 -1
  188. package/dist/identity/types.d.ts +82 -36
  189. package/dist/identity/types.d.ts.map +1 -1
  190. package/dist/index.d.ts +11 -21
  191. package/dist/index.d.ts.map +1 -1
  192. package/dist/index.js +2 -12
  193. package/dist/index.js.map +1 -1
  194. package/dist/ingress/index.d.ts +54 -0
  195. package/dist/ingress/index.d.ts.map +1 -0
  196. package/dist/ingress/index.js +128 -0
  197. package/dist/ingress/index.js.map +1 -0
  198. package/dist/namespaces.d.ts +76 -0
  199. package/dist/namespaces.d.ts.map +1 -0
  200. package/dist/namespaces.js +94 -0
  201. package/dist/namespaces.js.map +1 -0
  202. package/dist/runtime/auth.d.ts +18 -14
  203. package/dist/runtime/auth.d.ts.map +1 -1
  204. package/dist/runtime/auth.js +88 -68
  205. package/dist/runtime/auth.js.map +1 -1
  206. package/dist/runtime/backend.d.ts +1 -1
  207. package/dist/runtime/backend.d.ts.map +1 -1
  208. package/dist/runtime/connector.d.ts +66 -23
  209. package/dist/runtime/connector.d.ts.map +1 -1
  210. package/dist/runtime/connector.js +63 -27
  211. package/dist/runtime/connector.js.map +1 -1
  212. package/dist/runtime/cors.d.ts +2 -3
  213. package/dist/runtime/cors.d.ts.map +1 -1
  214. package/dist/runtime/cors.js +2 -7
  215. package/dist/runtime/cors.js.map +1 -1
  216. package/dist/runtime/credentials.d.ts.map +1 -1
  217. package/dist/runtime/credentials.js +39 -14
  218. package/dist/runtime/credentials.js.map +1 -1
  219. package/dist/runtime/http.d.ts +47 -0
  220. package/dist/runtime/http.d.ts.map +1 -0
  221. package/dist/runtime/http.js +54 -0
  222. package/dist/runtime/http.js.map +1 -0
  223. package/dist/runtime/identity-http.d.ts +6 -16
  224. package/dist/runtime/identity-http.d.ts.map +1 -1
  225. package/dist/runtime/identity-http.js +71 -54
  226. package/dist/runtime/identity-http.js.map +1 -1
  227. package/dist/runtime/identity-runtime.d.ts +18 -17
  228. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  229. package/dist/runtime/identity-runtime.js +55 -39
  230. package/dist/runtime/identity-runtime.js.map +1 -1
  231. package/dist/runtime/index.d.ts +77 -104
  232. package/dist/runtime/index.d.ts.map +1 -1
  233. package/dist/runtime/index.js +36 -35
  234. package/dist/runtime/index.js.map +1 -1
  235. package/dist/runtime/memory/index.d.ts +1 -0
  236. package/dist/runtime/memory/index.d.ts.map +1 -1
  237. package/dist/runtime/memory/index.js +1 -0
  238. package/dist/runtime/memory/index.js.map +1 -1
  239. package/dist/runtime/memory/lazy-context-backend.d.ts +66 -0
  240. package/dist/runtime/memory/lazy-context-backend.d.ts.map +1 -0
  241. package/dist/runtime/memory/lazy-context-backend.js +154 -0
  242. package/dist/runtime/memory/lazy-context-backend.js.map +1 -0
  243. package/dist/runtime/memory/user-repo.js +3 -3
  244. package/dist/runtime/memory/user-repo.js.map +1 -1
  245. package/dist/runtime/sandbox-manager.d.ts +33 -0
  246. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  247. package/dist/runtime/sandbox-manager.js +173 -9
  248. package/dist/runtime/sandbox-manager.js.map +1 -1
  249. package/dist/runtime/sandbox-stream-retry.d.ts +16 -0
  250. package/dist/runtime/sandbox-stream-retry.d.ts.map +1 -0
  251. package/dist/runtime/sandbox-stream-retry.js +61 -0
  252. package/dist/runtime/sandbox-stream-retry.js.map +1 -0
  253. package/dist/runtime/setup-script.d.ts.map +1 -1
  254. package/dist/runtime/setup-script.js +4 -2
  255. package/dist/runtime/setup-script.js.map +1 -1
  256. package/dist/runtime/validated-token.d.ts +1 -1
  257. package/dist/runtime/validated-token.d.ts.map +1 -1
  258. package/dist/runtime/validated-token.js +75 -33
  259. package/dist/runtime/validated-token.js.map +1 -1
  260. package/dist/sandbox.d.ts +19 -22
  261. package/dist/sandbox.d.ts.map +1 -1
  262. package/dist/sandbox.js +20 -34
  263. package/dist/sandbox.js.map +1 -1
  264. package/dist/schedules.js +8 -9
  265. package/dist/schedules.js.map +1 -1
  266. package/package.json +18 -28
  267. package/dist/channels/collect.d.ts +0 -26
  268. package/dist/channels/collect.d.ts.map +0 -1
  269. package/dist/channels/collect.js +0 -42
  270. package/dist/channels/collect.js.map +0 -1
  271. package/dist/channels/github/adapter-core.d.ts +0 -6
  272. package/dist/channels/github/adapter-core.d.ts.map +0 -1
  273. package/dist/channels/github/adapter-core.js +0 -27
  274. package/dist/channels/github/adapter-core.js.map +0 -1
  275. package/dist/channels/github/adapter.d.ts +0 -16
  276. package/dist/channels/github/adapter.d.ts.map +0 -1
  277. package/dist/channels/github/adapter.js +0 -52
  278. package/dist/channels/github/adapter.js.map +0 -1
  279. package/dist/channels/github/define.d.ts.map +0 -1
  280. package/dist/channels/github/define.js +0 -166
  281. package/dist/channels/github/define.js.map +0 -1
  282. package/dist/channels/github/http.d.ts.map +0 -1
  283. package/dist/channels/github/http.js.map +0 -1
  284. package/dist/channels/github/index.d.ts +0 -12
  285. package/dist/channels/github/index.d.ts.map +0 -1
  286. package/dist/channels/github/index.js +0 -10
  287. package/dist/channels/github/index.js.map +0 -1
  288. package/dist/channels/github/normalize.d.ts.map +0 -1
  289. package/dist/channels/github/normalize.js.map +0 -1
  290. package/dist/channels/github/source-thread.d.ts.map +0 -1
  291. package/dist/channels/github/source-thread.js.map +0 -1
  292. package/dist/channels/github/transport.d.ts.map +0 -1
  293. package/dist/channels/github/transport.js.map +0 -1
  294. package/dist/channels/plugin.d.ts +0 -61
  295. package/dist/channels/plugin.d.ts.map +0 -1
  296. package/dist/channels/plugin.js +0 -80
  297. package/dist/channels/plugin.js.map +0 -1
  298. package/dist/channels/slack/adapter-core.d.ts.map +0 -1
  299. package/dist/channels/slack/adapter-core.js.map +0 -1
  300. package/dist/channels/slack/adapter.d.ts.map +0 -1
  301. package/dist/channels/slack/adapter.js.map +0 -1
  302. package/dist/channels/slack/define.d.ts +0 -74
  303. package/dist/channels/slack/define.d.ts.map +0 -1
  304. package/dist/channels/slack/define.js +0 -160
  305. package/dist/channels/slack/define.js.map +0 -1
  306. package/dist/channels/slack/http.d.ts.map +0 -1
  307. package/dist/channels/slack/http.js.map +0 -1
  308. package/dist/channels/slack/index.d.ts +0 -18
  309. package/dist/channels/slack/index.d.ts.map +0 -1
  310. package/dist/channels/slack/index.js +0 -13
  311. package/dist/channels/slack/index.js.map +0 -1
  312. package/dist/channels/slack/normalize.d.ts.map +0 -1
  313. package/dist/channels/slack/normalize.js.map +0 -1
  314. package/dist/channels/slack/source-thread.d.ts.map +0 -1
  315. package/dist/channels/slack/source-thread.js.map +0 -1
  316. package/dist/channels/slack/transport.d.ts.map +0 -1
  317. package/dist/channels/slack/transport.js.map +0 -1
  318. /package/dist/{channels → connectors}/github/source-thread.d.ts +0 -0
  319. /package/dist/{channels → connectors}/github/source-thread.js +0 -0
  320. /package/dist/{channels → connectors}/slack/adapter-core.js +0 -0
  321. /package/dist/{channels → connectors}/slack/source-thread.d.ts +0 -0
  322. /package/dist/{channels → connectors}/slack/source-thread.js +0 -0
@@ -4,7 +4,7 @@
4
4
  * These helpers are pure library primitives for the managed channel service.
5
5
  * They do not perform HTTP I/O or durable enqueue.
6
6
  */
7
- import { ChannelError } from "../errors.js";
7
+ import { ChannelError } from "../../channels/errors.js";
8
8
  import { encodeSlackSourceThreadKey, slackGroupingId, } from "./source-thread.js";
9
9
  const REPLAY_WINDOW_SECONDS = 60 * 5;
10
10
  /**
@@ -87,7 +87,8 @@ export function normalizeSlackEvent(input) {
87
87
  return { status: "filtered", reason: `subtype_${event.subtype}`, eventId };
88
88
  }
89
89
  const trigger = resolveTrigger(event, input.isDirectMessageSurface === true);
90
- if (!trigger || !input.config.on.includes(trigger)) {
90
+ const enabledTriggers = input.config.on ?? [];
91
+ if (!trigger || !enabledTriggers.includes(trigger)) {
91
92
  return {
92
93
  status: "filtered",
93
94
  reason: trigger ? "trigger_disabled" : "unsupported_trigger",
@@ -95,9 +96,9 @@ export function normalizeSlackEvent(input) {
95
96
  };
96
97
  }
97
98
  const conversationId = stringField(event, "channel");
98
- const userId = stringField(event, "user");
99
+ const slackUserId = stringField(event, "user");
99
100
  const messageTs = stringField(event, "ts");
100
- if (!conversationId || !userId || !messageTs) {
101
+ if (!conversationId || !slackUserId || !messageTs) {
101
102
  return { status: "filtered", reason: "missing_identity_fields", eventId };
102
103
  }
103
104
  if (!conversationAllowed(conversationId, input.config)) {
@@ -109,13 +110,13 @@ export function normalizeSlackEvent(input) {
109
110
  eventTeamId !== input.installation.id) {
110
111
  return { status: "filtered", reason: "workspace_mismatch", eventId };
111
112
  }
112
- const actorTeamId = resolveActorTeamId(body, event, input.installation);
113
- if (!actorTeamId) {
114
- return { status: "filtered", reason: "ambiguous_actor_namespace", eventId };
113
+ const userTeamId = resolveUserTeamId(body, event, input.installation);
114
+ if (!userTeamId) {
115
+ return { status: "filtered", reason: "ambiguous_user_namespace", eventId };
115
116
  }
116
- const actorId = `slack:${actorTeamId}:${userId}`;
117
- if (!actorAllowed(actorId, input.config)) {
118
- return { status: "filtered", reason: "actor_filtered", eventId };
117
+ const userId = `slack:${userTeamId}:${slackUserId}`;
118
+ if (!userAllowed(userId, input.config)) {
119
+ return { status: "filtered", reason: "user_filtered", eventId };
119
120
  }
120
121
  const threadTs = stringField(event, "thread_ts");
121
122
  const usesAppMentionGrouping = trigger === "app_mention" || trigger === "thread_reply";
@@ -127,7 +128,7 @@ export function normalizeSlackEvent(input) {
127
128
  // When Slack dual-delivers message + app_mention for an @mention, drop the
128
129
  // message path so app_mention owns the run.
129
130
  if (trigger === "thread_reply" &&
130
- input.config.on.includes("app_mention") &&
131
+ enabledTriggers.includes("app_mention") &&
131
132
  input.installation.botUserId &&
132
133
  textMentionsBot(text, input.installation.botUserId)) {
133
134
  return { status: "filtered", reason: "covered_by_app_mention", eventId };
@@ -185,14 +186,14 @@ export function normalizeSlackEvent(input) {
185
186
  },
186
187
  message,
187
188
  };
188
- const tenantId = input.installation.kind === "team"
189
+ const organizationId = input.installation.kind === "team"
189
190
  ? `slack:${input.installation.id}`
190
191
  : `slack:${input.installation.id}`;
191
192
  return {
192
193
  status: "accepted",
193
194
  event: channelEvent,
194
- actorId,
195
- tenantId,
195
+ userId,
196
+ organizationId,
196
197
  sourceThreadKey,
197
198
  trigger,
198
199
  groupingMode,
@@ -218,7 +219,7 @@ function textMentionsBot(text, botUserId) {
218
219
  const escaped = botUserId.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
219
220
  return new RegExp(`<@${escaped}(?:\\|[^>]+)?>`, "i").test(text);
220
221
  }
221
- function resolveActorTeamId(body, event, installation) {
222
+ function resolveUserTeamId(body, event, installation) {
222
223
  const fromEvent = stringField(event, "team");
223
224
  if (fromEvent)
224
225
  return fromEvent;
@@ -242,13 +243,13 @@ function conversationAllowed(conversationId, config) {
242
243
  }
243
244
  return true;
244
245
  }
245
- function actorAllowed(actorId, config) {
246
- const include = config.filters.includeActors;
247
- const exclude = config.filters.excludeActors;
248
- if (include && include.length > 0 && !include.includes(actorId)) {
246
+ function userAllowed(userId, config) {
247
+ const include = config.filters.includeUsers;
248
+ const exclude = config.filters.excludeUsers;
249
+ if (include && include.length > 0 && !include.includes(userId)) {
249
250
  return false;
250
251
  }
251
- if (exclude && exclude.includes(actorId)) {
252
+ if (exclude && exclude.includes(userId)) {
252
253
  return false;
253
254
  }
254
255
  return true;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../src/connectors/slack/normalize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-thread.d.ts","sourceRoot":"","sources":["../../../src/connectors/slack/source-thread.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,CAAC;AAErE,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,YAAY,CAAC;AAErD,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,gBAAgB,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,sBAAsB,GAC5B,MAAM,CAWR;AAED,kFAAkF;AAClF,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,MAAM,GACV,sBAAsB,GAAG,SAAS,CAuCpC;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,gBAAgB,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAQR"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-thread.js","sourceRoot":"","sources":["../../../src/connectors/slack/source-thread.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * Credentials stay in process env / constructor args; they never appear on
6
6
  * `runtime.channel`.
7
7
  */
8
- import type { ChannelTransport } from "../runtime.js";
8
+ import type { ChannelTransport } from "../../channels/runtime.js";
9
9
  /** Optional override so tests can point at a local mock Slack Web API. */
10
10
  export declare const SLACK_API_BASE_ENV = "SLACK_API_BASE";
11
11
  /** Default status string for Slack Assistants `assistant.threads.setStatus`. */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/connectors/slack/transport.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAKlE,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AAEnD,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,sBAAiB,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAWrD,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,gBAAgB,CAsElB;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,OAAO,CAAC,CAyClB"}
@@ -5,7 +5,8 @@
5
5
  * Credentials stay in process env / constructor args; they never appear on
6
6
  * `runtime.channel`.
7
7
  */
8
- import { ChannelError } from "../errors.js";
8
+ import { fetchWithTimeout, PROVIDER_HTTP_TIMEOUT_MS, } from "../../runtime/http.js";
9
+ import { ChannelError } from "../../channels/errors.js";
9
10
  const DEFAULT_SLACK_API = "https://slack.com/api";
10
11
  /** Optional override so tests can point at a local mock Slack Web API. */
11
12
  export const SLACK_API_BASE_ENV = "SLACK_API_BASE";
@@ -145,14 +146,14 @@ function parseSlackMessageId(id) {
145
146
  async function slackApi(doFetch, token, apiBase, method, body) {
146
147
  let response;
147
148
  try {
148
- response = await doFetch(`${apiBase}/${method}`, {
149
+ response = await fetchWithTimeout(`${apiBase}/${method}`, {
149
150
  method: "POST",
150
151
  headers: {
151
152
  Authorization: `Bearer ${token}`,
152
153
  "Content-Type": "application/json; charset=utf-8",
153
154
  },
154
155
  body: JSON.stringify(body),
155
- });
156
+ }, PROVIDER_HTTP_TIMEOUT_MS, doFetch);
156
157
  }
157
158
  catch (error) {
158
159
  throw new ChannelError("channel_provider_rejected", `Slack ${method} network error: ${error instanceof Error ? error.message : String(error)}`);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/connectors/slack/transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Tool-name selection, shared by the connectors that load their tools from a
3
+ * remote MCP server.
4
+ *
5
+ * `connectors.mcp` selects by raw tool name across arbitrary servers; the
6
+ * tool-server integrations select from a fixed per-integration catalog. Both
7
+ * want the same behavior: a name in `includeTools`/`excludeTools` that no loaded
8
+ * tool answers to is an error naming what *was* available, so a typo fails the
9
+ * deployment instead of silently dropping a tool the agent was meant to have.
10
+ */
11
+ /** Tool names to expose or hide from a connector's loaded tools. */
12
+ export interface ToolSelection {
13
+ /** Tool names to expose. Omitted means every loaded tool. */
14
+ includeTools?: string[];
15
+ /** Tool names to hide. Applied after {@link ToolSelection.includeTools}. */
16
+ excludeTools?: string[];
17
+ }
18
+ /** Read the name a selection matches a loaded tool by. */
19
+ export type ToolNameReader = (tool: unknown) => string | undefined;
20
+ /** Read a loaded tool's own `name`. The default for connectors that don't rename. */
21
+ export declare const toolName: ToolNameReader;
22
+ /**
23
+ * Apply a selection to loaded tools, rejecting names that matched nothing.
24
+ *
25
+ * `subject` names the declaration in error messages, e.g. `MCP server "docs"`
26
+ * or `connectors.gmail`. A tool whose name cannot be read is kept only when the
27
+ * selection is exclusive (`excludeTools` alone) — an `includeTools` list is an
28
+ * allowlist, and an unnameable tool is not on it.
29
+ */
30
+ export declare function selectTools(subject: string, selection: ToolSelection, tools: readonly unknown[], readName?: ToolNameReader): unknown[];
31
+ //# sourceMappingURL=tool-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-selection.d.ts","sourceRoot":"","sources":["../../src/connectors/tool-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,0DAA0D;AAC1D,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;AAEnE,qFAAqF;AACrF,eAAO,MAAM,QAAQ,EAAE,cAGtB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,SAAS,OAAO,EAAE,EACzB,QAAQ,GAAE,cAAyB,GAClC,OAAO,EAAE,CAwBX"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Tool-name selection, shared by the connectors that load their tools from a
3
+ * remote MCP server.
4
+ *
5
+ * `connectors.mcp` selects by raw tool name across arbitrary servers; the
6
+ * tool-server integrations select from a fixed per-integration catalog. Both
7
+ * want the same behavior: a name in `includeTools`/`excludeTools` that no loaded
8
+ * tool answers to is an error naming what *was* available, so a typo fails the
9
+ * deployment instead of silently dropping a tool the agent was meant to have.
10
+ */
11
+ /** Read a loaded tool's own `name`. The default for connectors that don't rename. */
12
+ export const toolName = (tool) => {
13
+ const name = tool.name;
14
+ return typeof name === "string" ? name : undefined;
15
+ };
16
+ /**
17
+ * Apply a selection to loaded tools, rejecting names that matched nothing.
18
+ *
19
+ * `subject` names the declaration in error messages, e.g. `MCP server "docs"`
20
+ * or `connectors.gmail`. A tool whose name cannot be read is kept only when the
21
+ * selection is exclusive (`excludeTools` alone) — an `includeTools` list is an
22
+ * allowlist, and an unnameable tool is not on it.
23
+ */
24
+ export function selectTools(subject, selection, tools, readName = toolName) {
25
+ const { includeTools, excludeTools } = selection;
26
+ if (!includeTools && !excludeTools) {
27
+ return [...tools];
28
+ }
29
+ const available = new Set(tools
30
+ .map(readName)
31
+ .filter((name) => typeof name === "string"));
32
+ assertSelectedToolsExist(subject, available, includeTools, excludeTools);
33
+ const included = includeTools ? new Set(includeTools) : undefined;
34
+ const excluded = excludeTools ? new Set(excludeTools) : undefined;
35
+ return tools.filter((tool) => {
36
+ const name = readName(tool);
37
+ if (name === undefined) {
38
+ return included === undefined;
39
+ }
40
+ return ((included === undefined || included.has(name)) && !excluded?.has(name));
41
+ });
42
+ }
43
+ function assertSelectedToolsExist(subject, available, includeTools, excludeTools) {
44
+ const selected = [...(includeTools ?? []), ...(excludeTools ?? [])];
45
+ const unknown = selected.filter((name) => !available.has(name));
46
+ if (unknown.length === 0) {
47
+ return;
48
+ }
49
+ const names = [...new Set(unknown)].sort().join(", ");
50
+ const availableNames = [...available].sort().join(", ") || "(none)";
51
+ throw new Error(`${subject} selected unknown tool(s): ${names}. ` +
52
+ `Available tools: ${availableNames}.`);
53
+ }
54
+ //# sourceMappingURL=tool-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-selection.js","sourceRoot":"","sources":["../../src/connectors/tool-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,qFAAqF;AACrF,MAAM,CAAC,MAAM,QAAQ,GAAmB,CAAC,IAAI,EAAE,EAAE;IAC/C,MAAM,IAAI,GAAI,IAA2B,CAAC,IAAI,CAAC;IAC/C,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACrD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,OAAe,EACf,SAAwB,EACxB,KAAyB,EACzB,QAAQ,GAAmB,QAAQ;IAEnC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IACjD,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,KAAK;SACF,GAAG,CAAC,QAAQ,CAAC;SACb,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAC9D,CAAC;IACF,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAEzE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,QAAQ,KAAK,SAAS,CAAC;QAChC,CAAC;QACD,OAAO,CACL,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CACvE,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAe,EACf,SAAsB,EACtB,YAAuB,EACvB,YAAuB;IAEvB,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;IACpE,MAAM,IAAI,KAAK,CACb,GAAG,OAAO,8BAA8B,KAAK,IAAI;QAC/C,oBAAoB,cAAc,GAAG,CACxC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * The LangSmith tool server's built-in integrations.
3
+ *
4
+ * The tool server hosts LangChain-authored tools for each provider — ordinary
5
+ * functions that call the provider's API with credentials looked up from
6
+ * LangSmith's vault — and publishes them over MCP, one endpoint per integration.
7
+ * A workspace connects an integration once in LangSmith, and every agent in that
8
+ * workspace reaches it without ever handling the provider's tokens.
9
+ *
10
+ * `slug` is the tool server's own identifier and the path segment MDA calls;
11
+ * `factory` is how the integration is spelled on the `connectors` namespace,
12
+ * since a slug like `google_sheets` is not how TypeScript names things. Only the
13
+ * slug crosses the wire, so a factory name can be friendlier (`x` for `x_com`)
14
+ * without the runtime caring.
15
+ *
16
+ * The list is checked in rather than fetched: `connectors.gmail` has to exist
17
+ * before the process that could ask the catalog for it is running. It is a
18
+ * superset of what any one workspace can use — an integration still has to be
19
+ * configured and connected in LangSmith, which the runtime reports per call.
20
+ */
21
+ /** A built-in tool server integration: its wire slug and its factory name. */
22
+ export interface ToolServerIntegrationEntry {
23
+ /** The tool server's identifier, and the `/servers/{slug}/mcp` path segment. */
24
+ readonly slug: string;
25
+ /** The key this integration takes on the `connectors` namespace. */
26
+ readonly factory: string;
27
+ }
28
+ /**
29
+ * Every integration the tool server publishes, ordered by factory name.
30
+ *
31
+ * Adding a provider to the tool server does not update this list; adding the
32
+ * entry here is what exposes it to MDA.
33
+ */
34
+ export declare const TOOL_SERVER_INTEGRATIONS: readonly [{
35
+ readonly slug: "apollo";
36
+ readonly factory: "apollo";
37
+ }, {
38
+ readonly slug: "ashby";
39
+ readonly factory: "ashby";
40
+ }, {
41
+ readonly slug: "base";
42
+ readonly factory: "base";
43
+ }, {
44
+ readonly slug: "exa";
45
+ readonly factory: "exa";
46
+ }, {
47
+ readonly slug: "excel";
48
+ readonly factory: "excel";
49
+ }, {
50
+ readonly slug: "github";
51
+ readonly factory: "github";
52
+ }, {
53
+ readonly slug: "gmail";
54
+ readonly factory: "gmail";
55
+ }, {
56
+ readonly slug: "google_bigquery";
57
+ readonly factory: "googleBigQuery";
58
+ }, {
59
+ readonly slug: "google_calendar";
60
+ readonly factory: "googleCalendar";
61
+ }, {
62
+ readonly slug: "google_docs";
63
+ readonly factory: "googleDocs";
64
+ }, {
65
+ readonly slug: "google_drive";
66
+ readonly factory: "googleDrive";
67
+ }, {
68
+ readonly slug: "google_meet";
69
+ readonly factory: "googleMeet";
70
+ }, {
71
+ readonly slug: "google_sheets";
72
+ readonly factory: "googleSheets";
73
+ }, {
74
+ readonly slug: "google_slides";
75
+ readonly factory: "googleSlides";
76
+ }, {
77
+ readonly slug: "linear";
78
+ readonly factory: "linear";
79
+ }, {
80
+ readonly slug: "linkedin";
81
+ readonly factory: "linkedin";
82
+ }, {
83
+ readonly slug: "outlook";
84
+ readonly factory: "outlook";
85
+ }, {
86
+ readonly slug: "powerpoint";
87
+ readonly factory: "powerpoint";
88
+ }, {
89
+ readonly slug: "pylon";
90
+ readonly factory: "pylon";
91
+ }, {
92
+ readonly slug: "salesforce";
93
+ readonly factory: "salesforce";
94
+ }, {
95
+ readonly slug: "sharepoint";
96
+ readonly factory: "sharepoint";
97
+ }, {
98
+ readonly slug: "slack";
99
+ readonly factory: "slack";
100
+ }, {
101
+ readonly slug: "tavily";
102
+ readonly factory: "tavily";
103
+ }, {
104
+ readonly slug: "teams";
105
+ readonly factory: "teams";
106
+ }, {
107
+ readonly slug: "word";
108
+ readonly factory: "word";
109
+ }, {
110
+ readonly slug: "x_com";
111
+ readonly factory: "x";
112
+ }];
113
+ /** The wire slug of a built-in tool server integration. */
114
+ export type ToolServerSlug = (typeof TOOL_SERVER_INTEGRATIONS)[number]["slug"];
115
+ /**
116
+ * Integrations whose connectors this module does not build.
117
+ *
118
+ * `connectors.github` and `connectors.slack` accept tool-server options and
119
+ * also contribute sandbox / Events / messaging — so they declare themselves in
120
+ * their own modules rather than being generated from a catalog entry.
121
+ */
122
+ export declare const GITHUB_SLUG = "github";
123
+ export declare const SLACK_SLUG = "slack";
124
+ /**
125
+ * Integrations reached through a factory generated from this catalog.
126
+ *
127
+ * Typed as the base entry rather than the literal tuple: the namespace is what
128
+ * carries the per-integration types, and {@link ToolServerFactoryName} keeps the
129
+ * two in step.
130
+ */
131
+ export declare const STANDALONE_TOOL_SERVER_INTEGRATIONS: readonly ToolServerIntegrationEntry[];
132
+ /** How a standalone tool server integration is spelled on `connectors`. */
133
+ export type ToolServerFactoryName = Exclude<(typeof TOOL_SERVER_INTEGRATIONS)[number]["factory"], "github" | "slack">;
134
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/connectors/toolserver/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,8EAA8E;AAC9E,MAAM,WAAW,0BAA0B;IACzC,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;mBAC3B,QAAQ;sBAAW,QAAQ;;mBAC3B,OAAO;sBAAW,OAAO;;mBAGzB,MAAM;sBAAW,MAAM;;mBACvB,KAAK;sBAAW,KAAK;;mBACrB,OAAO;sBAAW,OAAO;;mBACzB,QAAQ;sBAAW,QAAQ;;mBAC3B,OAAO;sBAAW,OAAO;;mBACzB,iBAAiB;sBAAW,gBAAgB;;mBAC5C,iBAAiB;sBAAW,gBAAgB;;mBAC5C,aAAa;sBAAW,YAAY;;mBACpC,cAAc;sBAAW,aAAa;;mBACtC,aAAa;sBAAW,YAAY;;mBACpC,eAAe;sBAAW,cAAc;;mBACxC,eAAe;sBAAW,cAAc;;mBACxC,QAAQ;sBAAW,QAAQ;;mBAC3B,UAAU;sBAAW,UAAU;;mBAC/B,SAAS;sBAAW,SAAS;;mBAC7B,YAAY;sBAAW,YAAY;;mBACnC,OAAO;sBAAW,OAAO;;mBACzB,YAAY;sBAAW,YAAY;;mBACnC,YAAY;sBAAW,YAAY;;mBACnC,OAAO;sBAAW,OAAO;;mBACzB,QAAQ;sBAAW,QAAQ;;mBAC3B,OAAO;sBAAW,OAAO;;mBACzB,MAAM;sBAAW,MAAM;;mBACvB,OAAO;sBAAW,GAAG;EAC2B,CAAC;AAE3D,2DAA2D;AAC3D,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/E;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,WAAoC,CAAC;AAC7D,eAAO,MAAM,UAAU,UAAmC,CAAC;AAE3D;;;;;;GAMG;AACH,eAAO,MAAM,mCAAmC,EAAE,SAAS,0BAA0B,EAGlF,CAAC;AAEJ,2EAA2E;AAC3E,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EACpD,QAAQ,GAAG,OAAO,CACnB,CAAC"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * The LangSmith tool server's built-in integrations.
3
+ *
4
+ * The tool server hosts LangChain-authored tools for each provider — ordinary
5
+ * functions that call the provider's API with credentials looked up from
6
+ * LangSmith's vault — and publishes them over MCP, one endpoint per integration.
7
+ * A workspace connects an integration once in LangSmith, and every agent in that
8
+ * workspace reaches it without ever handling the provider's tokens.
9
+ *
10
+ * `slug` is the tool server's own identifier and the path segment MDA calls;
11
+ * `factory` is how the integration is spelled on the `connectors` namespace,
12
+ * since a slug like `google_sheets` is not how TypeScript names things. Only the
13
+ * slug crosses the wire, so a factory name can be friendlier (`x` for `x_com`)
14
+ * without the runtime caring.
15
+ *
16
+ * The list is checked in rather than fetched: `connectors.gmail` has to exist
17
+ * before the process that could ask the catalog for it is running. It is a
18
+ * superset of what any one workspace can use — an integration still has to be
19
+ * configured and connected in LangSmith, which the runtime reports per call.
20
+ */
21
+ /**
22
+ * Every integration the tool server publishes, ordered by factory name.
23
+ *
24
+ * Adding a provider to the tool server does not update this list; adding the
25
+ * entry here is what exposes it to MDA.
26
+ */
27
+ export const TOOL_SERVER_INTEGRATIONS = [
28
+ { slug: "apollo", factory: "apollo" },
29
+ { slug: "ashby", factory: "ashby" },
30
+ // The tool server's credential-free utilities: reading a URL's content and
31
+ // extracting its images. Named for the slug, which is what LangSmith shows.
32
+ { slug: "base", factory: "base" },
33
+ { slug: "exa", factory: "exa" },
34
+ { slug: "excel", factory: "excel" },
35
+ { slug: "github", factory: "github" },
36
+ { slug: "gmail", factory: "gmail" },
37
+ { slug: "google_bigquery", factory: "googleBigQuery" },
38
+ { slug: "google_calendar", factory: "googleCalendar" },
39
+ { slug: "google_docs", factory: "googleDocs" },
40
+ { slug: "google_drive", factory: "googleDrive" },
41
+ { slug: "google_meet", factory: "googleMeet" },
42
+ { slug: "google_sheets", factory: "googleSheets" },
43
+ { slug: "google_slides", factory: "googleSlides" },
44
+ { slug: "linear", factory: "linear" },
45
+ { slug: "linkedin", factory: "linkedin" },
46
+ { slug: "outlook", factory: "outlook" },
47
+ { slug: "powerpoint", factory: "powerpoint" },
48
+ { slug: "pylon", factory: "pylon" },
49
+ { slug: "salesforce", factory: "salesforce" },
50
+ { slug: "sharepoint", factory: "sharepoint" },
51
+ { slug: "slack", factory: "slack" },
52
+ { slug: "tavily", factory: "tavily" },
53
+ { slug: "teams", factory: "teams" },
54
+ { slug: "word", factory: "word" },
55
+ { slug: "x_com", factory: "x" },
56
+ ];
57
+ /**
58
+ * Integrations whose connectors this module does not build.
59
+ *
60
+ * `connectors.github` and `connectors.slack` accept tool-server options and
61
+ * also contribute sandbox / Events / messaging — so they declare themselves in
62
+ * their own modules rather than being generated from a catalog entry.
63
+ */
64
+ export const GITHUB_SLUG = "github";
65
+ export const SLACK_SLUG = "slack";
66
+ /**
67
+ * Integrations reached through a factory generated from this catalog.
68
+ *
69
+ * Typed as the base entry rather than the literal tuple: the namespace is what
70
+ * carries the per-integration types, and {@link ToolServerFactoryName} keeps the
71
+ * two in step.
72
+ */
73
+ export const STANDALONE_TOOL_SERVER_INTEGRATIONS = TOOL_SERVER_INTEGRATIONS.filter((entry) => entry.slug !== GITHUB_SLUG && entry.slug !== SLACK_SLUG);
74
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../../src/connectors/toolserver/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAUH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE;IACrC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;IACnC,2EAA2E;IAC3E,4EAA4E;IAC5E,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;IACjC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;IAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;IACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE;IACrC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;IACnC,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gBAAgB,EAAE;IACtD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gBAAgB,EAAE;IACtD,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE;IAC9C,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE;IAChD,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE;IAC9C,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE;IAClD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE;IAClD,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE;IACrC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE;IACzC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE;IACvC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE;IAC7C,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;IACnC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE;IAC7C,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE;IAC7C,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;IACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE;IACrC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;IACnC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;IACjC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;CACyB,CAAC;AAK3D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,QAAiC,CAAC;AAC7D,MAAM,CAAC,MAAM,UAAU,GAAG,OAAgC,CAAC;AAE3D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAC9C,wBAAwB,CAAC,MAAM,CAC7B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CACnE,CAAC"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Tool server connectors — the integrations a workspace manages in LangSmith.
3
+ *
4
+ * A workspace connects Gmail, Slack, Linear, … once in LangSmith; declaring the
5
+ * matching connector is how a Managed Deep Agent gets those tools. The provider's
6
+ * tokens stay in LangSmith's vault: MDA calls LangSmith's tool server gateway,
7
+ * which resolves the credential for the subject and forwards to the tool server.
8
+ * The deployment never sees, stores, or refreshes a provider token.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * // connectors/gmail.ts
13
+ * import { connectors } from "managed-deepagents";
14
+ *
15
+ * export const connector = connectors.gmail({
16
+ * includeTools: ["gmail_read_emails", "gmail_draft_email"],
17
+ * });
18
+ * ```
19
+ *
20
+ * ## Whose credentials
21
+ *
22
+ * Nothing here. Which workspace the call runs against, which key authenticates
23
+ * it, and whose connection it resolves are facts about the deployment, not
24
+ * choices the agent's source makes — so they come from the environment
25
+ * (`LANGSMITH_API_KEY`, `LANGSMITH_ENDPOINT`, `LANGCHAIN_WORKSPACE_ID`) and the
26
+ * declaration is only ever about which tools the agent gets.
27
+ *
28
+ * The gateway resolves credentials for whoever the call authenticates as, so the
29
+ * subject is the deployment's key rather than the caller of the run: every thread
30
+ * reaches the same connection. A personal key resolves that user's connections,
31
+ * which is what makes `mda dev` work against your own Gmail. A key with no user
32
+ * behind it has no subject yet, and has to borrow an agent's shared connection
33
+ * via `MDA_TOOLSERVER_AGENT_ID` — see the loader for why that is an env var.
34
+ *
35
+ * Per-actor credentials — each caller reaching their own Gmail — are not
36
+ * available through this connector. That needs [credentials](../../identity) with
37
+ * a resolver that can mint a token for `runtime.identity.actor`.
38
+ */
39
+ import { z } from "zod";
40
+ import type { Connector } from "../../runtime/connector.js";
41
+ import type { ToolSelection } from "../tool-selection.js";
42
+ import { type ToolServerFactoryName, type ToolServerSlug } from "./catalog.js";
43
+ export { GITHUB_SLUG, SLACK_SLUG, STANDALONE_TOOL_SERVER_INTEGRATIONS, TOOL_SERVER_INTEGRATIONS, } from "./catalog.js";
44
+ export type { ToolServerFactoryName, ToolServerIntegrationEntry, ToolServerSlug, } from "./catalog.js";
45
+ /**
46
+ * Which of an integration's tools the agent gets.
47
+ *
48
+ * Omitting both means every tool the integration publishes. An empty
49
+ * `includeTools` selects none of them, which is how a connector declared for
50
+ * something other than its tools — `connectors.github` cloning a repository —
51
+ * says so; the gateway is then never called.
52
+ */
53
+ export type ToolServerToolSelection = ToolSelection;
54
+ /**
55
+ * Configuration accepted by every `connectors.<integration>` factory.
56
+ *
57
+ * Only what is genuinely the agent's: which tools it gets, and how long it waits
58
+ * for one. How to reach LangSmith and whose credentials to use come from the
59
+ * deployment — see the module docs.
60
+ */
61
+ export interface ToolServerConnectorConfig extends ToolServerToolSelection {
62
+ /** Timeout, in milliseconds, for each tool call. */
63
+ defaultToolTimeout?: number;
64
+ }
65
+ /**
66
+ * A declared tool server integration. Branded as a managed {@link Connector}
67
+ * whose `tools` hook loads the integration's tools at runtime, and whose `kind`
68
+ * is the integration's wire slug.
69
+ */
70
+ export type ToolServerConnector = Connector & ToolServerConnectorConfig & {
71
+ /** The tool server slug this connector loads from. */
72
+ readonly kind: ToolServerSlug;
73
+ };
74
+ /** A `connectors.<integration>` factory. */
75
+ export type ToolServerConnectorFactory = (config?: ToolServerConnectorConfig) => ToolServerConnector;
76
+ /**
77
+ * Build the argument schema for one tool server integration.
78
+ *
79
+ * `extra` adds whatever the integration accepts on top of the shared options —
80
+ * `connectors.github`'s sandbox provisioning, say. Every integration is built
81
+ * from here, so the shared options are spelled, defaulted, and validated once
82
+ * rather than restated per integration.
83
+ *
84
+ * Strict, so an option that does not exist is an error rather than a silently
85
+ * ignored key — which matches the Python model's `extra="forbid"`, and is what
86
+ * tells a project that `apiKey` and friends now come from the environment.
87
+ *
88
+ * The result is cast to the caller's argument types. Zod cannot describe a
89
+ * prefaulted object as "accepts undefined, produces defaults" in one type, so
90
+ * the shape and the declared config interface are kept in step by review.
91
+ */
92
+ export declare function toolServerConnectorSchema<TArgs, TInput>(extra?: z.ZodRawShape): z.ZodType<TArgs, TInput>;
93
+ /**
94
+ * Build the `tools` hook that loads one integration's tools.
95
+ *
96
+ * Shared so every integration reaches the gateway the same way, whether that is
97
+ * all it does (`connectors.gmail`) or one of the things it does
98
+ * (`connectors.github`, which also provisions the sandbox).
99
+ *
100
+ * The hook runs at agent-graph construction, so the loader is imported lazily —
101
+ * an authoring-only install never pulls in the MCP client.
102
+ */
103
+ export declare function toolServerTools(slug: ToolServerSlug, label: string): (ctx: unknown, self: ToolServerConnectorConfig) => Promise<unknown[]>;
104
+ /**
105
+ * Build the factory for one tool server integration.
106
+ *
107
+ * For the integrations that are only their tools. An integration with more to
108
+ * contribute — `connectors.github` — calls `defineExtension` itself with
109
+ * {@link toolServerConnectorSchema} and {@link toolServerTools}.
110
+ */
111
+ export declare function toolServerConnector(slug: ToolServerSlug, label: string): ToolServerConnectorFactory;
112
+ /**
113
+ * The `connectors` entries for the integrations that have their own factory.
114
+ *
115
+ * Built from the catalog so a new integration is one entry, not an entry plus a
116
+ * namespace line that can be forgotten.
117
+ */
118
+ export declare const toolServerConnectors: Record<ToolServerFactoryName, ToolServerConnectorFactory>;
119
+ //# sourceMappingURL=index.d.ts.map