mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-01 18:26:38 +00:00
docs: improve zh-cn and zh-tw documentation translations (#13942)
This commit is contained in:
@@ -1,15 +1,15 @@
|
||||
---
|
||||
title: 設定
|
||||
description: 使用 opencode JSON 設定。
|
||||
description: 使用 OpenCode JSON 設定。
|
||||
---
|
||||
|
||||
您可以使用 JSON 設定檔設定 opencode。
|
||||
您可以使用 JSON 設定檔來設定 OpenCode。
|
||||
|
||||
---
|
||||
|
||||
## 格式
|
||||
|
||||
opencode 支援 **JSON** 和 **JSONC**(帶註解的 JSON)格式。
|
||||
OpenCode 支援 **JSON** 和 **JSONC**(帶註解的 JSON)格式。
|
||||
|
||||
```jsonc title="opencode.jsonc"
|
||||
{
|
||||
@@ -25,15 +25,15 @@ opencode 支援 **JSON** 和 **JSONC**(帶註解的 JSON)格式。
|
||||
|
||||
## 位置
|
||||
|
||||
您可以將設定放置在幾個不同的位置,它們有一個不同的優先順序。
|
||||
您可以將設定放置在不同的位置,它們具有不同的優先順序。
|
||||
|
||||
:::note
|
||||
設定檔**合併在一起**,而不是取代。
|
||||
設定檔是**合併在一起**的,而不是替換。
|
||||
:::
|
||||
|
||||
設定檔被合併在一起,而不是被取代。以下設定位置的設定被合併。僅當鍵值衝突時,後面的設定才會覆寫前面的設定。保留所有設定中的非衝突設定。
|
||||
設定檔是合併在一起的,而不是被替換。來自以下設定位置的設定會被合併。後面的設定僅在鍵衝突時覆寫前面的設定。所有設定中的非衝突設定都會被保留。
|
||||
|
||||
例如,如果您的全域設定設定 `theme: "opencode"` 和 `autoupdate: true`,並且您的專案設定設定 `model: "anthropic/claude-sonnet-4-5"`,則最終設定將包括所有三個設定。
|
||||
例如,如果您的全域設定設定了 `theme: "opencode"` 和 `autoupdate: true`,而您的專案設定設定了 `model: "anthropic/claude-sonnet-4-5"`,則最終設定將包含所有三個設定。
|
||||
|
||||
---
|
||||
|
||||
@@ -42,27 +42,27 @@ opencode 支援 **JSON** 和 **JSONC**(帶註解的 JSON)格式。
|
||||
設定來源按以下順序載入(後面的來源覆寫前面的來源):
|
||||
|
||||
1. **遠端設定**(來自 `.well-known/opencode`)- 組織預設值
|
||||
2. **全域設定** (`~/.config/opencode/opencode.json`) - 使用者偏好設定
|
||||
3. **自定義設定** (`OPENCODE_CONFIG` env var) - 自定義覆寫
|
||||
4. **專案設定**(專案中的 `opencode.json`)- 專案特定的設定
|
||||
5. **`.opencode` 目錄** - 代理、指令、外掛
|
||||
6. **內聯設定** (`OPENCODE_CONFIG_CONTENT` env var) - 執行時覆寫
|
||||
2. **全域設定**(`~/.config/opencode/opencode.json`)- 使用者偏好
|
||||
3. **自訂設定**(`OPENCODE_CONFIG` 環境變數)- 自訂覆寫
|
||||
4. **專案設定**(專案中的 `opencode.json`)- 專案特定設定
|
||||
5. **`.opencode` 目錄** - 代理、指令、外掛程式
|
||||
6. **內嵌設定**(`OPENCODE_CONFIG_CONTENT` 環境變數)- 執行時覆寫
|
||||
|
||||
這意味著專案設定可以覆寫全域預設值,全域設定可以覆寫遠端組織預設值。
|
||||
|
||||
:::note
|
||||
`.opencode` 和 `~/.config/opencode` 目錄對子目錄使用**複數名稱**:`agents/`、`commands/`、`modes/`、`plugins/`、`skills/`、`tools/` 和 `themes/`。為了向後相容,也支援單數名稱(例如 `agent/`)。
|
||||
`.opencode` 和 `~/.config/opencode` 目錄的子目錄使用**複數名稱**:`agents/`、`commands/`、`modes/`、`plugins/`、`skills/`、`tools/` 和 `themes/`。為了向後相容,也支援單數名稱(例如 `agent/`)。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### 遠端
|
||||
|
||||
組織可以透過 `.well-known/opencode` 端點提供預設設定。當您向支援它的供應商進行身分驗證時,會自動取得該資訊。
|
||||
組織可以透過 `.well-known/opencode` 端點提供預設設定。當您使用支援該功能的供應商進行身分驗證時,會自動擷取此設定。
|
||||
|
||||
首先載入遠端設定,作為基礎層。所有其他設定來源(全域、專案)都可以覆寫這些預設值。
|
||||
遠端設定最先載入,作為基礎層。所有其他設定來源(全域、專案)都可以覆寫這些預設值。
|
||||
|
||||
例如,如果您的組織提供預設禁用的 MCP 伺服器:
|
||||
例如,如果您的組織提供了預設停用的 MCP 伺服器:
|
||||
|
||||
```json title="Remote config from .well-known/opencode"
|
||||
{
|
||||
@@ -94,63 +94,63 @@ opencode 支援 **JSON** 和 **JSONC**(帶註解的 JSON)格式。
|
||||
|
||||
### 全域
|
||||
|
||||
將全域 opencode 設定放在 `~/.config/opencode/opencode.json` 中。使用全域設定來實現使用者範圍的偏好設定,例如主題、供應商或按鍵綁定。
|
||||
將全域 OpenCode 設定放在 `~/.config/opencode/opencode.json` 中。使用全域設定來設定使用者層級的偏好,例如主題、供應商或快捷鍵。
|
||||
|
||||
全域設定覆寫遠端組織預設值。
|
||||
|
||||
---
|
||||
|
||||
### 每個專案
|
||||
### 專案層級
|
||||
|
||||
在專案根目錄中新增 `opencode.json`。專案設定在標準設定檔中具有最高優先級 - 它覆寫全域設定和遠端設定。
|
||||
在專案根目錄中新增 `opencode.json`。專案設定在標準設定檔中具有最高優先級——它會覆寫全域設定和遠端設定。
|
||||
|
||||
:::tip
|
||||
將專案特定設定放在專案的根目錄中。
|
||||
:::
|
||||
|
||||
當 opencode 啟動時,它會在當前目錄中尋找設定檔或遍歷到最近的 Git 目錄。
|
||||
當 OpenCode 啟動時,它會在當前目錄中尋找設定檔,或向上遍歷到最近的 Git 目錄。
|
||||
|
||||
這也可以安全地簽入 Git 並使用與全域模式相同的模式。
|
||||
該設定檔也可以安全地提交到 Git 中,並使用與全域設定相同的 Schema。
|
||||
|
||||
---
|
||||
|
||||
### 自定義路徑
|
||||
### 自訂路徑
|
||||
|
||||
使用 `OPENCODE_CONFIG` 環境變數指定自定義設定檔路徑。
|
||||
使用 `OPENCODE_CONFIG` 環境變數指定自訂設定檔路徑。
|
||||
|
||||
```bash
|
||||
export OPENCODE_CONFIG=/path/to/my/custom-config.json
|
||||
opencode run "Hello world"
|
||||
```
|
||||
|
||||
自定義設定按優先順序在全域設定和專案設定之間載入。
|
||||
自訂設定在優先順序中位於全域設定和專案設定之間載入。
|
||||
|
||||
---
|
||||
|
||||
### 自定義目錄
|
||||
### 自訂目錄
|
||||
|
||||
使用 `OPENCODE_CONFIG_DIR` 環境變數指定自定義設定目錄。將在該目錄中搜尋代理、指令、模式和外掛,就像標準 `.opencode` 目錄一樣,並且應該遵循相同的結構。
|
||||
使用 `OPENCODE_CONFIG_DIR` 環境變數指定自訂設定目錄。該目錄會像標準 `.opencode` 目錄一樣被搜尋代理、指令、模式和外掛程式,並且應遵循相同的結構。
|
||||
|
||||
```bash
|
||||
export OPENCODE_CONFIG_DIR=/path/to/my/config-directory
|
||||
opencode run "Hello world"
|
||||
```
|
||||
|
||||
自定義目錄在全域設定和 `.opencode` 目錄之後載入,因此它**可以覆寫**它們的設定。
|
||||
自訂目錄在全域設定和 `.opencode` 目錄之後載入,因此**可以覆寫**它們的設定。
|
||||
|
||||
---
|
||||
|
||||
## 架構
|
||||
## Schema
|
||||
|
||||
設定檔具有在 [**`opencode.ai/config.json`**](https://opencode.ai/config.json) 中定義的架構。
|
||||
設定檔具有在 [**`opencode.ai/config.json`**](https://opencode.ai/config.json) 中定義的 Schema。
|
||||
|
||||
您的編輯器應該能夠根據架構進行驗證和自動完成。
|
||||
您的編輯器應該能夠基於該 Schema 進行驗證和自動補全。
|
||||
|
||||
---
|
||||
|
||||
### TUI
|
||||
|
||||
您可以透過 `tui` 選項設定特定於 TUI 的設定。
|
||||
您可以透過 `tui` 選項設定 TUI 相關設定。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -167,17 +167,17 @@ opencode run "Hello world"
|
||||
|
||||
可用選項:
|
||||
|
||||
- `scroll_acceleration.enabled` - 啟用 macOS 風格的捲動加速。 **優先於 `scroll_speed`。**
|
||||
- `scroll_speed` - 自定義捲動速度倍數(預設值:`3`,最小值:`1`)。如果 `scroll_acceleration.enabled` 是 `true`,則忽略。
|
||||
- `diff_style` - 控制差異顯示。 `"auto"` 適應終端機寬度,`"stacked"` 始終顯示單列。
|
||||
- `scroll_acceleration.enabled` - 啟用 macOS 風格的捲動加速。**優先於 `scroll_speed`。**
|
||||
- `scroll_speed` - 自訂捲動速度倍率(預設值:`3`,最小值:`1`)。如果 `scroll_acceleration.enabled` 為 `true`,則忽略此選項。
|
||||
- `diff_style` - 控制差異呈現方式。`"auto"` 根據終端機寬度自適應,`"stacked"` 始終顯示單列。
|
||||
|
||||
[在此處了解有關使用 TUI 的更多資訊](/docs/tui)。
|
||||
[在此了解更多關於 TUI 的資訊](/docs/tui)。
|
||||
|
||||
---
|
||||
|
||||
### 伺服器
|
||||
|
||||
您可以透過 `opencode serve` 選項為 `opencode web` 和 `server` 指令設定伺服器設定。
|
||||
您可以透過 `server` 選項為 `opencode serve` 和 `opencode web` 指令設定伺服器設定。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -194,13 +194,13 @@ opencode run "Hello world"
|
||||
|
||||
可用選項:
|
||||
|
||||
- `port` - 監聽的連接埠。
|
||||
- `hostname` - 要監聽的主機名稱。當 `mdns` 啟用且未設定主機名稱時,預設為 `0.0.0.0`。
|
||||
- `mdns` - 啟用 mDNS 服務探索。這允許網路上的其他設備發現您的 opencode 伺服器。
|
||||
- `mdnsDomain` - mDNS 服務的自定義網域名稱。預設為 `opencode.local`。對於在同一網路上執行多個實例很有用。
|
||||
- `cors` - 從基於瀏覽器的客戶端使用 HTTP 伺服器時允許 CORS 的其他來源。值必須是完整來源(通訊協定+主機+可選連接埠),例如 `https://app.example.com`。
|
||||
- `port` - 監聽連接埠。
|
||||
- `hostname` - 監聽主機名稱。當 `mdns` 啟用且未設定主機名稱時,預設為 `0.0.0.0`。
|
||||
- `mdns` - 啟用 mDNS 服務探索。這允許網路上的其他裝置發現您的 OpenCode 伺服器。
|
||||
- `mdnsDomain` - mDNS 服務的自訂網域名稱。預設為 `opencode.local`。適用於在同一網路上執行多個實例的情境。
|
||||
- `cors` - 從基於瀏覽器的用戶端使用 HTTP 伺服器時允許 CORS 的額外來源。值必須是完整的來源(通訊協定 + 主機 + 可選連接埠),例如 `https://app.example.com`。
|
||||
|
||||
[在此處了解有關伺服器的更多資訊](/docs/server)。
|
||||
[在此了解更多關於伺服器的資訊](/docs/server)。
|
||||
|
||||
---
|
||||
|
||||
@@ -218,13 +218,13 @@ opencode run "Hello world"
|
||||
}
|
||||
```
|
||||
|
||||
[在此處了解有關工具的更多資訊](/docs/tools)。
|
||||
[在此了解更多關於工具的資訊](/docs/tools)。
|
||||
|
||||
---
|
||||
|
||||
### 模型
|
||||
|
||||
您可以透過 `provider`、`model` 和 `small_model` 選項來設定要在 opencode 設定中使用的供應商和模型。
|
||||
您可以透過 `provider`、`model` 和 `small_model` 選項在 OpenCode 設定中設定要使用的供應商和模型。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -235,7 +235,7 @@ opencode run "Hello world"
|
||||
}
|
||||
```
|
||||
|
||||
`small_model` 選項為標題生成等輕量級任務設定單獨的模型。預設情況下,如果您的供應商可以提供更便宜的模型,opencode 會嘗試使用更便宜的模型,否則它會退回到您的主模型。
|
||||
`small_model` 選項為標題生成等輕量級任務設定單獨的模型。預設情況下,如果您的供應商有更便宜的模型可用,OpenCode 會嘗試使用該模型,否則會回退到您的主模型。
|
||||
|
||||
供應商選項可以包括 `timeout` 和 `setCacheKey`:
|
||||
|
||||
@@ -253,16 +253,16 @@ opencode run "Hello world"
|
||||
}
|
||||
```
|
||||
|
||||
- `timeout` - 請求超時以毫秒為單位(預設值:300000)。設定為 `false` 以禁用。
|
||||
- `setCacheKey` - 確保始終為指定的供應商設定快取金鑰。
|
||||
- `timeout` - 請求逾時時間,單位為毫秒(預設值:300000)。設定為 `false` 可停用逾時。
|
||||
- `setCacheKey` - 確保始終為指定供應商設定快取金鑰。
|
||||
|
||||
您也可以設定 [本地模型](/docs/models#local)。 [了解更多](/docs/models)。
|
||||
您還可以設定[本地模型](/docs/models#local)。[了解更多](/docs/models)。
|
||||
|
||||
---
|
||||
|
||||
#### 特定於供應商的選項
|
||||
#### 供應商特定選項
|
||||
|
||||
某些供應商支援除通用 `timeout` 和 `apiKey` 設定之外的其他設定選項。
|
||||
一些供應商支援除通用 `timeout` 和 `apiKey` 設定之外的額外設定選項。
|
||||
|
||||
##### Amazon Bedrock
|
||||
|
||||
@@ -283,21 +283,21 @@ Amazon Bedrock 支援 AWS 特定設定:
|
||||
}
|
||||
```
|
||||
|
||||
- `region` - Bedrock 的 AWS 區域(預設為 `AWS_REGION` env var 或 `us-east-1`)
|
||||
- `profile` - 來自 `~/.aws/credentials` 的 AWS 命名設定檔(預設為 `AWS_PROFILE` env var)
|
||||
- `endpoint` - VPC 終端節點的自定義終端節點 URL。這是使用 AWS 特定術語的通用 `baseURL` 選項的別名。如果兩者都指定,`endpoint` 優先。
|
||||
- `region` - Bedrock 的 AWS 區域(預設為 `AWS_REGION` 環境變數或 `us-east-1`)
|
||||
- `profile` - 來自 `~/.aws/credentials` 的 AWS 命名設定檔(預設為 `AWS_PROFILE` 環境變數)
|
||||
- `endpoint` - VPC 端點的自訂端點 URL。這是通用 `baseURL` 選項使用 AWS 特定術語的別名。如果兩者都指定,`endpoint` 優先。
|
||||
|
||||
:::note
|
||||
Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定檔的身分驗證。詳情請參閱 [認證優先級](/docs/providers#authentication-precedence)。
|
||||
Bearer Token(`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`)優先於基於設定檔的身分驗證。詳情請參見[認證優先級](/docs/providers#authentication-precedence)。
|
||||
:::
|
||||
|
||||
[了解有關 Amazon Bedrock 設定的更多資訊](/docs/providers#amazon-bedrock)。
|
||||
[了解更多關於 Amazon Bedrock 設定的資訊](/docs/providers#amazon-bedrock)。
|
||||
|
||||
---
|
||||
|
||||
### 主題
|
||||
|
||||
您可以透過 `theme` 選項在 opencode 設定中設定要使用的主題。
|
||||
您可以透過 OpenCode 設定中的 `theme` 選項設定要使用的主題。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -306,7 +306,7 @@ Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定
|
||||
}
|
||||
```
|
||||
|
||||
[在這裡了解更多](/docs/themes)。
|
||||
[在此了解更多](/docs/themes)。
|
||||
|
||||
---
|
||||
|
||||
@@ -332,13 +332,13 @@ Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定
|
||||
}
|
||||
```
|
||||
|
||||
您也可以使用 `~/.config/opencode/agents/` 或 `.opencode/agents/` 中的 markdown 檔案定義代理。 [在這裡了解更多](/docs/agents)。
|
||||
您還可以使用 `~/.config/opencode/agents/` 或 `.opencode/agents/` 中的 Markdown 檔案定義代理。[在此了解更多](/docs/agents)。
|
||||
|
||||
---
|
||||
|
||||
### 預設代理
|
||||
|
||||
您可以使用 `default_agent` 選項設定預設代理。當沒有明確指定時,這將決定使用哪個代理。
|
||||
您可以使用 `default_agent` 選項設定預設代理。當未明確指定代理時,將使用該預設代理。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -347,15 +347,15 @@ Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定
|
||||
}
|
||||
```
|
||||
|
||||
預設代理必須是主代理(而不是子代理)。這可以是內建代理,例如 `"build"` 或 `"plan"`,或者您定義的 [自定義代理](/docs/agents)。如果指定的代理不存在或者是子代理,opencode 將退回到 `"build"` 並發出警告。
|
||||
預設代理必須是主代理(不能是子代理)。可以是內建代理(如 `"build"` 或 `"plan"`),也可以是您定義的[自訂代理](/docs/agents)。如果指定的代理不存在或是子代理,OpenCode 將回退到 `"build"` 並發出警告。
|
||||
|
||||
此設定適用於所有介面:TUI、CLI (`opencode run`)、桌面應用程式和 GitHub Action。
|
||||
此設定適用於所有介面:TUI、CLI(`opencode run`)、桌面應用程式和 GitHub Action。
|
||||
|
||||
---
|
||||
|
||||
### 分享
|
||||
|
||||
您可以透過 `share` 選項設定 [分享](/docs/share) 功能。
|
||||
您可以透過 `share` 選項設定[分享](/docs/share)功能。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -364,19 +364,19 @@ Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定
|
||||
}
|
||||
```
|
||||
|
||||
這需要:
|
||||
該選項接受:
|
||||
|
||||
- `"manual"` - 允許透過指令手動分享(預設)
|
||||
- `"auto"` - 自動分享新對話
|
||||
- `"disabled"` - 完全禁用分享
|
||||
- `"auto"` - 自動分享新工作階段
|
||||
- `"disabled"` - 完全停用分享
|
||||
|
||||
預設情況下,分享設定為手動模式,您需要使用 `/share` 指令明確分享對話。
|
||||
預設情況下,分享設定為手動模式,您需要使用 `/share` 指令明確分享工作階段。
|
||||
|
||||
---
|
||||
|
||||
### 指令
|
||||
|
||||
您可以透過 `command` 選項為重複任務設定自定義指令。
|
||||
您可以透過 `command` 選項為重複任務設定自訂指令。
|
||||
|
||||
```jsonc title="opencode.jsonc"
|
||||
{
|
||||
@@ -396,13 +396,13 @@ Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定
|
||||
}
|
||||
```
|
||||
|
||||
您也可以使用 `~/.config/opencode/commands/` 或 `.opencode/commands/` 中的 Markdown 檔案定義指令。 [在這裡了解更多](/docs/commands)。
|
||||
您還可以使用 `~/.config/opencode/commands/` 或 `.opencode/commands/` 中的 Markdown 檔案定義指令。[在此了解更多](/docs/commands)。
|
||||
|
||||
---
|
||||
|
||||
### 按鍵綁定
|
||||
### 快捷鍵
|
||||
|
||||
您可以透過 `keybinds` 選項自定義您的按鍵綁定。
|
||||
您可以透過 `keybinds` 選項自訂快捷鍵。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -411,13 +411,13 @@ Bearer Token (`AWS_BEARER_TOKEN_BEDROCK` 或 `/connect`) 優先於基於設定
|
||||
}
|
||||
```
|
||||
|
||||
[在這裡了解更多](/docs/keybinds)。
|
||||
[在此了解更多](/docs/keybinds)。
|
||||
|
||||
---
|
||||
|
||||
### 自動更新
|
||||
|
||||
opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoupdate` 選項禁用此功能。
|
||||
OpenCode 啟動時會自動下載新版本。您可以使用 `autoupdate` 選項停用此功能。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -426,14 +426,14 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
如果您不想更新但希望在新版本可用時收到通知,請將 `autoupdate` 設定為 `"notify"`。
|
||||
請注意,這僅在未使用 Homebrew 等套件管理器安裝時才有效。
|
||||
如果您不想自動更新但希望在新版本可用時收到通知,可將 `autoupdate` 設定為 `"notify"`。
|
||||
請注意,此功能僅在未透過 Homebrew 等套件管理器安裝時有效。
|
||||
|
||||
---
|
||||
|
||||
### 格式化程式
|
||||
### 格式化器
|
||||
|
||||
您可以透過 `formatter` 選項設定程式碼格式化程式。
|
||||
您可以透過 `formatter` 選項設定程式碼格式化器。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -453,15 +453,15 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
[在此處了解有關格式化程式的更多資訊](/docs/formatters)。
|
||||
[在此了解更多關於格式化器的資訊](/docs/formatters)。
|
||||
|
||||
---
|
||||
|
||||
### 權限
|
||||
|
||||
預設情況下,opencode **允許所有操作**,無需明確批准。您可以使用 `permission` 選項更改此設定。
|
||||
預設情況下,OpenCode **允許所有操作**,無需明確批准。您可以使用 `permission` 選項變更此行為。
|
||||
|
||||
例如,要確保 `edit` 和 `bash` 工具需要使用者批准:
|
||||
例如,要讓 `edit` 和 `bash` 工具需要使用者確認:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -473,7 +473,7 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
[在此處了解有關權限的更多資訊](/docs/permissions)。
|
||||
[在此了解更多關於權限的資訊](/docs/permissions)。
|
||||
|
||||
---
|
||||
|
||||
@@ -486,19 +486,21 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"compaction": {
|
||||
"auto": true,
|
||||
"prune": true
|
||||
"prune": true,
|
||||
"reserved": 10000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
- `auto` - 當上下文已滿時自動壓縮工作階段(預設值:`true`)。
|
||||
- `prune` - 刪除舊工具輸出以節省 tokens(預設值:`true`)。
|
||||
- `prune` - 刪除舊的工具輸出以節省 Token(預設值:`true`)。
|
||||
- `reserved` - 壓縮時的 Token 緩衝區。保留足夠的窗口以避免壓縮過程中溢出。
|
||||
|
||||
---
|
||||
|
||||
### 觀察者 (Watcher)
|
||||
### 檔案監看器
|
||||
|
||||
您可以透過 `watcher` 選項設定檔案觀察器忽略模式。
|
||||
您可以透過 `watcher` 選項設定檔案監看器的忽略模式。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -509,7 +511,7 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
模式遵循 glob 語法。使用它可以從檔案監視中排除嘈雜的目錄。
|
||||
模式遵循 glob 語法。使用此選項可以從檔案監看中排除頻繁變動的目錄。
|
||||
|
||||
---
|
||||
|
||||
@@ -524,15 +526,15 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
[在這裡了解更多](/docs/mcp-servers)。
|
||||
[在此了解更多](/docs/mcp-servers)。
|
||||
|
||||
---
|
||||
|
||||
### 外掛
|
||||
### 外掛程式
|
||||
|
||||
[外掛](/docs/plugins) 使用自定義工具、掛鉤和整合擴展 opencode。
|
||||
[外掛程式](/docs/plugins)透過自訂工具、掛鉤和整合來擴展 OpenCode。
|
||||
|
||||
將外掛檔案放置在 `.opencode/plugins/` 或 `~/.config/opencode/plugins/` 中。您也可以透過 `plugin` 選項從 npm 載入外掛。
|
||||
將外掛程式檔案放置在 `.opencode/plugins/` 或 `~/.config/opencode/plugins/` 中。您還可以透過 `plugin` 選項從 npm 載入外掛程式。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -541,13 +543,13 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
[在這裡了解更多](/docs/plugins)。
|
||||
[在此了解更多](/docs/plugins)。
|
||||
|
||||
---
|
||||
|
||||
### 指示 (Instructions)
|
||||
### 指示
|
||||
|
||||
您可以透過 `instructions` 選項設定您正在使用的模型的指示。
|
||||
您可以透過 `instructions` 選項為所使用的模型設定指示。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -556,13 +558,13 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
這需要指示檔案的路徑和全域模式陣列。 [了解更多關於規則在這裡](/docs/rules)。
|
||||
該選項接受指示檔案路徑和 glob 模式的陣列。[在此了解更多關於規則的資訊](/docs/rules)。
|
||||
|
||||
---
|
||||
|
||||
### 禁用供應商
|
||||
### 停用供應商
|
||||
|
||||
您可以透過 `disabled_providers` 選項禁用自動載入的供應商。當您想要阻止載入某些供應商(即使其憑證可用)時,這非常有用。
|
||||
您可以透過 `disabled_providers` 選項停用自動載入的供應商。當您希望阻止某些供應商被載入(即使其憑證可用)時,此選項非常有用。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -575,17 +577,17 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
`disabled_providers` 優先於 `enabled_providers`。
|
||||
:::
|
||||
|
||||
`disabled_providers` 選項接受供應商 ID 陣列。當供應商被禁用時:
|
||||
`disabled_providers` 選項接受供應商 ID 的陣列。當某個供應商被停用時:
|
||||
|
||||
- 即使設定了環境變數也不會載入。
|
||||
- 即使透過 `/connect` 指令設定 API 金鑰,也不會載入它。
|
||||
- 供應商的模型不會出現在模型選擇列表中。
|
||||
- 即使設定了環境變數,也不會被載入。
|
||||
- 即使透過 `/connect` 指令設定了 API 金鑰,也不會被載入。
|
||||
- 該供應商的模型不會出現在模型選擇列表中。
|
||||
|
||||
---
|
||||
|
||||
### 啟用的供應商
|
||||
### 啟用供應商
|
||||
|
||||
您可以透過 `enabled_providers` 選項指定供應商的允許清單。設定後,僅啟用指定的供應商,所有其他供應商將被忽略。
|
||||
您可以透過 `enabled_providers` 選項指定允許使用的供應商白名單。設定後,僅啟用指定的供應商,所有其他供應商將被忽略。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -594,19 +596,19 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
當您想要限制 opencode 僅使用特定的供應商而不是一一禁用它們時,這非常有用。
|
||||
當您希望限制 OpenCode 僅使用特定供應商,而不是逐一停用其他供應商時,此選項非常有用。
|
||||
|
||||
:::note
|
||||
`disabled_providers` 優先於 `enabled_providers`。
|
||||
:::
|
||||
|
||||
如果某個供應商同時出現在 `enabled_providers` 和 `disabled_providers` 中,則 `disabled_providers` 優先考慮向後相容性。
|
||||
如果某個供應商同時出現在 `enabled_providers` 和 `disabled_providers` 中,為了向後相容,`disabled_providers` 優先。
|
||||
|
||||
---
|
||||
|
||||
### 實驗性的
|
||||
### 實驗性功能
|
||||
|
||||
`experimental` 鍵包含正在積極開發的選項。
|
||||
`experimental` 鍵包含正在積極開發中的選項。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -616,20 +618,20 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
```
|
||||
|
||||
:::caution
|
||||
實驗選項不穩定。它們可能會更改或被刪除,恕不另行通知。
|
||||
實驗性選項不穩定。它們可能會在不另行通知的情況下被變更或移除。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## 變數
|
||||
|
||||
您可以在設定檔中使用變數替換來引用環境變數和檔案內容。
|
||||
您可以在設定檔中使用變數替換來參照環境變數和檔案內容。
|
||||
|
||||
---
|
||||
|
||||
### 環境變數
|
||||
|
||||
使用 `{env:VARIABLE_NAME}` 替換環境變數:
|
||||
使用 `{env:VARIABLE_NAME}` 來替換環境變數:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -646,13 +648,13 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
}
|
||||
```
|
||||
|
||||
如果未設定環境變數,它將被替換為空字串。
|
||||
如果環境變數未設定,它將被替換為空字串。
|
||||
|
||||
---
|
||||
|
||||
### 檔案
|
||||
|
||||
使用 `{file:path/to/file}` 替換檔案的內容:
|
||||
使用 `{file:path/to/file}` 來替換檔案內容:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -670,11 +672,11 @@ opencode 將在啟動時自動下載任何新的更新。您可以使用 `autoup
|
||||
|
||||
檔案路徑可以是:
|
||||
|
||||
- 相對於設定檔目錄
|
||||
- 或者以 `/` 或 `~` 開頭的絕對路徑
|
||||
- 相對於設定檔所在目錄的路徑
|
||||
- 以 `/` 或 `~` 開頭的絕對路徑
|
||||
|
||||
這些對於:
|
||||
這些功能適用於:
|
||||
|
||||
- 將 API 金鑰等敏感數據保存在單獨的檔案中。
|
||||
- 包含大型指示檔案,而不會弄亂您的設定。
|
||||
- 跨多個設定檔共享通用設定片段。
|
||||
- 將 API 金鑰等敏感資料保存在單獨的檔案中。
|
||||
- 引入大型指示檔案而不會使設定變得雜亂。
|
||||
- 在多個設定檔之間共享通用設定片段。
|
||||
|
||||
Reference in New Issue
Block a user