managed-deepagents 0.6.2-dev.5 → 0.6.2-dev.51

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 (84) hide show
  1. package/README.md +25 -9
  2. package/dist/agent-auth.d.ts +129 -0
  3. package/dist/agent-auth.d.ts.map +1 -0
  4. package/dist/agent-auth.js +393 -0
  5. package/dist/agent-auth.js.map +1 -0
  6. package/dist/channels/manifest.d.ts +4 -0
  7. package/dist/channels/manifest.d.ts.map +1 -1
  8. package/dist/channels/schedule-delivery.d.ts +2 -0
  9. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  10. package/dist/channels/schedule-delivery.js +40 -4
  11. package/dist/channels/schedule-delivery.js.map +1 -1
  12. package/dist/channels/trigger/client.d.ts +1 -0
  13. package/dist/channels/trigger/client.d.ts.map +1 -1
  14. package/dist/channels/trigger/client.js +19 -8
  15. package/dist/channels/trigger/client.js.map +1 -1
  16. package/dist/channels/trigger/http.js +1 -1
  17. package/dist/channels/trigger/http.js.map +1 -1
  18. package/dist/channels/trigger/types.d.ts +1 -1
  19. package/dist/channels/trigger/types.d.ts.map +1 -1
  20. package/dist/connections.d.ts +74 -0
  21. package/dist/connections.d.ts.map +1 -0
  22. package/dist/connections.js +280 -0
  23. package/dist/connections.js.map +1 -0
  24. package/dist/connectors/mcp/index.d.ts +36 -95
  25. package/dist/connectors/mcp/index.d.ts.map +1 -1
  26. package/dist/connectors/mcp/index.js +266 -57
  27. package/dist/connectors/mcp/index.js.map +1 -1
  28. package/dist/connectors/mcp/schema.d.ts +17 -0
  29. package/dist/connectors/mcp/schema.d.ts.map +1 -0
  30. package/dist/connectors/mcp/schema.js +122 -0
  31. package/dist/connectors/mcp/schema.js.map +1 -0
  32. package/dist/connectors/mcp/types.d.ts +81 -0
  33. package/dist/connectors/mcp/types.d.ts.map +1 -0
  34. package/dist/connectors/mcp/types.js +2 -0
  35. package/dist/connectors/mcp/types.js.map +1 -0
  36. package/dist/connectors/tool-selection.d.ts +10 -19
  37. package/dist/connectors/tool-selection.d.ts.map +1 -1
  38. package/dist/connectors/tool-selection.js +33 -59
  39. package/dist/connectors/tool-selection.js.map +1 -1
  40. package/dist/credential-gate.d.ts +40 -0
  41. package/dist/credential-gate.d.ts.map +1 -0
  42. package/dist/credential-gate.js +227 -0
  43. package/dist/credential-gate.js.map +1 -0
  44. package/dist/extension.d.ts +3 -3
  45. package/dist/extension.js +2 -2
  46. package/dist/identity/index.d.ts +1 -1
  47. package/dist/identity/index.d.ts.map +1 -1
  48. package/dist/identity/index.js.map +1 -1
  49. package/dist/identity/types.d.ts +79 -5
  50. package/dist/identity/types.d.ts.map +1 -1
  51. package/dist/index.d.ts +9 -34
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +3 -6
  54. package/dist/index.js.map +1 -1
  55. package/dist/namespaces.d.ts +12 -29
  56. package/dist/namespaces.d.ts.map +1 -1
  57. package/dist/namespaces.js +26 -9
  58. package/dist/namespaces.js.map +1 -1
  59. package/dist/runtime/auth.d.ts +31 -4
  60. package/dist/runtime/auth.d.ts.map +1 -1
  61. package/dist/runtime/auth.js +58 -3
  62. package/dist/runtime/auth.js.map +1 -1
  63. package/dist/runtime/http.d.ts +1 -1
  64. package/dist/runtime/http.d.ts.map +1 -1
  65. package/dist/runtime/http.js.map +1 -1
  66. package/dist/runtime/identity-runtime.d.ts +65 -5
  67. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  68. package/dist/runtime/identity-runtime.js +148 -0
  69. package/dist/runtime/identity-runtime.js.map +1 -1
  70. package/dist/runtime/index.d.ts.map +1 -1
  71. package/dist/runtime/index.js +13 -8
  72. package/dist/runtime/index.js.map +1 -1
  73. package/dist/runtime/managed-middleware.d.ts +2 -2
  74. package/dist/runtime/managed-middleware.js +6 -6
  75. package/dist/runtime/managed-tools.d.ts +19 -15
  76. package/dist/runtime/managed-tools.d.ts.map +1 -1
  77. package/dist/runtime/managed-tools.js +14 -13
  78. package/dist/runtime/managed-tools.js.map +1 -1
  79. package/dist/runtime/types.d.ts +2 -2
  80. package/package.json +8 -8
  81. package/dist/connectors/mcp/load.d.ts +0 -12
  82. package/dist/connectors/mcp/load.d.ts.map +0 -1
  83. package/dist/connectors/mcp/load.js +0 -122
  84. package/dist/connectors/mcp/load.js.map +0 -1
@@ -0,0 +1,227 @@
1
+ /**
2
+ * Pre-run gate for declarations that need a user-owned connection.
3
+ *
4
+ * Before the first model turn the gate reads the caller's OAuth grants and
5
+ * opaque secrets from Agent Auth. Missing grants raise one LangGraph interrupt;
6
+ * OAuth slugs include connect URLs, opaque slugs request password-style input.
7
+ * The tools a grant unlocks are loaded on first use and cached per caller.
8
+ */
9
+ import { createMiddleware } from "langchain";
10
+ import { interrupt } from "@langchain/langgraph";
11
+ import { AgentAuth, CredentialAuthorizationRequiredError, CredentialStoreError, } from "./agent-auth.js";
12
+ import { resolveAgentAuthContext, resolveOwnerId, } from "./connections.js";
13
+ import { buildRuntimeIdentity, resolveRuntimeConfigurable, } from "./runtime/identity-runtime.js";
14
+ import { wrapToolsWithManagedRuntime, } from "./runtime/managed-tools.js";
15
+ export const CREDENTIAL_GATE_MIDDLEWARE_NAME = "mda-credential-gate";
16
+ /**
17
+ * How long a caller's loaded tools stay cached.
18
+ *
19
+ * The access token is bound into the transport when the tools are built, so the
20
+ * entry has to lapse well before the token does.
21
+ */
22
+ const TOOL_CACHE_TTL_MS = 5 * 60_000;
23
+ /**
24
+ * Loaded tools by declaration and caller.
25
+ *
26
+ * Module scope, not middleware scope: a resumed run re-enters through a fresh
27
+ * graph factory, so a cache owned by the middleware would be empty for every
28
+ * turn after an interrupt. It is only ever a latency optimization — a resume
29
+ * can also land on another replica, so every read path rebuilds on a miss.
30
+ */
31
+ const toolCache = new Map();
32
+ const declarationIds = new WeakMap();
33
+ let nextDeclarationId = 0;
34
+ class UnauthenticatedCallerError extends Error {
35
+ constructor() {
36
+ super("connections with a user owner require an authenticated caller. " +
37
+ "Anonymous or agent-only runs cannot complete the credential gate.");
38
+ this.name = "UnauthenticatedCallerError";
39
+ }
40
+ }
41
+ export function createCredentialGateMiddleware(consumers) {
42
+ if (consumers.length === 0) {
43
+ return undefined;
44
+ }
45
+ return createMiddleware({
46
+ name: CREDENTIAL_GATE_MIDDLEWARE_NAME,
47
+ async beforeAgent(_state, runtime) {
48
+ const caller = authContext(runtime);
49
+ if (!caller) {
50
+ throw new UnauthenticatedCallerError();
51
+ }
52
+ await ensureGrants(consumers, caller);
53
+ await toolsForContext(consumers, caller.context);
54
+ },
55
+ async wrapModelCall(request, handler) {
56
+ const extra = await toolsForRuntime(consumers, request.runtime);
57
+ if (extra.length === 0) {
58
+ return handler(request);
59
+ }
60
+ const existing = Array.isArray(request.tools) ? request.tools : [];
61
+ return handler({ ...request, tools: [...existing, ...extra] });
62
+ },
63
+ async wrapToolCall(request, handler) {
64
+ const name = request.toolCall?.name;
65
+ if (request.tool != null || typeof name !== "string") {
66
+ return handler(request);
67
+ }
68
+ const tools = await toolsForRuntime(consumers, request.runtime);
69
+ const tool = tools.find((candidate) => candidate.name === name);
70
+ return tool ? handler({ ...request, tool }) : handler(request);
71
+ },
72
+ });
73
+ }
74
+ /**
75
+ * Interrupt once when the caller is missing a grant.
76
+ *
77
+ * Reads never mint, so the probe is safe to repeat on every replay of this
78
+ * node. OAuth sessions are minted once, immediately before the interrupt that
79
+ * shows their URLs.
80
+ */
81
+ async function ensureGrants(consumers, caller) {
82
+ const agentAuth = new AgentAuth(caller.context);
83
+ const grants = await readUserConnectionGrants(agentAuth, consumerCredentials(consumers, caller));
84
+ const missingOAuth = grants.filter((row) => !row.token && row.kind === "oauth2");
85
+ const missingSecret = grants.filter((row) => !row.token && row.kind === "secret");
86
+ if (missingOAuth.length === 0 && missingSecret.length === 0) {
87
+ return;
88
+ }
89
+ const pendingOAuth = await Promise.all(missingOAuth.map((row) => agentAuth.startAuthorizationSession(row.slug)));
90
+ const payload = {
91
+ type: "credential_authorization_required",
92
+ message: "Connect the following integrations to continue.",
93
+ credentials: [
94
+ ...pendingOAuth.map((session) => ({
95
+ slug: session.slug,
96
+ kind: "oauth2",
97
+ connect_url: session.connectUrl,
98
+ auth_id: session.authId,
99
+ })),
100
+ ...missingSecret.map((row) => ({
101
+ slug: row.slug,
102
+ kind: "secret",
103
+ })),
104
+ ],
105
+ };
106
+ // `interrupt` throws while no resume value is pending and returns once one
107
+ // is, so reaching the line below means the run resumed with a grant still
108
+ // missing.
109
+ interrupt(payload);
110
+ throw new CredentialAuthorizationRequiredError([
111
+ ...missingOAuth.map((row) => row.slug),
112
+ ...missingSecret.map((row) => row.slug),
113
+ ]);
114
+ }
115
+ /**
116
+ * Declared connections, one per slug.
117
+ *
118
+ * Every reference is resolved through {@link resolveOwnerId}, the same check
119
+ * `connections.get` applies when a tool awaits a handle, so a declaration that
120
+ * names another user is rejected here rather than quietly run as the caller.
121
+ */
122
+ function consumerCredentials(consumers, caller) {
123
+ const bySlug = new Map();
124
+ for (const consumer of consumers) {
125
+ for (const credential of consumer.credentials) {
126
+ resolveOwnerId(credential.owner, caller.identity, caller.context.agentId);
127
+ bySlug.set(credential.slug, credential);
128
+ }
129
+ }
130
+ return [...bySlug.values()];
131
+ }
132
+ async function readUserConnectionGrants(agentAuth, references) {
133
+ return await Promise.all(references.map(async ({ slug }) => {
134
+ const row = await agentAuth.findWorkspaceConnection(slug);
135
+ if (!row) {
136
+ throw new CredentialStoreError(`workspace connection ${JSON.stringify(slug)} is not configured`);
137
+ }
138
+ const kind = row.kind === "secret" ? "secret" : "oauth2";
139
+ const token = kind === "secret"
140
+ ? await agentAuth.readUserSecret(slug)
141
+ : await agentAuth.readUserAccessToken(slug);
142
+ return { slug, kind, token };
143
+ }));
144
+ }
145
+ async function toolsForRuntime(consumers, runtime) {
146
+ const caller = authContext(runtime);
147
+ return caller ? await toolsForContext(consumers, caller.context) : [];
148
+ }
149
+ async function toolsForContext(consumers, context) {
150
+ const loaded = await Promise.all(consumers.map((consumer) => cachedTools(consumer, context)));
151
+ return loaded.flat();
152
+ }
153
+ async function cachedTools(consumer, context) {
154
+ const key = `${declarationId(consumer.declaration)} ${context.principalId}`;
155
+ for (;;) {
156
+ const cached = toolCache.get(key);
157
+ if (!cached) {
158
+ return refresh(key, consumer, context, undefined);
159
+ }
160
+ const entry = await cached.catch(() => undefined);
161
+ if (entry && entry.expiresAt > Date.now()) {
162
+ return entry.tools;
163
+ }
164
+ // Nothing suspends between this read and the write inside `refresh`, so a
165
+ // lapsed entry is retired by exactly one caller. The rest see the
166
+ // replacement on the next pass and join it.
167
+ if (toolCache.get(key) === cached) {
168
+ return refresh(key, consumer, context, entry);
169
+ }
170
+ }
171
+ }
172
+ /** Publish the load before awaiting it, so concurrent callers share one transport. */
173
+ async function refresh(key, consumer, context, lapsed) {
174
+ const loading = loadTools(consumer, context);
175
+ toolCache.set(key, loading);
176
+ lapsed?.close().catch(() => undefined);
177
+ try {
178
+ return (await loading).tools;
179
+ }
180
+ catch (error) {
181
+ if (toolCache.get(key) === loading) {
182
+ toolCache.delete(key);
183
+ }
184
+ throw error;
185
+ }
186
+ }
187
+ async function loadTools(consumer, context) {
188
+ const agentAuth = new AgentAuth(context);
189
+ const grants = await readUserConnectionGrants(agentAuth, consumer.credentials);
190
+ const missing = grants.filter((row) => !row.token).map((row) => row.slug);
191
+ if (missing.length > 0) {
192
+ throw new CredentialAuthorizationRequiredError(missing);
193
+ }
194
+ const accessTokens = new Map(grants.map((row) => [row.slug, row.token]));
195
+ const loaded = await consumer.load(accessTokens);
196
+ return {
197
+ tools: wrapToolsWithManagedRuntime(loaded.tools),
198
+ close: loaded.close,
199
+ expiresAt: Date.now() + TOOL_CACHE_TTL_MS,
200
+ };
201
+ }
202
+ function declarationId(declaration) {
203
+ const existing = declarationIds.get(declaration);
204
+ if (existing)
205
+ return existing;
206
+ nextDeclarationId += 1;
207
+ const id = String(nextDeclarationId);
208
+ declarationIds.set(declaration, id);
209
+ return id;
210
+ }
211
+ function authContext(runtime) {
212
+ const identity = buildRuntimeIdentity(resolveRuntimeConfigurable(runtime));
213
+ if (!identity?.user.id) {
214
+ return undefined;
215
+ }
216
+ return { context: resolveAgentAuthContext(identity), identity };
217
+ }
218
+ /** Drop every cached caller entry and close its transports. Test-only. */
219
+ export async function clearCredentialToolCacheForTests() {
220
+ const entries = [...toolCache.values()];
221
+ toolCache.clear();
222
+ await Promise.all(entries.map(async (entry) => {
223
+ const resolved = await entry.catch(() => undefined);
224
+ await resolved?.close().catch(() => undefined);
225
+ }));
226
+ }
227
+ //# sourceMappingURL=credential-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credential-gate.js","sourceRoot":"","sources":["../src/credential-gate.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * The contribution API behind the extensible MDA primitives.
3
3
  *
4
- * `defineExtension(kind, options)` returns the factory a connector namespace
5
- * calls, such as `connectors.mcp({ … })`. Argument parsing, branding, and
4
+ * `defineExtension(kind, options)` returns the factory a first-party primitive
5
+ * calls, such as `defineMCP({ … })`. Argument parsing, branding, and
6
6
  * manifest stamping are shared.
7
7
  *
8
8
  * Every kind declares its input through `args`, which takes a schema from any
@@ -40,7 +40,7 @@ export type ExtensionArgs<TInput, TArgs> = StandardSchemaV1<TInput, TArgs> | ((i
40
40
  interface ExtensionEnvelope<TInput, TArgs> {
41
41
  args: ExtensionArgs<TInput, TArgs>;
42
42
  /**
43
- * How the factory is spelled in an agent project, e.g. `"connectors.mcp"`.
43
+ * How the factory is spelled in an agent project, e.g. `"defineMCP"`.
44
44
  * Prefixes validation errors, which is the only place an author sees it.
45
45
  */
46
46
  label: string;
package/dist/extension.js CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * The contribution API behind the extensible MDA primitives.
3
3
  *
4
- * `defineExtension(kind, options)` returns the factory a connector namespace
5
- * calls, such as `connectors.mcp({ … })`. Argument parsing, branding, and
4
+ * `defineExtension(kind, options)` returns the factory a first-party primitive
5
+ * calls, such as `defineMCP({ … })`. Argument parsing, branding, and
6
6
  * manifest stamping are shared.
7
7
  *
8
8
  * Every kind declares its input through `args`, which takes a schema from any
@@ -14,7 +14,7 @@ import type { IdentityConfig, IdentityDefinition, LangSmithApiKeyIngress, Valida
14
14
  export { normalizeGroups, userClaimName } from "./claims.js";
15
15
  export { normalizeIdentity } from "./options.js";
16
16
  export type { IdentityAuth, IdentityOptions } from "./options.js";
17
- export type { ClaimMapping, CredentialScope, HttpIngress, IdentityConfig, IdentityDefinition, LangSmithApiKeyIngress, RuntimeIdentity, ValidatedTokenIngress, ValidatedTokenProvider, } from "./types.js";
17
+ export type { ClaimMapping, CredentialScope, HttpIngress, IdentityConfig, IdentityDefinition, IdentitySource, LangSmithApiKeyIngress, Link, LinkStatus, Principal, PrincipalClaims, PrincipalEnvelope, PrincipalKind, RuntimeIdentity, Subject, SubjectAuthority, ValidatedTokenIngress, ValidatedTokenProvider, } from "./types.js";
18
18
  /**
19
19
  * Declare the identity contract for the deployment.
20
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,KAAK,uBAAuB,EAAoB,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EAEtB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAElE,YAAY,EACV,YAAY,EACZ,eAAe,EACf,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,kBAAkB,CAI3E;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI;IACf,2EAA2E;IAC3E,eAAe,IAAI,sBAAsB;IAGzC,oCAAoC;IACpC,QAAQ,UAAU,uBAAuB,GAAG,sBAAsB;CAGnE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAuC7D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,KAAK,uBAAuB,EAAoB,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EAEtB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAElE,YAAY,EACV,YAAY,EACZ,eAAe,EACf,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,IAAI,EACJ,UAAU,EACV,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,kBAAkB,CAI3E;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI;IACf,2EAA2E;IAC3E,eAAe,IAAI,sBAAsB;IAGzC,oCAAoC;IACpC,QAAQ,UAAU,uBAAuB,GAAG,sBAAsB;CAGnE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAuC7D"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAwB,MAAM,cAAc,CAAC;AACvE,OAAO,EAAgC,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAS/E,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAejD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAAC,OAAwB;IACrD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC1C,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,2EAA2E;IAC3E,eAAe;QACb,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;IACvC,CAAC;IACD,oCAAoC;IACpC,QAAQ,CAAC,OAAgC;QACvC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAsB;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAyC,CAAC;IACjE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAER,CAAC;IACd,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,wDAAwD;YACtD,iDAAiD,CACpD,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,4EAA4E;YAC1E,sEAAsE;YACtE,mEAAmE,CACtE,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,MAAM,IAAI,GAAI,OAA6B,CAAC,IAAI,CAAC;IACjD,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,4DAA4D;IAC9D,CAAC;SAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,iJAAiJ,CAClJ,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAa;IACtC,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAA2B,CAAC,IAAI,KAAK,mBAAmB,CAC1D,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAa;IACrC,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAA2B,CAAC,IAAI,KAAK,iBAAiB,CACxD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,IAA2B;IACzD,MAAM,IAAI,GAAI,IAAgC,CAAC,SAAS,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,KAA+B,CAAC;QACjD,MAAM,KAAK,GAAG,QAAQ,EAAE,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1C,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,qBAAqB,CAC3E,CAAC;QACJ,CAAC;QACD,IACE,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ;YACnC,QAAQ,CAAC,MAAM,KAAK,IAAI;YACxB,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC/B,CAAC;YACD,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,4BAA4B,CAClF,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GACf,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;YACjC,QAAQ,CAAC,QAAQ,KAAK,IAAI;YAC1B,OAAO,QAAQ,CAAC,YAAY,KAAK,QAAQ;YACzC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC;QACpC,0EAA0E;QAC1E,mDAAmD;QACnD,IACE,WAAW;YACX,QAAQ,CAAC,UAAU,KAAK,SAAS;YACjC,CAAC,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,EACzE,CAAC;YACD,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,uDAAuD,CAC7G,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,mFAAmF,CACzI,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
@@ -86,22 +86,96 @@ export interface ValidatedTokenProvider {
86
86
  claims: ClaimMapping;
87
87
  }
88
88
  /**
89
- * Which verified token claim supplies each identity envelope field.
89
+ * Which verified token claim supplies each principal field.
90
90
  *
91
91
  * `user` is required; `defineIdentity` rejects a provider that omits it.
92
92
  */
93
93
  export interface ClaimMapping {
94
- /** Claim used as `runtime.identity.user.id` (e.g. "sub", "email"). */
94
+ /** Claim used as `runtime.serverInfo.principal.id` (e.g. "sub", "email"). */
95
95
  user?: string;
96
96
  /**
97
97
  * Claim carrying every group the caller belongs to. Accepts a JSON array, or a
98
- * comma/space-delimited string. Read by tools for authorization.
98
+ * comma/space-delimited string. Folded into `principal.claims.groups`.
99
99
  */
100
100
  groups?: string;
101
- /** Claim used as `runtime.identity.user.email`. */
101
+ /** Claim folded into `principal.claims.email`. */
102
102
  email?: string;
103
103
  }
104
- /** The frozen identity envelope tools and middleware see. */
104
+ /**
105
+ * Agent Auth–aligned identity types for the current run.
106
+ *
107
+ * Author surface on LangGraph `serverInfo` (flattened, no nested envelope bag):
108
+ * `runtime.serverInfo.principal` / `.subject` / `.link`. Reassemble into
109
+ * {@link PrincipalEnvelope} when calling Agent Auth mint.
110
+ *
111
+ * Fields MDA cannot yet fill use conservative defaults
112
+ * (`link.status: "not_required"`, `subject.agent_id: ""`).
113
+ */
114
+ export type PrincipalKind = "person" | "service" | "channel";
115
+ export type SubjectAuthority = "agent" | "user";
116
+ export type LinkStatus = "not_required" | "linked" | "unlinked" | "pending";
117
+ /**
118
+ * The caller's claim bag.
119
+ *
120
+ * Mostly the verified token payload, passed through as the IdP sent it. The two
121
+ * claims MDA gives a name to are normalized before they land here, whether or
122
+ * not the deployment mapped them in `ClaimMapping`: `groups` is always a string
123
+ * array (IdPs send arrays or delimited strings), and `email` is always a string.
124
+ * An unmapped claim of either name that cannot be normalized is dropped rather
125
+ * than passed through, so the declared type always holds.
126
+ */
127
+ export interface PrincipalClaims {
128
+ /** Every group the caller's token asserts. Never a raw delimited string. */
129
+ groups?: readonly string[];
130
+ email?: string;
131
+ [claim: string]: unknown;
132
+ }
133
+ export interface Principal {
134
+ id: string;
135
+ kind: PrincipalKind;
136
+ claims: PrincipalClaims;
137
+ }
138
+ export interface Subject {
139
+ authority: SubjectAuthority;
140
+ /**
141
+ * Deployment / agent id. Omitted when the platform supplied neither an
142
+ * assistant nor a graph id, so an Agent Auth call fails on a missing field
143
+ * rather than silently addressing the empty agent.
144
+ */
145
+ agent_id?: string;
146
+ /** Present when `authority === "user"`. */
147
+ user_id?: string;
148
+ }
149
+ /**
150
+ * Where the run entered from, as stamped by trusted managed ingress.
151
+ *
152
+ * This is MDA's own ingress record, not part of the Agent Auth envelope, so it
153
+ * sits beside `principal` on `serverInfo` instead of inside it.
154
+ */
155
+ export interface IdentitySource {
156
+ /**
157
+ * Ingress source. Built-ins include `http`, `schedule`, `cli`, `studio`,
158
+ * plus channel providers (`slack`, `github`, or any registered plugin key).
159
+ */
160
+ provider: string;
161
+ threadId?: string;
162
+ }
163
+ export interface Link {
164
+ status: LinkStatus;
165
+ from?: string;
166
+ to?: string;
167
+ }
168
+ /** Wire shape for Agent Auth (`principal_envelope` on resolve/mint). */
169
+ export interface PrincipalEnvelope {
170
+ principal: Principal;
171
+ subject: Subject;
172
+ link: Link;
173
+ }
174
+ /**
175
+ * Frozen identity bag for HTTP connector route handlers
176
+ * (`resolveRequestIdentity`). Tools/middleware use `serverInfo.principal`
177
+ * (plus `subject` / `link`) instead.
178
+ */
105
179
  export interface RuntimeIdentity {
106
180
  /** The caller. `kind: "service"` for machine callers (schedules, channels, Studio). */
107
181
  user: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,45 +2,20 @@ export { defineDeepAgent } from "./define-deep-agent.js";
2
2
  export { defineSchedule } from "./schedules.js";
3
3
  export { defineIdentity } from "./identity/index.js";
4
4
  export { defineMemory } from "./memory/index.js";
5
- export { auth, channels } from "./namespaces.js";
5
+ export { auth, channels, connectors } from "./namespaces.js";
6
+ export { connections, CredentialAuthorizationRequiredError, ConnectionNotFoundError, CredentialStoreError, InvalidAgentAuthEndpointError, } from "./connections.js";
6
7
  export { defineSandbox } from "./sandbox.js";
7
- export type { Channels } from "./namespaces.js";
8
- import { mcpConnector } from "./connectors/mcp/index.js";
9
- /**
10
- * Public connectors surface for this release: remote MCP only.
11
- */
12
- export interface Connectors {
13
- /**
14
- * Declare remote MCP servers (HTTP/SSE) whose tools load at agent-graph
15
- * construction. Stdio servers are not supported. Use static `headers` (or
16
- * similar) when the server needs credentials — roll your own auth.
17
- *
18
- * @example
19
- * ```ts
20
- * export const connector = connectors.mcp({
21
- * mcpServers: {
22
- * docs: {
23
- * transport: "http",
24
- * url: "https://docs.example.com/mcp",
25
- * headers: { Authorization: `Bearer ${process.env.DOCS_TOKEN}` },
26
- * },
27
- * },
28
- * });
29
- * ```
30
- *
31
- * @see {@link mcpConnector}
32
- */
33
- mcp: typeof mcpConnector;
34
- }
35
- /** Public connectors namespace — MCP only for this release. */
36
- export declare const connectors: Connectors;
8
+ export { defineMCP } from "./connectors/mcp/index.js";
9
+ export type { Channels, Connectors } from "./namespaces.js";
10
+ export type { AgentConnectionOwner, ConnectionOwner, ConnectionRequest, UserConnectionOwner, } from "./connections.js";
37
11
  export type { DeepAgentDefinition, DefineDeepAgentConfig, ManagedDeepAgentKey, } from "./types.js";
38
12
  export type { ScheduleConfig, ScheduleDefinition, ScheduleDeliveryTarget, ScheduleThreadConfig, } from "./schedules.js";
39
- export type { ClaimMapping, CredentialScope, HttpIngress, IdentityAuth, IdentityConfig, IdentityDefinition, IdentityOptions, LangSmithApiKeyIngress, RuntimeIdentity, ValidatedTokenIngress, ValidatedTokenProvider, } from "./identity/index.js";
13
+ export type { ClaimMapping, CredentialScope, HttpIngress, IdentityAuth, IdentityConfig, IdentityDefinition, IdentityOptions, IdentitySource, LangSmithApiKeyIngress, Link, LinkStatus, Principal, PrincipalClaims, PrincipalEnvelope, PrincipalKind, RuntimeIdentity, Subject, SubjectAuthority, ValidatedTokenIngress, ValidatedTokenProvider, } from "./identity/index.js";
40
14
  export type { MemoryConfig, MemoryDefinition, MemoryOptions, MemoryScope, MemoryScopeInput, MemorySliceInput, MemorySliceKind, ResolvedMemorySlice, } from "./memory/index.js";
41
- export type { HttpMcpServerConfig, McpServersConfig, McpServersDefinition, McpToolSelectionConfig, RemoteMcpServerBaseConfig, RemoteMcpServerConfig, SseMcpServerConfig, } from "./connectors/mcp/index.js";
15
+ export type { HttpMcpServerConfig, McpServerConnection, McpServersConfig, McpServersDefinition, McpToolSelectionConfig, RemoteMcpServerBaseConfig, RemoteMcpServerConfig, SseMcpServerConfig, } from "./connectors/mcp/index.js";
16
+ export type { CredentialAuthorizationRequiredInterrupt, PendingCredential, } from "./credential-gate.js";
42
17
  export type { ChannelManifest } from "./channels/manifest.js";
43
18
  export type { RequiredTriggerSlackChannelConfig, SlackChannel, SlackChannelConfig, } from "./channels/slack/index.js";
44
19
  export type { SandboxDefinition, SandboxOptions } from "./sandbox.js";
45
- export type { ManagedDeepAgentRuntime } from "./runtime/managed-tools.js";
20
+ export type { ManagedDeepAgentRuntime, ManagedServerInfo, } from "./runtime/managed-tools.js";
46
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,GAAG,EAAE,OAAO,YAAY,CAAC;CAC1B;AAED,+DAA+D;AAC/D,eAAO,MAAM,UAAU,EAAE,UAExB,CAAC;AAEF,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,YAAY,EACZ,eAAe,EACf,WAAW,EACX,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EACV,iCAAiC,EACjC,YAAY,EACZ,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtE,YAAY,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EACL,WAAW,EACX,oCAAoC,EACpC,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE5D,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,YAAY,EACZ,eAAe,EACf,WAAW,EACX,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,IAAI,EACJ,UAAU,EACV,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,wCAAwC,EACxC,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EACV,iCAAiC,EACjC,YAAY,EACZ,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtE,YAAY,EACV,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC"}
package/dist/index.js CHANGED
@@ -2,11 +2,8 @@ export { defineDeepAgent } from "./define-deep-agent.js";
2
2
  export { defineSchedule } from "./schedules.js";
3
3
  export { defineIdentity } from "./identity/index.js";
4
4
  export { defineMemory } from "./memory/index.js";
5
- export { auth, channels } from "./namespaces.js";
5
+ export { auth, channels, connectors } from "./namespaces.js";
6
+ export { connections, CredentialAuthorizationRequiredError, ConnectionNotFoundError, CredentialStoreError, InvalidAgentAuthEndpointError, } from "./connections.js";
6
7
  export { defineSandbox } from "./sandbox.js";
7
- import { mcpConnector } from "./connectors/mcp/index.js";
8
- /** Public connectors namespace — MCP only for this release. */
9
- export const connectors = {
10
- mcp: mcpConnector,
11
- };
8
+ export { defineMCP } from "./connectors/mcp/index.js";
12
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AA6BzD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,UAAU,GAAe;IACpC,GAAG,EAAE,YAAY;CAClB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EACL,WAAW,EACX,oCAAoC,EACpC,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC"}
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * ```ts
9
9
  * channels.slack({ name: "Support Bot" });
10
- * connectors.mcp({ mcpServers: { docs: { transport: "http", url: "https://docs.example.com/mcp" } } });
10
+ * defineMCP({ servers: { docs: { transport: "http", url: "https://docs.example.com/mcp" } } });
11
11
  * defineSandbox({ defaultTimeout: 600 });
12
12
  * auth.supabase({ projectRef: "abc" });
13
13
  * ```
@@ -15,44 +15,27 @@
15
15
  * These are the only primitives the managed runtime will mount. A project
16
16
  * cannot contribute its own — `defineExtension` stays internal.
17
17
  */
18
- import { mcpConnector } from "./connectors/mcp/index.js";
19
18
  import { slackChannel } from "./channels/slack/index.js";
19
+ import { defineMCP } from "./connectors/mcp/index.js";
20
20
  export { auth } from "./identity/index.js";
21
+ /** @internal */
22
+ export declare const CONNECTORS_MCP_DEPRECATION = "connectors.mcp(...) is deprecated; use defineMCP(...) instead. It will be removed in 0.8.0.";
21
23
  /**
22
- * Integrations: tools, HTTP routes, sandbox provisioning, inbound events, and
23
- * named messaging. Exported from `connectors/*`.
24
+ * @deprecated Use {@link defineMCP} instead. The `connectors` namespace will
25
+ * be removed in 0.8.0.
24
26
  *
25
- * Connector catalogs are MCP-only. Slack Events ingress lives on
26
- * {@link channels}.
27
- *
28
- * Docs live on this interface (not the value) so IDE hover on `connectors.<name>`
29
- * stays useful — TypeScript surfaces property docs from the annotation.
27
+ * Docs live on this interface so IDE hover on `connectors.mcp` stays useful.
30
28
  */
31
29
  export interface Connectors {
32
30
  /**
33
- * Declare remote MCP servers (HTTP/SSE) whose tools load at agent-graph
34
- * construction. Stdio servers are not supported.
35
- *
36
- * @example
37
- * ```ts
38
- * export const connector = connectors.mcp({
39
- * mcpServers: {
40
- * docs: { transport: "http", url: "https://docs.example.com/mcp" },
41
- * },
42
- * });
43
- * ```
44
- *
45
- * @see {@link mcpConnector}
31
+ * @deprecated Use {@link defineMCP} instead. `connectors.mcp` will be removed
32
+ * in 0.8.0.
46
33
  */
47
- mcp: typeof mcpConnector;
34
+ mcp: typeof defineMCP;
48
35
  }
49
36
  /**
50
- * Integrations: tools, HTTP routes, sandbox provisioning, inbound events, and
51
- * named messaging. Exported from `connectors/*`.
52
- *
53
- * Factories are assigned by reference (same pattern as the Python namespace) so
54
- * signatures stay in step with the connector modules. Hover docs come from
55
- * {@link Connectors}.
37
+ * @deprecated Use {@link defineMCP} instead. The `connectors` namespace will
38
+ * be removed in 0.8.0.
56
39
  */
57
40
  export declare const connectors: Connectors;
58
41
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"namespaces.d.ts","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;;;;;;;OAcG;IACH,GAAG,EAAE,OAAO,YAAY,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,EAAE,UAExB,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;;;;;;;;;;;OAcG;IACH,KAAK,EAAE,OAAO,YAAY,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,QAEtB,CAAC"}
1
+ {"version":3,"file":"namespaces.d.ts","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAMtD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,gBAAgB;AAChB,eAAO,MAAM,0BAA0B,gGACwD,CAAC;AAyBhG;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,GAAG,EAAE,OAAO,SAAS,CAAC;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,UAExB,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;;;;;;;;;;;OAcG;IACH,KAAK,EAAE,OAAO,YAAY,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,QAEtB,CAAC"}