* Add openapi provider catalog design notes * Add OpenAPI spec format adapter support * Add Google and Microsoft spec format adapters * Preserve streaming spec format refresh * Move provider add surfaces into catalog presets * Fix provider catalog health checks * Fix Google Directory health check args * Format design notes * Add openapi provider service split migration * Fix service split blob migration * Read all provider operation rows for the migration plan * Assign provider operations by fresh-add spec ownership * Fix Microsoft service split ownership * Map singular mail folder and users profile segments * Seed add form identity from the catalog preset name * Use OIDC id token for OAuth identity labels * Handle OAuth health without probes * Canonicalize Microsoft scopes and decode JWT claims as UTF-8 * Update lockfile for provider package dependency changes * Package provider service split migration * Retarget orphan guardrail policies as dormant rows in the cloud runner * Retarget orphan approve policies too * Fold provider catalogs into openapi
Showing the changes to examples/all-plugins/src (1 of 148 files). Show all
Unified · Split
| @@ -33,12 +33,19 @@ import { · 32 unmodified lines | |||
| 33 | } from "@executor-js/sdk"; | 33 | } from "@executor-js/sdk"; |
| 34 | 34 | ||
| 35 | import { fileSecretsPlugin } from "@executor-js/plugin-file-secrets"; | 35 | import { fileSecretsPlugin } from "@executor-js/plugin-file-secrets"; |
| 36 | import { googlePlugin } from "@executor-js/plugin-google"; | 36 | import { |
| 37 | googleCatalog, | ||
| 38 | googleDiscoveryAdapter, | ||
| 39 | } from "@executor-js/plugin-openapi/providers/google"; | ||
| 37 | import { graphqlPlugin } from "@executor-js/plugin-graphql"; | 40 | import { graphqlPlugin } from "@executor-js/plugin-graphql"; |
| 38 | import { keychainPlugin } from "@executor-js/plugin-keychain"; | 41 | import { keychainPlugin } from "@executor-js/plugin-keychain"; |
| 39 | import { mcpPlugin } from "@executor-js/plugin-mcp"; | 42 | import { mcpPlugin } from "@executor-js/plugin-mcp"; |
| 40 | import { onepasswordPlugin } from "@executor-js/plugin-onepassword"; | 43 | import { onepasswordPlugin } from "@executor-js/plugin-onepassword"; |
| 41 | import { openApiPlugin, variable } from "@executor-js/plugin-openapi"; | 44 | import { openApiPlugin, variable } from "@executor-js/plugin-openapi"; |
| 45 | import { | ||
| 46 | microsoftCatalog, | ||
| 47 | microsoftGraphAdapter, | ||
| 48 | } from "@executor-js/plugin-openapi/providers/microsoft"; | ||
| 42 | import { workosVaultPlugin } from "@executor-js/plugin-workos-vault"; | 49 | import { workosVaultPlugin } from "@executor-js/plugin-workos-vault"; |
| 43 | 50 | ||
| 44 | // --------------------------------------------------------------------------- | 51 | // --------------------------------------------------------------------------- |
| @@ -78,10 +85,12 @@ const plugins = [ · 33 unmodified lines | |||
| 78 | // Integration plugins — these declare their own schemas (tables), register | 85 | // Integration plugins — these declare their own schemas (tables), register |
| 79 | // integrations via their extension methods (`addSpec` / `addServer` / | 86 | // integrations via their extension methods (`addSpec` / `addServer` / |
| 80 | // `addIntegration`), and produce tools per connection. | 87 | // `addIntegration`), and produce tools per connection. |
| 81 | googlePlugin(), | ||
| 82 | graphqlPlugin(), | 88 | graphqlPlugin(), |
| 83 | mcpPlugin({ dangerouslyAllowStdioMCP: false }), | 89 | mcpPlugin({ dangerouslyAllowStdioMCP: false }), |
| 84 | openApiPlugin(), | 90 | openApiPlugin({ |
| 91 | presets: [...googleCatalog, ...microsoftCatalog], | ||
| 92 | specFormats: [googleDiscoveryAdapter, microsoftGraphAdapter], | ||
| 93 | }), | ||
| 85 | 94 | ||
| 86 | // workos-vault is a cloud-hosted credential provider. It would contribute a | 95 | // workos-vault is a cloud-hosted credential provider. It would contribute a |
| 87 | // "workos-vault" provider if credentials were available. We skip it here | 96 | // "workos-vault" provider if credentials were available. We skip it here |
| @@ -418,7 +427,7 @@ const program = Effect.gen(function* () { · 330 unmodified lines | |||
| 418 | console.log(" executor.fileSecrets.filePath: ", executor.fileSecrets.filePath); | 427 | console.log(" executor.fileSecrets.filePath: ", executor.fileSecrets.filePath); |
| 419 | 428 | ||
| 420 | // executor.mcp.addServer({ transport: "remote", name: "...", endpoint: "...", slug: "..." }); | 429 | // executor.mcp.addServer({ transport: "remote", name: "...", endpoint: "...", slug: "..." }); |
| 421 | // executor.google.addBundle({ urls: ["..."], slug: "google" }); | 430 | // Google catalog rows are added through executor.openapi.addSpec with specFormat "google-discovery". |
| 422 | // executor.onepassword.configure({ auth: { kind: "desktop-app", accountName: "..." }, vaultId: "..." }); | 431 | // executor.onepassword.configure({ auth: { kind: "desktop-app", accountName: "..." }, vaultId: "..." }); |
| 423 | 432 | ||
| 424 | // ------------------------------------------------------------------------- | 433 | // ------------------------------------------------------------------------- |