From 5a17f44da4847f92fd153d825d586a5ab0887048 Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Tue, 12 Aug 2025 12:28:08 -0400 Subject: [PATCH] support OPENCODE_PERMISSION json env variable --- packages/opencode/src/config/config.ts | 4 ++++ packages/opencode/src/flag/flag.ts | 1 + 2 files changed, 5 insertions(+) diff --git a/packages/opencode/src/config/config.ts b/packages/opencode/src/config/config.ts index a8d84d8b..8a373d6f 100644 --- a/packages/opencode/src/config/config.ts +++ b/packages/opencode/src/config/config.ts @@ -110,6 +110,10 @@ export namespace Config { ].map((x) => "file://" + x), ) + if (Flag.OPENCODE_PERMISSION) { + result.permission = mergeDeep(result.permission ?? {}, JSON.parse(Flag.OPENCODE_PERMISSION)) + } + // Handle migration from autoshare to share field if (result.autoshare === true && !result.share) { result.share = "auto" diff --git a/packages/opencode/src/flag/flag.ts b/packages/opencode/src/flag/flag.ts index b39ce6a9..38253d72 100644 --- a/packages/opencode/src/flag/flag.ts +++ b/packages/opencode/src/flag/flag.ts @@ -3,6 +3,7 @@ export namespace Flag { export const OPENCODE_DISABLE_WATCHER = truthy("OPENCODE_DISABLE_WATCHER") export const OPENCODE_CONFIG = process.env["OPENCODE_CONFIG"] export const OPENCODE_DISABLE_AUTOUPDATE = truthy("OPENCODE_DISABLE_AUTOUPDATE") + export const OPENCODE_PERMISSION = process.env["OPENCODE_PERMISSION"] function truthy(key: string) { const value = process.env[key]?.toLowerCase()