import path from "node:path" export function selfCommand() { const runtime = path.basename(process.execPath, path.extname(process.execPath)).toLowerCase() if (runtime !== "bun" && runtime !== "node" && runtime !== "nodejs") return [process.execPath] if (!process.argv[1]) throw new Error("Failed to resolve CLI entrypoint") if (runtime === "node" || runtime === "nodejs") return [process.execPath, ...nodeFlags(), process.argv[1]] return [process.execPath, process.argv[1]] } function nodeFlags() { return process.execArgv.flatMap((arg, index, args) => { if (index > 0 && args[index - 1] === "--conditions") return [] if (arg === "--conditions") return args[index + 1] ? [arg, args[index + 1]] : [] if (arg.startsWith("--conditions=")) return [arg] if ( arg === "--experimental-ffi" || arg === "--use-system-ca" || arg === "--enable-source-maps" || arg === "--no-addons" ) return [arg] if (arg === "--no-warnings" || arg.startsWith("--disable-warning=")) return [arg] return [] }) }