managed-deepagents 0.5.0-dev.80 → 0.5.0-dev.82
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.
- package/README.md +6 -5
- package/dist/connectors/github/http.d.ts.map +1 -1
- package/dist/connectors/github/http.js +11 -1
- package/dist/connectors/github/http.js.map +1 -1
- package/dist/connectors/github/index.d.ts +5 -5
- package/dist/connectors/github/index.d.ts.map +1 -1
- package/dist/connectors/github/index.js.map +1 -1
- package/dist/connectors/marketplace/catalog.d.ts +96 -0
- package/dist/connectors/marketplace/catalog.d.ts.map +1 -0
- package/dist/connectors/marketplace/catalog.js +213 -0
- package/dist/connectors/marketplace/catalog.js.map +1 -0
- package/dist/connectors/marketplace/fleet-mcp.d.ts +62 -0
- package/dist/connectors/marketplace/fleet-mcp.d.ts.map +1 -0
- package/dist/connectors/marketplace/fleet-mcp.js +215 -0
- package/dist/connectors/marketplace/fleet-mcp.js.map +1 -0
- package/dist/connectors/marketplace/index.d.ts +31 -0
- package/dist/connectors/marketplace/index.d.ts.map +1 -0
- package/dist/connectors/marketplace/index.js +39 -0
- package/dist/connectors/marketplace/index.js.map +1 -0
- package/dist/connectors/marketplace/load.d.ts +15 -0
- package/dist/connectors/marketplace/load.d.ts.map +1 -0
- package/dist/connectors/marketplace/load.js +265 -0
- package/dist/connectors/marketplace/load.js.map +1 -0
- package/dist/connectors/slack/http.d.ts.map +1 -1
- package/dist/connectors/slack/http.js +16 -2
- package/dist/connectors/slack/http.js.map +1 -1
- package/dist/connectors/slack/index.d.ts +3 -3
- package/dist/connectors/slack/index.d.ts.map +1 -1
- package/dist/connectors/slack/index.js.map +1 -1
- package/dist/connectors/tool-selection.d.ts +32 -8
- package/dist/connectors/tool-selection.d.ts.map +1 -1
- package/dist/connectors/tool-selection.js +62 -4
- package/dist/connectors/tool-selection.js.map +1 -1
- package/dist/connectors/toolserver/catalog.d.ts +241 -43
- package/dist/connectors/toolserver/catalog.d.ts.map +1 -1
- package/dist/connectors/toolserver/catalog.js +423 -34
- package/dist/connectors/toolserver/catalog.js.map +1 -1
- package/dist/connectors/toolserver/connectors.d.ts +698 -0
- package/dist/connectors/toolserver/connectors.d.ts.map +1 -0
- package/dist/connectors/toolserver/connectors.js +13 -0
- package/dist/connectors/toolserver/connectors.js.map +1 -0
- package/dist/connectors/toolserver/index.d.ts +56 -31
- package/dist/connectors/toolserver/index.d.ts.map +1 -1
- package/dist/connectors/toolserver/index.js +15 -58
- package/dist/connectors/toolserver/index.js.map +1 -1
- package/dist/connectors/toolserver/integrations.d.ts +103 -0
- package/dist/connectors/toolserver/integrations.d.ts.map +1 -0
- package/dist/connectors/toolserver/integrations.js +277 -0
- package/dist/connectors/toolserver/integrations.js.map +1 -0
- package/dist/connectors/toolserver/load.d.ts +10 -10
- package/dist/connectors/toolserver/load.d.ts.map +1 -1
- package/dist/connectors/toolserver/load.js +164 -36
- package/dist/connectors/toolserver/load.js.map +1 -1
- package/dist/identity/actor-subject.d.ts +60 -0
- package/dist/identity/actor-subject.d.ts.map +1 -0
- package/dist/identity/actor-subject.js +107 -0
- package/dist/identity/actor-subject.js.map +1 -0
- package/dist/identity/byo-oauth.d.ts +81 -0
- package/dist/identity/byo-oauth.d.ts.map +1 -0
- package/dist/identity/byo-oauth.js +145 -0
- package/dist/identity/byo-oauth.js.map +1 -0
- package/dist/identity/connect-inference.d.ts +13 -3
- package/dist/identity/connect-inference.d.ts.map +1 -1
- package/dist/identity/connect-inference.js +22 -6
- package/dist/identity/connect-inference.js.map +1 -1
- package/dist/identity/connect-provider-types.d.ts +12 -0
- package/dist/identity/connect-provider-types.d.ts.map +1 -1
- package/dist/identity/connect-provider.js +20 -4
- package/dist/identity/connect-provider.js.map +1 -1
- package/dist/identity/fleet-connect-hint.d.ts +39 -0
- package/dist/identity/fleet-connect-hint.d.ts.map +1 -0
- package/dist/identity/fleet-connect-hint.js +134 -0
- package/dist/identity/fleet-connect-hint.js.map +1 -0
- package/dist/identity/fleet-connect.d.ts +92 -0
- package/dist/identity/fleet-connect.d.ts.map +1 -0
- package/dist/identity/fleet-connect.js +256 -0
- package/dist/identity/fleet-connect.js.map +1 -0
- package/dist/identity/fleet-integration-connect.d.ts +32 -0
- package/dist/identity/fleet-integration-connect.d.ts.map +1 -0
- package/dist/identity/fleet-integration-connect.js +35 -0
- package/dist/identity/fleet-integration-connect.js.map +1 -0
- package/dist/identity/fleet.d.ts +56 -0
- package/dist/identity/fleet.d.ts.map +1 -0
- package/dist/identity/fleet.js +133 -0
- package/dist/identity/fleet.js.map +1 -0
- package/dist/identity/github/connect-http.d.ts +6 -1
- package/dist/identity/github/connect-http.d.ts.map +1 -1
- package/dist/identity/github/connect-http.js +22 -11
- package/dist/identity/github/connect-http.js.map +1 -1
- package/dist/identity/github/oauth.d.ts +2 -5
- package/dist/identity/github/oauth.d.ts.map +1 -1
- package/dist/identity/github/oauth.js +3 -43
- package/dist/identity/github/oauth.js.map +1 -1
- package/dist/identity/google/connect-http.d.ts +38 -0
- package/dist/identity/google/connect-http.d.ts.map +1 -0
- package/dist/identity/google/connect-http.js +59 -0
- package/dist/identity/google/connect-http.js.map +1 -0
- package/dist/identity/google/index.d.ts +7 -0
- package/dist/identity/google/index.d.ts.map +1 -0
- package/dist/identity/google/index.js +6 -0
- package/dist/identity/google/index.js.map +1 -0
- package/dist/identity/google/oauth.d.ts +22 -0
- package/dist/identity/google/oauth.d.ts.map +1 -0
- package/dist/identity/google/oauth.js +48 -0
- package/dist/identity/google/oauth.js.map +1 -0
- package/dist/identity/index.d.ts +16 -0
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +25 -1
- package/dist/identity/index.js.map +1 -1
- package/dist/identity/linkedin/connect-http.d.ts +38 -0
- package/dist/identity/linkedin/connect-http.d.ts.map +1 -0
- package/dist/identity/linkedin/connect-http.js +59 -0
- package/dist/identity/linkedin/connect-http.js.map +1 -0
- package/dist/identity/linkedin/index.d.ts +7 -0
- package/dist/identity/linkedin/index.d.ts.map +1 -0
- package/dist/identity/linkedin/index.js +6 -0
- package/dist/identity/linkedin/index.js.map +1 -0
- package/dist/identity/linkedin/oauth.d.ts +22 -0
- package/dist/identity/linkedin/oauth.d.ts.map +1 -0
- package/dist/identity/linkedin/oauth.js +47 -0
- package/dist/identity/linkedin/oauth.js.map +1 -0
- package/dist/identity/marketplace/connect-hint.d.ts +31 -0
- package/dist/identity/marketplace/connect-hint.d.ts.map +1 -0
- package/dist/identity/marketplace/connect-hint.js +59 -0
- package/dist/identity/marketplace/connect-hint.js.map +1 -0
- package/dist/identity/marketplace/connect.d.ts +51 -0
- package/dist/identity/marketplace/connect.d.ts.map +1 -0
- package/dist/identity/marketplace/connect.js +88 -0
- package/dist/identity/marketplace/connect.js.map +1 -0
- package/dist/identity/marketplace/index.d.ts +9 -0
- package/dist/identity/marketplace/index.d.ts.map +1 -0
- package/dist/identity/marketplace/index.js +9 -0
- package/dist/identity/marketplace/index.js.map +1 -0
- package/dist/identity/microsoft/connect-http.d.ts +39 -0
- package/dist/identity/microsoft/connect-http.d.ts.map +1 -0
- package/dist/identity/microsoft/connect-http.js +60 -0
- package/dist/identity/microsoft/connect-http.js.map +1 -0
- package/dist/identity/microsoft/index.d.ts +7 -0
- package/dist/identity/microsoft/index.d.ts.map +1 -0
- package/dist/identity/microsoft/index.js +6 -0
- package/dist/identity/microsoft/index.js.map +1 -0
- package/dist/identity/microsoft/oauth.d.ts +24 -0
- package/dist/identity/microsoft/oauth.d.ts.map +1 -0
- package/dist/identity/microsoft/oauth.js +65 -0
- package/dist/identity/microsoft/oauth.js.map +1 -0
- package/dist/identity/oauth-tickets.d.ts +37 -0
- package/dist/identity/oauth-tickets.d.ts.map +1 -0
- package/dist/identity/oauth-tickets.js +114 -0
- package/dist/identity/oauth-tickets.js.map +1 -0
- package/dist/identity/options.d.ts +8 -3
- package/dist/identity/options.d.ts.map +1 -1
- package/dist/identity/options.js +6 -2
- package/dist/identity/options.js.map +1 -1
- package/dist/identity/slack/connect-http.d.ts.map +1 -1
- package/dist/identity/slack/connect-http.js +3 -3
- package/dist/identity/slack/connect-http.js.map +1 -1
- package/dist/identity/slack/oauth.d.ts +2 -5
- package/dist/identity/slack/oauth.d.ts.map +1 -1
- package/dist/identity/slack/oauth.js +3 -43
- package/dist/identity/slack/oauth.js.map +1 -1
- package/dist/identity/types.d.ts +14 -2
- package/dist/identity/types.d.ts.map +1 -1
- package/dist/identity/x/connect-http.d.ts +39 -0
- package/dist/identity/x/connect-http.d.ts.map +1 -0
- package/dist/identity/x/connect-http.js +69 -0
- package/dist/identity/x/connect-http.js.map +1 -0
- package/dist/identity/x/index.d.ts +6 -0
- package/dist/identity/x/index.d.ts.map +1 -0
- package/dist/identity/x/index.js +5 -0
- package/dist/identity/x/index.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/namespaces.d.ts +254 -24
- package/dist/namespaces.d.ts.map +1 -1
- package/dist/namespaces.js +65 -32
- package/dist/namespaces.js.map +1 -1
- package/dist/runtime/credentials.d.ts +2 -2
- package/dist/runtime/credentials.js +2 -2
- package/dist/runtime/identity-http.d.ts.map +1 -1
- package/dist/runtime/identity-http.js +45 -4
- package/dist/runtime/identity-http.js.map +1 -1
- package/dist/runtime/index.d.ts +13 -123
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +52 -14
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/recursion-limit.d.ts +22 -0
- package/dist/runtime/recursion-limit.d.ts.map +1 -0
- package/dist/runtime/recursion-limit.js +46 -0
- package/dist/runtime/recursion-limit.js.map +1 -0
- package/package.json +8 -7
package/dist/namespaces.d.ts
CHANGED
|
@@ -15,26 +15,58 @@
|
|
|
15
15
|
* auth.supabase({ projectRef: "abc" });
|
|
16
16
|
* credentials.github({ read: ["user"] });
|
|
17
17
|
* connect.github();
|
|
18
|
+
* connect.google(); // usually inferred from Fleet integration connectors (gmail, …)
|
|
19
|
+
* connect.microsoft(); // usually inferred (outlook, teams, …)
|
|
20
|
+
* connect.linkedin(); // usually inferred (connectors.linkedin)
|
|
21
|
+
* connect.x(); // usually inferred (connectors.x)
|
|
18
22
|
* ```
|
|
19
23
|
*
|
|
20
24
|
* These are the only primitives the managed runtime will mount. A project
|
|
21
25
|
* cannot contribute its own — `defineExtension` stays internal.
|
|
22
26
|
*/
|
|
23
27
|
import { LangSmithSandbox } from "deepagents";
|
|
24
|
-
import {
|
|
25
|
-
import { annotationQueues, chatFeedback, examples, feedback, prompts, runs, threads, traceViewer
|
|
26
|
-
import { type
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
28
|
+
import { githubConnector } from "./connectors/github/index.js";
|
|
29
|
+
import { annotationQueues, chatFeedback, examples, feedback, langsmithConnector, prompts, runs, threads, traceViewer } from "./connectors/langsmith/index.js";
|
|
30
|
+
import { type MarketplaceConnectors } from "./connectors/marketplace/index.js";
|
|
31
|
+
import { mcpConnector } from "./connectors/mcp/index.js";
|
|
32
|
+
import { slackConnector } from "./connectors/slack/index.js";
|
|
33
|
+
import { type ToolServerConnectors } from "./connectors/toolserver/index.js";
|
|
29
34
|
import { connect as githubConnect } from "./identity/github/connect-http.js";
|
|
30
35
|
import { credentials as githubCredentials } from "./identity/github/credentials.js";
|
|
36
|
+
import { connect as googleConnect } from "./identity/google/connect-http.js";
|
|
37
|
+
import { type MarketplaceConnect } from "./identity/marketplace/index.js";
|
|
38
|
+
import { connect as linkedinConnect } from "./identity/linkedin/connect-http.js";
|
|
39
|
+
import { connect as microsoftConnect } from "./identity/microsoft/connect-http.js";
|
|
31
40
|
import { connect as slackConnect } from "./identity/slack/connect-http.js";
|
|
41
|
+
import { connect as xConnect } from "./identity/x/connect-http.js";
|
|
32
42
|
import { type LangSmithSandboxOptions, type SandboxDefinition } from "./sandbox.js";
|
|
33
43
|
export { auth } from "./identity/index.js";
|
|
34
44
|
/** Execution environments the agent's shell runs in. Exported from `sandbox/`. */
|
|
35
45
|
export declare const sandboxes: {
|
|
36
46
|
langsmith(options?: LangSmithSandboxOptions): SandboxDefinition<typeof LangSmithSandbox>;
|
|
37
47
|
};
|
|
48
|
+
/**
|
|
49
|
+
* `connectors.langsmith` — the connector factory plus its capability builders.
|
|
50
|
+
*
|
|
51
|
+
* Call `connectors.langsmith({ capabilities })` to declare the connector; use
|
|
52
|
+
* the attached builders / presets to compose grants without a second import.
|
|
53
|
+
*
|
|
54
|
+
* Builder properties are typed as `typeof` the exported functions so hover
|
|
55
|
+
* docs stay on those symbols (`runs`, `chatFeedback`, …) rather than being
|
|
56
|
+
* restated here.
|
|
57
|
+
*
|
|
58
|
+
* @see {@link langsmithConnector}
|
|
59
|
+
*/
|
|
60
|
+
export type LangSmithConnectorsNamespace = typeof langsmithConnector & {
|
|
61
|
+
readonly runs: typeof runs;
|
|
62
|
+
readonly feedback: typeof feedback;
|
|
63
|
+
readonly examples: typeof examples;
|
|
64
|
+
readonly annotationQueues: typeof annotationQueues;
|
|
65
|
+
readonly prompts: typeof prompts;
|
|
66
|
+
readonly threads: typeof threads;
|
|
67
|
+
readonly chatFeedback: typeof chatFeedback;
|
|
68
|
+
readonly traceViewer: typeof traceViewer;
|
|
69
|
+
};
|
|
38
70
|
/**
|
|
39
71
|
* Integrations: tools, HTTP routes, sandbox provisioning, inbound events, and
|
|
40
72
|
* named messaging. Exported from `connectors/*`.
|
|
@@ -43,34 +75,232 @@ export declare const sandboxes: {
|
|
|
43
75
|
* `connectors.gmail`, `connectors.linear`, `connectors.googleSheets`, … — whose
|
|
44
76
|
* tools resolve against the connection the workspace already manages in
|
|
45
77
|
* LangSmith. They are spread from the catalog so adding an integration is one
|
|
46
|
-
* entry there rather than a line here as well.
|
|
78
|
+
* entry there rather than a line here as well. Marketplace bridges
|
|
79
|
+
* (`connectors.notion`, `connectors.cloudflare`, …) are spread the same way
|
|
80
|
+
* from the Fleet marketplace catalog. GitHub and Slack are first-class
|
|
47
81
|
* connectors that may also contribute sandbox / Events / messaging.
|
|
48
82
|
*
|
|
49
83
|
* `langsmith` doubles as the namespace for its capability builders, so a
|
|
50
84
|
* project selects grants without a second import.
|
|
85
|
+
*
|
|
86
|
+
* Docs live on this interface (not the value) so IDE hover on `connectors.<name>`
|
|
87
|
+
* stays useful — TypeScript surfaces property docs from the annotation.
|
|
51
88
|
*/
|
|
52
|
-
export
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
89
|
+
export interface Connectors extends ToolServerConnectors, MarketplaceConnectors {
|
|
90
|
+
/**
|
|
91
|
+
* Declare remote MCP servers (HTTP/SSE) whose tools load at agent-graph
|
|
92
|
+
* construction. Stdio servers are not supported.
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```ts
|
|
96
|
+
* export const connector = connectors.mcp({
|
|
97
|
+
* mcpServers: {
|
|
98
|
+
* docs: { transport: "http", url: "https://docs.example.com/mcp" },
|
|
99
|
+
* },
|
|
100
|
+
* });
|
|
101
|
+
* ```
|
|
102
|
+
*
|
|
103
|
+
* @see {@link mcpConnector}
|
|
104
|
+
*/
|
|
105
|
+
mcp: typeof mcpConnector;
|
|
106
|
+
/**
|
|
107
|
+
* GitHub tools (via the LangSmith tool server), sandbox repository checkout,
|
|
108
|
+
* optional `gh` CLI provisioning, and optional GitHub App webhook Events.
|
|
109
|
+
*
|
|
110
|
+
* Installing the `gh` CLI (the default) leaves tool-server tools off; name
|
|
111
|
+
* tools via `includeTools` / `excludeTools` or set `installCLI: false` to
|
|
112
|
+
* expose them. Tool names are typed from the catalog's `github` entry.
|
|
113
|
+
*
|
|
114
|
+
* @example
|
|
115
|
+
* ```ts
|
|
116
|
+
* export const connector = connectors.github({
|
|
117
|
+
* repositories: [{ repo: "acme/api", path: "api" }],
|
|
118
|
+
* events: [{ on: "pull_request.opened", prompt: () => "review" }],
|
|
119
|
+
* });
|
|
120
|
+
* ```
|
|
121
|
+
*
|
|
122
|
+
* @see {@link githubConnector}
|
|
123
|
+
*/
|
|
124
|
+
github: typeof githubConnector;
|
|
125
|
+
/**
|
|
126
|
+
* Slack Events ingress, named messaging, and optional tool-server Slack tools.
|
|
127
|
+
*
|
|
128
|
+
* Events (`on`) mount ingress + messaging; `includeTools` / `excludeTools`
|
|
129
|
+
* enable Slack tool-server tools (names typed from the catalog's `slack`
|
|
130
|
+
* entry).
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* ```ts
|
|
134
|
+
* export const connector = connectors.slack({ on: ["app_mention"] });
|
|
135
|
+
* ```
|
|
136
|
+
*
|
|
137
|
+
* @see {@link slackConnector}
|
|
138
|
+
*/
|
|
139
|
+
slack: typeof slackConnector;
|
|
140
|
+
/**
|
|
141
|
+
* Capability-delegation connector for external / untrusted callers (browser,
|
|
142
|
+
* channels, schedules). Declares constrained LangSmith grants; MDA performs
|
|
143
|
+
* them server-side so the caller never receives `LANGSMITH_API_KEY`.
|
|
144
|
+
*
|
|
145
|
+
* Also namespaces the grant builders: `connectors.langsmith.runs(...)`,
|
|
146
|
+
* `connectors.langsmith.chatFeedback(...)`, …
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```ts
|
|
150
|
+
* export const connector = connectors.langsmith({
|
|
151
|
+
* capabilities: [connectors.langsmith.traceViewer()],
|
|
152
|
+
* });
|
|
153
|
+
* ```
|
|
154
|
+
*
|
|
155
|
+
* @see {@link langsmithConnector}
|
|
156
|
+
*/
|
|
157
|
+
langsmith: LangSmithConnectorsNamespace;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Integrations: tools, HTTP routes, sandbox provisioning, inbound events, and
|
|
161
|
+
* named messaging. Exported from `connectors/*`.
|
|
162
|
+
*
|
|
163
|
+
* Factories are assigned by reference (same pattern as the Python namespace) so
|
|
164
|
+
* signatures stay in step with the connector modules. Hover docs come from
|
|
165
|
+
* {@link Connectors}.
|
|
166
|
+
*/
|
|
167
|
+
export declare const connectors: Connectors;
|
|
67
168
|
/** Third-party token resolvers. Composed into `defineIdentity({ credentials })`. */
|
|
68
169
|
export declare const credentials: {
|
|
69
170
|
github: typeof githubCredentials;
|
|
70
171
|
};
|
|
71
|
-
/**
|
|
72
|
-
|
|
172
|
+
/**
|
|
173
|
+
* First-party Connect-with-X providers for `defineIdentity({ connect })`.
|
|
174
|
+
*
|
|
175
|
+
* Docs live on this interface so IDE hover on `connect.<provider>` stays useful.
|
|
176
|
+
*/
|
|
177
|
+
export interface Connect extends MarketplaceConnect {
|
|
178
|
+
/**
|
|
179
|
+
* Connect-with-GitHub — link a caller's GitHub account for actor OAuth tokens
|
|
180
|
+
* used by sandbox git/`gh` and GitHub credentials.
|
|
181
|
+
*
|
|
182
|
+
* Usually unnecessary: declaring `connectors.github` on a user-scoped identity
|
|
183
|
+
* deployment mounts this automatically (same pattern as Google/Microsoft).
|
|
184
|
+
* Also mounts when a credential chain reads per-user GitHub tokens, or when
|
|
185
|
+
* listed on `identity.connect`.
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```ts
|
|
189
|
+
* export const identity = defineIdentity({
|
|
190
|
+
* connect: [connect.github()],
|
|
191
|
+
* });
|
|
192
|
+
* ```
|
|
193
|
+
*
|
|
194
|
+
* @see {@link githubConnect}
|
|
195
|
+
*/
|
|
73
196
|
github: typeof githubConnect;
|
|
197
|
+
/**
|
|
198
|
+
* Connect-with-Google. Usually unnecessary: declaring Google toolserver
|
|
199
|
+
* connectors (`connectors.gmail`, `connectors.googleSheets`, …) on a
|
|
200
|
+
* user-scoped identity deployment mounts this automatically with unioned
|
|
201
|
+
* scopes.
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```ts
|
|
205
|
+
* export const identity = defineIdentity({
|
|
206
|
+
* connect: [connect.google()],
|
|
207
|
+
* });
|
|
208
|
+
* ```
|
|
209
|
+
*
|
|
210
|
+
* @see {@link googleConnect}
|
|
211
|
+
*/
|
|
212
|
+
google: typeof googleConnect;
|
|
213
|
+
/**
|
|
214
|
+
* Connect-with-Microsoft. Usually unnecessary: declaring Microsoft toolserver
|
|
215
|
+
* connectors (`connectors.outlook`, `connectors.teams`, …) on a user-scoped
|
|
216
|
+
* identity deployment mounts this automatically with unioned scopes.
|
|
217
|
+
*
|
|
218
|
+
* @example
|
|
219
|
+
* ```ts
|
|
220
|
+
* export const identity = defineIdentity({
|
|
221
|
+
* connect: [connect.microsoft()],
|
|
222
|
+
* });
|
|
223
|
+
* ```
|
|
224
|
+
*
|
|
225
|
+
* @see {@link microsoftConnect}
|
|
226
|
+
*/
|
|
227
|
+
microsoft: typeof microsoftConnect;
|
|
228
|
+
/**
|
|
229
|
+
* Connect-with-LinkedIn. Usually unnecessary: declaring `connectors.linkedin`
|
|
230
|
+
* on a user-scoped identity deployment mounts this automatically with
|
|
231
|
+
* connector-derived scopes.
|
|
232
|
+
*
|
|
233
|
+
* @example
|
|
234
|
+
* ```ts
|
|
235
|
+
* export const identity = defineIdentity({
|
|
236
|
+
* connect: [connect.linkedin()],
|
|
237
|
+
* });
|
|
238
|
+
* ```
|
|
239
|
+
*
|
|
240
|
+
* @see {@link linkedinConnect}
|
|
241
|
+
*/
|
|
242
|
+
linkedin: typeof linkedinConnect;
|
|
243
|
+
/**
|
|
244
|
+
* Connect-with-X. Usually unnecessary: declaring `connectors.x` on a
|
|
245
|
+
* user-scoped identity deployment mounts this automatically with
|
|
246
|
+
* connector-derived scopes (Fleet `twitter-oauth-provider`).
|
|
247
|
+
*
|
|
248
|
+
* @example
|
|
249
|
+
* ```ts
|
|
250
|
+
* export const identity = defineIdentity({
|
|
251
|
+
* connect: [connect.x()],
|
|
252
|
+
* });
|
|
253
|
+
* ```
|
|
254
|
+
*
|
|
255
|
+
* @see {@link xConnect}
|
|
256
|
+
*/
|
|
257
|
+
x: typeof xConnect;
|
|
258
|
+
/**
|
|
259
|
+
* Connect-with-Slack — link a caller's Slack identity via OIDC for per-user
|
|
260
|
+
* channel routing and actor mapping.
|
|
261
|
+
*
|
|
262
|
+
* Mounts under `/identity/slack/*` when listed on `identity.connect`, or when
|
|
263
|
+
* a Slack channel routes into a user-scoped deployment.
|
|
264
|
+
*
|
|
265
|
+
* @example
|
|
266
|
+
* ```ts
|
|
267
|
+
* export const identity = defineIdentity({
|
|
268
|
+
* connect: [connect.slack()],
|
|
269
|
+
* });
|
|
270
|
+
* ```
|
|
271
|
+
*
|
|
272
|
+
* @see {@link slackConnect}
|
|
273
|
+
*/
|
|
74
274
|
slack: typeof slackConnect;
|
|
75
|
-
}
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Connect-with-X — bind an MDA principal to an external account via OAuth.
|
|
278
|
+
*
|
|
279
|
+
* Pass providers into `defineIdentity({ connect: […] })`. Each mounts HTTP
|
|
280
|
+
* routes under `/identity/{id}/{status,connect,callback,link}` so a caller can
|
|
281
|
+
* link (or unlink) their account. Outcomes depend on the provider:
|
|
282
|
+
*
|
|
283
|
+
* - **Identity link** (Slack) — maps an external person to an MDA user so
|
|
284
|
+
* channel ingress can resolve `slack:T:U` → actor.
|
|
285
|
+
* - **Credential vault** (GitHub, Google, Microsoft, LinkedIn, X) — stores
|
|
286
|
+
* per-actor tokens for tools, sandbox git/`gh`, or Fleet toolserver subjects.
|
|
287
|
+
*
|
|
288
|
+
* Authors rarely list providers by hand. Prefer inference: a user-scoped
|
|
289
|
+
* identity plus `connectors.github` / `credentials.github({ read: ["user"] })`,
|
|
290
|
+
* Slack Events, Google/Microsoft/LinkedIn/X toolserver connectors, or marketplace
|
|
291
|
+
* bridges (`connectors.notion`, `connectors.neon`, …) mounts the matching
|
|
292
|
+
* Connect flow automatically. Use this namespace when you need an explicit
|
|
293
|
+
* opt-in or a custom options bag.
|
|
294
|
+
*
|
|
295
|
+
* @example
|
|
296
|
+
* ```ts
|
|
297
|
+
* // Explicit (usually unnecessary — inference covers the common cases)
|
|
298
|
+
* export const identity = defineIdentity({
|
|
299
|
+
* connect: [connect.github(), connect.slack()],
|
|
300
|
+
* });
|
|
301
|
+
* ```
|
|
302
|
+
*
|
|
303
|
+
* @see {@link Connect}
|
|
304
|
+
*/
|
|
305
|
+
export declare const connect: Connect;
|
|
76
306
|
//# sourceMappingURL=namespaces.d.ts.map
|
package/dist/namespaces.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespaces.d.ts","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"namespaces.d.ts","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"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"}
|
package/dist/namespaces.js
CHANGED
|
@@ -15,21 +15,31 @@
|
|
|
15
15
|
* auth.supabase({ projectRef: "abc" });
|
|
16
16
|
* credentials.github({ read: ["user"] });
|
|
17
17
|
* connect.github();
|
|
18
|
+
* connect.google(); // usually inferred from Fleet integration connectors (gmail, …)
|
|
19
|
+
* connect.microsoft(); // usually inferred (outlook, teams, …)
|
|
20
|
+
* connect.linkedin(); // usually inferred (connectors.linkedin)
|
|
21
|
+
* connect.x(); // usually inferred (connectors.x)
|
|
18
22
|
* ```
|
|
19
23
|
*
|
|
20
24
|
* These are the only primitives the managed runtime will mount. A project
|
|
21
25
|
* cannot contribute its own — `defineExtension` stays internal.
|
|
22
26
|
*/
|
|
23
27
|
import { LangSmithSandbox } from "deepagents";
|
|
24
|
-
import { githubConnector
|
|
28
|
+
import { githubConnector } from "./connectors/github/index.js";
|
|
25
29
|
import { annotationQueues, chatFeedback, examples, feedback, langsmithConnector, prompts, runs, threads, traceViewer, } from "./connectors/langsmith/index.js";
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
30
|
+
import { marketplaceConnectors, } from "./connectors/marketplace/index.js";
|
|
31
|
+
import { mcpConnector } from "./connectors/mcp/index.js";
|
|
32
|
+
import { slackConnector } from "./connectors/slack/index.js";
|
|
28
33
|
import { toolServerConnectors, } from "./connectors/toolserver/index.js";
|
|
29
34
|
import { defineExtension } from "./extension.js";
|
|
30
35
|
import { connect as githubConnect } from "./identity/github/connect-http.js";
|
|
31
36
|
import { credentials as githubCredentials } from "./identity/github/credentials.js";
|
|
37
|
+
import { connect as googleConnect } from "./identity/google/connect-http.js";
|
|
38
|
+
import { marketplaceConnect, } from "./identity/marketplace/index.js";
|
|
39
|
+
import { connect as linkedinConnect } from "./identity/linkedin/connect-http.js";
|
|
40
|
+
import { connect as microsoftConnect } from "./identity/microsoft/connect-http.js";
|
|
32
41
|
import { connect as slackConnect } from "./identity/slack/connect-http.js";
|
|
42
|
+
import { connect as xConnect } from "./identity/x/connect-http.js";
|
|
33
43
|
import {} from "./sandbox.js";
|
|
34
44
|
export { auth } from "./identity/index.js";
|
|
35
45
|
const langsmithSandbox = defineExtension("sandbox", {
|
|
@@ -46,49 +56,72 @@ export const sandboxes = {
|
|
|
46
56
|
return langsmithSandbox(options);
|
|
47
57
|
},
|
|
48
58
|
};
|
|
59
|
+
const langsmithConnectors = Object.assign(langsmithConnector, {
|
|
60
|
+
runs,
|
|
61
|
+
feedback,
|
|
62
|
+
examples,
|
|
63
|
+
annotationQueues,
|
|
64
|
+
prompts,
|
|
65
|
+
threads,
|
|
66
|
+
chatFeedback,
|
|
67
|
+
traceViewer,
|
|
68
|
+
});
|
|
49
69
|
/**
|
|
50
70
|
* Integrations: tools, HTTP routes, sandbox provisioning, inbound events, and
|
|
51
71
|
* named messaging. Exported from `connectors/*`.
|
|
52
72
|
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
* LangSmith. They are spread from the catalog so adding an integration is one
|
|
57
|
-
* entry there rather than a line here as well. GitHub and Slack are first-class
|
|
58
|
-
* connectors that may also contribute sandbox / Events / messaging.
|
|
59
|
-
*
|
|
60
|
-
* `langsmith` doubles as the namespace for its capability builders, so a
|
|
61
|
-
* project selects grants without a second import.
|
|
73
|
+
* Factories are assigned by reference (same pattern as the Python namespace) so
|
|
74
|
+
* signatures stay in step with the connector modules. Hover docs come from
|
|
75
|
+
* {@link Connectors}.
|
|
62
76
|
*/
|
|
63
77
|
export const connectors = {
|
|
64
78
|
...toolServerConnectors,
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
},
|
|
71
|
-
slack(config) {
|
|
72
|
-
return slackConnector(config);
|
|
73
|
-
},
|
|
74
|
-
langsmith: Object.assign((config) => langsmithConnector(config), {
|
|
75
|
-
runs,
|
|
76
|
-
feedback,
|
|
77
|
-
examples,
|
|
78
|
-
annotationQueues,
|
|
79
|
-
prompts,
|
|
80
|
-
threads,
|
|
81
|
-
chatFeedback,
|
|
82
|
-
traceViewer,
|
|
83
|
-
}),
|
|
79
|
+
...marketplaceConnectors,
|
|
80
|
+
mcp: mcpConnector,
|
|
81
|
+
github: githubConnector,
|
|
82
|
+
slack: slackConnector,
|
|
83
|
+
langsmith: langsmithConnectors,
|
|
84
84
|
};
|
|
85
85
|
/** Third-party token resolvers. Composed into `defineIdentity({ credentials })`. */
|
|
86
86
|
export const credentials = {
|
|
87
87
|
github: githubCredentials,
|
|
88
88
|
};
|
|
89
|
-
/**
|
|
89
|
+
/**
|
|
90
|
+
* Connect-with-X — bind an MDA principal to an external account via OAuth.
|
|
91
|
+
*
|
|
92
|
+
* Pass providers into `defineIdentity({ connect: […] })`. Each mounts HTTP
|
|
93
|
+
* routes under `/identity/{id}/{status,connect,callback,link}` so a caller can
|
|
94
|
+
* link (or unlink) their account. Outcomes depend on the provider:
|
|
95
|
+
*
|
|
96
|
+
* - **Identity link** (Slack) — maps an external person to an MDA user so
|
|
97
|
+
* channel ingress can resolve `slack:T:U` → actor.
|
|
98
|
+
* - **Credential vault** (GitHub, Google, Microsoft, LinkedIn, X) — stores
|
|
99
|
+
* per-actor tokens for tools, sandbox git/`gh`, or Fleet toolserver subjects.
|
|
100
|
+
*
|
|
101
|
+
* Authors rarely list providers by hand. Prefer inference: a user-scoped
|
|
102
|
+
* identity plus `connectors.github` / `credentials.github({ read: ["user"] })`,
|
|
103
|
+
* Slack Events, Google/Microsoft/LinkedIn/X toolserver connectors, or marketplace
|
|
104
|
+
* bridges (`connectors.notion`, `connectors.neon`, …) mounts the matching
|
|
105
|
+
* Connect flow automatically. Use this namespace when you need an explicit
|
|
106
|
+
* opt-in or a custom options bag.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```ts
|
|
110
|
+
* // Explicit (usually unnecessary — inference covers the common cases)
|
|
111
|
+
* export const identity = defineIdentity({
|
|
112
|
+
* connect: [connect.github(), connect.slack()],
|
|
113
|
+
* });
|
|
114
|
+
* ```
|
|
115
|
+
*
|
|
116
|
+
* @see {@link Connect}
|
|
117
|
+
*/
|
|
90
118
|
export const connect = {
|
|
119
|
+
...marketplaceConnect,
|
|
91
120
|
github: githubConnect,
|
|
121
|
+
google: googleConnect,
|
|
122
|
+
microsoft: microsoftConnect,
|
|
123
|
+
linkedin: linkedinConnect,
|
|
124
|
+
x: xConnect,
|
|
92
125
|
slack: slackConnect,
|
|
93
126
|
};
|
|
94
127
|
//# sourceMappingURL=namespaces.js.map
|
package/dist/namespaces.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../src/namespaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,IAAI,EACJ,OAAO,EACP,WAAW,GACZ,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,GAEtB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,oBAAoB,GAErB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EACL,kBAAkB,GAEnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAGN,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,MAAM,gBAAgB,GAAG,eAAe,CAAC,SAAS,EAAE;IAClD,KAAK,EAAE,qBAAqB;IAC5B,QAAQ,EAAE,gBAAgB;IAC1B,2EAA2E;IAC3E,2EAA2E;IAC3E,6BAA6B;IAC7B,IAAI,EAAE,CAAC,OAAiC,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE;CAC3D,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,SAAS,CACP,OAAiC;QAEjC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;CACF,CAAC;AAuHF,MAAM,mBAAmB,GAAiC,MAAM,CAAC,MAAM,CACrE,kBAAkB,EAClB;IACE,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,gBAAgB;IAChB,OAAO;IACP,OAAO;IACP,YAAY;IACZ,WAAW;CACZ,CACF,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAe;IACpC,GAAG,oBAAoB;IACvB,GAAG,qBAAqB;IACxB,GAAG,EAAE,YAAY;IACjB,MAAM,EAAE,eAAe;IACvB,KAAK,EAAE,cAAc;IACrB,SAAS,EAAE,mBAAmB;CAC/B,CAAC;AAEF,oFAAoF;AACpF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,iBAAiB;CAC1B,CAAC;AAgHF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,OAAO,GAAY;IAC9B,GAAG,kBAAkB;IACrB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,SAAS,EAAE,gBAAgB;IAC3B,QAAQ,EAAE,eAAe;IACzB,CAAC,EAAE,QAAQ;IACX,KAAK,EAAE,YAAY;CACpB,CAAC"}
|
|
@@ -9,8 +9,8 @@ import type { CredentialTarget, IdentityConfig, ResolvedCredential, RuntimeIdent
|
|
|
9
9
|
* credential's `expiresAt`. Secrets live only in this in-memory cache keyed by
|
|
10
10
|
* identity — never in thread state or traces.
|
|
11
11
|
*
|
|
12
|
-
* Managed credential modes (`agent
|
|
13
|
-
*
|
|
12
|
+
* Managed credential modes (`"user"` / `"agent"`) select toolserver/Connect
|
|
13
|
+
* ownership on the identity axis; only `custom` builds a
|
|
14
14
|
* {@link CredentialsProvider} here.
|
|
15
15
|
*/
|
|
16
16
|
/** Env var holding the HMAC secret MDA signs the endpoint assertion with. */
|
|
@@ -11,8 +11,8 @@ import { fetchWithTimeout, PROVIDER_HTTP_TIMEOUT_MS } from "./http.js";
|
|
|
11
11
|
* credential's `expiresAt`. Secrets live only in this in-memory cache keyed by
|
|
12
12
|
* identity — never in thread state or traces.
|
|
13
13
|
*
|
|
14
|
-
* Managed credential modes (`agent
|
|
15
|
-
*
|
|
14
|
+
* Managed credential modes (`"user"` / `"agent"`) select toolserver/Connect
|
|
15
|
+
* ownership on the identity axis; only `custom` builds a
|
|
16
16
|
* {@link CredentialsProvider} here.
|
|
17
17
|
*/
|
|
18
18
|
/** Env var holding the HMAC secret MDA signs the endpoint assertion with. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity-http.d.ts","sourceRoot":"","sources":["../../src/runtime/identity-http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,KAAK,EAAkB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"identity-http.d.ts","sourceRoot":"","sources":["../../src/runtime/identity-http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,KAAK,EAAkB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAmB/E,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EAKtB,MAAM,gBAAgB,CAAC;AAWxB,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,gFAAgF;IAChF,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC1B;AAyBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAsEtE;AAsQD,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -2,8 +2,17 @@ import { Hono } from "hono";
|
|
|
2
2
|
import { cors } from "hono/cors";
|
|
3
3
|
import { registerConnectorMessaging } from "../channels/messaging-registry.js";
|
|
4
4
|
import { mountIdentityConnectProviders } from "../identity/connect-provider.js";
|
|
5
|
+
import { enableActorSubjectIntegrationsFromConnectors } from "../identity/actor-subject.js";
|
|
6
|
+
import { FLEET_OAUTH_INTEGRATIONS, scopesForIntegrationConnectorKinds, } from "../connectors/toolserver/integrations.js";
|
|
7
|
+
import { createFleetVaultConnectProvider } from "../identity/fleet-connect.js";
|
|
5
8
|
import { githubIdentityConnectProvider } from "../identity/github/connect-http.js";
|
|
9
|
+
import { createGoogleIdentityConnectProvider } from "../identity/google/connect-http.js";
|
|
10
|
+
import { createLinkedInIdentityConnectProvider } from "../identity/linkedin/connect-http.js";
|
|
11
|
+
import { createMicrosoftIdentityConnectProvider } from "../identity/microsoft/connect-http.js";
|
|
12
|
+
import { marketplaceIdentityConnectProviders } from "../identity/marketplace/index.js";
|
|
6
13
|
import { slackIdentityConnectProvider } from "../identity/slack/connect-http.js";
|
|
14
|
+
import { resolveSlackOauthRedirectBase } from "../identity/slack/oauth.js";
|
|
15
|
+
import { createXIdentityConnectProvider } from "../identity/x/connect-http.js";
|
|
7
16
|
import { resolveRequestIdentity } from "./auth.js";
|
|
8
17
|
import { requirementsFromConnectors } from "./connector.js";
|
|
9
18
|
import { isManagedCorsPath, matchCorsOrigin, MDA_CORS_ALLOW_HEADERS, MDA_CORS_ALLOW_METHODS, resolveCorsAllowlist, } from "./cors.js";
|
|
@@ -57,18 +66,21 @@ export function buildManagedHttpApp(inputs) {
|
|
|
57
66
|
}
|
|
58
67
|
}
|
|
59
68
|
const requirements = requirementsFromConnectors(connectors);
|
|
69
|
+
const connectorKinds = connectors.map((connector) => connector.kind ?? connector.name ?? "");
|
|
70
|
+
enableActorSubjectIntegrationsFromConnectors(connectorKinds, inputs.identity?.config?.scope);
|
|
60
71
|
// Connect-with-X: providers listed on identity.connect, plus built-ins the
|
|
61
|
-
// rest of the identity declaration implies.
|
|
72
|
+
// rest of the identity declaration implies (e.g. Google connectors → Google).
|
|
62
73
|
if (inputs.identity) {
|
|
63
74
|
const cfg = inputs.identity.config;
|
|
64
75
|
mountIdentityConnectProviders(app, cfg, {
|
|
65
76
|
channels: requirements,
|
|
66
77
|
hasIdentity: true,
|
|
67
78
|
scope: cfg.scope,
|
|
79
|
+
connectorKinds,
|
|
68
80
|
...(cfg.credentials ? { credentials: cfg.credentials } : {}),
|
|
69
81
|
}, mounted, {
|
|
70
82
|
providers: cfg.connect ?? [],
|
|
71
|
-
candidates: builtinIdentityConnectCandidates(),
|
|
83
|
+
candidates: builtinIdentityConnectCandidates(connectorKinds),
|
|
72
84
|
});
|
|
73
85
|
}
|
|
74
86
|
logConnectorSurface(mounted);
|
|
@@ -77,9 +89,38 @@ export function buildManagedHttpApp(inputs) {
|
|
|
77
89
|
/**
|
|
78
90
|
* Built-in connect providers offered to every identity-enabled deployment. Each
|
|
79
91
|
* one mounts only when its own predicate says the declaration implies it.
|
|
92
|
+
*
|
|
93
|
+
* Fleet vault integrations are constructed with scopes unioned from declared
|
|
94
|
+
* connectors. Google, Microsoft, and LinkedIn keep their BYO OAuth adapters via
|
|
95
|
+
* their integration factories; X uses Fleet auth-sessions only (Host PKCE).
|
|
80
96
|
*/
|
|
81
|
-
function builtinIdentityConnectCandidates() {
|
|
82
|
-
|
|
97
|
+
function builtinIdentityConnectCandidates(connectorKinds) {
|
|
98
|
+
const fleetProviders = FLEET_OAUTH_INTEGRATIONS.map((integration) => {
|
|
99
|
+
const scopes = scopesForIntegrationConnectorKinds(integration, connectorKinds);
|
|
100
|
+
if (integration.id === "google") {
|
|
101
|
+
return createGoogleIdentityConnectProvider(scopes.length > 0 ? { scopes } : {});
|
|
102
|
+
}
|
|
103
|
+
if (integration.id === "microsoft") {
|
|
104
|
+
return createMicrosoftIdentityConnectProvider(scopes.length > 0 ? { scopes } : {});
|
|
105
|
+
}
|
|
106
|
+
if (integration.id === "linkedin") {
|
|
107
|
+
return createLinkedInIdentityConnectProvider(scopes.length > 0 ? { scopes } : {});
|
|
108
|
+
}
|
|
109
|
+
if (integration.id === "x") {
|
|
110
|
+
return createXIdentityConnectProvider(scopes.length > 0 ? { scopes } : {});
|
|
111
|
+
}
|
|
112
|
+
return createFleetVaultConnectProvider({
|
|
113
|
+
integration,
|
|
114
|
+
...(scopes.length > 0 ? { scopes } : {}),
|
|
115
|
+
resolveRedirectBase: resolveSlackOauthRedirectBase,
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
return [
|
|
119
|
+
githubIdentityConnectProvider,
|
|
120
|
+
...fleetProviders,
|
|
121
|
+
...marketplaceIdentityConnectProviders,
|
|
122
|
+
slackIdentityConnectProvider,
|
|
123
|
+
];
|
|
83
124
|
}
|
|
84
125
|
/**
|
|
85
126
|
* CORS for managed routes only.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity-http.js","sourceRoot":"","sources":["../../src/runtime/identity-http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AASnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAsBvD,qFAAqF;AACrF,MAAM,0BAA2B,SAAQ,KAAK;IACnC,MAAM,GAAG,GAAG,CAAC;IACtB;QACE,KAAK,CACH,qEAAqE;YACnE,qBAAqB,CACxB,CAAC;IACJ,CAAC;CACF;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAA4B;IAC9D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAEtB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAEvC,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,0EAA0E;QAC1E,uCAAuC;QACvC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC;QAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CACb,mBAAmB,SAAS,CAAC,IAAI,2BAA2B;gBAC1D,4DAA4D,CAC/D,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACzC,oBAAoB,CAClB,GAAG,EACH,SAAS,EACT,IAAI,EACJ,MAAM,CAAC,QAAQ,EAAE,MAAM,EACvB,OAAO,CACR,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC3C,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"identity-http.js","sourceRoot":"","sources":["../../src/runtime/identity-http.ts"],"names":[],"mappings":"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"}
|