From 5de95e92e361ba45e497984d0b096cdb6f46a749 Mon Sep 17 00:00:00 2001 From: Shubham Naik Date: Fri, 20 Mar 2026 20:15:17 -0700 Subject: [PATCH] feat: allow users to set cwd (#1480) --- src/types/protocol_v2.ts | 2 ++ src/websocket/listener/client.ts | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/types/protocol_v2.ts b/src/types/protocol_v2.ts index 5c13440..5cd0226 100644 --- a/src/types/protocol_v2.ts +++ b/src/types/protocol_v2.ts @@ -363,6 +363,8 @@ export interface TerminalSpawnCommand { terminal_id: string; cols: number; rows: number; + /** Agent's current working directory. Falls back to bootWorkingDirectory if absent. */ + cwd?: string; } export interface TerminalInputCommand { diff --git a/src/websocket/listener/client.ts b/src/websocket/listener/client.ts index ea0da88..4196686 100644 --- a/src/websocket/listener/client.ts +++ b/src/websocket/listener/client.ts @@ -1018,7 +1018,11 @@ async function connectWithRetry( // ── Terminal commands (no runtime scope required) ────────────────── if (parsed.type === "terminal_spawn") { - handleTerminalSpawn(parsed, socket, runtime.bootWorkingDirectory); + handleTerminalSpawn( + parsed, + socket, + parsed.cwd ?? runtime.bootWorkingDirectory, + ); return; }