OpenCode freezes with black screen in Termux proot-distro Ubuntu, cannot exit with Ctrl+C #6526

Open
opened 2026-02-16 18:04:28 -05:00 by yindo · 24 comments
Owner

Originally created by @jyduyfcjufi on GitHub (Jan 16, 2026).

Originally assigned to: @rekram1-node on GitHub.

When running OpenCode in a Ubuntu environment installed via proot-distro in Termux, the application displays a black screen and completely freezes, unable to exit with Ctrl+C.

Steps to Reproduce:

  1. Install proot-distro in Termux
  2. Install Ubuntu: proot-distro install ubuntu
  3. Enter Ubuntu: proot-distro login ubuntu
  4. Install opencode
  5. Run opencode
  6. The application shows a black screen with no content
  7. Pressing Ctrl+C has no response, must use kill command to force terminate

Expected Behavior:
Should display a normal terminal interface.

Actual Behavior:

  • Black screen with no display
  • Cannot exit with Ctrl+C
  • Must force kill the process
Originally created by @jyduyfcjufi on GitHub (Jan 16, 2026). Originally assigned to: @rekram1-node on GitHub. When running OpenCode in a Ubuntu environment installed via proot-distro in Termux, the application displays a black screen and completely freezes, unable to exit with Ctrl+C. Steps to Reproduce: 1. Install proot-distro in Termux 2. Install Ubuntu: proot-distro install ubuntu 3. Enter Ubuntu: proot-distro login ubuntu 4. Install opencode 5. Run opencode 6. The application shows a black screen with no content 7. Pressing Ctrl+C has no response, must use kill command to force terminate Expected Behavior: Should display a normal terminal interface. Actual Behavior: - Black screen with no display - Cannot exit with Ctrl+C - Must force kill the process
yindo added the bug label 2026-02-16 18:04:28 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Jan 16, 2026):

This issue might be a duplicate of or related to existing issues. Please check:

  • #8620: [Regression] v1.1.21 OpenTUI fails to initialize in Termux/PRoot (ARM64) - Similar environment (Termux/PRoot) with initialization failures
  • #7960: OpenCode CLI Critical Runtime Failure - Bun's bunfs compatibility issues in PRoot environments
  • #7843: [Critical] CLI hangs on second run (Deadlock) on Linux ARM64 (Proot/Container environments) - Similar freezing/hanging on ARM64 Proot
  • #7472: OpenCode crashes with "Aborted" on Termux/Debian on second attempt - Similar Termux environment issues
  • #6080: OpenCode TUI Hangs on Fedora Linux - Similar TUI freezing/hanging issues
  • #5361: TUI freezes for ~10 seconds periodically on WSL2 - Similar freezing patterns in virtualized environments

Feel free to ignore if this specific case (black screen + Ctrl+C unresponsiveness in proot-distro Ubuntu) is distinctly different from these issues.

@github-actions[bot] commented on GitHub (Jan 16, 2026): This issue might be a duplicate of or related to existing issues. Please check: - #8620: [Regression] v1.1.21 OpenTUI fails to initialize in Termux/PRoot (ARM64) - Similar environment (Termux/PRoot) with initialization failures - #7960: OpenCode CLI Critical Runtime Failure - Bun's bunfs compatibility issues in PRoot environments - #7843: [Critical] CLI hangs on second run (Deadlock) on Linux ARM64 (Proot/Container environments) - Similar freezing/hanging on ARM64 Proot - #7472: OpenCode crashes with "Aborted" on Termux/Debian on second attempt - Similar Termux environment issues - #6080: OpenCode TUI Hangs on Fedora Linux - Similar TUI freezing/hanging issues - #5361: TUI freezes for ~10 seconds periodically on WSL2 - Similar freezing patterns in virtualized environments Feel free to ignore if this specific case (black screen + Ctrl+C unresponsiveness in proot-distro Ubuntu) is distinctly different from these issues.
Author
Owner

@rekram1-node commented on GitHub (Jan 16, 2026):

Are you using any plugins?

@rekram1-node commented on GitHub (Jan 16, 2026): Are you using any plugins?
Author
Owner

@jyduyfcjufi commented on GitHub (Jan 16, 2026):

No, I'm not using any plugins. This happens with a fresh installation of OpenCode in the proot-distro Ubuntu environment without any additional plugins or configurations.> Are you using any plugins?

@jyduyfcjufi commented on GitHub (Jan 16, 2026): No, I'm not using any plugins. This happens with a fresh installation of OpenCode in the proot-distro Ubuntu environment without any additional plugins or configurations.> Are you using any plugins?
Author
Owner

@maxjust commented on GitHub (Jan 16, 2026):

Same problem, no plugins installed.
Everything was working fine a few days ago.

@maxjust commented on GitHub (Jan 16, 2026): Same problem, no plugins installed. Everything was working fine a few days ago.
Author
Owner

@maxjust commented on GitHub (Jan 16, 2026):

LOG maybe helpful for diagnostic

installed @opencode-ai/plugin@1.1.23

[16.00ms] done
 stderr=Saved lockfile

INFO  2026-01-16T20:55:28 +441ms service=bus type=* subscribing
INFO  2026-01-16T20:55:28 +0ms service=bus type=session.updated subscribing
INFO  2026-01-16T20:55:28 +0ms service=bus type=message.updated subscribing
INFO  2026-01-16T20:55:28 +0ms service=bus type=message.part.updated subscribing
INFO  2026-01-16T20:55:28 +1ms service=bus type=session.updated subscribing
INFO  2026-01-16T20:55:28 +0ms service=bus type=message.updated subscribing
INFO  2026-01-16T20:55:28 +0ms service=bus type=message.part.updated subscribing
INFO  2026-01-16T20:55:28 +0ms service=bus type=session.diff subscribing
INFO  2026-01-16T20:55:28 +0ms service=format init
INFO  2026-01-16T20:55:28 +0ms service=bus type=file.edited subscribing
INFO  2026-01-16T20:55:28 +0ms service=lsp serverIds=deno, typescript, vue, eslint, oxlint, biome, gopls, ruby-lsp, pyright, elixir-ls, zls, csharp, fsharp, sourcekit-lsp, rust, clangd, svelte, astro, jdtls, kotlin-ls, yaml-ls, lua-ls, php intelephense, prisma, dart, ocaml-lsp, bash, terraform, texlab, dockerfile, gleam, clojure-lsp, nixd, tinymist, haskell-language-server enabled LSP servers
INFO  2026-01-16T20:55:28 +0ms service=file.watcher init
INFO  2026-01-16T20:55:28 +2ms service=bus type=command.executed subscribing
INFO  2026-01-16T20:55:28 +0ms service=file.watcher platform=linux backend=inotify watcher backend
INFO  2026-01-16T20:55:28 +2ms service=server event connected
INFO  2026-01-16T20:55:28 +0ms service=bus type=* subscribing
INFO  2026-01-16T20:55:28 +1ms service=server status=started providers
INFO  2026-01-16T20:55:28 +1ms service=provider status=started state
INFO  2026-01-16T20:55:28 +3ms service=models.dev file={} refreshing
INFO  2026-01-16T20:55:28 +0ms service=models.dev file={} refreshing
INFO  2026-01-16T20:55:28 +1ms service=server status=completed duration=679 method=GET path=/event request
INFO  2026-01-16T20:55:28 +0ms service=server status=completed duration=678 method=GET path=/config request
INFO  2026-01-16T20:55:28 +1ms service=server status=completed duration=679 method=GET path=/agent request
INFO  2026-01-16T20:55:28 +2ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd)

Checked 8 installs across 16 packages (no changes) [6.00ms]
 stderr= done
INFO  2026-01-16T20:55:28 +0ms service=vcs branch=develop initialized
INFO  2026-01-16T20:55:28 +0ms service=bus type=file.watcher.updated subscribing
INFO  2026-01-16T20:55:28 +24ms service=server status=completed duration=705 method=GET path=/session request
ERROR 2026-01-16T20:55:38 +9975ms service=default e=The operation timed out. rejection
ERROR 2026-01-16T20:55:38 +0ms service=default e=The operation timed out. rejection
@maxjust commented on GitHub (Jan 16, 2026): LOG maybe helpful for diagnostic ``` installed @opencode-ai/plugin@1.1.23 [16.00ms] done stderr=Saved lockfile INFO 2026-01-16T20:55:28 +441ms service=bus type=* subscribing INFO 2026-01-16T20:55:28 +0ms service=bus type=session.updated subscribing INFO 2026-01-16T20:55:28 +0ms service=bus type=message.updated subscribing INFO 2026-01-16T20:55:28 +0ms service=bus type=message.part.updated subscribing INFO 2026-01-16T20:55:28 +1ms service=bus type=session.updated subscribing INFO 2026-01-16T20:55:28 +0ms service=bus type=message.updated subscribing INFO 2026-01-16T20:55:28 +0ms service=bus type=message.part.updated subscribing INFO 2026-01-16T20:55:28 +0ms service=bus type=session.diff subscribing INFO 2026-01-16T20:55:28 +0ms service=format init INFO 2026-01-16T20:55:28 +0ms service=bus type=file.edited subscribing INFO 2026-01-16T20:55:28 +0ms service=lsp serverIds=deno, typescript, vue, eslint, oxlint, biome, gopls, ruby-lsp, pyright, elixir-ls, zls, csharp, fsharp, sourcekit-lsp, rust, clangd, svelte, astro, jdtls, kotlin-ls, yaml-ls, lua-ls, php intelephense, prisma, dart, ocaml-lsp, bash, terraform, texlab, dockerfile, gleam, clojure-lsp, nixd, tinymist, haskell-language-server enabled LSP servers INFO 2026-01-16T20:55:28 +0ms service=file.watcher init INFO 2026-01-16T20:55:28 +2ms service=bus type=command.executed subscribing INFO 2026-01-16T20:55:28 +0ms service=file.watcher platform=linux backend=inotify watcher backend INFO 2026-01-16T20:55:28 +2ms service=server event connected INFO 2026-01-16T20:55:28 +0ms service=bus type=* subscribing INFO 2026-01-16T20:55:28 +1ms service=server status=started providers INFO 2026-01-16T20:55:28 +1ms service=provider status=started state INFO 2026-01-16T20:55:28 +3ms service=models.dev file={} refreshing INFO 2026-01-16T20:55:28 +0ms service=models.dev file={} refreshing INFO 2026-01-16T20:55:28 +1ms service=server status=completed duration=679 method=GET path=/event request INFO 2026-01-16T20:55:28 +0ms service=server status=completed duration=678 method=GET path=/config request INFO 2026-01-16T20:55:28 +1ms service=server status=completed duration=679 method=GET path=/agent request INFO 2026-01-16T20:55:28 +2ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd) Checked 8 installs across 16 packages (no changes) [6.00ms] stderr= done INFO 2026-01-16T20:55:28 +0ms service=vcs branch=develop initialized INFO 2026-01-16T20:55:28 +0ms service=bus type=file.watcher.updated subscribing INFO 2026-01-16T20:55:28 +24ms service=server status=completed duration=705 method=GET path=/session request ERROR 2026-01-16T20:55:38 +9975ms service=default e=The operation timed out. rejection ERROR 2026-01-16T20:55:38 +0ms service=default e=The operation timed out. rejection ```
Author
Owner

@rekram1-node commented on GitHub (Jan 16, 2026):

hmm

@rekram1-node commented on GitHub (Jan 16, 2026): hmm
Author
Owner

@rekram1-node commented on GitHub (Jan 16, 2026):

if u do BUN_BE_BUN=1 opencode --version what do u see?

@rekram1-node commented on GitHub (Jan 16, 2026): if u do `BUN_BE_BUN=1 opencode --version` what do u see?
Author
Owner

@maxjust commented on GitHub (Jan 16, 2026):

BUN_BE_BUN=1 opencode --version 2026 M01 17, Sat 00:27:38
1.3.5

if u do BUN_BE_BUN=1 opencode --version what do u see?

@maxjust commented on GitHub (Jan 16, 2026): BUN_BE_BUN=1 opencode --version 2026 M01 17, Sat 00:27:38 1.3.5 > if u do `BUN_BE_BUN=1 opencode --version` what do u see?
Author
Owner

@maxjust commented on GitHub (Jan 16, 2026):

Does OpenCode require an internet connection to work properly if local LLM are used?

@maxjust commented on GitHub (Jan 16, 2026): Does OpenCode require an internet connection to work properly if local LLM are used?
Author
Owner

@rekram1-node commented on GitHub (Jan 16, 2026):

Well there is one thing that could yeah, it automatically installs a small js package that is shipped w/ opencode so that any plugins or custom tools can be resolved properly, need to have an airgapped method to prevent that need

@rekram1-node commented on GitHub (Jan 16, 2026): Well there is one thing that could yeah, it automatically installs a small js package that is shipped w/ opencode so that any plugins or custom tools can be resolved properly, need to have an airgapped method to prevent that need
Author
Owner

@maxjust commented on GitHub (Jan 16, 2026):

version 1.1.15 working well, but 1.1.24 don't

Image
@maxjust commented on GitHub (Jan 16, 2026): version 1.1.15 working well, but 1.1.24 don't <img width="1372" height="701" alt="Image" src="https://github.com/user-attachments/assets/2dcc1d30-b6a9-412a-8ebe-9a6283ed9a9a" />
Author
Owner

@maxjust commented on GitHub (Jan 16, 2026):

1.1.25 din't resolve issue, problem still exist

@maxjust commented on GitHub (Jan 16, 2026): 1.1.25 din't resolve issue, problem still exist
Author
Owner

@jyduyfcjufi commented on GitHub (Jan 16, 2026):

yes

@jyduyfcjufi commented on GitHub (Jan 16, 2026): yes
Author
Owner

@rekram1-node commented on GitHub (Jan 16, 2026):

can i see full output of opencode run hello --print-logs

?

@rekram1-node commented on GitHub (Jan 16, 2026): can i see full output of `opencode run hello --print-logs` ?
Author
Owner

@iceqing commented on GitHub (Jan 16, 2026):

root@localhost:~# opencode run hello --print-logs                                         
INFO  2026-01-17T04:45:17 +287ms service=default version=1.1.25 args=["run","hello","--print-logs"] opencode                           INFO  2026-01-17T04:45:17 +0ms service=default directory=/root creating instance          
INFO  2026-01-17T04:45:17 +0ms service=project directory=/root fromDirectory              
INFO  2026-01-17T04:45:17 +9ms service=default directory=/root bootstrapping             
 INFO  2026-01-17T04:45:17 +2ms service=config path=/root/.config/opencode/config.json loading                                          
INFO  2026-01-17T04:45:17 +1ms service=config path=/root/.config/opencode/opencode.json loading                                        INFO  2026-01-17T04:45:17 +1ms service=config path=/root/.config/opencode/opencode.jsonc loading                                       INFO  2026-01-17T04:45:17 +46ms service=bun cmd=["/root/.opencode/bin/opencode","add","@opencode-ai/plugin@1.1.25","--exact"] cwd=/root/.config/opencode running                    INFO  2026-01-17T04:45:21 +3504ms service=bun code=0 stdout=bun add v1.3.5 (1e86cebd)                                                  installed @opencode-ai/plugin@1.1.25                                                      [7.00ms] done                                 stderr=Saved lockfile                        done                                        INFO  2026-01-17T04:45:21 +0ms service=bun cmd=["/root/.opencode/bin/opencode","install"] cwd=/root/.config/opencode running          
INFO  2026-01-17T04:45:25 +3851ms service=config path=/root/.opencode/opencode.jsonc loading                                           INFO  2026-01-17T04:45:25 +46ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd)                                                Checked 3 installs across 4 packages (no changes) [7.00ms]                                 stderr= done                               
 INFO  2026-01-17T04:45:25 +8ms service=config path=/root/.opencode/opencode.json loading  INFO  2026-01-17T04:45:25 +1ms service=bun cmd=["/root/.opencode/bin/opencode","add","@opencode-ai/plugin@1.1.25","--exact"] cwd=/root/.opencode running                            INFO  2026-01-17T04:45:29 +3946ms service=plugin name=CodexAuthPlugin loading internal plugin                                          INFO  2026-01-17T04:45:29 +0ms service=plugin name=CopilotAuthPlugin loading internal plugin                                           INFO  2026-01-17T04:45:29 +0ms service=plugin path=opencode-anthropic-auth@0.0.9 loading plugin                                        INFO  2026-01-17T04:45:29 +1ms service=bun code=0 stdout=bun add v1.3.5 (1e86cebd)                                                     installed @opencode-ai/plugin@1.1.25                                                      3 packages installed [24.00ms]                stderr=Saved lockfile                        done                                        INFO  2026-01-17T04:45:29 +0ms service=bun cmd=["/root/.opencode/bin/opencode","install"] cwd=/root/.opencode running                 
 INFO  2026-01-17T04:45:33 +4069ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd)                                              + @opencode-ai/plugin@1.1.25                                                              3 packages installed [29.00ms]                stderr= done                                
ERROR 2026-01-17T04:45:33 +33ms service=default name=ResolveMessage message=Cannot find module '/root/.cache/opencode/node_modules/opencode-anthropic-auth' from '/$bunfs/root/src/index.js' code=ERR_MODULE_NOT_FOUND specifier=/root/.cache/opencode/node_modules/opencode-anthropic-auth referrer=/$bunfs/root/src/index.js importKind=import-statement fatal        Error: Unexpected error, check log file at  for more details                                                                           ResolveMessage: Cannot find module '/root/.cache/opencode/node_modules/opencode-anthropic-auth' from '/$bunfs/root/src/index.js'
@iceqing commented on GitHub (Jan 16, 2026): ``` root@localhost:~# opencode run hello --print-logs INFO 2026-01-17T04:45:17 +287ms service=default version=1.1.25 args=["run","hello","--print-logs"] opencode INFO 2026-01-17T04:45:17 +0ms service=default directory=/root creating instance INFO 2026-01-17T04:45:17 +0ms service=project directory=/root fromDirectory INFO 2026-01-17T04:45:17 +9ms service=default directory=/root bootstrapping INFO 2026-01-17T04:45:17 +2ms service=config path=/root/.config/opencode/config.json loading INFO 2026-01-17T04:45:17 +1ms service=config path=/root/.config/opencode/opencode.json loading INFO 2026-01-17T04:45:17 +1ms service=config path=/root/.config/opencode/opencode.jsonc loading INFO 2026-01-17T04:45:17 +46ms service=bun cmd=["/root/.opencode/bin/opencode","add","@opencode-ai/plugin@1.1.25","--exact"] cwd=/root/.config/opencode running INFO 2026-01-17T04:45:21 +3504ms service=bun code=0 stdout=bun add v1.3.5 (1e86cebd) installed @opencode-ai/plugin@1.1.25 [7.00ms] done stderr=Saved lockfile done INFO 2026-01-17T04:45:21 +0ms service=bun cmd=["/root/.opencode/bin/opencode","install"] cwd=/root/.config/opencode running INFO 2026-01-17T04:45:25 +3851ms service=config path=/root/.opencode/opencode.jsonc loading INFO 2026-01-17T04:45:25 +46ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd) Checked 3 installs across 4 packages (no changes) [7.00ms] stderr= done INFO 2026-01-17T04:45:25 +8ms service=config path=/root/.opencode/opencode.json loading INFO 2026-01-17T04:45:25 +1ms service=bun cmd=["/root/.opencode/bin/opencode","add","@opencode-ai/plugin@1.1.25","--exact"] cwd=/root/.opencode running INFO 2026-01-17T04:45:29 +3946ms service=plugin name=CodexAuthPlugin loading internal plugin INFO 2026-01-17T04:45:29 +0ms service=plugin name=CopilotAuthPlugin loading internal plugin INFO 2026-01-17T04:45:29 +0ms service=plugin path=opencode-anthropic-auth@0.0.9 loading plugin INFO 2026-01-17T04:45:29 +1ms service=bun code=0 stdout=bun add v1.3.5 (1e86cebd) installed @opencode-ai/plugin@1.1.25 3 packages installed [24.00ms] stderr=Saved lockfile done INFO 2026-01-17T04:45:29 +0ms service=bun cmd=["/root/.opencode/bin/opencode","install"] cwd=/root/.opencode running INFO 2026-01-17T04:45:33 +4069ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd) + @opencode-ai/plugin@1.1.25 3 packages installed [29.00ms] stderr= done ERROR 2026-01-17T04:45:33 +33ms service=default name=ResolveMessage message=Cannot find module '/root/.cache/opencode/node_modules/opencode-anthropic-auth' from '/$bunfs/root/src/index.js' code=ERR_MODULE_NOT_FOUND specifier=/root/.cache/opencode/node_modules/opencode-anthropic-auth referrer=/$bunfs/root/src/index.js importKind=import-statement fatal Error: Unexpected error, check log file at for more details ResolveMessage: Cannot find module '/root/.cache/opencode/node_modules/opencode-anthropic-auth' from '/$bunfs/root/src/index.js' ```
Author
Owner

@maxjust commented on GitHub (Jan 17, 2026):

can i see full output of opencode run hello --print-logs

?

opencode run hello --print-logs                                                                                              205ms  2026 M01 17, Sat 13:57:46
INFO  2026-01-17T10:57:50 +131ms service=default version=1.1.25 args=["run","hello","--print-logs"] opencode
INFO  2026-01-17T10:57:50 +0ms service=default directory=/home/max creating instance
INFO  2026-01-17T10:57:50 +1ms service=project directory=/home/max fromDirectory
INFO  2026-01-17T10:57:50 +2ms service=default directory=/home/max bootstrapping
INFO  2026-01-17T10:57:50 +2ms service=config path=/home/max/.config/opencode/config.json loading
INFO  2026-01-17T10:57:50 +0ms service=config path=/home/max/.config/opencode/opencode.json loading
INFO  2026-01-17T10:57:50 +0ms service=config path=/home/max/.config/opencode/opencode.jsonc loading
INFO  2026-01-17T10:57:50 +5ms service=bun cmd=["/home/max/.nvm/versions/node/v24.12.0/lib/node_modules/opencode-ai/node_modules/opencode-linux-x64/bin/opencode","add","@opencode-ai/plugin@1.1.25","--exact"] cwd=/home/max/.config/opencode running
INFO  2026-01-17T10:57:50 +3ms service=plugin name=CodexAuthPlugin loading internal plugin
INFO  2026-01-17T10:57:50 +0ms service=plugin name=CopilotAuthPlugin loading internal plugin
INFO  2026-01-17T10:57:50 +0ms service=plugin path=opencode-anthropic-auth@0.0.9 loading plugin
INFO  2026-01-17T10:57:50 +1ms service=bun code=0 stdout=bun add v1.3.5 (1e86cebd)

installed @opencode-ai/plugin@1.1.25

[1.00ms] done
 stderr=Saved lockfile
 done
INFO  2026-01-17T10:57:50 +0ms service=bun cmd=["/home/max/.nvm/versions/node/v24.12.0/lib/node_modules/opencode-ai/node_modules/opencode-linux-x64/bin/opencode","install"] cwd=/home/max/.config/opencode running
INFO  2026-01-17T10:57:50 +9ms service=plugin path=@gitlab/opencode-gitlab-auth@1.3.0 loading plugin
INFO  2026-01-17T10:57:50 +1ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd)

Checked 3 installs across 4 packages (no changes) [3.00ms]
 stderr= done
INFO  2026-01-17T10:57:50 +30ms service=bus type=* subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=session.updated subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=message.updated subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=message.part.updated subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=session.updated subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=message.updated subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=message.part.updated subscribing
INFO  2026-01-17T10:57:50 +0ms service=bus type=session.diff subscribing
INFO  2026-01-17T10:57:50 +1ms service=format init
INFO  2026-01-17T10:57:50 +0ms service=bus type=file.edited subscribing
INFO  2026-01-17T10:57:50 +0ms service=lsp serverIds=deno, typescript, vue, eslint, oxlint, biome, gopls, ruby-lsp, pyright, elixir-ls, zls, csharp, fsharp, sourcekit-lsp, rust, clangd, svelte, astro, jdtls, kotlin-ls, yaml-ls, lua-ls, php intelephense, prisma, dart, ocaml-lsp, bash, terraform, texlab, dockerfile, gleam, clojure-lsp, nixd, tinymist, haskell-language-server enabled LSP servers
INFO  2026-01-17T10:57:50 +0ms service=bus type=command.executed subscribing
INFO  2026-01-17T10:57:50 +9ms service=server method=POST path=/session request
INFO  2026-01-17T10:57:50 +0ms service=server status=started method=POST path=/session request
INFO  2026-01-17T10:57:50 +1ms service=session id=ses_43465535fffeGzhqZBu7vhEhfD slug=nimble-falcon version=1.1.25 projectID=global directory=/home/max title=New session - 2026-01-17T10:57:50.240Z time={"created":1768647470240,"updated":1768647470240} created
INFO  2026-01-17T10:57:50 +1ms service=bus type=session.created publishing
INFO  2026-01-17T10:57:50 +1ms service=bus type=session.updated publishing
INFO  2026-01-17T10:57:50 +1ms service=server status=completed duration=4 method=POST path=/session request
INFO  2026-01-17T10:57:50 +0ms service=server method=GET path=/config request
INFO  2026-01-17T10:57:50 +0ms service=server status=started method=GET path=/config request
INFO  2026-01-17T10:57:50 +0ms service=server status=completed duration=0 method=GET path=/config request
INFO  2026-01-17T10:57:50 +1ms service=server method=GET path=/event request
INFO  2026-01-17T10:57:50 +1ms service=server status=started method=GET path=/event request
INFO  2026-01-17T10:57:50 +0ms service=server method=POST path=/session/ses_43465535fffeGzhqZBu7vhEhfD/message request
INFO  2026-01-17T10:57:50 +0ms service=server status=started method=POST path=/session/ses_43465535fffeGzhqZBu7vhEhfD/message request
INFO  2026-01-17T10:57:50 +0ms service=server event connected
INFO  2026-01-17T10:57:50 +1ms service=bus type=* subscribing
INFO  2026-01-17T10:57:50 +2ms service=server status=completed duration=3 method=GET path=/event request
INFO  2026-01-17T10:57:50 +0ms service=server status=completed duration=3 method=POST path=/session/ses_43465535fffeGzhqZBu7vhEhfD/message request
INFO  2026-01-17T10:57:50 +5ms service=provider status=started state
INFO  2026-01-17T10:57:50 +1ms service=models.dev file={} refreshing
ERROR 2026-01-17T10:58:00 +10002ms service=default e=The operation timed out. rejection

@maxjust commented on GitHub (Jan 17, 2026): > can i see full output of `opencode run hello --print-logs` > > ? ``` opencode run hello --print-logs 205ms  2026 M01 17, Sat 13:57:46 INFO 2026-01-17T10:57:50 +131ms service=default version=1.1.25 args=["run","hello","--print-logs"] opencode INFO 2026-01-17T10:57:50 +0ms service=default directory=/home/max creating instance INFO 2026-01-17T10:57:50 +1ms service=project directory=/home/max fromDirectory INFO 2026-01-17T10:57:50 +2ms service=default directory=/home/max bootstrapping INFO 2026-01-17T10:57:50 +2ms service=config path=/home/max/.config/opencode/config.json loading INFO 2026-01-17T10:57:50 +0ms service=config path=/home/max/.config/opencode/opencode.json loading INFO 2026-01-17T10:57:50 +0ms service=config path=/home/max/.config/opencode/opencode.jsonc loading INFO 2026-01-17T10:57:50 +5ms service=bun cmd=["/home/max/.nvm/versions/node/v24.12.0/lib/node_modules/opencode-ai/node_modules/opencode-linux-x64/bin/opencode","add","@opencode-ai/plugin@1.1.25","--exact"] cwd=/home/max/.config/opencode running INFO 2026-01-17T10:57:50 +3ms service=plugin name=CodexAuthPlugin loading internal plugin INFO 2026-01-17T10:57:50 +0ms service=plugin name=CopilotAuthPlugin loading internal plugin INFO 2026-01-17T10:57:50 +0ms service=plugin path=opencode-anthropic-auth@0.0.9 loading plugin INFO 2026-01-17T10:57:50 +1ms service=bun code=0 stdout=bun add v1.3.5 (1e86cebd) installed @opencode-ai/plugin@1.1.25 [1.00ms] done stderr=Saved lockfile done INFO 2026-01-17T10:57:50 +0ms service=bun cmd=["/home/max/.nvm/versions/node/v24.12.0/lib/node_modules/opencode-ai/node_modules/opencode-linux-x64/bin/opencode","install"] cwd=/home/max/.config/opencode running INFO 2026-01-17T10:57:50 +9ms service=plugin path=@gitlab/opencode-gitlab-auth@1.3.0 loading plugin INFO 2026-01-17T10:57:50 +1ms service=bun code=0 stdout=bun install v1.3.5 (1e86cebd) Checked 3 installs across 4 packages (no changes) [3.00ms] stderr= done INFO 2026-01-17T10:57:50 +30ms service=bus type=* subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=session.updated subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=message.updated subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=message.part.updated subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=session.updated subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=message.updated subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=message.part.updated subscribing INFO 2026-01-17T10:57:50 +0ms service=bus type=session.diff subscribing INFO 2026-01-17T10:57:50 +1ms service=format init INFO 2026-01-17T10:57:50 +0ms service=bus type=file.edited subscribing INFO 2026-01-17T10:57:50 +0ms service=lsp serverIds=deno, typescript, vue, eslint, oxlint, biome, gopls, ruby-lsp, pyright, elixir-ls, zls, csharp, fsharp, sourcekit-lsp, rust, clangd, svelte, astro, jdtls, kotlin-ls, yaml-ls, lua-ls, php intelephense, prisma, dart, ocaml-lsp, bash, terraform, texlab, dockerfile, gleam, clojure-lsp, nixd, tinymist, haskell-language-server enabled LSP servers INFO 2026-01-17T10:57:50 +0ms service=bus type=command.executed subscribing INFO 2026-01-17T10:57:50 +9ms service=server method=POST path=/session request INFO 2026-01-17T10:57:50 +0ms service=server status=started method=POST path=/session request INFO 2026-01-17T10:57:50 +1ms service=session id=ses_43465535fffeGzhqZBu7vhEhfD slug=nimble-falcon version=1.1.25 projectID=global directory=/home/max title=New session - 2026-01-17T10:57:50.240Z time={"created":1768647470240,"updated":1768647470240} created INFO 2026-01-17T10:57:50 +1ms service=bus type=session.created publishing INFO 2026-01-17T10:57:50 +1ms service=bus type=session.updated publishing INFO 2026-01-17T10:57:50 +1ms service=server status=completed duration=4 method=POST path=/session request INFO 2026-01-17T10:57:50 +0ms service=server method=GET path=/config request INFO 2026-01-17T10:57:50 +0ms service=server status=started method=GET path=/config request INFO 2026-01-17T10:57:50 +0ms service=server status=completed duration=0 method=GET path=/config request INFO 2026-01-17T10:57:50 +1ms service=server method=GET path=/event request INFO 2026-01-17T10:57:50 +1ms service=server status=started method=GET path=/event request INFO 2026-01-17T10:57:50 +0ms service=server method=POST path=/session/ses_43465535fffeGzhqZBu7vhEhfD/message request INFO 2026-01-17T10:57:50 +0ms service=server status=started method=POST path=/session/ses_43465535fffeGzhqZBu7vhEhfD/message request INFO 2026-01-17T10:57:50 +0ms service=server event connected INFO 2026-01-17T10:57:50 +1ms service=bus type=* subscribing INFO 2026-01-17T10:57:50 +2ms service=server status=completed duration=3 method=GET path=/event request INFO 2026-01-17T10:57:50 +0ms service=server status=completed duration=3 method=POST path=/session/ses_43465535fffeGzhqZBu7vhEhfD/message request INFO 2026-01-17T10:57:50 +5ms service=provider status=started state INFO 2026-01-17T10:57:50 +1ms service=models.dev file={} refreshing ERROR 2026-01-17T10:58:00 +10002ms service=default e=The operation timed out. rejection ```
Author
Owner

@maxjust commented on GitHub (Jan 17, 2026):

The network trace shows that I can't connect to the OP-code servers, even though I'm using a local LLM and the basic internet connection is fine. But the opencode website doesn't open in the browser. How can I run a fully local version?

@maxjust commented on GitHub (Jan 17, 2026): The network trace shows that I can't connect to the OP-code servers, even though I'm using a local LLM and the basic internet connection is fine. But the opencode website doesn't open in the browser. How can I run a fully local version?
Author
Owner

@nex0ma commented on GitHub (Jan 17, 2026):

1.1.23, win11. dark screen, reinstall not worked
1,1,23, opensuse, dark screen, only kiil -9, reinstall not worked
1.1.21 worked on opensuse, local model worked, the free models may be banned for russian users

@nex0ma commented on GitHub (Jan 17, 2026): 1.1.23, win11. dark screen, reinstall not worked 1,1,23, opensuse, dark screen, only kiil -9, reinstall not worked 1.1.21 worked on opensuse, local model worked, the free models may be banned for russian users
Author
Owner

@mr-jovani-van-bread commented on GitHub (Jan 17, 2026):

I can confirm this issue and I have identified the root cause.

After analyzing the application's startup behavior (tracing syscalls and network activity), I found that OpenCode attempts to establish a connection to backend servers immediately upon launch. If this connection cannot be established—specifically if the packets are dropped or filtered (common in regions with strict DPI/ISP censorship)—the application hangs indefinitely on the black screen instead of timing out gracefully or falling back to an offline mode.

Verification:

  1. Direct Connection: The application hangs/freezes (Black screen, requires SIGKILL).
  2. Via VPN/DPI Bypass: The application launches instantly and works correctly.

The Problem:
It appears the application enforces a "hard" dependency on reaching the backend servers before initializing the TUI. This renders the "local LLM" capability useless without an active internet connection to your servers.

Suggestion:
Please implement a graceful fallback or a dedicated Offline Mode. If the handshake with the server fails or times out, the application should simply log a warning and proceed to load the UI, allowing users to work with local models or local files. The current behavior treats a network failure as a critical fatal error that blocks the main thread.

@mr-jovani-van-bread commented on GitHub (Jan 17, 2026): I can confirm this issue and I have identified the root cause. After analyzing the application's startup behavior (tracing syscalls and network activity), I found that OpenCode attempts to establish a connection to backend servers immediately upon launch. If this connection cannot be established—specifically if the packets are dropped or filtered (common in regions with strict DPI/ISP censorship)—the application hangs indefinitely on the black screen instead of timing out gracefully or falling back to an offline mode. Verification: 1. Direct Connection: The application hangs/freezes (Black screen, requires SIGKILL). 2. Via VPN/DPI Bypass: The application launches instantly and works correctly. The Problem: It appears the application enforces a "hard" dependency on reaching the backend servers before initializing the TUI. This renders the "local LLM" capability useless without an active internet connection to your servers. Suggestion: Please implement a graceful fallback or a dedicated Offline Mode. If the handshake with the server fails or times out, the application should simply log a warning and proceed to load the UI, allowing users to work with local models or local files. The current behavior treats a network failure as a critical fatal error that blocks the main thread.
Author
Owner

@Hathoute commented on GitHub (Jan 17, 2026):

I'm also trying to use opencode in a closed environment.

If you look at provider/models.js and provider/models-macro.ts, it looks like we can provide the json and disable periodic fetches there, but for some reason data becomes undefined which results in fetching the endpoint.

You will probably need to also whitelist npmjs or any private npm repository you're using since opencode will try to install builtins.

@rekram1-node how about making https://models.dev/api.json configurable ? (I'm thinking MODELS_DEV_API_JSON will resolve to a file or url, and if undefined use the default)

@Hathoute commented on GitHub (Jan 17, 2026): I'm also trying to use `opencode` in a closed environment. If you look at [provider/models.js](https://github.com/anomalyco/opencode/blob/c890853992189723ed8b1406abe9df8b156c7a20/packages/opencode/src/provider/models.ts#L88) and [provider/models-macro.ts](https://github.com/anomalyco/opencode/blob/dev/packages/opencode/src/provider/models-macro.ts), it looks like we can provide the `json` and disable periodic fetches there, but for some reason `data` becomes `undefined` which results in fetching the endpoint. You will probably need to also whitelist `npmjs` or any private npm repository you're using since opencode will try to install [builtins](https://github.com/anomalyco/opencode/blob/ded9bd26bba4d9c23d614519088083f006114bb4/packages/opencode/src/plugin/index.ts#L18). @rekram1-node how about making `https://models.dev/api.json` configurable ? (I'm thinking `MODELS_DEV_API_JSON` will resolve to a file or url, and if undefined use the default)
Author
Owner

@pgroves commented on GitHub (Jan 20, 2026):

Back to the original problem (fresh install, launch tui, get a blank screen).

I got the same problem on Ubuntu24.04 and opencode 1.1.27. No network restrictions at all.

It was hanging while it tries installing this oauth plugin.

@gitlab/opencode-gitlab-auth@1.3.0

If I SIGKILLED that subprocess, the tui would finish launching and be fine.

After a few times of doing this, the install must have succeeded b/c I'm not getting it any more and I didn't fix anything. I was trying to get a screenshot of top for you with the offending processes, but it's resolved itself.

Or maybe first startup just takes 10 minutes on a fresh install these days.

@pgroves commented on GitHub (Jan 20, 2026): Back to the original problem (fresh install, launch tui, get a blank screen). I got the same problem on Ubuntu24.04 and opencode 1.1.27. No network restrictions at all. It was hanging while it tries installing this oauth plugin. `@gitlab/opencode-gitlab-auth@1.3.0` If I SIGKILLED that subprocess, the tui would finish launching and be fine. After a few times of doing this, the install must have succeeded b/c I'm not getting it any more and I didn't fix anything. I was trying to get a screenshot of top for you with the offending processes, but it's resolved itself. Or maybe first startup just takes 10 minutes on a fresh install these days.
Author
Owner

@Fire- commented on GitHub (Jan 31, 2026):

This has been an issue for me for a bit now as well, posted as part of a thread of issues on twitter

https://github.com/user-attachments/assets/1a7312b1-d178-483c-a6d0-f5c263ff7f0f

@Fire- commented on GitHub (Jan 31, 2026): This has been an issue for me for a bit now as well, posted as part of a [thread](https://x.com/i/status/2014592204019531907) of issues on twitter https://github.com/user-attachments/assets/1a7312b1-d178-483c-a6d0-f5c263ff7f0f
Author
Owner

@LilYoopug commented on GitHub (Feb 1, 2026):

My current fix for termux proot now was disabling default opencode plugin by adding this line inside zshrc/bashrc

export OPENCODE_DISABLE_DEFAULT_PLUGINS=true

then delete .cache/opencode folder

And disabling problematic plugins

I assume this issue caused from bun inside proot termux that didnt save the node package to the .cache/opencode folder after first start of opencode. Because every fresh start of opencode(with no .cache folder) it ran normally but when second start ran it got the hang error and i saw the log it was module not found error.

I just hoping opencode have option to use npm as package manager.

@LilYoopug commented on GitHub (Feb 1, 2026): My current fix for termux proot now was disabling default opencode plugin by adding this line inside zshrc/bashrc export OPENCODE_DISABLE_DEFAULT_PLUGINS=true then delete .cache/opencode folder And disabling problematic plugins I assume this issue caused from bun inside proot termux that didnt save the node package to the .cache/opencode folder after first start of opencode. Because every fresh start of opencode(with no .cache folder) it ran normally but when second start ran it got the hang error and i saw the log it was module not found error. I just hoping opencode have option to use npm as package manager.
Author
Owner

@anderspitman commented on GitHub (Feb 11, 2026):

My current fix for termux proot now was disabling default opencode plugin by adding this line inside zshrc/bashrc

export OPENCODE_DISABLE_DEFAULT_PLUGINS=true

then delete .cache/opencode folder

And disabling problematic plugins

I assume this issue caused from bun inside proot termux that didnt save the node package to the .cache/opencode folder after first start of opencode. Because every fresh start of opencode(with no .cache folder) it ran normally but when second start ran it got the hang error and i saw the log it was module not found error.

I just hoping opencode have option to use npm as package manager.

This allowed me to run opencode in our HPC environment. Thanks!

@anderspitman commented on GitHub (Feb 11, 2026): > My current fix for termux proot now was disabling default opencode plugin by adding this line inside zshrc/bashrc > > export OPENCODE_DISABLE_DEFAULT_PLUGINS=true > > then delete .cache/opencode folder > > And disabling problematic plugins > > I assume this issue caused from bun inside proot termux that didnt save the node package to the .cache/opencode folder after first start of opencode. Because every fresh start of opencode(with no .cache folder) it ran normally but when second start ran it got the hang error and i saw the log it was module not found error. > > I just hoping opencode have option to use npm as package manager. This allowed me to run opencode in our HPC environment. Thanks!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#6526