From 0df26997b414d387b22c09685234d6c010b99673 Mon Sep 17 00:00:00 2001 From: mkorwel Date: Thu, 19 Mar 2026 00:09:16 -0700 Subject: [PATCH] feat(workspaces): support --open flag for terminal target selection --- .gemini/skills/workspaces/scripts/orchestrator.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.gemini/skills/workspaces/scripts/orchestrator.ts b/.gemini/skills/workspaces/scripts/orchestrator.ts index efa8d37dff..59949e9cc5 100644 --- a/.gemini/skills/workspaces/scripts/orchestrator.ts +++ b/.gemini/skills/workspaces/scripts/orchestrator.ts @@ -139,8 +139,15 @@ export async function runOrchestrator(args: string[], env: NodeJS.ProcessEnv = p const finalSSH = provider.getRunCommand(containerWrap, { interactive: true }); const isWithinGemini = !!env.GEMINI_CLI || !!env.GEMINI_SESSION_ID || !!env.GCLI_SESSION_ID; - const terminalTarget = config.terminalTarget || 'tab'; - const forceMainTerminal = true; // Stay in current terminal for E2E verification + + // 1.5 Handle --open override + const openIdx = args.indexOf('--open'); + let terminalTarget = config.terminalTarget || 'tab'; + if (openIdx !== -1 && args[openIdx + 1]) { + terminalTarget = args[openIdx + 1]; + } + + const forceMainTerminal = terminalTarget === 'foreground'; if (!forceMainTerminal && isWithinGemini && env.TERM_PROGRAM === 'iTerm.app') { const tempCmdPath = path.join(process.env.TMPDIR || '/tmp', `workspace-ssh-${prNumber}.sh`);