From 0cdd4e4e1603361e52fade880c23652738d28098 Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Mon, 9 Mar 2026 23:32:28 -0400 Subject: [PATCH] core: fix dependency installation failures behind corporate proxies or in CI by disabling Bun cache when network interception is detected --- packages/opencode/src/config/config.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/opencode/src/config/config.ts b/packages/opencode/src/config/config.ts index 4be232350b..4d7c3b054d 100644 --- a/packages/opencode/src/config/config.ts +++ b/packages/opencode/src/config/config.ts @@ -34,6 +34,8 @@ import { Account } from "@/account" import { ConfigPaths } from "./paths" import { Filesystem } from "@/util/filesystem" import { Npm } from "@/npm" +import { BunProc } from "@/bun" +import { proxied } from "@/util/proxied" export namespace Config { const ModelId = z.string().meta({ $ref: "https://models.dev/model-schema.json#/$defs/Model" }) @@ -287,7 +289,14 @@ export namespace Config { // Install any additional dependencies defined in the package.json // This allows local plugins and custom tools to use external packages - await Npm.install(dir).catch((err) => { + await BunProc.run( + [ + "install", + // TODO: get rid of this case (see: https://github.com/oven-sh/bun/issues/19936) + ...(proxied() || process.env.CI ? ["--no-cache"] : []), + ], + { cwd: dir }, + ).catch((err) => { log.warn("failed to install dependencies", { dir, error: err }) }) }