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
Ctrl-C doesn't clear the input on Windows, it crashes #10538
Digging further, this is caused by how external commands are launched in /packages/opencode/src/installation/index.ts (via Bun Shell). Migrating to Bun Spawn seems to fix the issue for me:
From
$`npm list -g --depth=0`.throws(false).quiet().text(),
To
Bun.spawn(["npm", "list", "-g", "--depth=0"])
plus some try/catch and stdout handling to mimick throws(false).quiet().text() (it's needed for all occurrences in that file).
Some remarks:
Unclear why the one approach works and the other not.
These are only short-running processes. Why do they break ctrl-c permanently?
There are more files that import { $ }, but only the above file seems to produce the issue. At least, after using the bash tool and the !-prompt, ctrl-c still works fine.
As a user, I tried to disable auto-updates via config, but version check logic runs always. Would be nice to have this "as workaround".
The bug exists at least since v1.0.0 (3 months ago), and severely affects Windows users. So even a providing a functional workaround (disable auto-updates) would be a big step forward.
Activity
github-actions commentedon Jan 25, 2026
This issue might be a duplicate of existing issues. Please check:
Feel free to ignore if none of these address your specific case.
InCerryGit commentedon Jan 26, 2026
same issue
tnglemongrass commentedon Jan 27, 2026
Digging further, this is caused by how external commands are launched in /packages/opencode/src/installation/index.ts (via Bun Shell). Migrating to Bun Spawn seems to fix the issue for me:
From
To
plus some try/catch and stdout handling to mimick throws(false).quiet().text() (it's needed for all occurrences in that file).
Some remarks:
import { $ }, but only the above file seems to produce the issue. At least, after using thebashtool and the !-prompt, ctrl-c still works fine.The bug exists at least since v1.0.0 (3 months ago), and severely affects Windows users. So even a providing a functional workaround (disable auto-updates) would be a big step forward.
Hona commentedon Feb 12, 2026
this is fixed as of 1.1.60