anomalyco / anomalyco/opencode

Official Alpine image: integrated terminal fails because bun-pty lacks musl support

Open
#48,688 0 comments 1 reaction 1 assignee View on GitHub

@rekram1-node is already working on this.

Since Sep 12, 2026.

Dominant language
TypeScript
Stars
209k
Forks
27.5k
PR merge metrics
PR metrics pending

Description

Description

The integrated terminal remains blank when connecting to the official ghcr.io/anomalyco/opencode:1.18.29 server from either the browser or Flatpak desktop client. It also fails through the directly exposed service port, without a reverse proxy.

The official image uses Alpine/musl, while OpenCode 1.18.29 pins bun-pty@0.4.8, whose Linux PTY library is glibc-linked. Musl support was added in bun-pty@0.4.10.

Installing Alpine's gcompat package and preloading it fixes the terminal:

apk add --no-cache gcompat && export LD_PRELOAD=/lib/libgcompat.so.0

Suggested fix:

  • Upgrade bun-pty to 0.4.10 or newer.
  • Add a container test that creates a PTY instead of only running opencode --version.
Plugins

No plugins required to reproduce.

OpenCode version

1.18.29, official ghcr.io/anomalyco/opencode image.

Steps to reproduce
  1. Run ghcr.io/anomalyco/opencode:1.18.29 with opencode serve --hostname 0.0.0.0 --port 4096.
  2. Connect directly to port 4096 using the web interface or Flatpak desktop client.
  3. Open the integrated terminal.
  4. Observe that the terminal remains blank.
  5. Install gcompat, export LD_PRELOAD=/lib/libgcompat.so.0, and restart OpenCode.
  6. Observe that the terminal now works.
Screenshot and/or share link

No response

Operating System

Official OpenCode Alpine Linux container.

Terminal

OpenCode integrated terminal in browser and Flatpak desktop client.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.