diff --git a/packages/server/src/utils/builders/compose.ts b/packages/server/src/utils/builders/compose.ts index 89851d84c..77cfc91db 100644 --- a/packages/server/src/utils/builders/compose.ts +++ b/packages/server/src/utils/builders/compose.ts @@ -82,20 +82,29 @@ const sanitizeCommand = (command: string) => { ); } - if (sanitizedCommand.includes("&")) { + if (sanitizedCommand.includes("&")) { // Block single '&' (e.g., backgrounding tasks) or malformed chains like '&&&' - if (/(? cmd.trim()); - const isSafeChain = chains.slice(1).every((cmd) => - cmd.startsWith("docker compose ") || cmd.startsWith("docker-compose ") - ); + const isSafeChain = chains + .slice(1) + .every( + (cmd) => + cmd.startsWith("docker compose ") || + cmd.startsWith("docker-compose "), + ); if (!isSafeChain) { - throw new Error("Chained commands must strictly start with 'docker compose '"); + throw new Error( + "Chained commands must strictly start with 'docker compose '", + ); } }