You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
bug: opencode-plugin folder not included in install zip #149
changed the title [-]opencode-plugin folder not included in install zip[/-][+]bug: opencode-plugin folder not included in install zip[/+]on Aug 9, 2026
What made it invisible is the fallback in ensureOpencodePlugin(). It resolves process.resourcesPath/opencode-plugin/wmux.js when packaged and a repo-relative path otherwise, and on a miss it warns to a console no user sees and returns. So it worked perfectly in npm run dev and silently did nothing in every install — the failure mode had no symptom beyond the one you noticed by looking.
Why the test suite didn't catch it
There was already a packaging.test.ts. It was written after #81 (wmux-hook.js missing from extraResources, which broke every Claude Code hook) and it asserted two literal entries — the two that had already broken. A test that enumerates the failures it knows about can only ever catch those, and this walked straight past it.
That's now derived instead of enumerated: the test scans src/main/ for process.resourcesPath references and requires each one to be listed in extraResources. Adding a runtime resource without packaging it fails npm test, which gates the release build, so a tag that would ship this bug can't become a download. Verified it fails without the fix before trusting it.
Verified in the artifact, not just the config
resources/opencode-plugin/wmux.js (2366 bytes)
read out of the published wmux-0.47.0-win-x64.zip.
Upgrading
Install 0.47.0 and the plugin installs itself to ~/.config/opencode/plugin/wmux.js on next launch — provided agent integration is enabled, since that write lives behind the consent gate from #132 (Settings → General → Agent integration → Orchestrator plugin). If you'd previously dropped wmux.js in there by hand, wmux will update it in place; it's version-marked, so your own file would have been left alone.
Thanks for the clean report — steps, expected, and why it matters, which is what made it a one-line diagnosis.
Activity
[-]opencode-plugin folder not included in install zip[/-][+]bug: opencode-plugin folder not included in install zip[/+]fix(pty): contain node-pty throws; fix(pkg): ship opencode-plugin; fe…
amirlehmam commentedon Aug 10, 2026
Confirmed and fixed in v0.47.0. Your reproduction was exact — the folder was never in the zip, in any release since the plugin was introduced.
Cause
resources/opencode-pluginwas simply absent fromextraResourcesinelectron-builder.json, so it was never copied next toapp.asar. One line:{ "from": "resources/opencode-plugin", "to": "opencode-plugin" }What made it invisible is the fallback in
ensureOpencodePlugin(). It resolvesprocess.resourcesPath/opencode-plugin/wmux.jswhen packaged and a repo-relative path otherwise, and on a miss it warns to a console no user sees and returns. So it worked perfectly innpm run devand silently did nothing in every install — the failure mode had no symptom beyond the one you noticed by looking.Why the test suite didn't catch it
There was already a
packaging.test.ts. It was written after #81 (wmux-hook.jsmissing fromextraResources, which broke every Claude Code hook) and it asserted two literal entries — the two that had already broken. A test that enumerates the failures it knows about can only ever catch those, and this walked straight past it.That's now derived instead of enumerated: the test scans
src/main/forprocess.resourcesPathreferences and requires each one to be listed inextraResources. Adding a runtime resource without packaging it failsnpm test, which gates the release build, so a tag that would ship this bug can't become a download. Verified it fails without the fix before trusting it.Verified in the artifact, not just the config
read out of the published
wmux-0.47.0-win-x64.zip.Upgrading
Install 0.47.0 and the plugin installs itself to
~/.config/opencode/plugin/wmux.json next launch — provided agent integration is enabled, since that write lives behind the consent gate from #132 (Settings → General → Agent integration → Orchestrator plugin). If you'd previously droppedwmux.jsin there by hand, wmux will update it in place; it's version-marked, so your own file would have been left alone.Thanks for the clean report — steps, expected, and why it matters, which is what made it a one-line diagnosis.
feat(omp): keep oh-my-pi first-class through the 0.47.0 merge
build: package the CLI's shared modules, and derive that from the imp…
fix(cli): resync the checked-in CLI mirror after the spawn-batch flag (…