Repository navigation
Description
Description
On Windows 11 ARM64, the native ARM64 OpenCode binary works for non-interactive commands, but the TUI fails to initialize.
The native binary successfully runs commands like:
opencode.exe --versionopencode.exe --helpopencode.exe debug --helpopencode.exe debug paths
However, starting the interactive TUI does not start correctly and logs this error:
Failed to initialize OpenTUI render library: bun:ffi dlopen() is not available in this build (TinyCC is disabled)
Environment
- OS: Windows 11 ARM64
- Architecture: native ARM64
- Installation method: npm global install
- Native binary path:
C:\Users\<user>\AppData\Roaming\npm\node_modules\opencode-ai\node_modules\opencode-windows-arm64\bin\opencode.exe
OpenCode version
Observed from direct ARM64 binary:
1.3.0
Also noting that opencode from PATH reported 1.3.2 in my environment, so there may be version/path inconsistency locally. If needed, I can provide more details, but the native ARM64 binary issue below was reproduced directly from the ARM64 executable path.
Steps to reproduce
- Install OpenCode on Windows ARM64 via npm
- Run the native ARM64 binary directly:
C:\Users\<user>\AppData\Roaming\npm\node_modules\opencode-ai\node_modules\opencode-windows-arm64\bin\opencode.exe
- Alternatively run:
C:\Users\<user>\AppData\Roaming\npm\node_modules\opencode-ai\node_modules\opencode-windows-arm64\bin\opencode.exe --print-logs --log-level DEBUG
- Observe startup behavior
Expected behavior
The OpenCode TUI should initialize and start normally on the native Windows ARM64 build.
Actual behavior
The process does not start the TUI correctly and logs:
ERROR ... Failed to initialize OpenTUI render library: bun:ffi dlopen() is not available in this build (TinyCC is disabled)
ERROR ... Error: Failed to initialize OpenTUI render library: bun:ffi dlopen() is not available in this build (TinyCC is disabled)
In my testing, the process stayed alive until manually terminated / timed out, rather than exiting cleanly.
Additional notes
- This seems different from the existing Windows OpenTUI DLL/path issues that fail with
LoadLibrary/ DLL error codes. - This also seems different from the existing Windows ARM64 x64-emulation crash report, since this was reproduced against the native ARM64 binary directly.
- Non-interactive commands work, so the problem appears specific to OpenTUI initialization on Windows ARM64 native.
- Related but possibly separate: I have also seen instability when using the x64 build under emulation on Windows ARM64, but this report is specifically about the native ARM64 binary failing to initialize OpenTUI.
If useful, I can provide the exact command output and more environment details.
Activity
johnW-ret commentedon Mar 28, 2026
Getting this error as well
r12f commentedon Apr 19, 2026
same here as well on windows arm64
RachelXiaolan commentedon May 4, 2026
getting same ERROR as well:
Windows 11 ARM64
Node v25.9.0 arm64
npm global installed @kilocode/[email protected]
kilo --help works
kilo run "say hi" works
kilo / kilo . exits immediately
DEBUG log:
Failed to initialize OpenTUI render library: bun:ffi dlopen() is not available in this build (TinyCC is disabled)
Milo1414 commentedon Jun 5, 2026
Getting same Error as well
purpesec commentedon Jun 8, 2026
Please resolve this as quickly as possible
SoulOH commentedon Jun 28, 2026
Still happening on v1.17.11, Windows 11 ARM64 (Snapdragon X Elite). arm64 native binary, npm install.
runworks, TUI andopencode webdon't. Same TinyCC/bun:ffi cause, but mine fails in the PTY layer instead of OpenTUI:So the missing bun:ffi/dlopen breaks the PTY server too, not just OpenTUI.
Workaround: force the x64 build, runs fine under emulation.
MCapricorns commentedon Jul 6, 2026
Once TinyCC PR is merged, bun:ffi should be available on Windows ARM64.
AllHailTheFox commentedon Jul 7, 2026
This worked but I still had some issues with postinstall.mjs which hardcoded the os.arch so even if the machine x86 emulation worked it will still fail.
Fix: Manually copy x64 exe into ~/.npm/node_modules/opencode-ai/bin/opencode.exe after install (or patch postinstall.mjs to add a fallback chain that tries x64 if arm64 fails).
Hopefully this helps someone~
Post Edit that shit didn't work.... Instead you can do serve opencode serve --port XXXX and use it via web instead. you can find more here https://opencode.ai/docs/server/
KondeU commentedon Jul 9, 2026
thanks AllHailTheFox, it is a nice solution for temporarily getting around it!
dil-mange-amore commentedon Jul 19, 2026
bug still happens on 1.18.3, the workaround given by @AllHailTheFox also doesnt work, end up with something like this.
9 remaining items
kareldonk commentedon Aug 17, 2026
Still a problem in the latest version on ARM64 Windows 11 (Surface 12).
airtaxi commentedon Aug 21, 2026
Ran into this on Windows ARM64 too. The official ARM64 build is compiled with a Bun that has bun:ffi disabled on this platform. That was fixed in Bun 1.4.0 (oven-sh/bun#28055), but the official releases are still built with an older Bun.
So I put together a small pipeline that rebuilds the CLI from the official tag with Bun 1.4.0:
https://github.com/airtaxi/opencode-windows-arm64
It checks for new tags every 6 hours and publishes the win32-arm64 binary along with a Scoop manifest:
Tested on Snapdragon X2 Elite Extreme (ASUS Zenbook A16). With Bun 1.4.0 the "TinyCC is disabled" error is gone and the TUI opens fine. The binaries aren't official and aren't signed, but the only change from the official build is the Bun version.
beijinghulei139 commentedon Aug 31, 2026
so,who can fix this bug? thanks
beijinghulei139 commentedon Aug 31, 2026
I give a solution,maybe can help you.
https://gitee.com/superlei/arm_winos_fix_opencode_tui
https://gitee.com/superlei/arm_winos_fix_opencode_tui/blob/master/README.md
https://gitee.com/superlei/arm_winos_fix_opencode_tui/issues/IKC6ZA
everything411 commentedon Aug 31, 2026
this is a workaround but not a fix
chuxuehaocai commentedon Sep 10, 2026
This is a workaround. I hope we can run a native ARM64 build instead of relying on an x64 build.
Anyway, thank you for this solution.
kareldonk commentedon Sep 10, 2026
this has been open since march. jesus fucking christ
eatfrog commentedon Sep 17, 2026
still an issue..
sanathusk commentedon Sep 22, 2026
Had the same issue, the issue is now RESOLVED on my windows 11 arm 64 snapdragon laptop, after i upgraded to latest version of bun (1.4.2).
Here is my combination, drop a message if the combination work for you or not:
jcompagner commentedon Sep 22, 2026
this doesn't really matter right?
You can install opencode with what every tool you want (npm, scoop, winget) the thing is opencode is always shipped as an opencode.exe that has bun included in it right?
so it doesn't matter if you installed bun 1.4.x, opencode doesn't use 1.4 but is still on 1.3.14 i think
sanathusk commentedon Sep 23, 2026
Not sure what fixed it, but i am glad it is finally working now
neriousy commentedon Oct 1, 2026
Bun 1.4.2 adds
bun:ffi/TinyCC support for Windows ARM64, which the TUI needs. OpenCode has been built with Bun 1.4.2 since #47446, and a user on a Windows 11 ARM64 Snapdragon laptop confirmed above that the TUI now starts.Closing as completed. If the TUI still doesn't start on Windows ARM64 with the latest release, please open a new issue with your version and the error.
AkimioJR commentedon Oct 11, 2026
@neriousy OpenCode v1.19.0 still encounters errors in my ARM64 environment (Windows VM running on Parallels for Mac).
jcompagner commentedon Oct 12, 2026
i think you need to go to opencode V2 which is on the latest bun version and does have those fixes.