- Full Obsidian vault content - Host configs (ice, grizzley, ubuntu, proxmox, truenas, panda, hyte) - Media stack documentation - Traefik HA setup - Automation scripts - Bachelor party planning
124 lines
2.7 KiB
Markdown
124 lines
2.7 KiB
Markdown
---
|
||
type: agent-doc
|
||
agent: OpenCode
|
||
source: https://opencode.ai/docs/web/
|
||
scraped: 2026-04-28T21:02:15.096190+00:00
|
||
content_hash: 24c746a2
|
||
---
|
||
# Web
|
||
|
||
Using OpenCode in your browser.
|
||
|
||
OpenCode can run as a web application in your browser, providing the same powerful AI coding experience without needing a terminal.
|
||
|
||
## Getting Started
|
||
|
||
Start the web interface by running:
|
||
|
||
```
|
||
opencode web
|
||
```
|
||
|
||
This starts a local server on 127.0.0.1 with a random available port and automatically opens OpenCode in your default browser.
|
||
|
||
---
|
||
|
||
## Configuration
|
||
|
||
You can configure the web server using command line flags or in your config file.
|
||
|
||
### Port
|
||
|
||
By default, OpenCode picks an available port. You can specify a port:
|
||
|
||
```
|
||
opencode web --port 4096
|
||
```
|
||
|
||
### Hostname
|
||
|
||
By default, the server binds to 127.0.0.1 (localhost only). To make OpenCode accessible on your network:
|
||
|
||
```
|
||
opencode web --hostname 0.0.0.0
|
||
```
|
||
|
||
When using 0.0.0.0, OpenCode will display both local and network addresses:
|
||
|
||
```
|
||
Local access: http://localhost:4096 Network access: http://192.168.1.100:4096
|
||
```
|
||
|
||
### mDNS Discovery
|
||
|
||
Enable mDNS to make your server discoverable on the local network:
|
||
|
||
```
|
||
opencode web --mdns
|
||
```
|
||
|
||
This automatically sets the hostname to 0.0.0.0 and advertises the server as opencode.local.
|
||
|
||
You can customize the mDNS domain name to run multiple instances on the same network:
|
||
|
||
```
|
||
opencode web --mdns --mdns-domain myproject.local
|
||
```
|
||
|
||
### CORS
|
||
|
||
To allow additional domains for CORS (useful for custom frontends):
|
||
|
||
```
|
||
opencode web --cors https://example.com
|
||
```
|
||
|
||
### Authentication
|
||
|
||
To protect access, set a password using the OPENCODE_SERVER_PASSWORD environment variable:
|
||
|
||
```
|
||
OPENCODE_SERVER_PASSWORD=secret opencode web
|
||
```
|
||
|
||
The username defaults to opencode but can be changed with OPENCODE_SERVER_USERNAME.
|
||
|
||
---
|
||
|
||
## Using the Web Interface
|
||
|
||
Once started, the web interface provides access to your OpenCode sessions.
|
||
|
||
### Sessions
|
||
|
||
View and manage your sessions from the homepage. You can see active sessions and start new ones.
|
||
|
||
### Server Status
|
||
|
||
Click âSee Serversâ to view connected servers and their status.
|
||
|
||
---
|
||
|
||
## Attaching a Terminal
|
||
|
||
You can attach a terminal TUI to a running web server:
|
||
|
||
```
|
||
# Start the web serveropencode web --port 4096
|
||
# In another terminal, attach the TUIopencode attach http://localhost:4096
|
||
```
|
||
|
||
This allows you to use both the web interface and terminal simultaneously, sharing the same sessions and state.
|
||
|
||
---
|
||
|
||
## Config File
|
||
|
||
You can also configure server settings in your opencode.json config file:
|
||
|
||
```
|
||
{ "server": { "port": 4096, "hostname": "0.0.0.0", "mdns": true, "cors": ["https://example.com"] }}
|
||
```
|
||
|
||
Command line flags take precedence over config file settings.
|