From b4171aa8e88c3bd09be970badb41cc750d82f61f Mon Sep 17 00:00:00 2001 From: "Tommy D. Rossi" Date: Sun, 12 Oct 2025 06:24:48 +0200 Subject: [PATCH] fix: `rg` hanging forever when run in bash, waiting for stdin (#3103) Co-authored-by: Aiden Cline --- packages/opencode/src/tool/bash.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/opencode/src/tool/bash.ts b/packages/opencode/src/tool/bash.ts index 0e1d37ec..d4e8ce85 100644 --- a/packages/opencode/src/tool/bash.ts +++ b/packages/opencode/src/tool/bash.ts @@ -1,6 +1,5 @@ import z from "zod/v4" -import { exec } from "child_process" - +import { spawn } from "child_process" import { Tool } from "./tool" import DESCRIPTION from "./bash.txt" import { Permission } from "../permission" @@ -146,9 +145,11 @@ export const BashTool = Tool.define("bash", { }) } - const process = exec(params.command, { + const process = spawn(params.command, { + shell: true, cwd: Instance.directory, signal: ctx.abort, + stdio: ["ignore", "pipe", "pipe"], timeout, })