Showing the changes to apps (2 of 8 files). Show all
Unified · Split
| @@ -43,8 +43,13 @@ import { · 42 unmodified lines | ||
| 43 | 43 | collectTables, |
| 44 | 44 | } from "@executor-js/api/server"; |
| 45 | 45 | import { googleCatalogOAuthScopesForPreset } from "@executor-js/plugin-openapi/providers/google"; |
| 46 | +import { slackMcpUserScopes } from "@executor-js/react/lib/slack-mcp-oauth"; | |
| 46 | 47 | import { makeDynamicWorkerExecutor } from "@executor-js/runtime-dynamic-worker"; |
| 47 | −import type { AnyPlugin, FirstPartyOAuthClientConfig } from "@executor-js/sdk"; | |
| 48 | +import { | |
| 49 | + IntegrationSlug, | |
| 50 | + type AnyPlugin, | |
| 51 | + type FirstPartyOAuthClientConfig, | |
| 52 | +} from "@executor-js/sdk"; | |
| 48 | 53 | |
| 49 | 54 | import executorConfig from "../../executor.config"; |
| 50 | 55 | import { DbService } from "../db/db"; |
| @@ -136,6 +141,20 @@ const cloudFirstPartyOAuthClients = (): readonly FirstPartyOAuthClientConfig[] = · 85 unmodified lines | ||
| 136 | 141 | }, |
| 137 | 142 | ] |
| 138 | 143 | : []), |
| 144 | + ...(env.FIRST_PARTY_SLACK_CLIENT_ID && env.FIRST_PARTY_SLACK_CLIENT_SECRET | |
| 145 | + ? [ | |
| 146 | + { | |
| 147 | + name: "slack", | |
| 148 | + authorizationUrl: "https://slack.com/oauth/v2_user/authorize", | |
| 149 | + tokenUrl: "https://slack.com/api/oauth.v2.user.access", | |
| 150 | + resource: "https://mcp.slack.com", | |
| 151 | + clientId: env.FIRST_PARTY_SLACK_CLIENT_ID, | |
| 152 | + clientSecret: env.FIRST_PARTY_SLACK_CLIENT_SECRET, | |
| 153 | + integrations: [IntegrationSlug.make("slack")], | |
| 154 | + allowedScopes: slackMcpUserScopes, | |
| 155 | + }, | |
| 156 | + ] | |
| 157 | + : []), | |
| 139 | 158 | ]; |
| 140 | 159 | |
| 141 | 160 | export const CloudHostConfig: Layer.Layer<HostConfig> = Layer.sync(HostConfig, () => ({ |
| @@ -67,6 +67,8 @@ declare global { · 66 unmodified lines | ||
| 67 | 67 | FIRST_PARTY_GITHUB_TOKEN_URL?: string; |
| 68 | 68 | FIRST_PARTY_GOOGLE_CLIENT_ID?: string; |
| 69 | 69 | FIRST_PARTY_GOOGLE_CLIENT_SECRET?: string; |
| 70 | + FIRST_PARTY_SLACK_CLIENT_ID?: string; | |
| 71 | + FIRST_PARTY_SLACK_CLIENT_SECRET?: string; | |
| 70 | 72 | |
| 71 | 73 | // Billing |
| 72 | 74 | AUTUMN_SECRET_KEY?: string; |