Description
The compiled OpenCode binary proxies all web UI asset requests to app.opencode.ai. Running opencode serve in an environment without internet access (air-gapped, corporate proxy, airplane) results in a blank page because the HTML, JS, CSS, and fonts cannot be fetched from the CDN.
The web UI assets are known at build time and can be embedded directly into the binary using Bun's compile-time asset embedding ({ type: "file" } imports). This would allow the server to serve them locally with a CDN fallback only for optional fonts.
Steps to reproduce
- Build and run
opencode serve on a machine without internet access
- Open the web UI in a browser
- Observe blank page — all asset requests fail because they proxy to
app.opencode.ai
OpenCode version
1.2.26
OS
macOS, Linux, Windows
Description
The compiled OpenCode binary proxies all web UI asset requests to
app.opencode.ai. Runningopencode servein an environment without internet access (air-gapped, corporate proxy, airplane) results in a blank page because the HTML, JS, CSS, and fonts cannot be fetched from the CDN.The web UI assets are known at build time and can be embedded directly into the binary using Bun's compile-time asset embedding (
{ type: "file" }imports). This would allow the server to serve them locally with a CDN fallback only for optional fonts.Steps to reproduce
opencode serveon a machine without internet accessapp.opencode.aiOpenCode version
1.2.26
OS
macOS, Linux, Windows