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

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 (65) hide show
  1. package/README.md +21 -17
  2. package/dist/agent-auth.d.ts +49 -11
  3. package/dist/agent-auth.d.ts.map +1 -1
  4. package/dist/agent-auth.js +169 -49
  5. package/dist/agent-auth.js.map +1 -1
  6. package/dist/channels/trigger/http.d.ts +8 -0
  7. package/dist/channels/trigger/http.d.ts.map +1 -1
  8. package/dist/channels/trigger/http.js +55 -5
  9. package/dist/channels/trigger/http.js.map +1 -1
  10. package/dist/channels/trigger/identity-context.d.ts +47 -0
  11. package/dist/channels/trigger/identity-context.d.ts.map +1 -0
  12. package/dist/channels/trigger/identity-context.js +171 -0
  13. package/dist/channels/trigger/identity-context.js.map +1 -0
  14. package/dist/channels/trigger/types.d.ts +10 -0
  15. package/dist/channels/trigger/types.d.ts.map +1 -1
  16. package/dist/channels/trigger/types.js +5 -0
  17. package/dist/channels/trigger/types.js.map +1 -1
  18. package/dist/connections.d.ts +29 -7
  19. package/dist/connections.d.ts.map +1 -1
  20. package/dist/connections.js +95 -33
  21. package/dist/connections.js.map +1 -1
  22. package/dist/connectors/mcp/index.d.ts +7 -8
  23. package/dist/connectors/mcp/index.d.ts.map +1 -1
  24. package/dist/connectors/mcp/index.js +14 -15
  25. package/dist/connectors/mcp/index.js.map +1 -1
  26. package/dist/connectors/mcp/schema.d.ts +2 -7
  27. package/dist/connectors/mcp/schema.d.ts.map +1 -1
  28. package/dist/connectors/mcp/schema.js +6 -71
  29. package/dist/connectors/mcp/schema.js.map +1 -1
  30. package/dist/connectors/mcp/types.d.ts +7 -26
  31. package/dist/connectors/mcp/types.d.ts.map +1 -1
  32. package/dist/connectors/tool-selection.d.ts +1 -1
  33. package/dist/connectors/tool-selection.js +1 -1
  34. package/dist/credential-gate.d.ts.map +1 -1
  35. package/dist/credential-gate.js +8 -8
  36. package/dist/credential-gate.js.map +1 -1
  37. package/dist/extension.d.ts +3 -3
  38. package/dist/extension.js +2 -2
  39. package/dist/identity/types.d.ts +23 -0
  40. package/dist/identity/types.d.ts.map +1 -1
  41. package/dist/index.d.ts +33 -3
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +6 -2
  44. package/dist/index.js.map +1 -1
  45. package/dist/ingress/index.d.ts +10 -2
  46. package/dist/ingress/index.d.ts.map +1 -1
  47. package/dist/ingress/index.js +18 -9
  48. package/dist/ingress/index.js.map +1 -1
  49. package/dist/namespaces.d.ts +29 -12
  50. package/dist/namespaces.d.ts.map +1 -1
  51. package/dist/namespaces.js +9 -26
  52. package/dist/namespaces.js.map +1 -1
  53. package/dist/runtime/auth.d.ts +45 -1
  54. package/dist/runtime/auth.d.ts.map +1 -1
  55. package/dist/runtime/auth.js +62 -9
  56. package/dist/runtime/auth.js.map +1 -1
  57. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  58. package/dist/runtime/identity-runtime.js +16 -0
  59. package/dist/runtime/identity-runtime.js.map +1 -1
  60. package/dist/runtime/index.js +1 -1
  61. package/dist/runtime/index.js.map +1 -1
  62. package/dist/runtime/validated-token.d.ts.map +1 -1
  63. package/dist/runtime/validated-token.js +23 -0
  64. package/dist/runtime/validated-token.js.map +1 -1
  65. package/package.json +7 -7
package/README.md CHANGED
@@ -167,7 +167,7 @@ my-agent/
167
167
  middleware/ # optional middleware
168
168
  skills/ # optional skills synced to Context Hub
169
169
  sandbox/ # LangSmith sandbox (`mda init` includes this; delete to opt out)
170
- mcp.ts # optional MCP server declaration
170
+ connectors/mcp.ts # optional MCP server declaration
171
171
  ```
172
172
 
173
173
  The CLI copies your project files into the managed build and generates the entry
@@ -241,22 +241,19 @@ export const sandbox = defineSandbox({
241
241
  Put `GHCR_TOKEN` in the project `.env` or process environment. Its value is
242
242
  used only to reconcile the registry and never enters the build or snapshot.
243
243
 
244
- ## MCP Servers
244
+ ## MCP Connectors
245
245
 
246
- Add root `mcp.ts` to attach MCP servers. The file must export a named `mcp`.
247
- By default, MDA exposes every tool loaded from each declared
246
+ Add `connectors/mcp.ts` to attach MCP servers. The file must export a named
247
+ `connector`. By default, MDA exposes every tool loaded from each declared
248
248
  server. In `mda dev`, an agent-owned connection reads from
249
249
  `MDA_DEV_<SLUG>` with the slug uppercased and hyphens changed to underscores.
250
250
  Hosted deployments resolve workspace connections from Agent Auth:
251
251
 
252
- The old `connectors/mcp.ts` file API remains available with a warning during
253
- `0.7.x`. It will be removed in `0.8.0`.
254
-
255
252
  ```ts
256
- import { defineMCP, connections } from "managed-deepagents";
253
+ import { connectors, connections } from "managed-deepagents";
257
254
 
258
- export const mcp = defineMCP({
259
- servers: {
255
+ export const connector = connectors.mcp({
256
+ mcpServers: {
260
257
  langchainDocs: {
261
258
  transport: "http",
262
259
  url: "https://docs.langchain.com/mcp",
@@ -270,13 +267,20 @@ export const mcp = defineMCP({
270
267
  For this example, set `MDA_DEV_DOCS_TOKEN`.
271
268
 
272
269
  A user-owned connection — `connections.get(slug, { type: "user" })` — resolves
273
- per caller via OAuth. The pre-run credential gate interrupts the run
274
- when a grant is missing. `mda dev` has no deployment to hold user grants, so
275
- a user-owned connection fails there with an actionable error; deploy the agent
276
- to exercise one.
277
-
278
- Provision workspace connections with `mda connections create` before deploy.
279
- `mda connections check` verifies manifest slugs exist in the workspace.
270
+ per caller via OAuth. The runtime maps the verified ingress identity to an
271
+ Agent Auth principal, then the pre-run credential gate interrupts the run when
272
+ a grant is missing. That path works in `mda deploy` and `mda dev` when
273
+ `LANGSMITH_API_KEY` and `LANGSMITH_WORKSPACE_ID` are set and the workspace
274
+ connection rows exist — use a person principal (for example a Supabase JWT),
275
+ not Studio’s synthetic service user. OAuth completes on LangSmith’s platform
276
+ callback URL; the local UI must surface `credential_authorization_required`
277
+ and resume after the user connects.
278
+
279
+ Deploy the project first, then provision its connections with
280
+ `mda connections create`. Agent-owned opaque secrets are scoped to that
281
+ deployment, so the command refuses to create one before `mda deploy`.
282
+ `mda deploy` fails when a slug a project declares is missing from the
283
+ workspace.
280
284
 
281
285
  Use `includeTools` or `excludeTools` inside a server config to select a subset.
282
286
  Tool names are raw MCP tool names before the managed `{server}__` prefix is
@@ -10,8 +10,6 @@ export declare const AGENT_AUTH_MAX_PROVIDER_PAGES = 20;
10
10
  export interface AgentAuthHttpConfig {
11
11
  apiKey?: string;
12
12
  workspaceId?: string;
13
- /** Agent Builder service JWT. Required to list/read workspace-owned credentials. */
14
- serviceKey?: string;
15
13
  }
16
14
  /** Query string for listing credentials filtered by owner and kind. */
17
15
  export declare function agentAuthCredentialQuery(options: {
@@ -36,15 +34,23 @@ export declare function requestAgentAuthJson(options: {
36
34
  }>;
37
35
  export interface AgentAuthContext {
38
36
  baseUrl: string;
39
- /** Deployment id, passed to oauth-authorization-sessions as `agent_id`. */
40
- agentId: string;
37
+ /**
38
+ * Deployment id when present. Required for agent-owned credential lookups;
39
+ * optional for user-owned OAuth (grants are principal-scoped).
40
+ */
41
+ agentId?: string;
41
42
  /** Authenticated caller, used as `owner_id` for user credentials. */
42
43
  principalId: string;
43
44
  apiKey?: string;
44
45
  workspaceId?: string;
45
- /** Agent Builder service JWT for workspace-owned credential material. */
46
- serviceKey?: string;
47
46
  }
47
+ export interface ResolvePrincipalIdentity {
48
+ provider: string;
49
+ issuer: string;
50
+ subject: string;
51
+ }
52
+ /** Drop cached principal resolutions. Test-only. */
53
+ export declare function clearPrincipalResolveCacheForTests(): void;
48
54
  /** One credential slug the caller has not granted, with its connect URL. */
49
55
  export interface PendingAuthorization {
50
56
  slug: string;
@@ -61,15 +67,35 @@ export declare class AgentAuthUnknownProviderError extends Error {
61
67
  readonly name = "AgentAuthUnknownProviderError";
62
68
  constructor(slug: string);
63
69
  }
70
+ export declare const AGENT_AUTH_PROBLEM_HINT_MAX_CHARS = 200;
71
+ /**
72
+ * The problem+json fields Agent Auth reserves for the caller: `detail` names
73
+ * the failure and `remedy` names the fix. Nothing else from a response body is
74
+ * read, because the rest can quote secret material.
75
+ *
76
+ * Both are collapsed to one line and truncated so a long or multi-line body
77
+ * cannot reshape an error message.
78
+ */
79
+ export declare function agentAuthProblemHint(body: Record<string, unknown> | undefined): string | undefined;
64
80
  /**
65
- * Agent Auth could not answer. Callers pass a fixed message: a response body
66
- * can quote secret material, so it never reaches this error.
81
+ * Agent Auth could not answer. Callers pass a fixed message; the only part of
82
+ * a response body that reaches it is the allow-listed problem+json hint, since
83
+ * an arbitrary body can quote secret material.
67
84
  */
68
85
  export declare class CredentialStoreError extends Error {
69
86
  readonly status?: number | undefined;
70
87
  readonly name: string;
71
- constructor(message: string, status?: number | undefined);
88
+ constructor(message: string, status?: number | undefined, problem?: Record<string, unknown>);
72
89
  }
90
+ /** The error for a declared slug that has no workspace connection row. */
91
+ export declare function missingWorkspaceConnectionError(slug: string): CredentialStoreError;
92
+ /**
93
+ * Read the slug back out of a missing-connection message.
94
+ *
95
+ * A run that fails in the gate reaches a channel as a plain string, so this is
96
+ * the only way back to the slug. It must move with the message it parses.
97
+ */
98
+ export declare function missingWorkspaceConnectionSlug(text: string): string | undefined;
73
99
  export interface WorkspaceConnection {
74
100
  connectionId: string;
75
101
  kind: string;
@@ -83,6 +109,13 @@ export declare class AgentAuth {
83
109
  #private;
84
110
  readonly context: AgentAuthContext;
85
111
  constructor(context: AgentAuthContext, fetchImpl?: typeof fetch, timeoutMs?: number);
112
+ /**
113
+ * Resolve a verified external identity to an Agent Auth principal UUID.
114
+ *
115
+ * `POST /v1/agent-auth/principals` with `{ provider, issuer, subject }`.
116
+ * Results are cached per process for the same origin, workspace, and triple.
117
+ */
118
+ resolvePrincipal(identity: ResolvePrincipalIdentity): Promise<string>;
86
119
  /** List workspace connections and return the row for `slug`, if any. */
87
120
  findWorkspaceConnection(slug: string): Promise<WorkspaceConnection | undefined>;
88
121
  /** Workspace credential id for an agent-owned opaque secret grant. */
@@ -90,12 +123,15 @@ export declare class AgentAuth {
90
123
  /**
91
124
  * Resolve the credential id for a secret connection row.
92
125
  *
93
- * With an Agent Builder service key, prefer GET-for-owner / workspace list.
94
- * Personal API keys may only list agent-owned credentials.
126
+ * Agent-owned connection declarations scope the credential to this
127
+ * deployment. Workspace-owned credentials are deliberately not visible to
128
+ * deployments.
95
129
  */
96
130
  findSecretCredentialId(connection: WorkspaceConnection, slug: string): Promise<string | undefined>;
97
131
  /** Read a caller-owned opaque secret grant for a workspace connection slug. */
98
132
  readUserSecret(slug: string): Promise<string | undefined>;
133
+ /** Read a caller-owned opaque secret when the connection row is already loaded. */
134
+ readUserSecretForConnection(connection: WorkspaceConnection): Promise<string | undefined>;
99
135
  /** Read an OAuth access token stored on a workspace connection row. */
100
136
  readConnectionAccessToken(connectionId: string): Promise<string | undefined>;
101
137
  /**
@@ -108,6 +144,8 @@ export declare class AgentAuth {
108
144
  * @returns The access token, or `undefined` when the caller must connect.
109
145
  */
110
146
  readUserAccessToken(slug: string): Promise<string | undefined>;
147
+ /** Read a caller OAuth token when the connection row is already loaded. */
148
+ readUserAccessTokenForConnection(connection: WorkspaceConnection): Promise<string | undefined>;
111
149
  /**
112
150
  * Start an OAuth authorization session for a slug the caller has not granted.
113
151
  *
@@ -1 +1 @@
1
- {"version":3,"file":"agent-auth.d.ts","sourceRoot":"","sources":["../src/agent-auth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAC5C,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,uEAAuE;AACvE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CAaT;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,mBAAmB,GAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmBxB;AAED,0EAA0E;AAC1E,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;IAC/C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,KAAK,CAAC;CACzB,GAAG,OAAO,CAAC;IACV,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC,CAoBD;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,4EAA4E;AAC5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,oCAAqC,SAAQ,KAAK;IAGjD,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE;IAF7C,QAAQ,CAAC,IAAI,0CAA0C;IAEvD,YAAqB,KAAK,EAAE,SAAS,MAAM,EAAE,EAK5C;CACF;AAED,qBAAa,6BAA8B,SAAQ,KAAK;IAG1C,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,IAAI,mCAAmC;IAEhD,YAAqB,IAAI,EAAE,MAAM,EAKhC;CACF;AAED;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAK3C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;IAJ1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA0B;IAE/C,YACE,OAAO,EAAE,MAAM,EACN,MAAM,CAAC,EAAE,MAAM,YAAA,EAGzB;CACF;AAOD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,SAAS;;IACpB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IAInC,YACE,OAAO,EAAE,gBAAgB,EACzB,SAAS,GAAE,OAAO,KAAa,EAC/B,SAAS,SAAwB,EAKlC;IAED,wEAAwE;IAClE,uBAAuB,CAC3B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAsD1C;IAED,sEAAsE;IAChE,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAMzE;IAED;;;;;OAKG;IACG,sBAAsB,CAC1B,UAAU,EAAE,mBAAmB,EAC/B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgC7B;IA+BD,+EAA+E;IACzE,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW9D;IAED,uEAAuE;IACjE,yBAAyB,CAC7B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;IAED;;;;;;;;OAQG;IACG,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CASnE;IAED;;;;OAIG;IACG,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAqC3E;IAED,6EAA6E;IACvE,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAoC1D;IAED,yDAAyD;IACnD,gBAAgB,CAAC,OAAO,EAAE;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuC9B;IAED,8EAA8E;IACxE,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAalE;CAqCF"}
1
+ {"version":3,"file":"agent-auth.d.ts","sourceRoot":"","sources":["../src/agent-auth.ts"],"names":[],"mappings":"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"}
@@ -29,10 +29,6 @@ export function agentAuthHeaders(config) {
29
29
  "content-type": "application/json",
30
30
  "x-langsmith-product": "mda",
31
31
  };
32
- const serviceKey = config.serviceKey?.trim();
33
- if (serviceKey) {
34
- headers["x-service-key"] = serviceKey;
35
- }
36
32
  const apiKey = config.apiKey?.trim();
37
33
  if (apiKey) {
38
34
  headers["x-api-key"] = apiKey;
@@ -59,6 +55,17 @@ export async function requestAgentAuthJson(options) {
59
55
  : {},
60
56
  };
61
57
  }
58
+ /** Per-process cache so one gate turn does not re-resolve the same identity. */
59
+ const principalResolveCache = new Map();
60
+ function principalResolveCacheKey(context, identity) {
61
+ const origin = context.baseUrl.replace(/\/$/u, "");
62
+ const workspace = context.workspaceId?.trim() ?? "";
63
+ return `${origin}\0${workspace}\0${identity.provider}\0${identity.issuer}\0${identity.subject}`;
64
+ }
65
+ /** Drop cached principal resolutions. Test-only. */
66
+ export function clearPrincipalResolveCacheForTests() {
67
+ principalResolveCache.clear();
68
+ }
62
69
  export class CredentialAuthorizationRequiredError extends Error {
63
70
  slugs;
64
71
  name = "CredentialAuthorizationRequiredError";
@@ -77,18 +84,63 @@ export class AgentAuthUnknownProviderError extends Error {
77
84
  this.slug = slug;
78
85
  }
79
86
  }
87
+ export const AGENT_AUTH_PROBLEM_HINT_MAX_CHARS = 200;
80
88
  /**
81
- * Agent Auth could not answer. Callers pass a fixed message: a response body
82
- * can quote secret material, so it never reaches this error.
89
+ * The problem+json fields Agent Auth reserves for the caller: `detail` names
90
+ * the failure and `remedy` names the fix. Nothing else from a response body is
91
+ * read, because the rest can quote secret material.
92
+ *
93
+ * Both are collapsed to one line and truncated so a long or multi-line body
94
+ * cannot reshape an error message.
95
+ */
96
+ export function agentAuthProblemHint(body) {
97
+ const seen = new Set();
98
+ for (const field of ["detail", "remedy"]) {
99
+ const value = body?.[field];
100
+ if (typeof value !== "string")
101
+ continue;
102
+ const text = value.replace(/\s+/gu, " ").trim();
103
+ if (text)
104
+ seen.add(text);
105
+ }
106
+ if (seen.size === 0)
107
+ return undefined;
108
+ const hint = [...seen].join(" ");
109
+ const chars = [...hint];
110
+ return chars.length > AGENT_AUTH_PROBLEM_HINT_MAX_CHARS
111
+ ? `${chars.slice(0, AGENT_AUTH_PROBLEM_HINT_MAX_CHARS).join("")}...`
112
+ : hint;
113
+ }
114
+ /**
115
+ * Agent Auth could not answer. Callers pass a fixed message; the only part of
116
+ * a response body that reaches it is the allow-listed problem+json hint, since
117
+ * an arbitrary body can quote secret material.
83
118
  */
84
119
  export class CredentialStoreError extends Error {
85
120
  status;
86
121
  name = "CredentialStoreError";
87
- constructor(message, status) {
88
- super(status === undefined ? message : `${message} (status ${status})`);
122
+ constructor(message, status, problem) {
123
+ const withStatus = status === undefined ? message : `${message} (status ${status})`;
124
+ const hint = agentAuthProblemHint(problem);
125
+ super(hint === undefined ? withStatus : `${withStatus}: ${hint}`);
89
126
  this.status = status;
90
127
  }
91
128
  }
129
+ /** Each runtime quotes the slug its own way: `JSON.stringify` here, `repr()` in PyPI. */
130
+ const MISSING_WORKSPACE_CONNECTION = /workspace connection ['"]([A-Za-z0-9][A-Za-z0-9._-]*)['"] is not configured/u;
131
+ /** The error for a declared slug that has no workspace connection row. */
132
+ export function missingWorkspaceConnectionError(slug) {
133
+ return new CredentialStoreError(`workspace connection ${JSON.stringify(slug)} is not configured`);
134
+ }
135
+ /**
136
+ * Read the slug back out of a missing-connection message.
137
+ *
138
+ * A run that fails in the gate reaches a channel as a plain string, so this is
139
+ * the only way back to the slug. It must move with the message it parses.
140
+ */
141
+ export function missingWorkspaceConnectionSlug(text) {
142
+ return MISSING_WORKSPACE_CONNECTION.exec(text)?.[1];
143
+ }
92
144
  /**
93
145
  * Bound Agent Auth HTTP client. One instance per caller/run; headers, origin,
94
146
  * and the request timeout stay on the instance rather than each call site.
@@ -102,6 +154,63 @@ export class AgentAuth {
102
154
  this.#fetchImpl = fetchImpl;
103
155
  this.#timeoutMs = timeoutMs;
104
156
  }
157
+ /**
158
+ * Resolve a verified external identity to an Agent Auth principal UUID.
159
+ *
160
+ * `POST /v1/agent-auth/principals` with `{ provider, issuer, subject }`.
161
+ * Results are cached per process for the same origin, workspace, and triple.
162
+ */
163
+ async resolvePrincipal(identity) {
164
+ const provider = identity.provider.trim();
165
+ const issuer = identity.issuer.trim();
166
+ const subject = identity.subject.trim();
167
+ if (!provider || !issuer || !subject) {
168
+ throw new CredentialStoreError("Agent Auth principal resolve requires provider, issuer, and subject");
169
+ }
170
+ const key = principalResolveCacheKey(this.context, {
171
+ provider,
172
+ issuer,
173
+ subject,
174
+ });
175
+ const cached = principalResolveCache.get(key);
176
+ if (cached) {
177
+ return await cached;
178
+ }
179
+ const pending = this.#resolvePrincipalUncached({
180
+ provider,
181
+ issuer,
182
+ subject,
183
+ });
184
+ principalResolveCache.set(key, pending);
185
+ try {
186
+ return await pending;
187
+ }
188
+ catch (error) {
189
+ principalResolveCache.delete(key);
190
+ throw error;
191
+ }
192
+ }
193
+ async #resolvePrincipalUncached(identity) {
194
+ const { ok, status, body } = await this.#request("/v1/agent-auth/principals", {
195
+ method: "POST",
196
+ body: JSON.stringify({
197
+ provider: identity.provider,
198
+ issuer: identity.issuer,
199
+ subject: identity.subject,
200
+ }),
201
+ });
202
+ if (!ok) {
203
+ throw new CredentialStoreError("Agent Auth resolve principal failed", status, body);
204
+ }
205
+ const principal = body.principal;
206
+ const id = principal && typeof principal === "object"
207
+ ? String(principal.id ?? "").trim()
208
+ : "";
209
+ if (!id) {
210
+ throw new CredentialStoreError("Agent Auth resolve principal returned no principal id");
211
+ }
212
+ return id;
213
+ }
105
214
  /** List workspace connections and return the row for `slug`, if any. */
106
215
  async findWorkspaceConnection(slug) {
107
216
  if (!this.context.workspaceId?.trim()) {
@@ -117,7 +226,7 @@ export class AgentAuth {
117
226
  }
118
227
  const { ok, status, body } = await this.#request(`/v1/agent-auth/connections?${params.toString()}`, { method: "GET" });
119
228
  if (!ok) {
120
- throw new CredentialStoreError("Agent Auth list connections failed", status);
229
+ throw new CredentialStoreError("Agent Auth list connections failed", status, body);
121
230
  }
122
231
  const items = Array.isArray(body.items) ? body.items : [];
123
232
  const match = items.find((item) => !!item &&
@@ -151,39 +260,36 @@ export class AgentAuth {
151
260
  /**
152
261
  * Resolve the credential id for a secret connection row.
153
262
  *
154
- * With an Agent Builder service key, prefer GET-for-owner / workspace list.
155
- * Personal API keys may only list agent-owned credentials.
263
+ * Agent-owned connection declarations scope the credential to this
264
+ * deployment. Workspace-owned credentials are deliberately not visible to
265
+ * deployments.
156
266
  */
157
267
  async findSecretCredentialId(connection, slug) {
158
268
  if (connection.kind !== "secret") {
159
269
  return undefined;
160
270
  }
161
- const workspaceId = this.context.workspaceId?.trim();
162
- if (!workspaceId) {
163
- throw new CredentialStoreError("connections are not configured: LANGSMITH_WORKSPACE_ID is not set");
271
+ const agentId = this.context.agentId?.trim();
272
+ if (!agentId) {
273
+ throw new CredentialStoreError("connections are not configured: LANGSMITH_HOST_PROJECT_ID is not set");
164
274
  }
165
- if (this.context.serviceKey?.trim()) {
166
- const fromOwner = await this.#credentialIdForOwner(connection.connectionId, "workspace", workspaceId);
167
- if (fromOwner) {
168
- return fromOwner;
169
- }
170
- return await this.findCredentialId({
171
- ownerType: "workspace",
172
- ownerId: workspaceId,
173
- kind: "secret",
174
- slug,
175
- });
275
+ const fromAgent = await this.#credentialIdForOwner(connection.connectionId, "agent", agentId);
276
+ if (fromAgent) {
277
+ return fromAgent;
176
278
  }
177
- return await this.findCredentialId({
279
+ const listedAgent = await this.findCredentialId({
178
280
  ownerType: "agent",
179
- ownerId: this.context.agentId,
281
+ ownerId: agentId,
180
282
  kind: "secret",
181
283
  slug,
182
284
  });
285
+ return listedAgent;
183
286
  }
184
287
  /**
185
288
  * Read credential_id from GET /connections/{id}?credential_owner_*.
186
- * Workspace owners require the Agent Builder service identity.
289
+ *
290
+ * Deployments authenticate with `LANGSMITH_API_KEY` (the minted
291
+ * service-account key). User and workspace owners additionally require
292
+ * workspace management permission.
187
293
  */
188
294
  async #credentialIdForOwner(connectionId, ownerType, ownerId) {
189
295
  const params = new URLSearchParams({
@@ -195,18 +301,26 @@ export class AgentAuth {
195
301
  return undefined;
196
302
  }
197
303
  if (!ok) {
198
- throw new CredentialStoreError("Agent Auth get connection for owner failed", status);
304
+ throw new CredentialStoreError(status === 403
305
+ ? "Agent Auth get connection for owner failed (forbidden)"
306
+ : "Agent Auth get connection for owner failed", status, body);
199
307
  }
200
308
  return connectionCredentialId(body);
201
309
  }
202
310
  /** Read a caller-owned opaque secret grant for a workspace connection slug. */
203
311
  async readUserSecret(slug) {
204
- const credentialId = await this.findCredentialId({
205
- ownerType: "user",
206
- ownerId: this.context.principalId,
207
- kind: "secret",
208
- slug,
209
- });
312
+ const connection = await this.findWorkspaceConnection(slug);
313
+ if (!connection) {
314
+ return undefined;
315
+ }
316
+ return await this.readUserSecretForConnection(connection);
317
+ }
318
+ /** Read a caller-owned opaque secret when the connection row is already loaded. */
319
+ async readUserSecretForConnection(connection) {
320
+ if (connection.kind !== "secret") {
321
+ return undefined;
322
+ }
323
+ const credentialId = await this.#credentialIdForOwner(connection.connectionId, "user", this.context.principalId);
210
324
  if (!credentialId) {
211
325
  return undefined;
212
326
  }
@@ -226,12 +340,18 @@ export class AgentAuth {
226
340
  * @returns The access token, or `undefined` when the caller must connect.
227
341
  */
228
342
  async readUserAccessToken(slug) {
229
- const credentialId = await this.findCredentialId({
230
- ownerType: "user",
231
- ownerId: this.context.principalId,
232
- kind: "oauth2",
233
- slug,
234
- });
343
+ const connection = await this.findWorkspaceConnection(slug);
344
+ if (!connection) {
345
+ return undefined;
346
+ }
347
+ return await this.readUserAccessTokenForConnection(connection);
348
+ }
349
+ /** Read a caller OAuth token when the connection row is already loaded. */
350
+ async readUserAccessTokenForConnection(connection) {
351
+ if (connection.kind !== "oauth2") {
352
+ return undefined;
353
+ }
354
+ const credentialId = await this.#credentialIdForOwner(connection.connectionId, "user", this.context.principalId);
235
355
  if (!credentialId)
236
356
  return undefined;
237
357
  return await this.#fetchAccessToken(credentialId);
@@ -244,7 +364,7 @@ export class AgentAuth {
244
364
  async startAuthorizationSession(slug) {
245
365
  const connection = await this.findWorkspaceConnection(slug);
246
366
  if (!connection) {
247
- throw new CredentialStoreError(`workspace connection ${JSON.stringify(slug)} is not configured`);
367
+ throw missingWorkspaceConnectionError(slug);
248
368
  }
249
369
  if (connection.kind !== "oauth2") {
250
370
  throw new CredentialStoreError(`connection ${JSON.stringify(slug)} is not an OAuth connection`);
@@ -253,12 +373,12 @@ export class AgentAuth {
253
373
  method: "POST",
254
374
  body: JSON.stringify({
255
375
  connection_id: connection.connectionId,
256
- principal_id: this.context.principalId,
257
- agent_id: this.context.agentId,
376
+ owner_type: "user",
377
+ owner_id: this.context.principalId,
258
378
  }),
259
379
  });
260
380
  if (!ok) {
261
- throw new CredentialStoreError("Agent Auth create oauth-authorization-session failed", status);
381
+ throw new CredentialStoreError("Agent Auth create oauth-authorization-session failed", status, body);
262
382
  }
263
383
  const authId = String(body.id ?? "");
264
384
  const connectUrl = String(body.verification_url ?? "");
@@ -278,7 +398,7 @@ export class AgentAuth {
278
398
  params.set("cursor", cursor);
279
399
  const { ok, status, body } = await this.#request(`/v1/agent-auth/oauth-providers?${params.toString()}`, { method: "GET" });
280
400
  if (!ok) {
281
- throw new CredentialStoreError("Agent Auth list oauth-providers failed", status);
401
+ throw new CredentialStoreError("Agent Auth list oauth-providers failed", status, body);
282
402
  }
283
403
  const items = Array.isArray(body.items) ? body.items : [];
284
404
  const match = items.find((item) => !!item &&
@@ -307,7 +427,7 @@ export class AgentAuth {
307
427
  cursor,
308
428
  })}`, { method: "GET" });
309
429
  if (!ok) {
310
- throw new CredentialStoreError("Agent Auth list credentials failed", status);
430
+ throw new CredentialStoreError("Agent Auth list credentials failed", status, body);
311
431
  }
312
432
  const items = Array.isArray(body.items) ? body.items : [];
313
433
  const match = items.find((item) => !!item &&
@@ -332,7 +452,7 @@ export class AgentAuth {
332
452
  return undefined;
333
453
  }
334
454
  if (!ok) {
335
- throw new CredentialStoreError("Agent Auth get secret failed", status);
455
+ throw new CredentialStoreError("Agent Auth get secret failed", status, body);
336
456
  }
337
457
  const secret = body.secret;
338
458
  return typeof secret === "string" && secret.length > 0 ? secret : undefined;
@@ -343,7 +463,7 @@ export class AgentAuth {
343
463
  return undefined;
344
464
  }
345
465
  if (!ok) {
346
- throw new CredentialStoreError("Agent Auth get oauth2 failed", status);
466
+ throw new CredentialStoreError("Agent Auth get oauth2 failed", status, body);
347
467
  }
348
468
  const oauth2 = body.oauth2 && typeof body.oauth2 === "object"
349
469
  ? body.oauth2
@@ -1 +1 @@
1
- {"version":3,"file":"agent-auth.js","sourceRoot":"","sources":["../src/agent-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-auth.js","sourceRoot":"","sources":["../src/agent-auth.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { type ObservedIngressRun, type StartedIngressRun } from "../../ingress/index.js";
2
2
  import { type TriggerClientLike } from "./client.js";
3
+ import { type IdentityContextVerifyOptions } from "./identity-context.js";
3
4
  import { type TriggerChannelResume } from "./types.js";
4
5
  export { TRIGGER_SERVICE_KEY_HEADER } from "./types.js";
5
6
  export declare const ASSISTANT_ID_ENV = "MDA_ASSISTANT_ID";
@@ -9,10 +10,14 @@ type StartAgent = (input: {
9
10
  messages: Record<string, unknown>[];
10
11
  sourceProvider: string;
11
12
  sourceThreadKey: string;
13
+ userId: string;
12
14
  }) => Promise<StartedIngressRun>;
13
15
  type ObserveAgent = (input: {
14
16
  threadId: string;
15
17
  runId: string;
18
+ sourceProvider: string;
19
+ sourceThreadKey: string;
20
+ userId: string;
16
21
  }) => Promise<ObservedIngressRun>;
17
22
  type ResumeAgent = (input: {
18
23
  threadId: string;
@@ -20,6 +25,7 @@ type ResumeAgent = (input: {
20
25
  resume: TriggerChannelResume;
21
26
  sourceProvider: string;
22
27
  sourceThreadKey: string;
28
+ userId: string;
23
29
  }) => Promise<StartedIngressRun>;
24
30
  export interface TriggerChannelHttpOptions {
25
31
  sourceProvider: string;
@@ -30,6 +36,8 @@ export interface TriggerChannelHttpOptions {
30
36
  resumeAgent?: ResumeAgent;
31
37
  observeAgent?: ObserveAgent;
32
38
  triggerClient?: TriggerClientLike;
39
+ /** Override identity-context JWKS verify (unit tests). */
40
+ identityContext?: IdentityContextVerifyOptions;
33
41
  }
34
42
  /** Validate one Trigger message, start its run, and enqueue observation. */
35
43
  export declare function handleTriggerChannelEventRequest(request: Request, options: TriggerChannelHttpOptions): Promise<Response>;