replicas-cli 0.3.148 → 0.3.150

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 (2) hide show
  1. package/dist/index.cjs +38 -5
  2. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -22971,6 +22971,12 @@ var agentQuotaExhaustedPayloadSchema = external_exports.object({
22971
22971
  forkTo: fallbackHarnessStepSchema.optional()
22972
22972
  });
22973
22973
 
22974
+ // ../shared/src/credential-refresh.ts
22975
+ var engineCredentialRefreshFailureSchema = external_exports.object({
22976
+ code: external_exports.string(),
22977
+ credential: workspaceCredentialSelectionSchema.optional()
22978
+ });
22979
+
22974
22980
  // ../shared/src/credential-pool.ts
22975
22981
  var MAX_CREDENTIAL_POOL_ACCOUNTS = 10;
22976
22982
  var reorderCredentialPoolSchema = external_exports.object({
@@ -29043,7 +29049,7 @@ var headlessAgentRequestSchema = external_exports.object({
29043
29049
  });
29044
29050
 
29045
29051
  // ../shared/src/cli-version.ts
29046
- var CLI_VERSION = "0.3.148";
29052
+ var CLI_VERSION = "0.3.150";
29047
29053
 
29048
29054
  // ../shared/src/version.ts
29049
29055
  function compareVersions(v1, v2) {
@@ -29513,10 +29519,37 @@ var HOSTED_COMPOSIO_PLUGINS = HOSTED_COMPOSIO_PLUGIN_DEFINITIONS.map(
29513
29519
  description: `Use ${name} tools from workspace agents.`
29514
29520
  })
29515
29521
  );
29522
+ var READ_ONLY_SCOPES = {
29523
+ gmail: ["https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.profile", "https://www.googleapis.com/auth/contacts.readonly", "https://www.googleapis.com/auth/contacts.other.readonly", "https://www.googleapis.com/auth/gmail.readonly"],
29524
+ googledocs: ["https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/drive.readonly", "https://www.googleapis.com/auth/documents.readonly"],
29525
+ googledrive: ["https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/drive.readonly"],
29526
+ googlesheets: ["https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/drive.readonly", "https://www.googleapis.com/auth/spreadsheets.readonly"],
29527
+ googleslides: ["https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/drive.readonly", "https://www.googleapis.com/auth/presentations.readonly"],
29528
+ googlecalendar: ["https://www.googleapis.com/auth/calendar.readonly"],
29529
+ googletasks: ["https://www.googleapis.com/auth/tasks.readonly"],
29530
+ googlesearch: ["https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.profile", "https://www.googleapis.com/auth/webmasters.readonly"],
29531
+ googleanalytics: ["https://www.googleapis.com/auth/userinfo.profile", "https://www.googleapis.com/auth/analytics.readonly"],
29532
+ youtube: ["https://www.googleapis.com/auth/youtube.readonly"],
29533
+ outlook: ["User.Read", "Mail.Read", "MailboxSettings.Read", "Calendars.Read", "Contacts.Read", "offline_access"],
29534
+ onedrive: ["Files.Read.All", "Sites.Read.All", "offline_access"],
29535
+ microsoftteams: ["User.Read", "Team.ReadBasic.All", "Channel.ReadBasic.All", "ChannelMessage.Read.All", "Chat.Read", "Chat.ReadBasic", "ChatMessage.Read", "People.Read.All", "TeamsActivity.Read", "offline_access"],
29536
+ jira: ["read:jira-work", "read:jira-user", "read:servicedesk-request", "read:servicemanagement-insight-objects", "read:sprint:jira-software", "read:board-scope:jira-software", "read:project:jira", "read:issue-type-scheme:jira", "offline_access"],
29537
+ confluence: ["read:space-details:confluence", "read:audit-log:confluence", "read:page:confluence", "read:blogpost:confluence", "read:whiteboard:confluence", "read:comment:confluence", "read:content.restriction:confluence", "read:content.metadata:confluence", "read:inlinetask:confluence", "read:task:confluence", "offline_access"],
29538
+ pagerduty: ["read"],
29539
+ zendesk: ["read"],
29540
+ gong: ["api:calls:read:basic", "api:calls:read:extensive", "api:calls:read:transcript", "api:calls:read:media-url", "api:users:read", "api:stats:interaction", "api:stats:scorecards", "api:stats:user-actions", "api:stats:user-actions:detailed", "api:settings:scorecards:read", "api:settings:trackers:read", "api:library:read", "api:tasks:read", "api:flows:read", "api:workspaces:read", "api:crm:get-objects", "api:crm:schema", "api:crm:integrations:read", "api:call-outcomes:read", "api:permission-profile:read", "api:logs:read"],
29541
+ figma: ["current_user:read", "file_content:read", "file_comments:read", "file_metadata:read", "file_versions:read", "projects:read", "library_assets:read", "library_content:read", "team_library_content:read", "webhooks:read"],
29542
+ airtable: ["data.records:read", "data.recordComments:read", "schema.bases:read", "user.email:read"],
29543
+ todoist: ["data:read"],
29544
+ dropbox: ["openid", "email", "profile", "account_info.read", "files.metadata.read", "files.content.read", "file_requests.read", "sharing.read", "contacts.read"],
29545
+ canva: ["profile:read", "asset:read", "brandtemplate:content:read", "brandtemplate:meta:read", "comment:read", "design:content:read", "design:meta:read", "folder:read"],
29546
+ facebook: ["public_profile", "email", "pages_show_list", "pages_read_engagement", "pages_read_user_content", "read_insights"],
29547
+ instagram: ["instagram_business_basic", "instagram_business_manage_insights"]
29548
+ };
29516
29549
  var PLUGIN_CATALOG = [
29517
29550
  ...EXPLICIT_PLUGIN_CATALOG,
29518
29551
  ...HOSTED_COMPOSIO_PLUGINS
29519
- ];
29552
+ ].map((plugin) => ({ ...plugin, readOnlyScopes: READ_ONLY_SCOPES[plugin.id] }));
29520
29553
 
29521
29554
  // ../shared/src/routes/user.ts
29522
29555
  var PROFILE_AVATAR_MAX_SIZE_BYTES = 5 * 1024 * 1024;
@@ -33200,7 +33233,7 @@ async function pluginsListCommand(options) {
33200
33233
  for (const plugin of plugins2) {
33201
33234
  const connections = environment2.filter((connection) => connection.pluginId === plugin.id);
33202
33235
  if (!options.all && connections.length === 0) continue;
33203
- const status = connections.map((connection) => `${connection.status}${connection.accountLabel ? ` (${connection.accountLabel})` : ""}`).join(", ");
33236
+ const status = connections.map((connection) => `${connection.status}${connection.readOnly ? " read-only" : ""}${connection.accountLabel ? ` (${connection.accountLabel})` : ""}`).join(", ");
33204
33237
  console.log(`${plugin.id} ${plugin.authType} ${status || "-"} ${plugin.name}`);
33205
33238
  }
33206
33239
  });
@@ -33208,7 +33241,7 @@ async function pluginsListCommand(options) {
33208
33241
  async function pluginsOAuthCommand(pluginId, options) {
33209
33242
  const response = await orgAuthenticatedFetch(
33210
33243
  await pluginsPath(options, `/${pluginId}/oauth/start`),
33211
- { method: "POST" }
33244
+ { method: "POST", body: { readOnly: options.readOnly === true } }
33212
33245
  );
33213
33246
  output(response, ({ authorizationUrl }) => console.log(authorizationUrl));
33214
33247
  }
@@ -35587,7 +35620,7 @@ repos.command("branches <name-or-id>").description("List branches of a repositor
35587
35620
  repos.action(run(repositoriesListCommand));
35588
35621
  var plugins = program.command("plugins").description("Connect plugins (organization-wide, or to one environment with --env)");
35589
35622
  plugins.command("list").description("List connected plugins").option("-e, --env <env>", "Environment name or ID").option("-a, --all", "Include plugins that are not connected").action(run(pluginsListCommand));
35590
- plugins.command("oauth <pluginId>").description("Start an OAuth connection and print the URL to open").option("-e, --env <env>", "Environment name or ID").action(run(pluginsOAuthCommand));
35623
+ plugins.command("oauth <pluginId>").description("Start an OAuth connection and print the URL to open").option("-e, --env <env>", "Environment name or ID").option("--read-only", "Request read-only access, for plugins that support it").action(run(pluginsOAuthCommand));
35591
35624
  plugins.command("connect <pluginId>").description("Connect a plugin with credentials: replicas plugins connect posthog -s apiKey=... -s region=us").option("-e, --env <env>", "Environment name or ID").option("-s, --set <key=value>", "Credential field (repeatable)", collect, []).action(run(pluginsConnectCommand));
35592
35625
  plugins.command("disconnect <pluginId>").description("Disconnect a plugin").option("-e, --env <env>", "Environment name or ID").option("-c, --connection <connectionId>", "Disconnect only this connection").action(run(pluginsDisconnectCommand));
35593
35626
  var skills = program.command("skills").description("Organization skills learned from users");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "replicas-cli",
3
- "version": "0.3.148",
3
+ "version": "0.3.150",
4
4
  "description": "CLI for managing Replicas workspaces - SSH into cloud dev environments with automatic port forwarding",
5
5
  "main": "dist/index.cjs",
6
6
  "bin": {