export const ACP_TERMINAL_AUTH_FLAG = "--acp-terminal-auth"; export interface AcpTerminalAuthArgs { args: string[]; terminalAuth: boolean; } export function prepareAcpTerminalAuthArgs(rawArgs: readonly string[]): AcpTerminalAuthArgs { const withoutAuthFlag: string[] = []; let terminalAuth = false; for (const arg of rawArgs) { if (arg === ACP_TERMINAL_AUTH_FLAG) { terminalAuth = true; continue; } withoutAuthFlag.push(arg); } if (!terminalAuth) { return { args: withoutAuthFlag, terminalAuth: false }; } const args: string[] = []; for (let i = 0; i < withoutAuthFlag.length; i++) { const arg = withoutAuthFlag[i]; if (arg === "--mode") { i++; continue; } if (arg.startsWith("--mode=")) { continue; } args.push(arg); } return { args, terminalAuth: true }; }