diff --git a/packages/opencode/src/cli/cmd/tui/thread.ts b/packages/opencode/src/cli/cmd/tui/thread.ts index 66a22bf9..1c2baeff 100644 --- a/packages/opencode/src/cli/cmd/tui/thread.ts +++ b/packages/opencode/src/cli/cmd/tui/thread.ts @@ -82,7 +82,13 @@ export const TuiThreadCommand = cmd({ return undefined })() - const worker = new Worker("./src/cli/cmd/tui/worker.ts") + const worker = new Worker("./src/cli/cmd/tui/worker.ts", { + env: Object.fromEntries( + Object.entries(process.env).filter( + (entry): entry is [string, string] => entry[1] !== undefined, + ), + ), + }) worker.onerror = console.error const client = Rpc.client(worker) process.on("uncaughtException", (e) => { diff --git a/packages/opencode/src/index.ts b/packages/opencode/src/index.ts index 9c2877d2..7fd7aeb1 100644 --- a/packages/opencode/src/index.ts +++ b/packages/opencode/src/index.ts @@ -62,7 +62,8 @@ const cli = yargs(hideBin(process.argv)) })(), }) - process.env["OPENCODE"] = "1" + process.env.AGENT = "1" + process.env.OPENCODE = "1" Log.Default.info("opencode", { version: Installation.VERSION, diff --git a/packages/opencode/src/tool/bash.ts b/packages/opencode/src/tool/bash.ts index e7b7d738..febd253a 100644 --- a/packages/opencode/src/tool/bash.ts +++ b/packages/opencode/src/tool/bash.ts @@ -144,6 +144,9 @@ export const BashTool = Tool.define("bash", { const proc = spawn(params.command, { shell: true, cwd: Instance.directory, + env: { + ...process.env, + }, stdio: ["ignore", "pipe", "pipe"], detached: process.platform !== "win32", })