Files
ClosedCode/packages/web/src/content/docs/zh-tw/web.mdx
T

143 lines
3.2 KiB
Plaintext

---
title: Web
description: 在瀏覽器中使用 opencode。
---
opencode 可以在瀏覽器中作為 Web 應用程式執行,無需終端機即可提供同樣強大的 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`。這確保了正確的檔案系統存取和終端機整合。
:::
---
## 配置
您可以使用命令列旗標或在 [設定檔](/docs/config) 中配置 Web 伺服器。
### 連接埠
預設情況下,opencode 選擇一個可用連接埠。您可以指定一個連接埠:
```bash
opencode web --port 4096
```
### 主機名稱
預設情況下,伺服器綁定到 `127.0.0.1`(僅限 localhost)。要使 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 介面
啟動後,Web 介面將提供對 opencode 工作階段的存取。
### 工作階段
從主頁查看和管理您的工作階段。您可以查看活動工作階段並開始新工作階段。
![opencode Web - 活動工作階段](../../../assets/web/web-homepage-active-session.png)
### 伺服器狀態
單擊「查看伺服器」可查看連接的伺服器及其狀態。
![opencode Web - 查看伺服器](../../../assets/web/web-homepage-see-servers.png)
---
## 連接終端機
您可以將終端機 TUI 連接到正在執行的 Web 伺服器:
```bash
# Start the web server
opencode web --port 4096
# In another terminal, attach the TUI
opencode attach http://localhost:4096
```
這允許您同時使用 Web 介面和終端機,共享相同的工作階段和狀態。
---
## 設定檔
您還可以在 `opencode.json` 設定檔中配置伺服器設定:
```json
{
"server": {
"port": 4096,
"hostname": "0.0.0.0",
"mdns": true,
"cors": ["https://example.com"]
}
}
```
命令列旗標優先於設定檔設定。