From f0c86f9b2c970ee05ecb56de85ce6f1675fcbd7a Mon Sep 17 00:00:00 2001 From: yulia-ivashko Date: Thu, 6 Aug 2026 17:41:34 +0300 Subject: [PATCH 1/2] chore: track OpenCode 1.18.12 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OpenChamber moved to SDK 1.18.12 while this package still asked for plugin API 1.18.8, whose own SDK dependency is 1.18.8. Two versions of the same SDK in one dependency tree stopped the Electron package from building at all: the packager walks production dependencies and could not resolve the nested one. The workspace surface is unchanged across those releases — the v2 client, the generated SDK and the generated types carry the same workspace API and types, so nothing in this package had to adapt. The runtime image tracks the same version, so the CLI inside a workspace matches the API the host talks to. --- bun.lock | 6 +++--- package.json | 2 +- runtime-image/Dockerfile | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bun.lock b/bun.lock index 4754a6b..42721cd 100644 --- a/bun.lock +++ b/bun.lock @@ -5,7 +5,7 @@ "": { "name": "@openchamber/opencode-container-workspace", "dependencies": { - "@opencode-ai/plugin": "1.18.8", + "@opencode-ai/plugin": "1.18.12", }, "devDependencies": { "typescript": "5.9.3", @@ -39,9 +39,9 @@ "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.6", "", { "dependencies": { "@tybys/wasm-util": "^0.10.3" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg=="], - "@opencode-ai/plugin": ["@opencode-ai/plugin@1.18.8", "", { "dependencies": { "@ai-sdk/provider": "3.0.8", "@opencode-ai/sdk": "1.18.8", "effect": "4.0.0-beta.83", "zod": "4.1.8" }, "peerDependencies": { "@opentui/core": ">=0.4.5", "@opentui/keymap": ">=0.4.5", "@opentui/solid": ">=0.4.5" }, "optionalPeers": ["@opentui/core", "@opentui/keymap", "@opentui/solid"] }, "sha512-ADO2XvuStRHWSXOhFYnDrM1ZOjcSokh5/6atp9xtgVZWic/UdW6BSXgJkOGB3Ud9+S0rEmYxTCRTH/7Mt4OSDg=="], + "@opencode-ai/plugin": ["@opencode-ai/plugin@1.18.12", "", { "dependencies": { "@ai-sdk/provider": "3.0.8", "@opencode-ai/sdk": "1.18.12", "effect": "4.0.0-beta.83", "zod": "4.1.8" }, "peerDependencies": { "@opentui/core": ">=0.4.5", "@opentui/keymap": ">=0.4.5", "@opentui/solid": ">=0.4.5" }, "optionalPeers": ["@opentui/core", "@opentui/keymap", "@opentui/solid"] }, "sha512-p+vOKlWMTAl0ix97hg3aELlVM/jNhIi0kOZEzY+Bo8W//hliw5vmDTuCnOJh0QdQl5fE9uaHzaCJR9qG9YodOQ=="], - "@opencode-ai/sdk": ["@opencode-ai/sdk@1.18.8", "", { "dependencies": { "cross-spawn": "7.0.6" } }, "sha512-8vi5UBKFFgc+fnyKhZhGUxiIWMtUuN00VAInnK9JO6g6EC8WvWefP+ccTBQD023zod69JaEoAzGgO8hdxXHUaw=="], + "@opencode-ai/sdk": ["@opencode-ai/sdk@1.18.12", "", { "dependencies": { "cross-spawn": "7.0.6" } }, "sha512-Skjm0uRWqIiL9BQliZSrvnBflT99q1aGhT2pATNwli2WU8XSKm4lhZJFay7dIzjrA5C9SfgK+YSeoES2PbFugA=="], "@oxc-project/types": ["@oxc-project/types@0.139.0", "", {}, "sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw=="], diff --git a/package.json b/package.json index 20e2826..4069939 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "test": "vitest run" }, "dependencies": { - "@opencode-ai/plugin": "1.18.8" + "@opencode-ai/plugin": "1.18.12" }, "devDependencies": { "typescript": "5.9.3", diff --git a/runtime-image/Dockerfile b/runtime-image/Dockerfile index 7665ada..3b180e3 100644 --- a/runtime-image/Dockerfile +++ b/runtime-image/Dockerfile @@ -1,7 +1,7 @@ ARG NODE_BASE_IMAGE FROM ${NODE_BASE_IMAGE} -ARG OPENCODE_VERSION=1.18.8 +ARG OPENCODE_VERSION=1.18.12 ARG NPM_VERSION=11.18.0 # npm vendors these two and still ships versions with published denial-of-service # advisories, so the fixed releases are installed over the vendored copies. Both are From bb1b7d92dc934f3d6cff3baa0fd6e8b920a50dc9 Mon Sep 17 00:00:00 2001 From: yulia-ivashko Date: Thu, 6 Aug 2026 17:52:55 +0300 Subject: [PATCH 2/2] fix: stop declaring a types-only package as a production dependency MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `@opencode-ai/plugin` appears exactly once in this package, as an `import type` in `src/plugin.d.ts`. No runtime code loads it. Declaring it under `dependencies` made it part of every consumer's production tree, so the Electron packager walked it and demanded its transitive SDK — which, once OpenChamber moved to 1.18.12 while this package asked for 1.18.8, could not be resolved and stopped the package from building at all. Aligning the versions removes today's mismatch; moving the dependency removes the reason a mismatch could break packaging in the first place. This package now ships no production dependencies, which is what a plugin loaded by its host should look like. --- bun.lock | 4 +--- package.json | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/bun.lock b/bun.lock index 42721cd..1fb4f74 100644 --- a/bun.lock +++ b/bun.lock @@ -4,10 +4,8 @@ "workspaces": { "": { "name": "@openchamber/opencode-container-workspace", - "dependencies": { - "@opencode-ai/plugin": "1.18.12", - }, "devDependencies": { + "@opencode-ai/plugin": "1.18.12", "typescript": "5.9.3", "vitest": "^4.1.5", "ws": "^8.18.3", diff --git a/package.json b/package.json index 4069939..2d3f825 100644 --- a/package.json +++ b/package.json @@ -28,10 +28,8 @@ "lint": "bun run build", "test": "vitest run" }, - "dependencies": { - "@opencode-ai/plugin": "1.18.12" - }, "devDependencies": { + "@opencode-ai/plugin": "1.18.12", "typescript": "5.9.3", "vitest": "^4.1.5", "ws": "^8.18.3"