@polpo-ai/cli 0.15.143 → 0.16.0
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/dist/commands/cloud/connections.js +243 -69
- package/dist/commands/cloud/connections.js.map +1 -1
- package/dist/commands/cloud/data.js +69 -0
- package/dist/commands/cloud/data.js.map +1 -0
- package/dist/commands/migrate.js +8 -1
- package/dist/commands/migrate.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/util/browser.js +18 -6
- package/dist/util/browser.js.map +1 -1
- package/dist/util/pull.js +45 -32
- package/dist/util/pull.js.map +1 -1
- package/dist/util/runtime-skills.js +24 -22
- package/dist/util/runtime-skills.js.map +1 -1
- package/dist/util/template.js +52 -50
- package/dist/util/template.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Option } from "commander";
|
|
2
|
+
import { readFile } from "node:fs/promises";
|
|
1
3
|
import * as clack from "@clack/prompts";
|
|
2
4
|
import pc from "picocolors";
|
|
3
5
|
import { createApiClient } from "./api.js";
|
|
@@ -5,6 +7,7 @@ import { loadProjectId } from "./project-context.js";
|
|
|
5
7
|
import { requireAuth } from "../../util/auth.js";
|
|
6
8
|
import { openBrowser } from "../../util/browser.js";
|
|
7
9
|
import { friendlyError } from "../../util/errors.js";
|
|
10
|
+
import { dashboardUrlFor } from "../../util/base-url.js";
|
|
8
11
|
class ConnectionCliApiError extends Error {
|
|
9
12
|
code;
|
|
10
13
|
status;
|
|
@@ -64,16 +67,12 @@ function printResult(value, json) {
|
|
|
64
67
|
}
|
|
65
68
|
clack.log.info(JSON.stringify(value, null, 2));
|
|
66
69
|
}
|
|
67
|
-
async function
|
|
70
|
+
async function withAuthenticatedConnection(operation, options, action) {
|
|
68
71
|
try {
|
|
69
72
|
const credentials = await requireAuth({
|
|
70
73
|
context: `${operation} requires an authenticated session.`,
|
|
71
74
|
});
|
|
72
|
-
|
|
73
|
-
if (!projectId) {
|
|
74
|
-
throw new Error("No project linked. Run polpo create or polpo link first.");
|
|
75
|
-
}
|
|
76
|
-
await action(createApiClient(credentials, projectId), projectId);
|
|
75
|
+
await action(credentials);
|
|
77
76
|
}
|
|
78
77
|
catch (error) {
|
|
79
78
|
if (options.json) {
|
|
@@ -90,10 +89,91 @@ async function withConnectionClient(operation, options, action) {
|
|
|
90
89
|
process.exitCode = 1;
|
|
91
90
|
}
|
|
92
91
|
}
|
|
92
|
+
function withConnectionClient(operation, options, action) {
|
|
93
|
+
return withAuthenticatedConnection(operation, options, async (credentials) => {
|
|
94
|
+
const projectId = loadProjectId();
|
|
95
|
+
if (!projectId) {
|
|
96
|
+
throw new Error("No project linked. Run polpo create or polpo link first.");
|
|
97
|
+
}
|
|
98
|
+
await action(createApiClient(credentials, projectId), projectId, credentials.baseUrl);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
function withScopedConnectionClient(operation, options, action) {
|
|
102
|
+
const organization = options.organization;
|
|
103
|
+
if (organization !== undefined) {
|
|
104
|
+
return withAuthenticatedConnection(operation, options, credentials => {
|
|
105
|
+
if (!organization.trim())
|
|
106
|
+
throw new Error("--organization requires a non-empty organization ID.");
|
|
107
|
+
return action(createApiClient(credentials), `/v1/orgs/${encodeURIComponent(organization)}/connect`);
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
return withConnectionClient(operation, options, (client, projectId) => action(client, projectConnectionsPath(projectId)));
|
|
111
|
+
}
|
|
93
112
|
export function registerConnectionsCommand(program) {
|
|
94
113
|
const connections = program
|
|
95
114
|
.command("connections")
|
|
96
115
|
.description("Inspect Connections and manage trusted runtime bindings");
|
|
116
|
+
const connectors = connections.command("connectors")
|
|
117
|
+
.description("Manage custom API and MCP Connector definitions");
|
|
118
|
+
connectors.command("register <file>")
|
|
119
|
+
.description("Register an immutable Connector definition from JSON; credentials are configured separately")
|
|
120
|
+
.option("--json", "Print JSON")
|
|
121
|
+
.action((file, options) => withConnectionClient("Registering a Connector", options, async (client, projectId) => {
|
|
122
|
+
const definition = parseJsonObject(await readFile(file, "utf8"), "Connector file");
|
|
123
|
+
if (!definition)
|
|
124
|
+
throw new Error("Connector file must contain a JSON object.");
|
|
125
|
+
printResult(connectionDataFrom(await client.post(projectConnectionsPath(projectId, "connectors"), definition)), Boolean(options.json));
|
|
126
|
+
}));
|
|
127
|
+
connectors.command("disable <connector-id>")
|
|
128
|
+
.description("Disable this custom Connector identity")
|
|
129
|
+
.option("--json", "Print JSON")
|
|
130
|
+
.action((id, options) => withConnectionClient("Disabling a Connector", options, async (client, projectId) => {
|
|
131
|
+
printResult(connectionDataFrom(await client.post(projectConnectionsPath(projectId, "connectors", id, "disable"))), Boolean(options.json));
|
|
132
|
+
}));
|
|
133
|
+
connections.command("setup-readiness <provider-id>")
|
|
134
|
+
.description("Check Connector/OAuth setup prerequisites; this does not test an authorized account")
|
|
135
|
+
.option("--authentication <id>", "Select the Connector authentication method")
|
|
136
|
+
.option("--oauth-client-mode <mode>", "Select managed or customer OAuth setup")
|
|
137
|
+
.option("--json", "Print JSON")
|
|
138
|
+
.action((providerId, options) => withConnectionClient("Checking Connector setup", options, async (client, projectId) => {
|
|
139
|
+
if (options.oauthClientMode && !["managed", "customer"].includes(options.oauthClientMode)) {
|
|
140
|
+
throw new Error("OAuth Client mode must be managed or customer.");
|
|
141
|
+
}
|
|
142
|
+
printResult(connectionDataFrom(await client.post(projectConnectionsPath(projectId, "setup-readiness"), {
|
|
143
|
+
providerId, authenticationId: options.authentication, oauthClientMode: options.oauthClientMode,
|
|
144
|
+
})), Boolean(options.json));
|
|
145
|
+
}));
|
|
146
|
+
connections.command("create <kind> <file>")
|
|
147
|
+
.description("Create a public, api-key, or mcp Connection from a private JSON file")
|
|
148
|
+
.option("--json", "Print the non-secret Connection result")
|
|
149
|
+
.action((kind, file, options) => withConnectionClient("Creating a Connection", options, async (client, projectId) => {
|
|
150
|
+
if (!["public", "api-key", "mcp"].includes(kind))
|
|
151
|
+
throw new Error("Connection kind must be public, api-key, or mcp.");
|
|
152
|
+
const input = parseJsonObject(await readFile(file, "utf8"), "Connection file");
|
|
153
|
+
if (!input)
|
|
154
|
+
throw new Error("Connection file must contain a JSON object.");
|
|
155
|
+
printResult(connectionDataFrom(await client.post(projectConnectionsPath(projectId, "connections", kind), input)), Boolean(options.json));
|
|
156
|
+
}));
|
|
157
|
+
const setupConfig = connections.command("setup-config")
|
|
158
|
+
.description("Manage this project's approved application return origins for OAuth setup");
|
|
159
|
+
setupConfig.command("show")
|
|
160
|
+
.option("--json", "Print JSON")
|
|
161
|
+
.action((options) => withConnectionClient("Reading setup configuration", options, async (client, projectId) => {
|
|
162
|
+
printResult(connectionDataFrom(await client.get(projectConnectionsPath(projectId, "setup-configuration"))), Boolean(options.json));
|
|
163
|
+
}));
|
|
164
|
+
setupConfig.command("set")
|
|
165
|
+
.description("Replace approved HTTPS origins; use --clear to remove all project origins")
|
|
166
|
+
.option("--origin <origin...>", "Exact HTTPS origins, without paths or wildcards")
|
|
167
|
+
.option("--clear", "Remove all project-approved return origins")
|
|
168
|
+
.option("--json", "Print JSON")
|
|
169
|
+
.action((options) => {
|
|
170
|
+
if ((!options.clear && !options.origin?.length) || (options.clear && options.origin?.length)) {
|
|
171
|
+
throw new Error("Specify --origin or --clear");
|
|
172
|
+
}
|
|
173
|
+
return withConnectionClient("Updating setup configuration", options, async (client, projectId) => {
|
|
174
|
+
printResult(connectionDataFrom(await client.put(projectConnectionsPath(projectId, "setup-configuration"), { returnOrigins: options.clear ? [] : options.origin })), Boolean(options.json));
|
|
175
|
+
});
|
|
176
|
+
});
|
|
97
177
|
connections.command("catalog")
|
|
98
178
|
.description("List available Connectors, setup modes, scopes, and health")
|
|
99
179
|
.option("--json", "Print JSON")
|
|
@@ -116,8 +196,63 @@ export function registerConnectionsCommand(program) {
|
|
|
116
196
|
const response = await client.get(`${projectConnectionsPath(projectId, "connections")}${suffix}`);
|
|
117
197
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
118
198
|
}));
|
|
199
|
+
const endUsers = connections.command("end-users")
|
|
200
|
+
.description("Manage Connections owned by external application users");
|
|
201
|
+
endUsers.command("list <user-id>")
|
|
202
|
+
.description("List an external user's non-secret Connections in this project")
|
|
203
|
+
.requiredOption("--namespace <namespace>", "Application namespace of the external user")
|
|
204
|
+
.option("--json", "Print JSON")
|
|
205
|
+
.action((userId, options) => withConnectionClient("Listing external-user Connections", options, async (client, projectId) => {
|
|
206
|
+
const query = new URLSearchParams({ namespace: options.namespace });
|
|
207
|
+
const response = await client.get(`${projectConnectionsPath(projectId, "end-users", userId, "connections")}?${query}`);
|
|
208
|
+
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
209
|
+
}));
|
|
210
|
+
endUsers.command("revoke <user-id> <connection-id>")
|
|
211
|
+
.description("Revoke one exact Connection owned by an external application user")
|
|
212
|
+
.requiredOption("--namespace <namespace>", "Application namespace of the external user")
|
|
213
|
+
.option("--json", "Print JSON")
|
|
214
|
+
.action((userId, connectionId, options) => withConnectionClient("Revoking an external-user Connection", options, async (client, projectId) => {
|
|
215
|
+
const query = new URLSearchParams({ namespace: options.namespace });
|
|
216
|
+
const response = await client.post(`${projectConnectionsPath(projectId, "end-users", userId, "connections", connectionId, "revoke")}?${query}`);
|
|
217
|
+
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
218
|
+
}));
|
|
119
219
|
const mcp = connections.command("mcp")
|
|
120
220
|
.description("Inspect and authorize remote MCP servers");
|
|
221
|
+
const mcpConfigurations = mcp.command("configurations")
|
|
222
|
+
.description("Manage reusable MCP OAuth setup separately from user Connections");
|
|
223
|
+
mcpConfigurations.command("list").option("--organization <id>", "Organization-owned configurations").option("--json", "Print JSON")
|
|
224
|
+
.action((options) => withScopedConnectionClient("Listing MCP OAuth configurations", options, async (client, connectPath) => {
|
|
225
|
+
printResult(connectionDataFrom(await client.get(`${connectPath}/mcp-oauth-configurations`)), Boolean(options.json));
|
|
226
|
+
}));
|
|
227
|
+
mcpConfigurations.command("create <file>").description("Create from a private JSON file; callback and owner are assigned by the host")
|
|
228
|
+
.option("--organization <id>", "Organization-owned configuration").option("--json", "Print JSON")
|
|
229
|
+
.action((file, options) => withScopedConnectionClient("Creating an MCP OAuth configuration", options, async (client, connectPath) => {
|
|
230
|
+
const input = parseJsonObject(await readFile(file, "utf8"), "Configuration file");
|
|
231
|
+
printResult(connectionDataFrom(await client.post(`${connectPath}/mcp-oauth-configurations`, input)), Boolean(options.json));
|
|
232
|
+
}));
|
|
233
|
+
mcpConfigurations.command("update <id> <file>").description("Update from a private JSON file using the last observed revision")
|
|
234
|
+
.requiredOption("--revision <revision>", "Current configuration revision")
|
|
235
|
+
.option("--organization <id>", "Organization-owned configuration").option("--json", "Print JSON")
|
|
236
|
+
.action((id, file, options) => withScopedConnectionClient("Updating an MCP OAuth configuration", options, async (client, connectPath) => {
|
|
237
|
+
const input = parseJsonObject(await readFile(file, "utf8"), "Configuration file");
|
|
238
|
+
printResult(connectionDataFrom(await client.put(`${connectPath}/mcp-oauth-configurations/${encodeURIComponent(id)}`, { ...input, expectedRevision: options.revision })), Boolean(options.json));
|
|
239
|
+
}));
|
|
240
|
+
mcpConfigurations.command("revoke <id>").description("Disable this client configuration for new setup and credential delivery")
|
|
241
|
+
.requiredOption("--revision <revision>", "Current configuration revision")
|
|
242
|
+
.option("--organization <id>", "Organization-owned configuration").option("--json", "Print JSON")
|
|
243
|
+
.action((id, options) => withScopedConnectionClient("Revoking an MCP OAuth configuration", options, async (client, connectPath) => {
|
|
244
|
+
const path = `${connectPath}/mcp-oauth-configurations/${encodeURIComponent(id)}?${new URLSearchParams({ expectedRevision: options.revision })}`;
|
|
245
|
+
printResult(connectionDataFrom(await client.delete(path)), Boolean(options.json));
|
|
246
|
+
}));
|
|
247
|
+
connections.command("verify <connection-id>")
|
|
248
|
+
.description("Run a configured non-destructive check and report its actual outcome")
|
|
249
|
+
.option("--json", "Print JSON")
|
|
250
|
+
.action((connectionId, options) => withConnectionClient("Verifying a Connection", options, async (client, projectId) => {
|
|
251
|
+
const result = connectionDataFrom(await client.post(projectConnectionsPath(projectId, "connections", connectionId, "verify")));
|
|
252
|
+
printResult(result, Boolean(options.json));
|
|
253
|
+
if (result.outcome !== "passed")
|
|
254
|
+
process.exitCode = 1;
|
|
255
|
+
}));
|
|
121
256
|
mcp.command("catalog")
|
|
122
257
|
.description("List curated remote MCP servers and their setup modes")
|
|
123
258
|
.option("--json", "Print JSON")
|
|
@@ -137,36 +272,62 @@ export function registerConnectionsCommand(program) {
|
|
|
137
272
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
138
273
|
}));
|
|
139
274
|
mcp.command("connect <server>")
|
|
140
|
-
.description("
|
|
275
|
+
.description("Open MCP setup for review and confirmation in your authenticated dashboard")
|
|
276
|
+
.option("--dashboard-url <url>", "Dashboard origin for a local or custom installation")
|
|
141
277
|
.option("--name <name>", "Connection display name")
|
|
278
|
+
.addOption(new Option("--provider <provider>", "Unsupported in browser setup").hideHelp())
|
|
279
|
+
.addOption(new Option("--authentication <id>", "Unsupported in browser setup").hideHelp())
|
|
280
|
+
.addOption(new Option("--audience <audience>", "Unsupported in browser setup").default("shared").hideHelp())
|
|
281
|
+
.addOption(new Option("--subject <json>", "Unsupported in browser setup").hideHelp())
|
|
282
|
+
.addOption(new Option("--binding <json>", "Unsupported in browser setup").hideHelp())
|
|
142
283
|
.option("--transport <transport>", "http or sse", "http")
|
|
143
|
-
.
|
|
144
|
-
.option("--no-open", "
|
|
284
|
+
.addOption(new Option("--scope <scope...>", "Unsupported in browser setup").default([]).hideHelp())
|
|
285
|
+
.option("--no-open", "Print the setup URL without opening a browser")
|
|
145
286
|
.option("--json", "Print JSON and do not open a browser")
|
|
146
|
-
.action((server, options) => withConnectionClient("
|
|
147
|
-
if (options.
|
|
287
|
+
.action((server, options) => withConnectionClient("Opening MCP setup", options, async (_client, projectId, apiUrl) => {
|
|
288
|
+
if (options.provider || options.authentication || options.subject || options.binding || options.scope.length || options.audience !== "shared") {
|
|
289
|
+
throw new Error("Browser MCP setup does not support custom authentication, owner, binding, scopes, or audience flags. Configure the account in the dashboard; no OAuth request was started.");
|
|
290
|
+
}
|
|
291
|
+
if (options.transport !== "http" && options.transport !== "sse")
|
|
148
292
|
throw new Error("--transport must be http or sse.");
|
|
293
|
+
const dashboard = new URL(options.dashboardUrl ?? dashboardUrlFor(apiUrl));
|
|
294
|
+
const localHttp = dashboard.protocol === "http:" && ["localhost", "127.0.0.1", "[::1]"].includes(dashboard.hostname);
|
|
295
|
+
if ((dashboard.protocol !== "https:" && !localHttp) || dashboard.username || dashboard.password || dashboard.search || dashboard.hash || dashboard.pathname !== "/") {
|
|
296
|
+
throw new Error("Dashboard URL must be an HTTPS origin, or HTTP on localhost.");
|
|
149
297
|
}
|
|
150
|
-
const
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
298
|
+
const link = new URL(`/projects/${encodeURIComponent(projectId)}/connections/browse`, dashboard);
|
|
299
|
+
link.searchParams.set("provider", "mcp_url");
|
|
300
|
+
if (/^[a-z0-9][a-z0-9_-]{0,127}$/.test(server)) {
|
|
301
|
+
if (options.transport !== "http")
|
|
302
|
+
throw new Error("Catalog servers use their configured transport. Use --transport only with a custom endpoint.");
|
|
303
|
+
link.searchParams.set("mcpPreset", server);
|
|
304
|
+
}
|
|
305
|
+
else {
|
|
306
|
+
let endpoint;
|
|
307
|
+
try {
|
|
308
|
+
endpoint = new URL(server);
|
|
309
|
+
}
|
|
310
|
+
catch {
|
|
311
|
+
throw new Error("Use a catalog ID or a clean HTTPS MCP endpoint.");
|
|
312
|
+
}
|
|
313
|
+
if (endpoint.protocol !== "https:" || endpoint.username || endpoint.password || endpoint.search || endpoint.hash || server.length > 2048) {
|
|
314
|
+
throw new Error("Use a clean HTTPS MCP endpoint without credentials, query parameters, or fragments. Enter other endpoints directly in the dashboard.");
|
|
315
|
+
}
|
|
316
|
+
link.searchParams.set("mcpUrl", endpoint.href);
|
|
317
|
+
link.searchParams.set("mcpTransport", options.transport);
|
|
318
|
+
}
|
|
319
|
+
if (options.name !== undefined) {
|
|
320
|
+
if (!options.name.trim() || options.name.length > 120)
|
|
321
|
+
throw new Error("Connection name must contain 1–120 characters.");
|
|
322
|
+
link.searchParams.set("mcpName", options.name.trim());
|
|
323
|
+
}
|
|
324
|
+
const setupUrl = link.href;
|
|
325
|
+
printResult({ setupUrl, requiresBrowserSession: true }, Boolean(options.json));
|
|
165
326
|
if (options.open && !options.json)
|
|
166
|
-
await openBrowser(
|
|
327
|
+
await openBrowser(setupUrl);
|
|
167
328
|
}));
|
|
168
|
-
mcp.command("reconnect <connection-id>")
|
|
169
|
-
.description("
|
|
329
|
+
mcp.command("reconnect <connection-id>", { hidden: true })
|
|
330
|
+
.description("Unsupported: create and explicitly assign a new MCP Connection instead")
|
|
170
331
|
.option("--no-open", "Do not open the authorization URL in a browser")
|
|
171
332
|
.option("--json", "Print JSON and do not open a browser")
|
|
172
333
|
.action((connectionId, options) => withConnectionClient("Reconnecting an MCP server", options, async (client, projectId) => {
|
|
@@ -225,12 +386,16 @@ export function registerConnectionsCommand(program) {
|
|
|
225
386
|
.requiredOption("--subject <json>", "Trusted Connection owner JSON")
|
|
226
387
|
.requiredOption("--return-url <url>", "Approved application return URL")
|
|
227
388
|
.option("--binding <json>", "Trusted principal/tenant/resource binding JSON")
|
|
389
|
+
.option("--authentication <id>", "Connector authentication method ID")
|
|
390
|
+
.option("--configuration <id>", "Reusable MCP OAuth client configuration ID")
|
|
228
391
|
.option("--scope <scope...>", "Requested Connector scopes", [])
|
|
229
392
|
.option("--oauth-client-mode <mode>", "managed, customer, or instance", "managed")
|
|
230
393
|
.option("--json", "Print JSON")
|
|
231
394
|
.action((providerId, options) => withConnectionClient("Creating a Connection setup session", options, async (client, projectId) => {
|
|
232
395
|
const response = await client.post(projectConnectionsPath(projectId, "setup-sessions"), {
|
|
233
396
|
providerId,
|
|
397
|
+
authenticationId: options.authentication,
|
|
398
|
+
configurationId: options.configuration,
|
|
234
399
|
audience: options.audience,
|
|
235
400
|
subject: parseJsonObject(options.subject, "--subject"),
|
|
236
401
|
binding: parseJsonObject(options.binding, "--binding"),
|
|
@@ -274,6 +439,16 @@ export function registerConnectionsCommand(program) {
|
|
|
274
439
|
});
|
|
275
440
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
276
441
|
}));
|
|
442
|
+
connections.command("setup-start <token>")
|
|
443
|
+
.description("Start a bound OAuth setup directly, without opening the hosted Polpo page")
|
|
444
|
+
.option("--no-open", "Do not open the provider authorization URL")
|
|
445
|
+
.option("--json", "Print JSON without opening a browser")
|
|
446
|
+
.action((token, options) => withConnectionClient("Starting a Connection setup", options, async (client) => {
|
|
447
|
+
const result = connectionDataFrom(await client.post(`/v1/connect/setup/${encodeURIComponent(token)}/oauth/start`));
|
|
448
|
+
printResult(result, Boolean(options.json));
|
|
449
|
+
if (options.open && !options.json)
|
|
450
|
+
await openBrowser(result.authorizationUrl);
|
|
451
|
+
}));
|
|
277
452
|
capabilities.command("revoke <capability-id>")
|
|
278
453
|
.description("Revoke a logical application capability")
|
|
279
454
|
.option("--json", "Print JSON")
|
|
@@ -287,33 +462,31 @@ export function registerConnectionsCommand(program) {
|
|
|
287
462
|
.description("List non-secret OAuth Client registrations")
|
|
288
463
|
.option("--organization <id>", "List organization-owned clients instead of project-owned clients")
|
|
289
464
|
.option("--json", "Print JSON")
|
|
290
|
-
.action((options) =>
|
|
291
|
-
const path =
|
|
292
|
-
? `/v1/orgs/${encodeURIComponent(options.organization)}/connect/oauth-clients`
|
|
293
|
-
: projectConnectionsPath(projectId, "oauth-clients");
|
|
465
|
+
.action((options) => withScopedConnectionClient("Listing OAuth Clients", options, async (client, connectPath) => {
|
|
466
|
+
const path = `${connectPath}/oauth-clients`;
|
|
294
467
|
const response = await client.get(path);
|
|
295
468
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
296
469
|
}));
|
|
297
470
|
oauthClients.command("set <provider>")
|
|
298
471
|
.description("Create or update a customer OAuth Client; the secret is read from an environment variable")
|
|
299
472
|
.requiredOption("--client-id <id>", "Provider OAuth client ID")
|
|
473
|
+
.option("--authentication <id>", "Connector authentication method; omit for the default")
|
|
300
474
|
.option("--client-secret-env <name>", "Environment variable containing the write-only client secret")
|
|
301
475
|
.option("--name <name>", "Display name")
|
|
302
476
|
.option("--origin <origin...>", "Approved application return origins", [])
|
|
303
477
|
.option("--organization <id>", "Configure an organization-owned client instead of a project-owned client")
|
|
304
478
|
.option("--json", "Print JSON")
|
|
305
|
-
.action((provider, options) =>
|
|
479
|
+
.action((provider, options) => withScopedConnectionClient("Configuring an OAuth Client", options, async (client, connectPath) => {
|
|
306
480
|
const secret = options.clientSecretEnv
|
|
307
481
|
? process.env[options.clientSecretEnv]
|
|
308
482
|
: undefined;
|
|
309
483
|
if (options.clientSecretEnv && !secret) {
|
|
310
484
|
throw new Error(`Environment variable ${options.clientSecretEnv} is empty or unavailable.`);
|
|
311
485
|
}
|
|
312
|
-
const base =
|
|
313
|
-
? `/v1/orgs/${encodeURIComponent(options.organization)}/connect/oauth-clients`
|
|
314
|
-
: projectConnectionsPath(projectId, "oauth-clients");
|
|
486
|
+
const base = `${connectPath}/oauth-clients`;
|
|
315
487
|
const response = await client.put(`${base}/${encodeURIComponent(provider)}`, {
|
|
316
488
|
clientId: options.clientId,
|
|
489
|
+
...(options.authentication ? { authenticationId: options.authentication } : {}),
|
|
317
490
|
...(secret ? { clientSecret: secret } : {}),
|
|
318
491
|
...(options.name ? { name: options.name } : {}),
|
|
319
492
|
returnOrigins: options.origin,
|
|
@@ -322,13 +495,15 @@ export function registerConnectionsCommand(program) {
|
|
|
322
495
|
}));
|
|
323
496
|
oauthClients.command("revoke <provider>")
|
|
324
497
|
.description("Revoke a customer OAuth Client without revoking existing Connections")
|
|
498
|
+
.option("--authentication <id>", "Connector authentication method; omit for the default")
|
|
325
499
|
.option("--organization <id>", "Revoke an organization-owned client instead of a project-owned client")
|
|
326
500
|
.option("--json", "Print JSON")
|
|
327
|
-
.action((provider, options) =>
|
|
328
|
-
const base =
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
501
|
+
.action((provider, options) => withScopedConnectionClient("Revoking an OAuth Client", options, async (client, connectPath) => {
|
|
502
|
+
const base = `${connectPath}/oauth-clients`;
|
|
503
|
+
const query = options.authentication
|
|
504
|
+
? `?${new URLSearchParams({ authenticationId: options.authentication })}`
|
|
505
|
+
: "";
|
|
506
|
+
const response = await client.delete(`${base}/${encodeURIComponent(provider)}${query}`);
|
|
332
507
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
333
508
|
}));
|
|
334
509
|
connections.command("events <connection-id>")
|
|
@@ -351,8 +526,8 @@ export function registerConnectionsCommand(program) {
|
|
|
351
526
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
352
527
|
}));
|
|
353
528
|
connections.command("reconcile")
|
|
354
|
-
.description("Audit Connection state and
|
|
355
|
-
.option("--apply", "Apply
|
|
529
|
+
.description("Audit Connection state and interrupted agent assignments or revocations")
|
|
530
|
+
.option("--apply", "Apply repairs and resume assignment or revocation recovery (default is dry-run)")
|
|
356
531
|
.option("--limit <count>", "Maximum records per resource type", "200")
|
|
357
532
|
.option("--json", "Print JSON")
|
|
358
533
|
.action((options) => withConnectionClient("Reconciling Connections", options, async (client, projectId) => {
|
|
@@ -379,19 +554,41 @@ export function registerConnectionsCommand(program) {
|
|
|
379
554
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
380
555
|
}));
|
|
381
556
|
connections.command("grant-slot <connection-id>")
|
|
382
|
-
.description("
|
|
557
|
+
.description("Assign a trusted Connection and enable the agent's custom tool")
|
|
383
558
|
.requiredOption("--agent <name>", "Exact agent name")
|
|
384
559
|
.requiredOption("--tool <name>", "Exact custom tool name")
|
|
385
560
|
.option("--scope <scope...>", "Scopes the tool may request", [])
|
|
561
|
+
.option("--credential-slot <slot...>", "Explicitly allow provider credentials in these declared sandbox slots")
|
|
562
|
+
.option("--clear-credential-access", "Remove credential export permission while preserving gateway access")
|
|
386
563
|
.option("--json", "Print JSON")
|
|
387
564
|
.action((connectionId, options) => withConnectionClient("Granting a trusted Connection slot", options, async (client, projectId) => {
|
|
565
|
+
if (options.credentialSlot && options.clearCredentialAccess) {
|
|
566
|
+
throw new Error("Use either --credential-slot or --clear-credential-access.");
|
|
567
|
+
}
|
|
568
|
+
let scopes = options.scope;
|
|
569
|
+
let preservedPolicy = {};
|
|
570
|
+
if (options.clearCredentialAccess) {
|
|
571
|
+
if (options.scope.length)
|
|
572
|
+
throw new Error("--clear-credential-access preserves the existing grant; omit --scope.");
|
|
573
|
+
const query = new URLSearchParams({ agentName: options.agent, status: "active" });
|
|
574
|
+
const grants = connectionDataFrom(await client.get(`${projectConnectionsPath(projectId, "grants")}?${query}`));
|
|
575
|
+
const matching = grants.filter(grant => grant.connectionId === connectionId && grant.agentName === options.agent
|
|
576
|
+
&& grant.toolName === options.tool && grant.grantType === "connection_slot" && grant.status === "active");
|
|
577
|
+
if (matching.length !== 1)
|
|
578
|
+
throw new Error("An existing active slot grant is required to clear credential access.");
|
|
579
|
+
scopes = matching[0].scopes;
|
|
580
|
+
preservedPolicy = { binding: matching[0].binding, metadata: matching[0].metadata };
|
|
581
|
+
}
|
|
388
582
|
const response = await client.post(projectConnectionsPath(projectId, "grants"), {
|
|
389
583
|
connectionId,
|
|
390
584
|
agentName: options.agent,
|
|
391
585
|
grantType: "connection_slot",
|
|
392
586
|
toolName: options.tool,
|
|
393
|
-
scopes
|
|
587
|
+
scopes,
|
|
588
|
+
...(options.clearCredentialAccess ? { credentialSlots: [] }
|
|
589
|
+
: options.credentialSlot ? { credentialSlots: options.credentialSlot } : {}),
|
|
394
590
|
metadata: { source: "cli" },
|
|
591
|
+
...preservedPolicy,
|
|
395
592
|
});
|
|
396
593
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
397
594
|
}));
|
|
@@ -433,27 +630,4 @@ export function registerConnectionsCommand(program) {
|
|
|
433
630
|
printResult(connectionDataFrom(response), Boolean(options.json));
|
|
434
631
|
}));
|
|
435
632
|
}
|
|
436
|
-
async function resolveMcpCatalogServer(client, projectId, server) {
|
|
437
|
-
if (/^https:\/\//i.test(server)) {
|
|
438
|
-
return { name: "Remote MCP server", scopes: [], url: server };
|
|
439
|
-
}
|
|
440
|
-
const response = await client.get(projectConnectionsPath(projectId, "mcp", "catalog"));
|
|
441
|
-
const catalog = connectionDataFrom(response);
|
|
442
|
-
const entry = catalog.entries?.find((candidate) => candidate.id === server);
|
|
443
|
-
if (!entry)
|
|
444
|
-
throw new Error(`Unknown MCP catalog server: ${server}. Run polpo connections mcp catalog.`);
|
|
445
|
-
if (!entry.endpoint) {
|
|
446
|
-
throw new Error(`MCP catalog server ${server} requires a custom endpoint. Pass its HTTPS URL instead.`);
|
|
447
|
-
}
|
|
448
|
-
if (!entry.setupModes?.includes("oauth_dynamic")) {
|
|
449
|
-
throw new Error(`MCP catalog server ${server} does not support dynamic OAuth onboarding.`);
|
|
450
|
-
}
|
|
451
|
-
return {
|
|
452
|
-
id: entry.id,
|
|
453
|
-
name: entry.name ?? entry.id ?? server,
|
|
454
|
-
scopes: entry.recommendedScopes ?? [],
|
|
455
|
-
transport: entry.transport,
|
|
456
|
-
url: entry.endpoint,
|
|
457
|
-
};
|
|
458
|
-
}
|
|
459
633
|
//# sourceMappingURL=connections.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../../../src/commands/cloud/connections.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connections.js","sourceRoot":"","sources":["../../../src/commands/cloud/connections.ts"],"names":[],"mappings":"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"}
|