From b413849c3059585c047256ad6b1caecd37a9232c Mon Sep 17 00:00:00 2001 From: Ben Walding Date: Mon, 12 May 2025 19:25:05 +1000 Subject: [PATCH] chore: Add docker to allowed deeplink commands (#2509) --- documentation/src/utils/install-links.ts | 2 +- ui/desktop/src/components/settings_v2/extensions/deeplink.ts | 2 +- ui/desktop/src/components/settings_v2/extensions/utils.ts | 2 +- ui/desktop/src/extensions.tsx | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/documentation/src/utils/install-links.ts b/documentation/src/utils/install-links.ts index 786a2f83..e6b4365d 100644 --- a/documentation/src/utils/install-links.ts +++ b/documentation/src/utils/install-links.ts @@ -29,7 +29,7 @@ export function getGooseInstallLink(server: MCPServer): string { } const parts = server.command.split(" "); - const baseCmd = parts[0]; // jbang, npx or uvx + const baseCmd = parts[0]; // docker, jbang, npx or uvx const args = parts.slice(1); // remaining arguments const queryParams = [ diff --git a/ui/desktop/src/components/settings_v2/extensions/deeplink.ts b/ui/desktop/src/components/settings_v2/extensions/deeplink.ts index fd1bf78e..51dc0709 100644 --- a/ui/desktop/src/components/settings_v2/extensions/deeplink.ts +++ b/ui/desktop/src/components/settings_v2/extensions/deeplink.ts @@ -15,7 +15,7 @@ function getStdioConfig( timeout: number ) { // Validate that the command is one of the allowed commands - const allowedCommands = ['jbang', 'npx', 'uvx', 'goosed']; + const allowedCommands = ['docker', 'jbang', 'npx', 'uvx', 'goosed']; if (!allowedCommands.includes(cmd)) { toastService.handleError( 'Invalid Command', diff --git a/ui/desktop/src/components/settings_v2/extensions/utils.ts b/ui/desktop/src/components/settings_v2/extensions/utils.ts index 2e26c02d..45616836 100644 --- a/ui/desktop/src/components/settings_v2/extensions/utils.ts +++ b/ui/desktop/src/components/settings_v2/extensions/utils.ts @@ -168,7 +168,7 @@ export async function replaceWithShims(cmd: string) { export function removeShims(cmd: string) { // Only remove shims if the path matches our known shim patterns - const shimPatterns = [/goosed$/, /jbang$/, /npx$/, /uvx$/]; + const shimPatterns = [/goosed$/, /docker$/, /jbang$/, /npx$/, /uvx$/]; // Check if the command matches any shim pattern const isShim = shimPatterns.some((pattern) => pattern.test(cmd)); diff --git a/ui/desktop/src/extensions.tsx b/ui/desktop/src/extensions.tsx index 2ea4221e..d7215e29 100644 --- a/ui/desktop/src/extensions.tsx +++ b/ui/desktop/src/extensions.tsx @@ -362,7 +362,7 @@ function getStdioConfig( description: string, parsedTimeout: number ) { - const allowedCommands = ['jbang', 'npx', 'uvx', 'goosed']; + const allowedCommands = ['docker', 'jbang', 'npx', 'uvx', 'goosed']; if (!allowedCommands.includes(cmd)) { handleError( `Failed to install extension: Invalid command: ${cmd}. Only ${allowedCommands.join(', ')} are allowed.`,