---
title: 網絡
description: 在瀏覽器中使用 opencode。
---

opencode 可以在瀏覽器中作為 Web 應用程式運行，無需terminal即可提供同樣強大的 AI 編碼體驗。

![opencode Web - 新會話](../../../assets/web/web-homepage-new-session.png)

## 入門

通過運行以下命令啟動 Web 介面：

```bash
opencode web
```

這將在 `127.0.0.1` 上啟動一個具有隨機可用端口的本地服務器，並自動在默認瀏覽器中打開 opencode。

:::caution
如果未設置`OPENCODE_SERVER_PASSWORD`，服務器將不安全。這對於本地使用來說很好，但應該針對網絡訪問進行設置。
:::

:::tip[Windows 用戶]
為了獲得最佳體驗，請從 [WSL](/docs/windows-wsl) 而不是 PowerShell 運行 `opencode web`。這確保了正確的檔案系統訪問和terminal集成。
:::

---

## 配置

您可以使用命令行標誌或在 [配置文件](/docs/config) 中配置 Web 服務器。

### 港口

默認情況下，opencode 選擇一個可用端口。您可以指定一個端口：

```bash
opencode web --port 4096
```

### 主機名

默認情況下，服務器綁定到`127.0.0.1`（僅限本地主機）。要使 opencode 在您的網絡上可訪問：

```bash
opencode web --hostname 0.0.0.0
```

當使用`0.0.0.0`時，opencode將顯示本地地址和網絡地址：

```
  Local access:       http://localhost:4096
  Network access:     http://192.168.1.100:4096
```

### mDNS 發現

啟用 mDNS 以使您的服務器在本地網絡上可發現：

```bash
opencode web --mdns
```

這會自動將主機名設置為 `0.0.0.0` 並將服務器通告為 `opencode.local`。

您可以自定義 mDNS 域名以在同一網絡上運行多個實例：

```bash
opencode web --mdns --mdns-domain myproject.local
```

### CORS

允許 CORS 的其他域（對於自定義前端有用）：

```bash
opencode web --cors https://example.com
```

### 驗證

要保護訪問，請使用 `OPENCODE_SERVER_PASSWORD` 環境變量設置密碼：

```bash
OPENCODE_SERVER_PASSWORD=secret opencode web
```

用戶名默認為`opencode`，但可以使用`OPENCODE_SERVER_USERNAME` 進行更改。

---

## 使用網絡介面

啟動後，Web 介面將提供對 opencode 會話的訪問。

### 會議

從主頁查看和管理您的會話。您可以查看活動會話並開始新會話。

![opencode Web - 活動會話](../../../assets/web/web-homepage-active-session.png)

### 服務器狀態

單擊“查看服務器”可查看連接的服務器及其狀態。

![opencode Web - 查看服務器](../../../assets/web/web-homepage-see-servers.png)

---

## 連接terminal

您可以將terminal TUI 連接到正在運行的 Web 服務器：

```bash
# Start the web server
opencode web --port 4096

# In another terminal, attach the TUI
opencode attach http://localhost:4096
```

這允許您同時使用 Web 介面和terminal，共享相同的會話和狀態。

---

## 配置文件

您還可以在 `opencode.json` 配置文件中配置服務器設置：

```json
{
  "server": {
    "port": 4096,
    "hostname": "0.0.0.0",
    "mdns": true,
    "cors": ["https://example.com"]
  }
}
```

命令行標誌優先於配置文件設置。
