diff options
| author | Aiden Cline <[email protected]> | 2025-12-09 15:44:37 -0600 |
|---|---|---|
| committer | Aiden Cline <[email protected]> | 2025-12-09 15:44:56 -0600 |
| commit | 8a9c7a4ef33ee0fd401ab53c1bb52b46138c39b2 (patch) | |
| tree | 57f9498b9f3a683f25b420519fc69ea9780df0ab | |
| parent | 2dad56c9a214052f55dc067d74436aaa887e3b9d (diff) | |
| download | opencode-8a9c7a4ef33ee0fd401ab53c1bb52b46138c39b2.tar.gz opencode-8a9c7a4ef33ee0fd401ab53c1bb52b46138c39b2.zip | |
add OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT
| -rw-r--r-- | packages/opencode/src/flag/flag.ts | 11 | ||||
| -rw-r--r-- | packages/opencode/src/tool/bash.ts | 8 |
2 files changed, 11 insertions, 8 deletions
diff --git a/packages/opencode/src/flag/flag.ts b/packages/opencode/src/flag/flag.ts index 924f585c4..3cf7f528d 100644 --- a/packages/opencode/src/flag/flag.ts +++ b/packages/opencode/src/flag/flag.ts @@ -11,8 +11,8 @@ export namespace Flag { export const OPENCODE_ENABLE_EXPERIMENTAL_MODELS = truthy("OPENCODE_ENABLE_EXPERIMENTAL_MODELS") export const OPENCODE_DISABLE_AUTOCOMPACT = truthy("OPENCODE_DISABLE_AUTOCOMPACT") export const OPENCODE_FAKE_VCS = process.env["OPENCODE_FAKE_VCS"] - export const OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH = - process.env["OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH"] + export const OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH = number("OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH") + export const OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT = number("OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT") // Experimental export const OPENCODE_EXPERIMENTAL = truthy("OPENCODE_EXPERIMENTAL") @@ -25,4 +25,11 @@ export namespace Flag { const value = process.env[key]?.toLowerCase() return value === "true" || value === "1" } + + function number(key: string) { + const value = process.env[key] + if (!value) return undefined + const parsed = Number(value) + return Number.isInteger(parsed) && parsed > 0 ? parsed : undefined + } } diff --git a/packages/opencode/src/tool/bash.ts b/packages/opencode/src/tool/bash.ts index da92baa68..d1def2b74 100644 --- a/packages/opencode/src/tool/bash.ts +++ b/packages/opencode/src/tool/bash.ts @@ -16,12 +16,8 @@ import { Flag } from "@/flag/flag.ts" import path from "path" import { iife } from "@/util/iife" -const DEFAULT_MAX_OUTPUT_LENGTH = 30_000 -const MAX_OUTPUT_LENGTH = (() => { - const parsed = Number(Flag.OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH) - return Number.isInteger(parsed) && parsed > 0 ? parsed : DEFAULT_MAX_OUTPUT_LENGTH -})() -const DEFAULT_TIMEOUT = 2 * 60 * 1000 +const MAX_OUTPUT_LENGTH = Flag.OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH || 30_000 +const DEFAULT_TIMEOUT = Flag.OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT || 2 * 60 * 1000 const SIGKILL_TIMEOUT_MS = 200 export const log = Log.create({ service: "bash-tool" }) |
