fix(docs): locale translations

This commit is contained in:
Adam
2026-02-10 07:11:13 -06:00
parent 19ad7ad809
commit 4c4e30cd71
351 changed files with 3744 additions and 3765 deletions

View File

@@ -1,6 +1,6 @@
---
title: 遷移到 1.0
description: opencode 1.0 中的新增内容。
description: opencode 1.0 中的添加内容。
---
opencode 1.0完全重写了TUI。
@@ -13,10 +13,10 @@ opencode 1.0完全重写了TUI。
## 升級中
如果您前正在使用以前的版本,則不應自動升級到 1.0
如果您前正在使用以前的版本,则不应自动升級到 1.0
版本。然而,一些旧版本的 opencode 总是获取最新版本。
要手升級,運行
要手升級,運行
```bash
$ opencode upgrade 1.0.0
@@ -36,9 +36,9 @@ $ opencode upgrade 0.15.31
我们添加了一个命令栏,几乎所有内容都通过了它。按 ctrl+p 可以在任意上下文中调出它并查看您可以执行的所有操作。
添加了包含有用信息的會話側邊欄(可以切換)。
添加了包含有用信息的会话側邊欄(可以切換)。
們刪除了一些我不確定是否有人實際使用的功能。如果缺少重要內容,提出問題,我們會盡快其添加回來。
们删除了一些我不確定是否有人實際使用的功能。如果缺少重要內容,提出問題,我们会盡快其添加回來。
---
@@ -55,13 +55,13 @@ $ opencode upgrade 0.15.31
### 按鍵綁定已移除
- 消息佈局切換
- 下一消息
- 上一消息
- 下一消息
- 上一消息
- 文件差異切換
- 文件搜索
- 文件關閉
- 文件关闭
- 文件列表
- 用程序幫助
- 用程序幫助
- 項目初始化
- 工具詳細信息
- 思維塊

View File

@@ -148,9 +148,9 @@ opencode 通过 ACP 的工作方式与在终端中的工作方式相同。支持
目前不支持某些内置斜杠命令,例如 `/undo` 和 `/redo`。
:::
- 置工具(文件操作、端命令等)
- 置工具(文件操作、端命令等)
- 自定義工具和斜杠命令
- 在 opencode 配置中配置的 MCP 服务器
- `AGENTS.md` 的项目特定规则
- 自定义程序和 linter
- 代理和限系統
- 代理和限系統

View File

@@ -1,15 +1,15 @@
---
title: 代理商
description: 配置和使用門的代理。
description: 配置和使用門的代理。
---
代理是門的人工智能助手,可以針特定任和工作流程進行配置。它們允許您創建具有自定義提示、模型和工具訪問權限的用工具。
代理是門的人工智能助手,可以針特定任和工作流程進行配置。它們允许您创建具有自定義提示、模型和工具访问权限的用工具。
:::tip
使用計劃代理來分析代碼並審查建議,而無需進行任何代碼更改。
使用計劃代理來分析代碼并审查建議,而無需進行任何代碼更改。
:::
您可以在會話期間在代理之間切換,或使用 `@` 提及來調用它們。
您可以在会话期間在代理之間切換,或使用 `@` 提及來用它們。
---
@@ -28,13 +28,13 @@ opencode有两种类型的代理主代理和次代理。
:::
opencode附带两个内置的主要代理**Build** 和 **Plan**。地
看看下面些。
看看下面些。
---
### 子代理
子代理是主要代理可以調用​​來行特定任務的專業助手。您可以通在消息中**@提及**它們來手動調用它們。
子代理是主要代理可以用​​來行特定任务的专業助手。您可以通在消息中**@提及**它們來手动调用它們。
opencode附带两个内置子代理**General** 和 **Explore**。我们将在下面看看这个。
@@ -50,7 +50,7 @@ opencode附带两个内置主代理和两个内置子代理。
_模式_`primary`
構建是用所有工具的**默認**主要代理。是用需要完全訪問文件操作和系統命令的開發工作的標準代理。
構建是用所有工具的**默認**主要代理。是用需要完全访问文件操作和系統命令的開發工作的標準代理。
---
@@ -58,7 +58,7 @@ _模式_`primary`
_模式_`primary`
專為規劃和分析而設計的受限代理。我使用限系統您提供更多控制防止意外更改。
专为規劃和分析而設計的受限代理。我使用限系統您提供更多控制防止意外更改。
默认情况下,以下所有项均设置为`ask`
- `file edits`:所有书写、修复和编辑
@@ -72,7 +72,7 @@ _模式_`primary`
_模式_`subagent`
研究複雜問題和執行多步驟任務的通用代理。具有完整的工具訪問權限(待辦事項除外),因此可在需要時更改文件。使用它可以並行運行多工作元。
研究复杂问题和执行多步骤任务的通用代理。具有完整的工具访问权限(待办事项除外),因此可在需要时修改文件,并并行运行多工作元。
---
@@ -80,7 +80,7 @@ _模式_`subagent`
_模式_`subagent`
探索代碼庫的快速只讀代理。法修改文件。您需要按模式快速查找文件、搜索代碼中的關鍵字或回答有關代碼庫的問題時,使用此功能。
探索代碼庫的快速只讀代理。法修改文件。您需要按模式快速查找文件、搜索代碼中的關鍵字或回答有關代碼庫的問題時,使用此功能。
---
@@ -112,25 +112,25 @@ _模式_`primary`
1. 对于主要代理,请在会话期间使用 **Tab** 键循环浏览它们。您还可以使用配置的 `switch_agent` 键绑定。
2. 可以調用子代理:
- **自**由主要代理根據其描述執行專門任
- 通在消息中**@提及**子代理手進行。例如。
2. 可以用子代理:
- **自**由主要代理根據其描述执行专門任
- 通在消息中**@提及**子代理手進行。例如。
```txt frame="none"
@general help me search for this function
```
3. **會話之間導航**子代理建自己的子會話時,您可以使用以下命令在父會話和所有子會話之間導航:
3. **会话之间导航**子代理建自己的子会话時,您可以使用以下命令在父会话和所有子会话之间导航:
- **\<Leader>+Right**(或您配置的 `session_child_cycle` 鍵綁定)向前循環父級 → 子級 1 → 子級 2 → ... → 父級
- **\<Leader>+Left**(或您配置的 `session_child_cycle_reverse` 鍵綁定)向後循環父級 ← 子級 1 ← 子級 2 ← ... ← 父級
使您可以在主要對話和專門的子代理工作之間無縫切換。
使您可以在主要对话和专門的子代理工作之間無縫切換。
---
## 配置
您可以自定義置代理或通配置建您自己的代理。可以通過兩種方式配置代理:
您可以自定義置代理或通配置建您自己的代理。可以通过两种方式配置代理:
---
@@ -177,7 +177,7 @@ _模式_`primary`
---
### 降價
### Markdown
您还可以使用 Markdown 文件定义代理。将它们放入:
@@ -212,7 +212,7 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
## 選項
讓我詳細看看些配置選項。
讓我詳細看看些配置選項。
---
@@ -230,7 +230,7 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
}
```
是一**必需的**配置選項。
是一**必需的**配置選項。
---
@@ -238,7 +238,7 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
使用 `temperature` 配置控制 LLM 响应的随机性和创意。
較低的值使響更加集中和確定,而較高的值增加創造力和可變性。
較低的值使響更加集中和確定,而較高的值增加创建力和可變性。
```json title="opencode.json"
{
@@ -253,11 +253,11 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
}
```
度值的範圍通常 0.0 到 1.0
度值范围通常 0.0 到 1.0
- **0.0-0.2**非常集中且確定的響應,非常適合代分析和規劃
- **0.3-0.5**具有一定創造力的平衡響應,適合一般開發任務
- **0.6-1.0**:更有意和多樣化的反應,有助於頭腦風暴和探索
- **0.0-0.2**响应更集中、确定性更高,适合代分析和规划
- **0.3-0.5**平衡型响应,兼顾稳定性与创造力
- **0.6-1.0**响应更有意和多样性,适合头脑风暴和探索
```json title="opencode.json"
{
@@ -277,15 +277,15 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
}
```
如果未指定温度opencode 将使用特定于型的默认值;大多数型通常为 0Qwen 型为 0.55。
如果未指定温度opencode 将使用特定于型的默认值;大多数型通常为 0Qwen 型为 0.55。
---
### 最大步數
控制代理在被迫使用文本響之前可以行的最大代理迭代次數。這允許希望控成本的用戶代理操作置限制。
控制代理在被迫使用文本響之前可以行的最大代理迭代次數。这允许希望控成本的用戶代理操作置限制。
如果未置,代理繼續迭代,直到模型選擇停止或用戶中斷會話
如果未置,代理繼續迭代,直到模型选择停止或用戶中斷会话
```json title="opencode.json"
{
@@ -299,7 +299,7 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
}
```
達到限制時,代理收到特殊的系統提示,指示其響其工作摘要和建議的剩餘任
達到限制時,代理收到特殊的系統提示,指示其響其工作摘要和建議的剩餘任
:::caution
旧版 `maxSteps` 字段已废弃。请改用`steps`。
@@ -343,7 +343,7 @@ Markdown 文件名成为代理名称。例如,`review.md` 创建`review` 代
### 模型
使用 `model` 配置此代理的模型。对于使用针对不同任务优化的不同模型很有。例如,更快的规划模型、更强大的实施模型。
使用 `model` 配置此代理的模型。对于使用针对不同任务优化的不同模型很有帮助。例如,更快的规划模型、更强大的实施模型。
:::tip
如果您不指定模型,主代理将使用[全局配置的模型](/docs/config#models),而子代理将使用调用子代理的主代理的模型。
@@ -386,7 +386,7 @@ opencode配置中的模型ID使用格式`provider/model-id`。例如,如果您
```
:::note
特定代理的配置會覆蓋全局配置。
特定代理的配置会覆盖全局配置。
:::
您还可以使用通配符同时控制多个工具。例如,要禁用 MCP 服务器中的所有工具:
@@ -410,7 +410,7 @@ opencode配置中的模型ID使用格式`provider/model-id`。例如,如果您
---
###
###
您可以配置权限来管理代理可以执行的操作。 目前,`edit`、`bash` 和 `webfetch` 工具的权限可以配置为:
@@ -427,7 +427,7 @@ opencode配置中的模型ID使用格式`provider/model-id`。例如,如果您
}
```
您可以覆蓋每個代理的這些權限。
您可以覆盖每个代理的这些权限。
```json title="opencode.json" {3-5,8-10}
{
@@ -482,7 +482,7 @@ Only analyze code and suggest changes.
}
```
可以採用全局模式。
可以採用全局模式。
```json title="opencode.json" {7}
{
@@ -499,8 +499,8 @@ Only analyze code and suggest changes.
}
```
可以使用`*`通配符來管理所有命令的限。
於最後一個匹配規則優先,因此 `*` 通配符放在前面,特定規則放在面。
可以使用`*`通配符來管理所有命令的限。
于最后一个匹配规则优先,因此 `*` 通配符放在前面,特定规则放在面。
```json title="opencode.json" {8}
{
@@ -542,7 +542,7 @@ Only analyze code and suggest changes.
### 隱
使用`hidden: true`从`@`自动完成菜单隐藏子代理。对于只能由其他代理通过任务工具以编程方式调用的内部子代理很有
使用`hidden: true`从`@`自动完成菜单隐藏子代理。对于只能由其他代理通过任务工具以编程方式调用的内部子代理很有帮助
```json title="opencode.json"
{
@@ -555,7 +555,7 @@ Only analyze code and suggest changes.
}
```
這僅影響自動完成菜中的用戶可見性。如果限允,模型仍然可以通過任務工具調用隱藏代理。
这仅影响自动完成菜中的用户可见性。如果限允,模型仍然可以通过任务工具调用隐藏代理。
:::note
仅适用于`mode: subagent`代理。
@@ -563,7 +563,7 @@ Only analyze code and suggest changes.
---
### 任務權
### 任务权
使用`permission.task`控制代理可以通过任务工具调用哪些子代理。使用glob模式进行灵活匹配。
@@ -591,7 +591,7 @@ Only analyze code and suggest changes.
:::
:::tip
用戶始終可以通 `@` 自完成菜直接調用任何子代理,即使代理的任務權限會拒絕它。
用戶始終可以通 `@` 自完成菜直接用任何子代理,即使代理的任务权限会拒絕它。
:::
---
@@ -631,13 +631,13 @@ Only analyze code and suggest changes.
}
```
範圍從 0.0 到 1.0。較低的值更加集中,較高的值更加多樣化。
范围從 0.0 到 1.0。較低的值更加集中,較高的值更加多樣化。
---
### 額外的
您在代理配置中指定的任何其他選項都將作為模型選項**直接**傳遞給提供程序。這允許您使用特定提供商的功能和參數。
您在代理配置中指定的任何其他選項都将作为模型選項**直接**傳遞給提供商。这允许您使用特定提供商的功能和參數。
例如,使用 OpenAI 的推理模型,您可以控制推理工作:
@@ -654,7 +654,7 @@ Only analyze code and suggest changes.
}
```
些附加選項是特定於型號和提供商的。查提供商的文檔以獲取可用參數。
些附加選項是特定于模型和提供商的。查提供商的文档以获取可用參數。
:::tip
运行 `opencode models` 查看可用模型的列表。
@@ -662,20 +662,20 @@ Only analyze code and suggest changes.
---
## 建代理
## 建代理
您可以使用以下命令建新代理:
您可以使用以下命令建新代理:
```bash
opencode agent create
```
此交互式命令
此交互式命令
1. 詢問代理保存在哪裡;全局或特定項目。
2. 描述代理應該做什麼。
3. 生成適的系統提示和標識符。
4. 讓您選擇代理可以訪問哪些工具。
2. 描述代理应该做什麼。
3. 生成適的系統提示和標識符。
4. 讓您选择代理可以访问哪些工具。
5. 最后使用代理配置创建一个markdown文件。
---
@@ -684,17 +684,17 @@ opencode agent create
以下是不同代理的一些常見用例。
- **構建代理**用所有工具的完整開發工作
- **構建代理**用所有工具的完整開發工作
- **規劃代理**:分析規劃,不做改動
- **查代理**:具有隻讀訪問權限和文工具的代碼
- **查代理**:具有隻讀访问权限和文工具的代碼
- **调试代理**专注于启用bash和读取工具的调查
- **文代理**:使用文件操作但不使用系統命令的文編寫
- **文代理**:使用文件操作但不使用系統命令的文編寫
---
## 示例
以下是一些您可能覺得有用的示例代理。
以下是一些您可能覺得有用的示例代理。
:::tip
您有想要分享的经纪人吗? [提交 PR](https://github.com/anomalyco/opencode)。

View File

@@ -35,7 +35,7 @@ opencode [project]
| `--session` | `-s` | 会话 ID 继续 |
| `--fork` | | 继续时分叉会话(与 `--continue` 或 `--session` 一起使用) |
| `--prompt` | | 提示使用 |
| `--model` | `-m` | 以提供/模型形式使用的模型 |
| `--model` | `-m` | 以提供/模型形式使用的模型 |
| `--agent` | | 代理使用 |
| `--port` | | 监听端口 |
| `--hostname` | | 监听的主机名 |
@@ -85,15 +85,15 @@ opencode attach http://10.20.30.40:4096
---
#### 創造
#### 创建
使用自定義配置建新代理。
使用自定義配置建新代理。
```bash
opencode agent create
```
此命令指導您使用自定義系統提示和工具配置建新代理。
此命令指導您使用自定義系統提示和工具配置建新代理。
---
@@ -109,7 +109,7 @@ opencode agent list
### 授權
管理提供商的憑據和登錄的命令。
管理提供商的憑據和登錄的命令。
```bash
opencode auth [command]
@@ -117,21 +117,21 @@ opencode auth [command]
---
#### 登
#### 登
opencode 由 [模型.dev](https://models.dev) 上的型列表提供支持,因此您可以使用 `opencode auth login` 来为您想要使用的任何型配置 API 按键。它存储在 `~/.local/share/opencode/auth.json` 中。
opencode 由 [Models.dev](https://models.dev) 上的型列表提供支持,因此您可以使用 `opencode auth login` 来为您想要使用的任何型配置 API 按键。它存储在 `~/.local/share/opencode/auth.json` 中。
```bash
opencode auth login
```
当opencode启动时它会从会计文件加载提供程序。如果您的环境中定义了任何按键或项目中的`.env`文件。
当opencode启动时它会从auth 文件加载提供。如果您的环境中定义了任何按键或项目中的`.env`文件。
---
#### 列表
列出憑證文件中存儲的所有經身份驗證的提供程序
列出憑證文件中存儲的所有經身份验证的提供
```bash
opencode auth list
@@ -147,7 +147,7 @@ opencode auth ls
#### 註銷
從憑據文件中清除提供程序,將您從提供程序中註銷。
從憑據文件中清除提供商,将您從提供中註銷。
```bash
opencode auth logout
@@ -165,7 +165,7 @@ opencode github [command]
---
#### 安
#### 安
在您的存储库中安装 GitHub 代理。
@@ -190,7 +190,7 @@ opencode github run
| 旗幟 | 描述 |
| --------- | ------------------------------ |
| `--event` | 用于运行代理的 GitHub 模拟事件 |
| `--token` | GitHub 个人访问令牌 |
| `--token` | GitHub 个人访问Tokens |
---
@@ -276,7 +276,7 @@ opencode mcp debug <name>
---
### 型
###
列出已配置提供商的所有可用模型。
@@ -284,9 +284,9 @@ opencode mcp debug <name>
opencode models [provider]
```
此命令以 `provider/model` 格式显示您配置的提供程序中可用的所有模型。
此命令以 `provider/model` 格式显示您配置的提供中可用的所有模型。
这对于确定[你的配置](/docs/config/)中使用的意图模型名称很有
这对于确定[你的配置](/docs/config/)中使用的意图模型名称很有帮助
您可以选择提供项目ID并按该提供项目筛选模型。
@@ -301,7 +301,7 @@ opencode models anthropic
| `--refresh` | 从 models.dev 刷新模型缓存 |
| `--verbose` | 使用更详细的模型输出(包括成本等元数据) |
使用`--refresh`标志来更新服务器的模型列表。当新模型已添加到提供程序并且您希望在opencode中查看它们时这非常有用。
使用`--refresh`标志来更新服务器的模型列表。当新模型已添加到提供并且您希望在opencode中查看它们时这非常有用。
```bash
opencode models --refresh
@@ -342,7 +342,7 @@ opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
| `--session` | `-s` | 会话 ID 继续 |
| `--fork` | | 继续时分叉会话(与 `--continue` 或 `--session` 一起使用) |
| `--share` | | 分享会议 |
| `--model` | `-m` | 以提供/模型形式使用的模型 |
| `--model` | `-m` | 以提供/模型形式使用的模型 |
| `--agent` | | 代理使用 |
| `--file` | `-f` | 要附加到消息的文件 |
| `--format` | | 格式默认格式化或json原始JSON事件 |
@@ -373,7 +373,7 @@ opencode serve
---
### 會議
### 会话
管理 opencode 会话。
@@ -402,7 +402,7 @@ opencode session list
### 統計數據
显示opencode会话的令牌使用情况和成本统计信息。
显示opencode会话的Tokens使用情况和成本统计信息。
```bash
opencode stats
@@ -489,7 +489,7 @@ opencode acp
---
### 解除安
### 解除安
卸载opencode并删除所有相关文件。
@@ -584,15 +584,15 @@ opencode CLI采用以下全局标志。
### 實驗性的
些環境變量用可能更改或除的實驗性功能。
些環境變量用可能更改或除的實驗性功能。
| 變量 | 類型 | 描述 |
| ----------------------------------------------- | ---- | ----------------------------------- |
| `OPENCODE_EXPERIMENTAL` | 布尔 | 实现所有实验性功能 |
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | 布尔 | 新增图标发现 |
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | 布尔 | 添加图标发现 |
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | 布尔 | 在 TUI 中禁用选择时复制 |
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | 数量 | bash 命令的默认超时(以毫秒为单位) |
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | 数量 | LLM 响应的最大输出令牌 |
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | 数量 | LLM 响应的最大输出Tokens |
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | 布尔 | 为整个目录启用文件观察器 |
| `OPENCODE_EXPERIMENTAL_OXFMT` | 布尔 | 启用 oxfmt 清理程序 |
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | 布尔 | 实现实验性 LSP 工具 |

View File

@@ -1,6 +1,6 @@
---
title: 命令
description: 為重複任務創建自定命令。
description: 为重复任务创建自定命令。
---
自定义命令允许您指定在 TUI 中执行该命令时要运行的提示。
@@ -13,7 +13,7 @@ description: 為重複任務創建自定義命令。
---
## 建命令文件
## 建命令文件
在`commands/`目录中创建markdown文件来定义自定义命令。
@@ -32,7 +32,7 @@ Focus on the failing tests and suggest fixes.
frontmatter 定义命令属性。内容成为模板。
鍵入 `/` 後跟命令名來使用命令。
鍵入 `/` 後跟命令名來使用命令。
```bash frame="none"
"/test"
@@ -75,7 +75,7 @@ frontmatter 定义命令属性。内容成为模板。
---
### 降價
### Markdown
您还可以使用 Markdown 文件定义命令。将它们放入:
@@ -104,7 +104,7 @@ Markdown 文件名成为命令名。例如,`test.md` 让
## 提示配置
自定義命令的提示支持幾特殊的佔位符和語法。
自定義命令的提示支持幾特殊的佔位符和語法。
---
@@ -129,11 +129,11 @@ Include proper typing and basic structure.
`$ARGUMENTS` 将替换为 `Button`。
可以使用位置參數訪問各個參數:
可以使用位置參數访问各个參數:
- `$1` - 第一參數
- `$2` - 第二參數
- `$3` - 第三參數
- `$1` - 第一參數
- `$2` - 第二參數
- `$3` - 第三參數
- 等等...
例如:
@@ -153,7 +153,7 @@ with the following content: $3
/create-file config.json src "{ \"key\": \"value\" }"
```
取代了:
取代了:
- `$1` 与 `config.json`
- `$2` 与 `src`
@@ -165,7 +165,7 @@ with the following content: $3
使用 _!`command`_ 将 [bash命令](/docs/tui#bash-commands) 输出注入到提示符中。
例如,要建分析測試覆率的自定義命令:
例如,要建分析測試覆率的自定義命令:
```md title=".opencode/commands/analyze-coverage.md"
---
@@ -191,13 +191,13 @@ Recent git commits:
Review these changes and suggest any improvements.
```
命令在項目的根目中運行,其輸出成提示的一部分。
命令在項目的根目中運行,其輸出成提示的一部分。
---
### 文件參考
使用 `@` 後跟文件名文件包含在命令中。
使用 `@` 後跟文件名文件包含在命令中。
```md title=".opencode/commands/review-component.md"
---
@@ -208,13 +208,13 @@ Review the component in @src/components/Button.tsx.
Check for performance issues and suggest improvements.
```
文件內容會自動包含在提示中。
文件內容会自动包含在提示中。
---
## 選項
讓我詳細看看配置選項。
讓我詳細看看配置選項。
---
@@ -232,7 +232,7 @@ Check for performance issues and suggest improvements.
}
```
是一**必需的**配置選項。
是一**必需的**配置選項。
---
@@ -270,14 +270,14 @@ Check for performance issues and suggest improvements.
}
```
是一**可選**配置選項。如果未指定,默認為您當前的代理。
是一**可選**配置選項。如果未指定,默認为您当前的代理。
---
### 子任
### 子任
使用`subtask`布尔值强制命令触发[子代理](/docs/agents/#subagents)调用。
如果您希望命令不污染您的主要上下文並且將**強制**代理充子代理,那麼非常有用,
如果您希望命令不污染您的主要上下文并且将**強制**代理充子代理,那麼非常有用,
即使`mode`在[代理人](/docs/agents)配置上设置为`primary`。
```json title="opencode.json"
@@ -290,7 +290,7 @@ Check for performance issues and suggest improvements.
}
```
是一**可選**配置選項。
是一**可選**配置選項。
---
@@ -308,7 +308,7 @@ Check for performance issues and suggest improvements.
}
```
是一**可選**配置選項。
是一**可選**配置選項。
---
@@ -317,7 +317,7 @@ Check for performance issues and suggest improvements.
opencode包含`/init`、`/undo`、`/redo`、`/share`、`/help`等内置命令;【了解更多](/docs/tui#commands)。
:::note
自定義命令可以覆蓋內置命令。
自定義命令可以覆盖内置命令。
:::
如果您定義同名的自定義命令,它將覆蓋內置命令。
如果您定義同名的自定義命令,它将覆盖内置命令。

View File

@@ -25,22 +25,22 @@ opencode 支持 **JSON** 和 **JSONC**(带注释的 JSON格式。
## 地點
您可以配置放置在幾不同的位置,它們有一
不同的優先順序。
您可以配置放置在幾不同的位置,它們有一
不同的优先顺序。
:::note
配置文件**合在一起**,而不是替換。
配置文件**合在一起**,而不是替換。
:::
配置文件被合在一起,而不是被替換。以下配置位置的置被合併。僅當密鑰衝突時,面的配置才會覆蓋前面的配置。保留所有配置中的非衝突置。
配置文件被合在一起,而不是被替換。以下配置位置的置被合并。仅当密钥衝突時,面的配置才会覆盖前面的配置。保留所有配置中的非衝突置。
例如,如果您的全局配置设置`theme: "opencode"`和`autoupdate: true`,并且您的项目配置设置`model: "anthropic/claude-sonnet-4-5"`,则最终配置将包括所有三个设置。
---
### 優先順
### 优先顺
配置源按以下序加載(面的源覆前面的源):
配置源按以下序加載(面的源覆前面的源):
1. **远程配置**(来自`.well-known/opencode`-组织默认值
2. **全局配置** (`~/.config/opencode/opencode.json`) - 用户首选项
@@ -49,7 +49,7 @@ opencode 支持 **JSON** 和 **JSONC**(带注释的 JSON格式。
5. **`.opencode` 目录** - 代理、命令、插件
6. **内联配置** (`OPENCODE_CONFIG_CONTENT` env var) - 运行时覆盖
意味著項目配置可以覆全局默認值,全局配置可以覆遠程組織默認值。
意味著項目配置可以覆全局默認值,全局配置可以覆遠程組織默認值。
:::note
`.opencode` 和`~/.config/opencode` 目录对子目录使用**复数名称**`agents/`、`commands/`、`modes/`、`plugins/`、`skills/`、`tools/` 和`themes/`。为了坚固兼容,还支持单数名称(例如`agent/`)。
@@ -59,9 +59,9 @@ opencode 支持 **JSON** 和 **JSONC**(带注释的 JSON格式。
### 偏僻的
组织可以通过 `.well-known/opencode` 端点提供默认配置。当您向支持的成功进行身份验证时,会自动获取该信息。
组织可以通过 `.well-known/opencode` 端点提供默认配置。当您向支持的提供商进行身份验证时,会自动获取该信息。
首先加載遠程配置,作基礎層。所有其他配置源(全局、項目)都可以覆蓋這些默認值。
首先加載遠程配置,作基礎層。所有其他配置源(全局、項目)都可以覆盖这些默認值。
例如,如果您的组织提供默认取消的 MCP 服务器:
@@ -77,7 +77,7 @@ opencode 支持 **JSON** 和 **JSONC**(带注释的 JSON格式。
}
```
您可以在本地配置中用特定服務器:
您可以在本地配置中用特定服務器:
```json title="opencode.json"
{
@@ -95,18 +95,18 @@ opencode 支持 **JSON** 和 **JSONC**(带注释的 JSON格式。
### 全球的
将全局 opencode 配置放在 `~/.config/opencode/opencode.json` 中。使用全局配置来实现用户范围的首选项,例如主题、提供程序或按键绑定。
将全局 opencode 配置放在 `~/.config/opencode/opencode.json` 中。使用全局配置来实现用户范围的首选项,例如主题、提供或按键绑定。
全局配置覆遠程組織默認值。
全局配置覆遠程組織默認值。
---
### 每項目
### 每項目
在项目根目录中添加`opencode.json`。项目配置在标准配置文件中具有最高优先级 - 它覆盖全局配置和远程配置。
:::tip
項目特定配置放在項目的根目中。
項目特定配置放在項目的根目中。
:::
当opencode启动时它会在当前目录中查找配置文件或打开到最近的Git目录。
@@ -124,14 +124,14 @@ export OPENCODE_CONFIG=/path/to/my/custom-config.json
opencode run "Hello world"
```
自定義配置按優先順序在全局配置和項目配置之間加載。
自定義配置按优先顺序在全局配置和項目配置之間加載。
---
### 自定義目
### 自定義目
使用`OPENCODE_CONFIG_DIR`指定自定义配置目录
環境變量。將在該目錄中搜索代理、命令、
環境變量。将在该目录中搜索代理、命令、
模式和插件类似于标准`.opencode`目录一样,并且应该
遵循相同的結構。
@@ -148,7 +148,7 @@ opencode run "Hello world"
配置文件具有在 [**`opencode.ai/config.json`**](https://opencode.ai/config.json) 中配置的架构。
您的編輯器應該能夠根據架構進行驗證和自完成。
您的编辑器应该能夠根據架構進行驗證和自完成。
---
@@ -179,7 +179,7 @@ opencode run "Hello world"
---
### 服器
### 服
您可以通过`server` 选项为`opencode serve` 和`opencode web` 命令配置服务器设置。
@@ -201,7 +201,7 @@ opencode run "Hello world"
- Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try again later.Thats all we know.
- Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try again later.Thats all we know.
- `mdns` - 启用 mDNS 服务发现。这允许网络上的其他设备发现您的 opencode 服务器。
- `mdnsDomain` - mDNS 服务的自定义域名。默认为 `opencode.local`。对于在同一个网络上运行多个实例很有
- `mdnsDomain` - mDNS 服务的自定义域名。默认为 `opencode.local`。对于在同一个网络上运行多个实例很有帮助
- `cors` - 从基于浏览器的客户端使用 HTTP 服务器时允许 CORS 的其他来源。值必须是完整来源(方案+主机+任选端口),例如 `https://app.example.com`。
[在此处了解有关服务器的更多信息](/docs/server)。
@@ -226,7 +226,7 @@ opencode run "Hello world"
---
### 型
###
您可以通过 `provider`、`model` 和 `small_model` 选项来配置要在 opencode 配置中使用的提供的程序和模型。
@@ -239,7 +239,7 @@ opencode run "Hello world"
}
```
`small_model` 选项为标题生成等轻量级任务配置单独的模型。默认情况下,如果您的成功可以提供更便宜的模型opencode 会尝试使用更便宜的模型,否则它会退回到您的主模型。
`small_model` 选项为标题生成等轻量级任务配置单独的模型。默认情况下,如果您的提供商可以提供更便宜的模型opencode 会尝试使用更便宜的模型,否则它会退回到您的主模型。
提供商选项可以包括`timeout`和`setCacheKey`
@@ -258,15 +258,15 @@ opencode run "Hello world"
```
- `timeout` - 请求超时以毫秒为单位默认值300000。设置为 `false` 以禁用。
- `setCacheKey` -确保始终为指定的提供设置存储硬盘。
- `setCacheKey` -确保始终为指定的提供设置存储硬盘。
您还可以配置[本地模型](/docs/models#local)。[了解更多](/docs/models)。
---
#### 特定提供商的選項
#### 特定提供商的選項
有些提供程序支持除通用 `timeout` 和 `apiKey` 之外的其他配置选项。
有些提供支持除通用 `timeout` 和 `apiKey` 之外的其他配置选项。
##### 亞馬遜基岩
@@ -292,14 +292,14 @@ Amazon Bedrock 支持 AWS 特定配置:
- `endpoint` - VPC 终端节点的自定义节点 URL。这是使用 AWS 特定术语的通用 `baseURL` 选项的别名。如果两者都指定,`endpoint` 优先。
:::note
承载令牌`AWS_BEARER_TOKEN_BEDROCK` 或`/connect`)优先于基于配置文件的身份验证。详情请参见【认证优先级](/docs/providers#authentication-precedence)。
承载Tokens`AWS_BEARER_TOKEN_BEDROCK` 或`/connect`)优先于基于配置文件的身份验证。详情请参见【认证优先级](/docs/providers#authentication-precedence)。
:::
[了解有关 Amazon Bedrock 配置的更多信息](/docs/providers#amazon-bedrock)。
---
### 主
### 主
您可以通过 opencode 配置中配置中的 `theme` 选项要使用的主题。
@@ -368,7 +368,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
}
```
需要:
需要:
- Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try again later.Thats all we know.
- `"auto"` - 自动分享新对话
@@ -419,7 +419,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
---
### 自更新
### 自更新
opencode 将在启动时自动下载任何新的更新。您可以使用 `autoupdate` 选项取消此功能。
@@ -461,7 +461,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
---
###
###
默认情况下opencode **允许所有操作**,无需明确批准。您可以使用 `permission` 选项更改此设置。
@@ -496,7 +496,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
```
- Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try again later.Thats all we know.
- `prune` - 删除旧工具以输出保存令牌(默认值:`true`)。
- `prune` - 删除旧工具以输出保存Tokens(默认值:`true`)。
---
@@ -551,7 +551,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
### 指示
您可以通过 `instructions` 选项配置您正在使用的型的说明。
您可以通过 `instructions` 选项配置您正在使用的型的说明。
```json title="opencode.json"
{
@@ -560,14 +560,14 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
}
```
需要指令文件的路徑和全局模式數組。 [了解更多
需要指令文件的路徑和全局模式數組。 [了解更多
关于规则在这里](/docs/rules)。
---
### 殘疾服務提供
### 殘疾服務提供
您可以通过 `disabled_providers` 选项取消自动加载的提供程序。当您想要阻止加载某些提供程序(即使其可用)时,这非常有用。
您可以通过 `disabled_providers` 选项取消自动加载的提供。当您想要阻止加载某些提供(即使其可用)时,这非常有用。
```json title="opencode.json"
{
@@ -580,15 +580,15 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
`disabled_providers` 优先于`enabled_providers`。
:::
`disabled_providers` 选项接受提供 ID 内存。当提供被取消时:
`disabled_providers` 选项接受提供 ID 内存。当提供被取消时:
- 即使置了環境變量也不加載。
- 即使置了環境變量也不加載。
- 即使通过`/connect`命令配置API钥匙也不会加载它。
- 提供商的型號不會出現在型號選擇列表中。
- 提供商的模型不会出現在模型选择列表中。
---
### 用的提供商
### 用的提供商
Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try again later.Thats all we know.
@@ -599,13 +599,13 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
}
```
当您想要限制 opencode 仅使用特定的提供程序而不是一一禁止它们时,这非常有用。
当您想要限制 opencode 仅使用特定的提供而不是一一禁止它们时,这非常有用。
:::note
`disabled_providers` 优先于`enabled_providers`。
:::
如果有人提供程序同时出现在`enabled_providers`和`disabled_providers`中,则`disabled_providers`优先考虑一致性。
如果有人提供同时出现在`enabled_providers`和`disabled_providers`中,则`disabled_providers`优先考虑一致性。
---
@@ -621,7 +621,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
```
:::caution
實驗選項不穩定。它們可能更改或被除,恕不另行通知。
實驗選項不穩定。它們可能更改或被除,恕不另行通知。
:::
---
@@ -651,7 +651,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
}
```
如果未置環境變量,它被替換空字符串。
如果未置環境變量,它被替換空字符串。
---
@@ -675,11 +675,11 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
文件路徑可以是:
- 相對於配置文件目
- 或者以 `/` 或 `~` 開頭的絕路徑
- 相对于配置文件目
- 或者以 `/` 或 `~` 開頭的絕路徑
這些對於
这些对于
- 将API等敏感数据保存在单独的文件中。
- 包含大型指令文件,而不弄亂您的配置。
- 跨多配置文件共享通用配置片段。
- 包含大型指令文件,而不弄亂您的配置。
- 跨多配置文件共享通用配置片段。

View File

@@ -1,13 +1,13 @@
---
title: 定制工具
description: 建法學碩士可以在opencode中調用的工具。
description: 建法學碩士可以在opencode中用的工具。
---
自定义工具是您创建的函数LLM 可以在对话期间调用。它们与 opencode 的[内置工具](/docs/tools) 一起工作,例如 `read`、`write` 和 `bash`。
---
## 建工具
## 建工具
工具定义为 **TypeScript** 或 **JavaScript** 文件。但是,工具定义调用可以使用 **任何语言** 编写的脚本 - TypeScript 或 JavaScript 仅用于工具定义本身。
@@ -15,7 +15,7 @@ description: 創建法學碩士可以在opencode中調用的工具。
### 地點
它們可以定義
它們可以定義
- 通过将它们放在项目的 `.opencode/tools/` 目录中来本地进行。
- 或者在全局范围内,将它们放在 `~/.config/opencode/tools/` 中。
@@ -45,9 +45,9 @@ export default tool({
---
#### 每文件多工具
#### 每文件多工具
可以從單文件導出多工具。每導出都會成為**一單獨的工具**,名稱為**`<filename>_<exportname>`**
可以從單文件導出多工具。每導出都会成为**一單獨的工具**,名称为**`<filename>_<exportname>`**
```ts title=".opencode/tools/math.ts"
import { tool } from "@opencode-ai/plugin"
@@ -110,7 +110,7 @@ export default {
### 情境
工具接收有關當前會話的上下文:
工具接收有關当前会话的上下文:
```ts title=".opencode/tools/project.ts" {8}
import { tool } from "@opencode-ai/plugin"
@@ -147,7 +147,7 @@ b = int(sys.argv[2])
print(a + b)
```
然後創建調用它的工具定義:
然後创建调用它的工具定義:
```ts title=".opencode/tools/python-add.ts" {10}
import { tool } from "@opencode-ai/plugin"

View File

@@ -9,68 +9,68 @@ description: 使用 opencode 构建的项目和集成。
想要将您的 opencode 相关项目添加到此列表中吗?提交 PR。
:::
您还可以查看[很棒的opencode](https://github.com/awesome-opencode/awesome-opencode)和[opencode缓存](https://opencode.cafe),这是一个聚合生态系统和社区的社区。
您还可以查看[awesome-opencode](https://github.com/awesome-opencode/awesome-opencode)和[opencode.cafe](https://opencode.cafe),这是一个聚合生态系统和社区的社区。
---
## 插件
| 名 | 描述 |
| 名 | 描述 |
| --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| [Opencode-Daytona](https://github.com/jamesmurdza/daytona/blob/main/guides/typescript/opencode/README.md) | 在隔离的 Daytona 沙箱中自动运行 opencode 会话,并使用 git 同步和实时预览 |
| [opencode-helicone-会话](https://github.com/H2Shami/opencode-helicone-session) | 自动注入 Helicone 会话标头以进行请求包 |
| [打开代码类型注入](https://github.com/nick-vi/opencode-type-inject) | 使用查找工具将 TypeScript/Svelte 类型自动注入到文件读取中 |
| [opencode-daytona](https://github.com/jamesmurdza/daytona/blob/main/guides/typescript/opencode/README.md) | 在隔离的 Daytona 沙箱中自动运行 opencode 会话,并使用 git 同步和实时预览 |
| [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session) | 自动注入 Helicone 会话标头以进行请求包 |
| [opencode-type-inject](https://github.com/nick-vi/opencode-type-inject) | 使用查找工具将 TypeScript/Svelte 类型自动注入到文件读取中 |
| [opencode-openai-codex-auth](https://github.com/numman-ali/opencode-openai-codex-auth) | 使用您的 ChatGPT Plus 或 Pro 订阅而不是 API 积分 |
| [opencode-gemini-auth](https://github.com/jenslys/opencode-gemini-auth) | 使用您现有的 Gemini 计划而不是 API 设备 |
| [opencode-反重力-auth](https://github.com/NoeFabris/opencode-antigravity-auth) | 使用反重力的免费模型代替API |
| [opencode-devcontainers opencode开发容器](https://github.com/athal7/opencode-devcontainers) | 具有浅克隆和自动分配端口的多分支开发容器隔离 |
| [opencode-antigravity-auth](https://github.com/NoeFabris/opencode-antigravity-auth) | 使用反重力的免费模型代替API |
| [opencode-devcontainers](https://github.com/athal7/opencode-devcontainers) | 具有浅克隆和自动分配端口的多分支开发容器隔离 |
| [opencode-google-antigravity-auth](https://github.com/shekohex/opencode-google-antigravity-auth) | Google Antigravity OAuth 插件,支持 Google 搜索和更强大的 API 处理 |
| [opencode-动态宽度修剪](https://github.com/Tarquinen/opencode-dynamic-context-pruning) | 通过修剪过时的工具输出来优化代币使用 |
| [opencode-websearch-引用](https://github.com/ghoulr/opencode-websearch-cited.git) | 为具有Google接地风格的受支持增加本机网络搜索支持 |
| [opencode-dynamic-context-pruning](https://github.com/Tarquinen/opencode-dynamic-context-pruning) | 通过修剪过时的工具输出来优化代币使用 |
| [opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited.git) | 为具有Google接地风格的受支持增加本机网络搜索支持 |
| [opencode-pty](https://github.com/shekohex/opencode-pty.git) | 使AI代理能够在PTY中运行后台进程末端发送其交互输入。 |
| [opencode-shell-策略](https://github.com/JRedeker/opencode-shell-strategy) | 非吸引力 shell 命令说明 - 阻止依赖 TTY 的操作挂起 |
| [opencode-shell-strategy](https://github.com/JRedeker/opencode-shell-strategy) | 非吸引力 shell 命令说明 - 阻止依赖 TTY 的操作挂起 |
| [opencode-wakatime](https://github.com/angristan/opencode-wakatime) | 使用 Wakatime 跟踪 opencode 使用情况 |
| [opencode-md-表清理程序](https://github.com/franlol/opencode-md-table-formatter/tree/main) | 清理LLM生成的降价表 |
| [opencode变形快速应用](https://github.com/JRedeker/opencode-morph-fast-apply) | 使用Morph Fast Apply API和取消编辑标记将代码编辑速度提高10倍 |
| [哦我的opencode](https://github.com/code-yeongyu/oh-my-opencode) | 后台代理、预构建的LSP/AST/MCP工具、精选代理、兼容Claude代码 |
| [opencode通知器](https://github.com/panta82/opencode-notificator) | opencode 会话的桌面通知和声音警报 |
| [opencode通知程序](https://github.com/mohak34/opencode-notifier) | 针对权限、完成和错误事件的桌面通知和声音警报 |
| [opencode-md-table-formatter](https://github.com/franlol/opencode-md-table-formatter/tree/main) | 清理LLM生成的降价表 |
| [opencode-morph-fast-apply](https://github.com/JRedeker/opencode-morph-fast-apply) | 使用Morph Fast Apply API和取消编辑标记将代码编辑速度提高10倍 |
| [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) | 后台代理、预构建的LSP/AST/MCP工具、精选代理、兼容Claude代码 |
| [opencode-notificator](https://github.com/panta82/opencode-notificator) | opencode 会话的桌面通知和声音警报 |
| [opencode-notifier](https://github.com/mohak34/opencode-notifier) | 针对权限、完成和错误事件的桌面通知和声音警报 |
| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) | 基于 opencode 上下文的 AI 支持的自动 Zellij 会话命名 |
| [opencode技巧](https://github.com/zenobi-us/opencode-skillful) | 允许opencode代理通过技能发现和注入失败延迟加载提示 |
| [opencode超级内存](https://github.com/supermemoryai/opencode-supermemory) | 使用超级内存跨会话持久内存 |
| [@ZZPH0ZZ](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) | 具有視覺註釋和私人/離線共享的交互式計劃查 |
| [@ZZPH0ZZ](https://github.com/spoons-and-mirrors/subtask2) | opencode/命令擴展為具有精細流程控制的強大編排系統 |
| [opencode调度程序](https://github.com/different-ai/opencode-scheduler) | 使用带 cron 语法的 launchd (Mac) 或 systemd (Linux) 安排重复作业 |
| [微码](https://github.com/vtemian/micode) | 塑造头脑风暴 → 计划 → 实施具有会议连续性的工作流程 |
| [奥克托](https://github.com/vtemian/octto) | 用于通过多问题形式进行AI头痛风暴的交互式浏览器UI |
| [opencode-后台代理](https://github.com/kdcokenny/opencode-background-agents) | 具有异步委托和上下文持久性的Claude Code风格后台代理 |
| [打开代码通知](https://github.com/kdcokenny/opencode-notify) | opencode 的本机操作系统通知 了解任务何时完成 |
| [opencode工作区](https://github.com/kdcokenny/opencode-workspace) | 一堆多代理编排工具 16个组件一次安装 |
| [opencode工作树](https://github.com/kdcokenny/opencode-worktree) | opencode 的零难度 git 工作树 |
| [opencode-skillful](https://github.com/zenobi-us/opencode-skillful) | 允许opencode代理通过技能发现和注入失败延迟加载提示 |
| [opencode-supermemory](https://github.com/supermemoryai/opencode-supermemory) | 使用超级内存跨会话持久内存 |
| [@plannotator/opencode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) | 具有視覺註釋和私人/離線共享的交互式計劃查 |
| [@openspoon/subtask2](https://github.com/spoons-and-mirrors/subtask2) | opencode/命令扩展为具有精細流程控制的強大編排系統 |
| [opencode-scheduler](https://github.com/different-ai/opencode-scheduler) | 使用带 cron 语法的 launchd (Mac) 或 systemd (Linux) 安排重复作业 |
| [micode](https://github.com/vtemian/micode) | 塑造头脑风暴 → 计划 → 实施具有会议连续性的工作流程 |
| [octto](https://github.com/vtemian/octto) | 用于通过多问题形式进行AI头痛风暴的交互式浏览器UI |
| [opencode-background-agents](https://github.com/kdcokenny/opencode-background-agents) | 具有异步委托和上下文持久性的Claude Code风格后台代理 |
| [opencode-notify](https://github.com/kdcokenny/opencode-notify) | opencode 的本机操作系统通知 了解任务何时完成 |
| [opencode-workspace](https://github.com/kdcokenny/opencode-workspace) | 一堆多代理编排工具 16个组件一次安装 |
| [opencode-worktree](https://github.com/kdcokenny/opencode-worktree) | opencode 的零难度 git 工作树 |
---
##
##
| 名 | 描述 |
| 名 | 描述 |
| ------------------------------------------------------------------------------------------ | --------------------------------------------------------------- |
| [木牧](https://github.com/remorses/kimaki) | 用于控制 opencode 会话的 Discord 机器人,基于 SDK 构建 |
| [kimaki](https://github.com/remorses/kimaki) | 用于控制 opencode 会话的 Discord 机器人,基于 SDK 构建 |
| [opencode.nvim](https://github.com/NickvanDyke/opencode.nvim) | Neovim 插件,用于编辑器采集提示,基于 API 构建 |
| [门户网站](https://github.com/hosenur/portal) | 通过Tailscale/VPN实现opencode的移动优先Web UI |
| [打开代码插件模板](https://github.com/zenobi-us/opencode-plugin-template/) | 用于构建 opencode 插件的模板 |
| [portal](https://github.com/hosenur/portal) | 通过Tailscale/VPN实现opencode的移动优先Web UI |
| [opencode plugin template](https://github.com/zenobi-us/opencode-plugin-template/) | 用于构建 opencode 插件的模板 |
| [opencode.nvim](https://github.com/sudo-tee/opencode.nvim) | Neovim opencode 前端 - 基于终端的 AI 编码代理 |
| [ai-sdk-provider-opencode-sdk](https://github.com/ben-vargas/ai-sdk-provider-opencode-sdk) | Vercel AI SDK 提供程序,用于通过 @opencode-ai/sdk 使用 opencode |
| [开放室](https://github.com/btriapitsyn/openchamber) | opencode 的 Web/桌面用程序和 VS Code 扩展 |
| [opencode-Obsidian](https://github.com/mtymek/opencode-obsidian) | 在 Obsidian 的 UI 中嵌入 opencode 的 Obsidian 插件 |
| [开放式工作](https://github.com/different-ai/openwork) | Claude Cowork 的替代开源方案,由 opencode 提供支持 |
| [奥克斯](https://github.com/kdcokenny/ocx) | opencode扩展管理器具有可移植、隔离的配置文件。 |
| [代码游牧者](https://github.com/NeuralNomadsAI/CodeNomad) | opencode 的桌面、Web、移动和远程客户端应用程序 |
| [ai-sdk-provider-opencode-sdk](https://github.com/ben-vargas/ai-sdk-provider-opencode-sdk) | Vercel AI SDK 提供,用于通过 @opencode-ai/sdk 使用 opencode |
| [OpenChamber](https://github.com/btriapitsyn/openchamber) | opencode 的 Web/桌面用程序和 VS Code 扩展 |
| [OpenCode-Obsidian](https://github.com/mtymek/opencode-obsidian) | 在 Obsidian 的 UI 中嵌入 opencode 的 Obsidian 插件 |
| [OpenWork](https://github.com/different-ai/openwork) | Claude Cowork 的替代开源方案,由 opencode 提供支持 |
| [ocx](https://github.com/kdcokenny/ocx) | opencode扩展管理器具有可移植、隔离的配置文件。 |
| [CodeNomad](https://github.com/NeuralNomadsAI/CodeNomad) | opencode 的桌面、Web、移动和远程客户端应用程序 |
---
## 代理商
| 名 | 描述 |
| 名 | 描述 |
| -------------------------------------------------------------- | ---------------------------------------- |
| [代理](https://github.com/Cluster444/agentic) | 用于格式化开发的定价人工智能代理和命令] |
| [opencode代理](https://github.com/darrenhinde/opencode-agents) | 用于增强工作流程的配置、提示、代理和插件 |
| [Agentic](https://github.com/Cluster444/agentic) | 用于格式化开发的定价人工智能代理和命令] |
| [opencode-agents](https://github.com/darrenhinde/opencode-agents) | 用于增强工作流程的配置、提示、代理和插件 |

View File

@@ -14,8 +14,8 @@ opencode 不存储您的任何代码或上下文数据。
要开始使用opencode Enterprise
1. 您的團隊進行部試驗。
2. **<a href={email}>聯繫我</a>**討論定價和實施選項。
1. 您的團隊進行部試驗。
2. **<a href={email}>聯繫我</a>**討論定價和實施選項。
---
@@ -27,22 +27,22 @@ opencode 是开源的,不存储您的任何代码或上下文数据,因此
### 數據處理
**opencode 不会存储您的代码或上下文数据。 **所有处理都在本地进行或通过直接 API 调用您的 AI 成功
**opencode 不会存储您的代码或上下文数据。 **所有处理都在本地进行或通过直接 API 调用您的 AI 提供商
意味著只要您使用您信任的提供商或部提供商
意味著只要您使用您信任的提供商或部提供商
AI网关您可以安全使用opencode。
这里唯一需要注意的是可选的 `/share` 功能。
---
#### 分享對話
#### 分享对话
如果启用用户 `/share` 功能,对话和关联的数据将被发送到我们用于在 opencode.ai 上托管这些共享页面的服务。
数据当前通过我们的CDN边缘网络提供服务并缓存在用户附近的边缘。
建議您在試用時禁用此功能。
建議您在試用時禁用此功能。
```json title="opencode.json"
{
@@ -63,14 +63,14 @@ AI网关您可以安全使用opencode。
## 定價
們對 opencode Enterprise 使用單機模型。如果您有自己的 LLM 網關,我們不會對使用的令牌收取用。有關定價和實施選項的更多詳細信息,**<a href={email}>聯繫我</a>**。
们对 opencode Enterprise 使用單機模型。如果您有自己的 LLM 網關,我们不会对使用的Tokens收取用。有關定價和實施選項的更多詳細信息,**<a href={email}>聯繫我</a>**。
---
## 部署
完成试验并准备好使用 opencode 后,请访问:
您的組織,您可以**<a href={email}>聯繫我</a>**進行討論
您的組織,您可以**<a href={email}>聯繫我</a>**進行討論
定價和實施選項。
---
@@ -79,13 +79,13 @@ AI网关您可以安全使用opencode。
我们可以将 opencode 设置为您的整个组织使用单一的中央配置。
这种集中式配置可以与您的 SSO 成功集成,并确保所有用户仅访问您的内部 AI 网关。
这种集中式配置可以与您的 SSO 提供商集成,并确保所有用户仅访问您的内部 AI 网关。
---
### 單點登錄集成
通过中央配置opencode 可以与您组织的 SSO 成功集成以进行身份​​​​验证。
通过中央配置opencode 可以与您组织的 SSO 提供商集成以进行身份​​​​验证。
这使得 opencode 能够通过现有的身份管理系统获取内部 AI 网关的凭据。
@@ -101,10 +101,10 @@ AI网关您可以安全使用opencode。
### 自託管
雖然我建議禁用共享頁面以確保您的數據永遠不離開
您的組織,我們還可以幫助您在您的基礎設施上自行託管它們。
雖然我建議禁用共享頁面以確保您的數據永遠不離開
您的組織,我们还可以幫助您在您的基礎設施上自行託管它們。
目前已在我的路線圖上。如果您有興趣,**<a href={email}>讓我知道</a>**。
目前已在我的路線圖上。如果您有興趣,**<a href={email}>讓我知道</a>**。
---
@@ -122,14 +122,14 @@ opencode Enterprise 适用于希望确保其代码和数据永远不会离开其
与您的团队进行内部实验即可。opencode 默认情况下不存储您的代码或上下文数据,可以轻松上手。
然後**<a href={email}>聯繫我</a>**討論定價和實施選項。
然後**<a href={email}>聯繫我</a>**討論定價和實施選項。
</details>
<details>
<summary>企業定價如何運作? </summary>
提供按席位企業定價。如果您有自己的 LLM 網關,我們不會對使用的令牌收取用。如需了解更多情,**<a href={email}>聯繫我</a>**取根據您組織的需求定制的報價。
提供按席位企業定價。如果您有自己的 LLM 網關,我们不会对使用的Tokens收取用。如需了解更多情,**<a href={email}>聯繫我</a>**取根據您組織的需求定制的報價。
</details>
@@ -141,18 +141,18 @@ opencode 不存储您的代码或上下文数据。所有处理都在本地进
</details>
<details>
<summary>我可以使用自己的私有 NPM 註冊表嗎? </summary>
<summary>我可以使用自己的私有 NPM 註冊表嗎? </summary>
opencode 通过 Bun 的本机 `.npmrc` 文件支持来支持香蕉 npm 肥料。如果您的组织使用了花生,例如 JFrog Artifactory、Nexus 或类似的肥料,请确保开发人员在运行 opencode 之前经过身份验证。
要使用您的私有註冊表置身份驗證
要使用您的私有註冊表置身份验证
```bash
npm login --registry=https://your-company.jfrog.io/api/npm/npm-virtual/
```
这将创建带有身份验证详细信息的 `~/.npmrc`。 opencode 会自动
拿起這個
拿起这个
:::caution
在运行 opencode 之前,您必须登录灌木丛。

View File

@@ -11,7 +11,7 @@ description: opencode 使用特定于语言的清理程序。
opencode附带了多个适用于流行语言和框架的内置初始化程序。下面是格式化程序、支持的文件扩展名以及所需的命令或配置选项的列表。
| 格式化程序 | 展 | 要求 |
| 格式化程序 | 展 | 要求 |
| ------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| 政府 | .go | `gofmt` 命令可用 |
| 混合 | .ex、.exs、.eex、.heex、.leex、.neex、.sface | `mix` 命令可用 |
@@ -46,11 +46,11 @@ opencode附带了多个适用于流行语言和框架的内置初始化程序。
当opencode写入或编辑文件时
1. 根據所有用的格式化程序查文件展名。
2. 文件運行適的格式化程序命令。
3. 自動應用格式更改。
1. 根據所有用的格式化程序查文件展名。
2. 文件運行適的格式化程序命令。
3. 自动应用格式更改。
程在後台進行,確保無需任何手步驟即可維護您的代碼樣式。
程在後台進行,確保無需任何手步驟即可維護您的代碼樣式。
---
@@ -65,7 +65,7 @@ opencode附带了多个适用于流行语言和框架的内置初始化程序。
}
```
格式化程序配置支持以下內容:
格式化程序配置支持以下內容:
| 物業 | 類型 | 描述 |
| ------------- | -------- | -------------------------------- |
@@ -74,7 +74,7 @@ opencode附带了多个适用于流行语言和框架的内置初始化程序。
| `environment` | 对象 | 运行格式化程序时要设置的环境变量 |
| `extensions` | 字符串[] | 此整理程序应处理的文件扩展名 |
讓我看一些例子。
讓我看一些例子。
---
@@ -106,7 +106,7 @@ opencode附带了多个适用于流行语言和框架的内置初始化程序。
### 自定義格式化程序
您可以覆蓋內置格式化程序或通指定命令、環境變量和文件展名添加新格式化程序:
您可以覆盖内置格式化程序或通指定命令、環境變量和文件展名添加新格式化程序:
```json title="opencode.json" {4-14}
{

View File

@@ -15,7 +15,7 @@ opencode 与您的 GitHub 工作流程集成。在评论中提及 `/opencode`
---
## 安
## 安
在 GitHub 存储库中的项目中运行以下命令:
@@ -27,9 +27,9 @@ opencode github install
---
### 手動設
### 手动设
或者您可以手動設置。
或者您可以手动设置。
1. 错误 500服务器错误1500。这是一个错误。出现错误。请稍后重试。我们只知道这些。
@@ -85,7 +85,7 @@ opencode github install
- `agent`:要使用的代理。必须是一级代理。如果未找到,则从配置回退到 `default_agent` 或 `"build"`。
- `share`是否共享opencode会话。对于公共存储库默认为**true**。
- `prompt`:可选的自定义提示以覆盖默认行为。使用它来自定义 opencode 处理请求的方式。
- `token`:可选的 GitHub 访问令牌用于执行创建评论、提交更改和打开拉取请求等操作。默认情况下opencode 使用来自 opencode GitHub 应用程序的安装访问令牌,因此提交、评论和拉取请求显示为来自应用。
- `token`:可选的 GitHub 访问Tokens用于执行创建评论、提交更改和打开拉取请求等操作。默认情况下opencode 使用来自 opencode GitHub 应用程序的安装访问Tokens,因此提交、评论和拉取请求显示为来自应用。
或者,您可以使用 GitHub Action 运行程序的[内置`GITHUB_TOKEN`](https://docs.github.com/en/actions/tutorials/authenticate-with-github_token),而无需安装 opencode GitHub 应用程序。只需确保在您的工作流程中所需的权限:
@@ -101,16 +101,16 @@ opencode github install
---
## 支持的活
## 支持的活
opencode 可以由以下 GitHub 事件触发:
| 事件類型 | 觸發者 | 情 |
| 事件類型 | 觸發者 | 情 |
| ----------------------------- | ---------------------------- | --------------------------------------------------------------------------------------- |
| `issue_comment` | 对问题或 PR 发表评论 | 在评论中提及 `/opencode` 或 `/oc`。 opencode 读取上下文并可以创建分支、打开 PR 或回复。 |
| `pull_request_review_comment` | 对 PR 中的特定代码行进行评论 | 在检查代码时提及`/opencode` 或`/oc`。 opencode 接收文件路径、行号和 diff 上下文。 |
| `issues` | 问题已打开或已编辑 | 创建或修改问题时自动触发opencode。需要`prompt` 输入。 |
| `pull_request` | PR 已开启或已更新 | 当 PR 打开、同步或重新打开时自动触发 opencode。对于自动评论很有。 |
| `pull_request` | PR 已开启或已更新 | 当 PR 打开、同步或重新打开时自动触发 opencode。对于自动评论很有帮助。 |
| `schedule` | 基于 Cron 的计划 | 按计划运行 opencode。需要 `prompt` 输入。输出进入日志和 PR没有可评论的问题。 |
| `workflow_dispatch` | 从 GitHub UI 手动触发 | 通过“操作”选项卡触发 opencode。需要 `prompt` 输入。输出进入日志和 PR。 |
@@ -154,7 +154,7 @@ jobs:
---
### 拉取求示例
### 拉取求示例
或更新公关时间自动审核:
@@ -197,7 +197,7 @@ jobs:
### 問題分類示例
分類新問題。此示例濾超 30 天的帳戶以減少垃圾郵件:
分類新問題。此示例濾超 30 天的账户以減少垃圾郵件:
```yaml title=".github/workflows/opencode-triage.yml"
name: Issue Triage
@@ -265,7 +265,7 @@ jobs:
- Suggest improvements
```
這對於執行與您的項目相的特定查標準、編碼標准或重點領域非常有用。
这对于执行与您的項目相的特定查標準、編碼標准或重點領域非常有用。
---
@@ -273,7 +273,7 @@ jobs:
以下是如何在 GitHub 中使用 opencode 的一些示例。
- **解釋一問題**
- **解釋一問題**
在 GitHub 问题中添加此评论。
@@ -313,9 +313,9 @@ jobs:
```
错误 500服务器错误1500。这是一个错误。出现错误。请稍后重试。我们只知道这些。
- 正在查的確切文件
- 正在查的確切文件
- 具體代碼行
- 周围的差异上下文
- 行號信息
這允許更有針性的求,而無需手指定文件路徑或行號。
这允许更有針性的求,而無需手指定文件路徑或行號。

View File

@@ -25,7 +25,7 @@ opencode 在常规 GitLab 管道中工作。您可以将其构建为管道 [CI](
---
### 設定
### 设置
1. 将 opencode 身份验证 JSON 作为文件类型 CI 环境变量存储在 **设置** > **CI/CD** > **变量** 下。确保将它们标记为“隐藏和隐藏”。
2. 将以下内容添加到您的 `.gitlab-ci.yml` 文件中。
@@ -55,12 +55,12 @@ opencode 与您的 GitLab 工作流程集成。
- **分类问题**:要求 opencode 调查问题并向您解释。
- **修复和实施**要求opencode修复问题或实施功能。
將創建一新分支提出包含更改的合併請求。
将创建一新分支提出包含更改的合并请求。
- **安全**opencode 在您的 GitLab 运行器上运行。
---
### 設定
### 设置
opencode 在您的 GitLab CI/CD 管道中运行,您需要进行以下设置:
@@ -70,10 +70,10 @@ opencode 在您的 GitLab CI/CD 管道中运行,您需要进行以下设置:
1. 配置您的 GitLab 环境
2. 安装CI/CD
3. 获取AI模型成功 API键
4. 建服務帳戶
3. 获取AI模型提供商 API键
4. 建服務账户
5. 配置 CI/CD 变量
6. 建一流配置文件,是一示例:
6. 建一流配置文件,是一示例:
<details>
@@ -164,7 +164,7 @@ opencode 在您的 GitLab CI/CD 管道中运行,您需要进行以下设置:
您可以配置使用 `@opencode` 不同的触发主板。
:::
- **解釋一問題**
- **解釋一問題**
在 GitLab 问题中添加此评论。
@@ -184,7 +184,7 @@ opencode 在您的 GitLab CI/CD 管道中运行,您需要进行以下设置:
opencode 将创建一个新分支,实施更改,并打开包含更改的合并请求。
- **查合併請求**
- **查合并请求**
对 GitLab 合并请求留下以下评论。

View File

@@ -16,19 +16,19 @@ opencode 与 VS Code、Cursor 或任何支持终端的 IDE 集成。只需在终
---
## 安
## 安
要在 VS Code 和 Cursor、Windsurf、VSCodium 等流行分支上安装 opencode
1. 打开VS代码
2. 打開集成
2. 打開集成
3. 运行 `opencode` - 扩展会自动安装
另一方面,如果您想在从 TUI 运行 `/editor` 或 `/export` 时使用自己的 IDE则需要设置 `export EDITOR="code --wait"`。 [了解更多](/docs/tui/#editor-setup)。
---
### 手動安裝
### 手动安装
在扩展市场中搜索**opencode**,然后单击**安装**。
@@ -36,7 +36,7 @@ opencode 与 VS Code、Cursor 或任何支持终端的 IDE 集成。只需在终
### 故障排除
如果擴展無法自動安裝
如果扩展无法自动安装
- 确定您在集成终止中运行`opencode`。
- 确认您的 IDE 和 CLI 已安装:

View File

@@ -11,25 +11,25 @@ export const console = config.console
![具有opencode主题的opencode TUI](../../../assets/lander/screenshot.png)
讓我開始吧。
讓我開始吧。
---
#### 先決
#### 先決
要在终端中使用opencode您需要
1. 現代終端模器,例如:
- [韦兹术语](https://wezterm.org),跨平台
- [阿拉克里蒂](https://alacritty.org),跨平台
- [幽灵般的](https://ghostty.org)Linux 和 macOS
- [ 猫咪](https://sw.kovidgoyal.net/kitty/)Linux 和 macOS
1. 现代终端模器,例如:
- [WezTerm](https://wezterm.org),跨平台
- [Alacritty](https://alacritty.org),跨平台
- [Ghostty](https://ghostty.org)Linux 和 macOS
- [Kitty](https://sw.kovidgoyal.net/kitty/)Linux 和 macOS
2. 您想要使用的 LLM 强大的 API 钥
2. 要使用的 LLM 提供商 API 钥。
---
## 安
## 安
安装 opencode 最简单的方法是通过安装脚本。
@@ -37,7 +37,7 @@ export const console = config.console
curl -fsSL https://opencode.ai/install | bash
```
可以使用以下命令安它:
可以使用以下命令安它:
- **使用 Node.js**
@@ -131,9 +131,9 @@ curl -fsSL https://opencode.ai/install | bash
## 配置
借助 opencode可以通过配置 API 使用任 LLM 成功
借助 opencode可以通过配置 API 使用任 LLM 提供商
如果您不熟悉使用 LLM 成功,我们建议使用[OpenCode Zen](/docs/zen)。
如果你刚开始使用 LLM 提供商,我们建议使用 [OpenCode Zen](/docs/zen)。
这是经过 opencode 测试和验证的精选模型列表
團隊。
@@ -154,13 +154,13 @@ curl -fsSL https://opencode.ai/install | bash
└ enter
```
或者,可以选择其他巨头之一。 [了解更多](/docs/providers#directory)。
或者,你也可以选择其他提供商之一。[了解更多](/docs/providers#directory)。
---
## 初始化
現在您已經配置了提供程序,您可以航到一項目
現在您已經配置了提供,您可以航到一項目
你想繼續工作。
```bash
@@ -187,7 +187,7 @@ opencode
:::
这有助于 opencode 理解项目结构和编码模式
的。
的。
---
@@ -213,7 +213,7 @@ opencode
How is authentication handled in @packages/functions/src/api/index.ts
```
如果您沒有處理代碼庫的一部分,這會很有幫助。
如果您沒有處理代碼庫的一部分,这会很有幫助。
---
@@ -224,7 +224,7 @@ How is authentication handled in @packages/functions/src/api/index.ts
1. **制定計劃**
opencode 有一个*计划模式*,该模式禁止其进行更改和
相反,建議*如何*實現功能。
相反,建議*如何*實現功能。
使用 **Tab** 键切换到它。您会在右下角有一个指示符。
@@ -232,7 +232,7 @@ How is authentication handled in @packages/functions/src/api/index.ts
<TAB>
```
現在讓我描述一下我想要它做什麼。
現在讓我描述一下我想要它做什麼。
```txt frame="none"
When a user deletes a note, we'd like to flag it as deleted in the database.
@@ -241,7 +241,7 @@ How is authentication handled in @packages/functions/src/api/index.ts
```
您需要为 opencode 提供足够的详细信息才能了解您想要的内容。它有帮助
就像團隊中的初級開發人員交談一樣它交談。
就像團隊中的初級開發人員交談一樣它交談。
:::提示
为 opencode 提供大量上下文和示例,以帮助其理解您的内容
@@ -250,7 +250,7 @@ How is authentication handled in @packages/functions/src/api/index.ts
2. **迭代計劃**
一旦它您提供了計劃,您就可以提供反饋或添加更多詳細信息。
一旦它您提供了計劃,您就可以提供反饋或添加更多詳細信息。
```txt frame="none"
We'd like to design this new screen using a design I've used before.
@@ -258,22 +258,22 @@ How is authentication handled in @packages/functions/src/api/index.ts
```
:::提示
圖像拖放到端中以其添加到提示中。
圖像拖放到端中以其添加到提示中。
:::
opencode 可以扫描您提供的任何图像并将其添加到提示中。您可以
過將圖像拖放到端中來完成此操作。
过将圖像拖放到端中來完成此操作。
3. **構建功能**
一旦您計劃感到滿意,切換回*構建模式*
一旦您計劃感到滿意,切換回*構建模式*
再次按 **Tab** 键。
```bash frame="none"
<TAB>
```
要求它做出改變。
要求它做出改變。
```bash frame="none"
Sounds good! Go ahead and make the changes.
@@ -284,7 +284,7 @@ How is authentication handled in @packages/functions/src/api/index.ts
### 做出改變
对于更直接的更改,您可以要求 opencode 直接构建它
無需先查計劃。
無需先查計劃。
```txt frame="none" "@packages/functions/src/settings.ts" "@packages/functions/src/notes.ts"
We need to add authentication to the /settings route. Take a look at how this is
@@ -305,7 +305,7 @@ the same logic in @packages/functions/src/settings.ts
Can you refactor the function in @packages/functions/src/api/index.ts?
```
但你意識到不是你想要的。您**可以撤消**更改
但你意識到不是你想要的。您**可以撤消**更改
使用 `/undo` 命令。
```bash frame="none"
@@ -322,7 +322,7 @@ Can you refactor the function in @packages/functions/src/api/index.ts?
您可以从这里调整提示并要求 opencode 重试。
:::tip
您可以多次运行 `/undo` 以取消消减更改。
您可以多次运行 `/undo` 以撤销多次更改。
:::
或者您**可以使用 `/redo` 命令重做**更改。
@@ -342,10 +342,10 @@ Can you refactor the function in @packages/functions/src/api/index.ts?
/share
```
這將創建當前對話的鏈接並將其複製到剪板。
这会创建当前对话的链接并复制到剪板。
:::note
默認情下不共享對話
默認情下不共享对话
:::
这是带有 opencode 的[示例对话](https://opencode.ai/s/4XP1fce5)。
@@ -354,6 +354,6 @@ Can you refactor the function in @packages/functions/src/api/index.ts?
## 定制
就是这样!现在已经是使用 opencode 的专家了。
就是这样!现在已经是 opencode 高手了。
要让您成为自己的,我们建议[选择一个主题](/docs/themes)、[自定义交互绑定](/docs/keybinds)、[配置代码整理程序](/docs/formatters)、[创建自定义命令](/docs/commands)或使用[opencode配置](/docs/config)。

View File

@@ -105,13 +105,13 @@ opencode 有一个按键绑定列表,您可以通过 opencode 配置进行自
---
## 領袖鑰匙
## Leader key
opencode 对大多数按键绑定使用 `leader` 键。这可以避免终端中的冲突。
默认情况下,`ctrl+x` 是主键,大多数操作要求您先按主键,再按键盘。例如,要开始新会话,请先按 `ctrl+x`,然后按 `n`。
您不需要鍵綁定使用主鍵,但我建議您樣做。
您不需要鍵綁定使用主鍵,但我建議您樣做。
---
@@ -148,7 +148,7 @@ opencode 桌面应用程序提示输入支持常见的 Readline/Emacs 风格的
| `ctrl+w` | 删除前一个单词 |
| `alt+d` | 杀死下一个词 |
| `ctrl+t` | 转置字符 |
| `ctrl+g` | 取消彈出窗口/中止運行響 |
| `ctrl+g` | 取消彈出窗口/中止運行響 |
---

View File

@@ -84,7 +84,7 @@ opencode附带了多种适用于流行语言的内置LSP服务器
| `env` | 对象 | 启动服务器时设置的环境变量 |
| `initialization` | 对象 | 发送到LSP服务器的初始化选项 |
讓我看一些例子。
讓我看一些例子。
---
@@ -185,4 +185,4 @@ PHP Intelephense 通过许可证密钥提供高级功能。您可以通过将(
- 在 macOS/Linux 上:`$HOME/intelephense/licence.txt`
- 在 Windows 上:`%USERPROFILE%/intelephense/licence.txt`
文件應僅包含許可證密,不包含其他內容。
文件应仅包含許可證密,不包含其他內容。

View File

@@ -44,7 +44,7 @@ MCP服务器会添加到您的上下文中因此您需要小心启用哪些
---
### 覆遠程默認值
### 覆遠程默認值
组织可以通过其 `.well-known/opencode` 端点提供默认的 MCP 服务器。这些服务器可能默认被禁用,允许用户选择他们需要的服务器。
@@ -67,7 +67,7 @@ MCP服务器会添加到您的上下文中因此您需要小心启用哪些
---
## 地的
## 地的
使用`type`将本地MCP服务器添加到MCP对像中的`"local"`。
@@ -169,11 +169,11 @@ opencode自动处理远程MCP服务器的OAuth身份验证。当服务器需要
1. 检测 401 响应并启动 OAuth 流程
2. 如果服务器支持,请使用**动态客户端注册 (RFC 7591)**
3. 安全地存儲令牌以供來的
3. 安全地存儲Tokens以供來的
---
### 自
### 自
对于大多数支持 OAuth 的 MCP 配置服务器,不需要特殊配置。只需远程服务器:
@@ -189,7 +189,7 @@ opencode自动处理远程MCP服务器的OAuth身份验证。当服务器需要
}
```
如果服務器需要身份驗證opencode 在您第一次嘗試使用它時提示您行身份驗證。如果沒有,您可以使用 `opencode mcp auth <server-name>`[手觸發流量](#authenticating)。
如果服務器需要身份验证opencode 在您第一次嘗試使用它時提示您行身份验证。如果沒有,您可以使用 `opencode mcp auth <server-name>`[手觸發流量](#authenticating)。
---
@@ -218,7 +218,7 @@ opencode自动处理远程MCP服务器的OAuth身份验证。当服务器需要
### 正在驗證
您可以手觸發身份驗證或管理憑據。
您可以手觸發身份验证或管理憑據。
使用特定MCP服务器进行身份验证
@@ -232,13 +232,13 @@ opencode mcp auth my-oauth-server
opencode mcp list
```
除存儲的憑據:
除存儲的憑據:
```bash
opencode mcp logout my-oauth-server
```
`mcp auth` 命令将打开您的浏览器进行授权。授权后opencode 令牌安全地存储在 `~/.local/share/opencode/mcp-auth.json` 中。
`mcp auth` 命令将打开您的浏览器进行授权。授权后opencode Tokens安全地存储在 `~/.local/share/opencode/mcp-auth.json` 中。
---
@@ -297,7 +297,7 @@ opencode mcp debug my-oauth-server
### 全球的
意味著您可以全局用或禁用它們。
意味著您可以全局用或禁用它們。
```json title="opencode.json" {14}
{
@@ -343,11 +343,11 @@ opencode mcp debug my-oauth-server
---
### 每代理人
### 每代理人
如果您有大量 MCP 服务器,您可以选择为每个代理启用它们并全局取消它们。因此:
1. 全局禁用它作工具。
1. 全局禁用它作工具。
2. 在您的[代理配置](/docs/agents#tools)中启用MCP作为服务器工具。
```json title="opencode.json" {11, 14-18}
@@ -380,7 +380,7 @@ opencode mcp debug my-oauth-server
glob 模式使用简单的正则表达式 globbing 模式:
- `*` 匹配零个或多个任意字符(例如,`"my-mcp*"` 匹配 `my-mcp_search`、`my-mcp_list` 等)
- `?` 恰好匹配一字符
- `?` 恰好匹配一字符
- 所有其他字符均按字面意思匹配
:::note

View File

@@ -1,23 +1,23 @@
---
title: 型
description: 配置LLM提供和模型。
title:
description: 配置 LLM 提供和模型。
---
opencode 使用[人工智能软件开发工具包](https://ai-sdk.dev/) 和[模型.dev](https://models.dev) 支持**75+ LLM 成功**,并支持运行本地模型。
opencode 使用 [AI SDK](https://ai-sdk.dev/) 和 [Models.dev](https://models.dev) 支持 **75+ LLM 提供商**,并支持运行本地模型。
---
## 供
## 供商
默认情况下会预加载大多数流行的提供程序。如果您已通过 `/connect` 命令添加了提供程序的辅助程序,那么它们将在您启动 opencode 时可用。
默认会预加载大多数流行的提供。如果您已通过 `/connect` 命令添加了提供商的凭据,那么它们将在您启动 opencode 时可用。
了解有关[提供](/docs/providers) 的更多信息。
了解有关[提供](/docs/providers) 的更多信息。
---
## 選擇型號
## 选择模型
配置完提供商後,您可以通輸入以下內容來選擇您想要的型
配置完提供商後,您可以通輸入以下內容來选择您想要的型:
```bash frame="none"
/models
@@ -25,15 +25,15 @@ opencode 使用[人工智能软件开发工具包](https://ai-sdk.dev/) 和[模
---
## 推薦型
## 推薦
那裡有很多型,每週都有新型問世。
那裡有很多型,每週都有新型問世。
:::tip
考慮使用我推薦的模型之一。
考慮使用我推薦的模型之一。
:::
然而,既擅長生成代碼又擅長工具調用的只有少數。
然而,既擅長生成代碼又擅長工具用的只有少數。
以下是与 opencode 配合良好的几个模型,排名不分前面。(这不是好看的列表,也不一定是最新的):
@@ -42,13 +42,13 @@ opencode 使用[人工智能软件开发工具包](https://ai-sdk.dev/) 和[模
- 近距離工作4.5
- 克勞德十四行詩 4.5
- 极小极M2.1
- 雙子座 3 業版
- 雙子座 3 業版
---
## 置默認值
## 置默認值
其中之一設置為默認模型,您可以在您的
其中之一设置为默認模型,您可以在您的
打開代碼配置。
```json title="opencode.json" {3}
@@ -100,12 +100,12 @@ opencode 使用[人工智能软件开发工具包](https://ai-sdk.dev/) 和[模
}
```
在这里,我们为两个内置模型配置全局设置:`gpt-5`(通过 `openai` 提供程序访问时间)和 `claude-sonnet-4-20250514`(通过 `anthropic` 提供程序访问时间)。
内置结构和型名称可以在[模型.dev](https://models.dev) 上找到。
在这里,我们为两个内置模型配置全局设置:`gpt-5`(通过 `openai` 提供商访问)和 `claude-sonnet-4-20250514`(通过 `anthropic` 提供商访问)。
内置结构和型名称可以在[Models.dev](https://models.dev) 上找到。
您还可以为您正在使用的任何代理配置这些选项。代理配置会覆盖此处的所有全局选项。 [了解更多](/docs/agents/#additional)。
您還可以定義擴展內置變體的自定義變體。變體允許您為同一模型配置不同的設置,而無需創建重複的條目:
你还可以定义扩展内置 variants 的自定义 variants。variants 允许你为同一模型配置不同置,而无需创建重复条目:
```jsonc title="opencode.jsonc" {6-21}
{
@@ -137,9 +137,9 @@ opencode 使用[人工智能软件开发工具包](https://ai-sdk.dev/) 和[模
## 變體
许多型支持具有不同配置的多种变体。opencode附带了流行建设的内置默认变体。
许多型支持具有不同配置的多种变体。opencode附带了流行建设的内置默认变体。
### 置變體
### 置變體
opencode 附带了许多重大的默认变体:
@@ -150,7 +150,7 @@ opencode 附带了许多重大的默认变体:
**OpenAI**
因型而異,但大致如下:
型而異,但大致如下:
- `none` - 没有推理
- `minimal` - 最少的推理工作
@@ -161,16 +161,16 @@ opencode 附带了许多重大的默认变体:
**谷歌**
- `low` - 降低工作量/代幣預算
- `high` - 更高的努力/代幣預算
- `low` - 降低工作量/Tokens預算
- `high` - 更高的努力/Tokens預算
:::tip
列表不全面。許多其他提供商也有置的默認值。
列表不全面。許多其他提供商也有置的默認值。
:::
### 定制變體
您可以覆現有變體或添加您自己的變體:
您可以覆現有變體或添加您自己的變體:
```jsonc title="opencode.jsonc" {7-18}
{
@@ -218,6 +218,6 @@ opencode 附带了许多重大的默认变体:
这里的格式是`provider/model`。
3. 最使用的型
3. 最使用的型。
4. 第一模型使用內部優先級。
4. 第一模型使用内部优先級。

View File

@@ -1,6 +1,6 @@
---
title: 模式
description: 不同的模式適用不同的用例。
description: 不同的模式適用不同的用例。
---
:::caution
@@ -10,10 +10,10 @@ description: 不同的模式適用於不同的用例。
opencode 中的模式允许自定义不同的示例行为、工具和提示。
它具有兩種內置模式:**構建**和**計劃**。您可以定制
它具有两种内置模式:**構建**和**計劃**。您可以定制
这些或通过 opencode 配置配置您自己的。
您可以在會話期間在模式之間切換或在配置文件中配置它們。
您可以在会话期間在模式之間切換或在配置文件中配置它們。
---
@@ -25,13 +25,13 @@ opencode 有两种内置模式。
### 建造
構建是用所有工具的**默認**模式。是開發工作的標準模式,您需要完全訪問文件操作和系統命令。
構建是用所有工具的**默認**模式。是開發工作的標準模式,您需要完全访问文件操作和系統命令。
---
### 計劃
專為規劃和分析而設計的受限模式。在計劃模式下,默認情下禁用以下工具:
专为規劃和分析而設計的受限模式。在計劃模式下,默認情下禁用以下工具:
- `write` - 无法创建新文件
- `edit` - 无法修改现有文件,位于 `.opencode/plans/*.md` 的用于详细说明计划本身的文件另外
@@ -52,7 +52,7 @@ opencode 有两种内置模式。
## 配置
您可以自定義置模式或通配置建自己的模式。可以通過兩種方式配置模式:
您可以自定義置模式或通配置建自己的模式。可以通过两种方式配置模式:
### JSON 配置
@@ -83,7 +83,7 @@ opencode 有两种内置模式。
}
```
### 降價配置
### Markdown 配置
您还可以使用 Markdown 文件定义模式。将它们放入:
@@ -112,13 +112,13 @@ Provide constructive feedback without making direct changes.
Markdown 文件名成为模式名称(例如,`review.md` 创建`review` 模式)。
讓我詳細看看些配置選項。
讓我詳細看看些配置選項。
---
### 模型
使用`model`配置覆盖此模式的默认模型。对于使用针对不同任务优化的不同模型很有。例如,更快的规划模型、更强大的实施模型。
使用`model`配置覆盖此模式的默认模型。对于使用针对不同任务优化的不同模型很有帮助。例如,更快的规划模型、更强大的实施模型。
```json title="opencode.json"
{
@@ -149,11 +149,11 @@ Markdown 文件名成为模式名称(例如,`review.md` 创建`review` 模
}
```
度值的範圍通常 0.0 到 1.0
度值范围通常 0.0 到 1.0
- **0.0-0.2**非常集中且確定的響應,非常適合代分析和規劃
- **0.3-0.5**具有一定創造力的平衡響應,適合一般開發任務
- **0.6-1.0**:更有意和多樣化的反應,有助於頭腦風暴和探索
- **0.0-0.2**响应更集中、确定性更高,适合代分析和规划
- **0.3-0.5**平衡型响应,兼顾稳定性与创造力
- **0.6-1.0**响应更有意和多样性,适合头脑风暴和探索
```json title="opencode.json"
{
@@ -191,7 +191,7 @@ Markdown 文件名成为模式名称(例如,`review.md` 创建`review` 模
}
```
路徑是相對於配置文件所在位置的。所以適用
路徑是相对于配置文件所在位置的。所以適用
全局opencode配置和项目特定配置。
---
@@ -217,13 +217,13 @@ Markdown 文件名成为模式名称(例如,`review.md` 创建`review` 模
}
```
如果未指定任何工具,默認用所有工具。
如果未指定任何工具,默認用所有工具。
---
#### 可用工具
裡是所有可以通模式配置控制的工具。
裡是所有可以通模式配置控制的工具。
| 工具 | 描述 |
| ----------- | ---------------- |
@@ -243,7 +243,7 @@ Markdown 文件名成为模式名称(例如,`review.md` 创建`review` 模
## 自定義模式
您可以通過將自定義模式添加到配置來建自己的自定義模式。以下是使用這兩種方法的示例:
您可以通过将自定義模式添加到配置來建自己的自定義模式。以下是使用这两种方法的示例:
### 使用 JSON 配置
@@ -322,10 +322,10 @@ Priorities:
以下是不同模式的一些常見用例。
- **構建模式**用所有工具的完整開發工作
- **構建模式**用所有工具的完整開發工作
- **計劃模式**:分析和計劃,無需更改
- **審閱模式**:使用只讀訪問權限和文工具進行代碼審閱
- **审阅模式**:使用只讀访问权限和文工具進行代碼审阅
- **调试模式**专注于启用bash和读取工具的调查
- **文模式**:使用文件操作但不使用系統命令的文編寫
- **文模式**:使用文件操作但不使用系統命令的文編寫
您可能還會發現不同的模型適用不同的用例。
您可能还会發現不同的模型適用不同的用例。

View File

@@ -39,7 +39,7 @@ export HTTPS_PROXY=http://username:password@proxy.example.com:8080
```
:::caution
避免密碼進行硬編碼。使用環境變量或安全憑證存儲。
避免密碼進行硬編碼。使用環境變量或安全憑證存儲。
:::
对于需要高级身份验证(例如 NTLM 或 Kerberos的代理请考虑使用支持您的身份验证方法的 LLM 网关。

View File

@@ -1,5 +1,5 @@
---
title:
title:
description: 控制哪些操作需要批准才能運行。
---
@@ -11,7 +11,7 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
## 行動
個權限規則解析以下之一:
个权限规则解析以下之一:
- `"allow"` — 尚未批准运行
- `"ask"` — 提示批准
@@ -21,7 +21,7 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
## 配置
您可以全局設置權限(使用`*`並覆蓋特定工具。
您可以全局设置权限(使用`*`并覆盖特定工具。
```json title="opencode.json"
{
@@ -34,7 +34,7 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
}
```
可以一次置所有限:
可以一次置所有限:
```json title="opencode.json"
{
@@ -45,9 +45,9 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
---
## 粒度規則(對象語法)
## 粒度规则(对象語法)
對於大多數限,您可以使用像根據工具輸入用不同的操作。
对于大多數限,您可以使用像根據工具輸入用不同的操作。
```json title="opencode.json"
{
@@ -68,17 +68,17 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
}
```
規則通過模式匹配進行評估,**最匹配的規則獲勝**。常見的模式是包羅象的 `"*"` 規則放在前面,然後再放置更具體的規則
规则通过模式匹配進行評估,**最匹配的规则獲勝**。常見的模式是包羅象的 `"*"` 规则放在前面,然後再放置更具體的规则
### 通配符
限模式使用簡單的通配符匹配:
限模式使用簡單的通配符匹配:
- `*` 匹配零或多任意字符
- `?` 恰好匹配一字符
- `*` 匹配零或多任意字符
- `?` 恰好匹配一字符
- 所有其他字符均按字面意思匹配
### 主目錄擴
### 主目录扩
您可以在模式目录中使用 `~` 或 `$HOME` 来引用您的主目录。这对于 [`external_directory`](#external-directories) 规则特别有用。
@@ -86,7 +86,7 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
- `$HOME/projects/*` -> `/Users/username/projects/*`
- `~` -> `/Users/username`
### 外部目
### 外部目
使用 `external_directory` 允许工具调用启动 opencode 的工作目录之外的路径。这适用于任何采用路径作为输入的工具(例如 `read`、`edit`、`list`、`glob`、`grep` 和许多Z`bash` 命令)。
@@ -125,7 +125,7 @@ opencode 使用`permission` 配置来决定给定的操作是否应自动运行
---
## 可用
## 可用
opencode权限由工具名称和一些安全防护措施决定
@@ -146,7 +146,7 @@ opencode权限由工具名称和一些安全防护措施决定
---
## 預設
## 默认
如果您未指定任何内容opencode分散许可的默认值开始

View File

@@ -11,7 +11,7 @@ description: 编写您自己的插件来扩展 opencode。
## 使用插件
兩種加載插件的方法。
两种加載插件的方法。
---
@@ -22,7 +22,7 @@ description: 编写您自己的插件来扩展 opencode。
- `.opencode/plugins/` - 项目级插件
- `~/.config/opencode/plugins/` - 全局插件
些目中的文件會在啟動時自加載。
些目中的文件会在启动時自加載。
---
@@ -43,7 +43,7 @@ description: 编写您自己的插件来扩展 opencode。
---
### 插件是如何安
### 插件是如何安
**npm 插件** 在启动时使用 Bun 自动安装。包及其依赖项缓存在 `~/.cache/opencode/node_modules/` 中。
@@ -51,9 +51,9 @@ description: 编写您自己的插件来扩展 opencode。
---
### 加載
### 加載
插件從所有源加載,所有掛鉤按序運行。加載順序為
插件從所有源加載,所有掛鉤按序運行。加載顺序为
1. 全局配置 (`~/.config/opencode/opencode.json`)
2. 项目配置(`opencode.json`
@@ -64,10 +64,10 @@ description: 编写您自己的插件来扩展 opencode。
---
## 建一插件
## 建一插件
插件是一个 **JavaScript/TypeScript 模块多个**,它导出一个或插件
功能。每函數接收一上下文對象並返回一鉤子象。
功能。每函數接收一上下文对象并返回一鉤子象。
---
@@ -139,7 +139,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
---
### 活
### 活
插件可以訂閱事件,如下面的示例部分所示。以下是可用的不同事件的列表。
@@ -152,7 +152,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `file.edited`
- `file.watcher.updated`
#### 安裝活動
#### 安装活动
- `installation.updated`
@@ -168,7 +168,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `message.removed`
- `message.updated`
#### 限事件
#### 限事件
- `permission.asked`
- `permission.replied`
@@ -177,7 +177,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `server.connected`
#### 會議活動
#### 会话活动
- `session.created`
- `session.compacted`
@@ -188,11 +188,11 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `session.status`
- `session.updated`
#### 都都活
#### 都都活
- `todo.updated`
#### 殼牌活
#### 殼牌活
- `shell.env`
@@ -201,7 +201,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
- `tool.execute.after`
- `tool.execute.before`
#### TUI 活
#### TUI 活
- `tui.prompt.append`
- `tui.command.execute`
@@ -217,7 +217,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
### 發送通知
某些事件發生時發送通知:
某些事件發生時發送通知:
```js title=".opencode/plugins/notification.js"
export const NotificationPlugin = async ({ project, client, $, directory, worktree }) => {
@@ -306,7 +306,7 @@ export const CustomToolsPlugin: Plugin = async (ctx) => {
- `args`Zod 模式的工具参数
- `execute`:调用工具时运行的函数
您的自定義工具將可與內置工具一起用opencode。
您的自定義工具将可与内置工具一起用opencode。
---
@@ -333,7 +333,7 @@ export const MyPlugin = async ({ client }) => {
### 壓實鉤
自定義壓縮會話時包含的上下文:
自定義壓縮会话時包含的上下文:
```ts title=".opencode/plugins/compaction.ts"
import type { Plugin } from "@opencode-ai/plugin"

View File

@@ -1,37 +1,36 @@
---
title: 供
description: 使用 opencode 中的任何 LLM 提供程式
title: 供商
description: opencode 中使用任意 LLM 提供
---
import config from "../../../../config.mjs"
export const console = config.console
opencode uses the [AI SDK](https://ai-sdk.dev/) and [Models.dev](https://models.dev) to support **75+ LLM providers** and it supports running local models.
opencode 使用 [AI SDK](https://ai-sdk.dev/) [Models.dev](https://models.dev),支持 **75+ LLM 提供商**,也支持运行本地模型。
新增提供商,需要:
添加提供商,需要:
1. 使用 `/connect` 命令新增提供 API 程序金钥匙
2. 在您的 opencode 配置中配置提供程式
1. 使用 `/connect` 命令添加提供商的 API 密钥
2. 在 opencode 配置中设置该提供商
---
### 證書
### 凭据
使用 `/connect` 命令再次成功的 API 时,它们会被存储
in `~/.local/share/opencode/auth.json`.
使用 `/connect` 命令添加提供商 API 后,凭据会存储
`~/.local/share/opencode/auth.json`
---
### 配置
可以用 opencode 中的 `provider` 部分自定义提供程序
配置。
可以使用 opencode 配置中的 `provider` 部分自定义提供商配置。
---
#### 基本網址
您可以通过设置 `baseURL` 选项来自定义任何提供程序的基本 URL。这在使用代理服务或自定义端点时非常有用。
您可以通过设置 `baseURL` 选项来自定义任何提供的基本 URL。这在使用代理服务或自定义端点时非常有用。
```json title="opencode.json" {6}
{
@@ -63,9 +62,9 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
/connect
```
2. 登入,新增您的账单详细信息,然后复制您的 API 金钥匙
2. 登录,添加您的账单详细信息,然后复制您的 API 密钥
3. 贴上您的 API 金钥匙
3. 贴上您的 API 密钥
```txt
┌ API key
@@ -74,7 +73,7 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
└ enter
```
4. 在 TUI 中执行 `/models` 以检视我们推荐的型列表。
4. 在 TUI 中执行 `/models` 以查看我们推荐的型列表。
```txt
/models
@@ -84,13 +83,13 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
---
## 目
## 目
讓我詳細瞭解一些提供商。如果您想提供商新增
讓我詳細瞭解一些提供商。如果您想提供商添加
列表请随时开启PR。
:::note
在这里没有看到成功?提交 PR。
没看到你要的提供商?欢迎提交 PR。
:::
---
@@ -105,7 +104,7 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
/connect
```
3. 输入您的 302.AI API 金钥匙
3. 输入您的 302.AI API 密钥
```txt
┌ API key
@@ -114,7 +113,7 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
@@ -127,15 +126,15 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
相当于 Amazon Bedrock 与 opencode 结合使用:
1. 前往 Amazon Bedrock 控制台中的 **模型目录** 并请求
訪問您想要的模型。
访问您想要的模型。
:::提示
您需要能够在 Amazon Bedrock 中访问所需的模型。
:::
2. **使用以下方法之一配置身份驗證**
2. **使用以下方法之一配置身份验证**
#### 環境變數(快速啟動
#### 环境变量(快速启动
执行 opencode 时设置以下环境变量之一:
@@ -157,7 +156,7 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
export AWS_REGION=us-east-1
```
#### 配置檔案(推薦)
#### 配置文件(推薦)
For project-specific or persistent configuration, use `opencode.json`:
@@ -181,7 +180,7 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
- `endpoint` - VPC 节点节点的自定义节点 URL通用 `baseURL` 选项的别名)
:::提示
配置檔案選項優先於環境變數
配置文件選項优先于环境变量
:::
#### 高阶VPC 端点
@@ -210,27 +209,27 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
#### 認證方式
- **`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`**创建IAM用户并在AWS控制台中生成访问金币。
- **`AWS_PROFILE`**:使用 `~/.aws/credentials` 中的命名配置文件。首先配置 `aws configure --profile my-profile` 或 `aws sso login`
- **`AWS_BEARER_TOKEN_BEDROCK`**:从 Amazon Bedrock 控制台生成长期 API 金钥匙
- **`AWS_BEARER_TOKEN_BEDROCK`**:从 Amazon Bedrock 控制台生成长期 API 密钥
- **`AWS_WEB_IDENTITY_TOKEN_FILE` / `AWS_ROLE_ARN`**:适用于 EKS IRSA服务账户的 IAM 角色)或具有 OIDC 联合的其他 Kubernetes 环境。使用服务账户注释时,这些环境变量由 Kubernetes 自动注入。
#### 認證優先順
#### 認證优先顺
Amazon Bedrock 使用以下身份验证优先顺序:
1. **不记名令牌** - `AWS_BEARER_TOKEN_BEDROCK`环境变化数据或来自`/connect`令牌的令牌
2. **AWS 凭证链** - 配置档案、访问钥、共享凭证、IAM 角色、Web 身份令牌 (EKS IRSA)、实例项后设置资料
1. **不记名Tokens** - `AWS_BEARER_TOKEN_BEDROCK`环境变化数据或来自`/connect`Tokens的Tokens
2. **AWS 凭证链** - 配置档案、访问钥、共享凭证、IAM 角色、Web 身份Tokens (EKS IRSA)、实例项后设置资料
:::笔记
设置不记名令牌(使用 `/connect` 或 `AWS_BEARER_TOKEN_BEDROCK`)时,其优先于所有 AWS 凭证方法(包括配置的配置文件)。
设置不记名Tokens(使用 `/connect` 或 `AWS_BEARER_TOKEN_BEDROCK`)时,其优先于所有 AWS 凭证方法(包括配置的配置文件)。
:::
3. 执行`/models`命令选择所需的型
3. 执行`/models`命令选择所需的型。
```txt
/models
```
:::note
对于自定义推理配置文件,请在按键中使用模型并提供程序名称,并将 `id` 属性设置为 arn。这确保了正确的快取
对于自定义推理配置文件,请在按键中使用模型并提供名称,并将 `id` 属性设置为 arn。这确保了正确的缓存
```json title="opencode.json"
{
@@ -261,7 +260,7 @@ OpenCode Zen 是opencode团队提供的模型列表这些模型已被
```
2. 您可以在此处选择 **Claude Pro/Max** 选项,就会打开您的浏览器
要求您行身份驗證
要求您行身份验证
```txt
┌ Select auth method
@@ -284,9 +283,9 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
##### 使用 API 键
如果您没有 Pro/Max 订阅,您还可以选择 **建 API 重要**。它还会开启您的浏览器并要求您登 Anthropic 并为您提供一个可以粘贴到终端中的程序代码。
如果您没有 Pro/Max 订阅,您还可以选择 **建 API 密钥**。它还会开启您的浏览器并要求您登 Anthropic 并为您提供一个可以粘贴到终端中的代码。
或者,如果您已安装 API 金钥匙,则可以选择 **手动输入 API 金钥匙** 将其贴到终端中。
或者,如果您已安装 API 密钥,则可以选择 **手动输入 API 密钥** 将其贴到终端中。
---
@@ -298,12 +297,12 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
1. Head over to the [Azure portal](https://portal.azure.com/) and create an **Azure OpenAI** resource. You'll need:
- **资源名称**:这将成为您的 API 端点 (`https://RESOURCE_NAME.openai.azure.com/`) 的一部分
- **API 金钥匙**:来自您资源的 `KEY 1` 或 `KEY 2`
- **API 密钥**:来自您资源的 `KEY 1` 或 `KEY 2`
2. Go to [Azure AI Foundry](https://ai.azure.com/) and deploy a model.
:::笔记
部署名称必须与型名称匹配opencode才能正常工作。
部署名称必须与型名称匹配opencode才能正常工作。
:::
3. 执行 `/connect` 命令并搜索 **Azure**。
@@ -312,7 +311,7 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
/connect
```
4. 输入您的 API 金钥匙
4. 输入您的 API 密钥
```txt
┌ API key
@@ -321,13 +320,13 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
└ enter
```
5. 您的源名稱設定為環境變數
5. 您的源名称设置为环境变量
```bash
AZURE_RESOURCE_NAME=XXX opencode
```
或者将其新增内容添加到您的 bash 配置文件中:
或者将其添加内容添加到您的 bash 配置文件中:
```bash title="~/.bash_profile"
export AZURE_RESOURCE_NAME=XXX
@@ -345,12 +344,12 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
1. Head over to the [Azure portal](https://portal.azure.com/) and create an **Azure OpenAI** resource. You'll need:
- **资源名称**:这将成为您的 API 端点 (`https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/`) 的一部分
- **API 金钥匙**:来自您资源的 `KEY 1` 或 `KEY 2`
- **API 密钥**:来自您资源的 `KEY 1` 或 `KEY 2`
2. Go to [Azure AI Foundry](https://ai.azure.com/) and deploy a model.
:::笔记
部署名称必须与型名称匹配opencode才能正常工作。
部署名称必须与型名称匹配opencode才能正常工作。
:::
3. 执行 `/connect` 命令并搜索 **Azure 认知服务**。
@@ -359,7 +358,7 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
/connect
```
4. 输入您的 API 金钥匙
4. 输入您的 API 密钥
```txt
┌ API key
@@ -368,13 +367,13 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
└ enter
```
5. 您的源名稱設定為環境變數
5. 您的源名称设置为环境变量
```bash
AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode
```
或者将其新增内容添加到您的 bash 配置文件中:
或者将其添加内容添加到您的 bash 配置文件中:
```bash title="~/.bash_profile"
export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX
@@ -398,7 +397,7 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
/connect
```
3. 输入您的 Baseten API 金钥匙
3. 输入您的 Baseten API 密钥
```txt
┌ API key
@@ -407,7 +406,7 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
@@ -425,7 +424,7 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
/connect
```
3. 输入您的 Cerebras API 金钥匙
3. 输入您的 Cerebras API 密钥
```txt
┌ API key
@@ -434,7 +433,7 @@ Using your Claude Pro/Max subscription in opencode is not officially supported b
└ enter
```
4. 执行`/models`命令选择*Qwen 3 Coder 480B*等型
4. 执行`/models`命令选择*Qwen 3 Coder 480B*等型。
```txt
/models
@@ -461,7 +460,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
/connect
```
4. 输入您的 Cloudflare API 令牌
4. 输入您的 Cloudflare API Tokens
```txt
┌ API key
@@ -470,19 +469,19 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
└ enter
```
或者將其設定為環境變數
或者将其设置为环境变量
```bash title="~/.bash_profile"
export CLOUDFLARE_API_TOKEN=your-api-token
```
5. 执行`/models`命令选择型
5. 执行`/models`命令选择型。
```txt
/models
```
您还可以使用opencode配置新增模型。
您还可以使用opencode配置添加模型。
```json title="opencode.json"
{
@@ -510,7 +509,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
/connect
```
3. 输入您的 Cortecs API 金钥匙
3. 输入您的 Cortecs API 密钥
```txt
┌ API key
@@ -519,7 +518,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
└ enter
```
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型。
```txt
/models
@@ -527,7 +526,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
---
### 深度搜
### 深度搜
1. Head over to the [DeepSeek console](https://platform.deepseek.com/), create an account, and click **Create new API key**.
@@ -537,7 +536,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
/connect
```
3. 输入您的 DeepSeek API 钥。
3. 输入您的 DeepSeek API 钥。
```txt
┌ API key
@@ -564,7 +563,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
/connect
```
3. 输入您的深层基础设施 API 钥。
3. 输入您的深层基础设施 API 钥。
```txt
┌ API key
@@ -573,7 +572,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
@@ -591,7 +590,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
/connect
```
3. 输入您的韧体API金钥匙
3. 输入您的韧体API 密钥
```txt
┌ API key
@@ -600,7 +599,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
@@ -618,7 +617,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
/connect
```
3. 输入您的 Fireworks AI API 金钥匙
3. 输入您的 Fireworks AI API 密钥
```txt
┌ API key
@@ -627,7 +626,7 @@ Cloudflare AI Gateway lets you access models from OpenAI, Anthropic, Workers AI,
└ enter
```
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型。
```txt
/models
@@ -645,7 +644,7 @@ GitLab Duo 通过 GitLab 的人工代理提供具有本机工具呼叫功能的
/connect
```
2. 選擇您的身份驗證方法:
2. 选择您的身份验证方法:
```txt
┌ Select auth method
@@ -659,14 +658,14 @@ GitLab Duo 通过 GitLab 的人工代理提供具有本机工具呼叫功能的
选择**OAuth**,您的浏览器将开启并进行授权。
#### 使用個人訪問令牌
#### 使用个人访问Tokens
1. Go to [GitLab User Settings > Access Tokens](https://gitlab.com/-/user_settings/personal_access_tokens)
2. 單擊**新增新令牌**
2. 单击**添加新Tokens**
3. Name: `opencode`, Scopes: `api`
4. 复制令牌(以 `glpat-` 发起人)
5. 在端中輸入
4. 复制Tokens(以 `glpat-` 发起人)
5. 在端中輸入
3. 执行 `/models` 命令检视可用模型。
3. 执行 `/models` 命令查看可用模型。
```txt
/models
@@ -679,7 +678,7 @@ GitLab Duo 通过 GitLab 的人工代理提供具有本机工具呼叫功能的
:::note
如果您不愿意也可以指定“GITLAB_TOKEN”环境变量
令牌存储在opencode身份验证存储中。
Tokens存储在opencode身份验证存储中。
:::
##### 自托管 GitLab
@@ -725,7 +724,7 @@ export GITLAB_TOKEN=glpat-...
您的 GitLab 管理员必须启用以下功能:
1. [Duo Agent Platform](https://docs.gitlab.com/user/gitlab_duo/turn_on_off/) for the user, group, or instance
2. 功能标志(过Rails控制台
2. 功能标志(过Rails控制台
- `agent_platform_claude_code`
- `third_party_agents_enabled`
:::
@@ -733,8 +732,8 @@ export GITLAB_TOKEN=glpat-...
##### 用于自托管项目的 OAuth
为了使 Oauth 适用于您的自托管项目,您需要建立
新的用程式(設定→應用程
URL `http://127.0.0.1:8080/callback` 和以下范围:
新的用程序(设置→应用程
URL `http://127.0.0.1:8080/callback` 和以下范围:
- api您代表访问API
- read_user读取您的个人信息
@@ -789,7 +788,7 @@ Customize through `opencode.json`:
相当于您的 GitHub Copilot 订阅与 opencode 一起使用:
:::note
某些型可能需要 [Pro+
某些型可能需要 [Pro+
订阅](https://github.com/features/copilot/plans)使用。
Some models need to be manually enabled in your [GitHub Copilot settings](https://docs.github.com/en/copilot/how-tos/use-ai-models/configure-access-to-ai-models#setup-for-individual-use).
@@ -813,7 +812,7 @@ Some models need to be manually enabled in your [GitHub Copilot settings](https:
└ Waiting for authorization...
```
3. 现在执行 `/models` 命令来选择您想要的型
3. 现在执行 `/models` 命令来选择您想要的型。
```txt
/models
@@ -826,16 +825,16 @@ Some models need to be manually enabled in your [GitHub Copilot settings](https:
Google Vertex AI 与 opencode 结合使用:
1. 前往 Google Cloud Console 中的 **模型花园** 并检查
您所在地提供的型
您所在地提供的型。
:::笔记
您需要有一个启用了 Vertex AI API 的 Google Cloud 专案。
:::
2. 設定所需的環境變數
2. 设置所需的环境变量
- `GOOGLE_CLOUD_PROJECT`您的Google云专案ID
- `VERTEX_LOCATION`可选Vertex AI的区域默认为`global`
- 身份驗證(選擇一項):
- 身份验证(选择一項):
- `GOOGLE_APPLICATION_CREDENTIALS`:服务帐户 JSON 密钥文件的路径
- 使用 gcloud CLI 进行身份验证:`gcloud auth application-default login`
@@ -857,7 +856,7 @@ Google Vertex AI 与 opencode 结合使用:
The `global` region improves availability and reduces errors at no extra cost. Use regional endpoints (e.g., `us-central1`) for data residency requirements. [Learn more](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints)
:::
3. 执行`/models`命令选择所需的型
3. 执行`/models`命令选择所需的型。
```txt
/models
@@ -875,7 +874,7 @@ The `global` region improves availability and reduces errors at no extra cost. U
/connect
```
3. 输入结构的API金钥匙
3. 输入结构的API 密钥
```txt
┌ API key
@@ -933,7 +932,7 @@ The `global` region improves availability and reduces errors at no extra cost. U
/connect
```
3. 输入您的 Helicone API 钥。
3. 输入您的 Helicone API 钥。
```txt
┌ API key
@@ -942,7 +941,7 @@ The `global` region improves availability and reduces errors at no extra cost. U
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
@@ -952,7 +951,7 @@ For more providers and advanced features like caching and rate limiting, check t
#### 可選配置
如果您发现Helicone的某些功能或型未通过opencode自动配置您始终可以自行配置。
如果您发现Helicone的某些功能或型未通过opencode自动配置您始终可以自行配置。
Here's [Helicone's Model Directory](https://helicone.ai/models), you'll need this to grab the IDs of the models you want to add.
@@ -1003,7 +1002,7 @@ Helicone 支持快速获取、用户跟踪和会话管理等功能的自定义
}
```
##### 會話跟蹤
##### 会话跟蹤
Helicone's [Sessions](https://docs.helicone.ai/features/sessions) feature lets you group related LLM requests together. Use the [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session) plugin to automatically log each opencode conversation as a session in Helicone.
@@ -1011,7 +1010,7 @@ Helicone's [Sessions](https://docs.helicone.ai/features/sessions) feature lets y
npm install -g opencode-helicone-session
```
將其新增到您的配置中。
将其添加到您的配置中。
```json title="opencode.json"
{
@@ -1027,7 +1026,7 @@ npm install -g opencode-helicone-session
| -------------------------- | ----------------------------------------------------- |
| `Helicone-Cache-Enabled` | Enable response caching (`true`/`false`) |
| `Helicone-User-Id` | 点击用户跟踪指标 |
| `Helicone-Property-[Name]` | 新增自定义属性(例如`Helicone-Property-Environment` |
| `Helicone-Property-[Name]` | 添加自定义属性(例如`Helicone-Property-Environment` |
| `Helicone-Prompt-Id` | 将请求与提示版本相关联 |
See the [Helicone Header Directory](https://docs.helicone.ai/helicone-headers/header-directory) for all available headers.
@@ -1062,13 +1061,13 @@ You can configure opencode to use local models through [llama.cpp's](https://git
}
```
這個例子中:
这个例子中:
- `llama.cpp` 是自定义创建 ID。这可以是您想要的任何字串。
- `llama.cpp` 是自定义创建 ID。这可以是您想要的任何字串。
- `npm` specifies the package to use for this provider. Here, `@ai-sdk/openai-compatible` is used for any OpenAI-compatible API.
- `name` 是 UI 中提供程序的显示名称。
- `name` 是 UI 中提供的显示名称。
- `options.baseURL` 是本地服务器器的端点。
- `models` 是型 ID 以及配置的对应映射。型名称将显示在型选择列表中。
- `models` 是型 ID 以及配置的对应映射。型名称将显示在型选择列表中。
---
@@ -1084,7 +1083,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
/connect
```
3. 输入您的 IO.NET API 金钥匙
3. 输入您的 IO.NET API 密钥
```txt
┌ API key
@@ -1093,7 +1092,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
@@ -1125,13 +1124,13 @@ IO.NET提供了17种针对各种例子进行优化的模型
}
```
這個例子中:
这个例子中:
- `lmstudio` 是自定义创建 ID。这可以是您想要的任何字串。
- `lmstudio` 是自定义创建 ID。这可以是您想要的任何字串。
- `npm` specifies the package to use for this provider. Here, `@ai-sdk/openai-compatible` is used for any OpenAI-compatible API.
- `name` 是 UI 中提供程序的显示名称。
- `name` 是 UI 中提供的显示名称。
- `options.baseURL` 是本地服务器器的端点。
- `models` 是型 ID 以及配置的对应映射。型名称将显示在型选择列表中。
- `models` 是型 ID 以及配置的对应映射。型名称将显示在型选择列表中。
---
@@ -1147,7 +1146,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
/connect
```
3. 输入您的 Moonshot API 金钥匙
3. 输入您的 Moonshot API 密钥
```txt
┌ API key
@@ -1174,7 +1173,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
/connect
```
3. 输入您的 MiniMax API 金钥匙
3. 输入您的 MiniMax API 密钥
```txt
┌ API key
@@ -1183,7 +1182,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
└ enter
```
4. 执行`/models`命令选择*M2.1*等型
4. 执行`/models`命令选择*M2.1*等型。
```txt
/models
@@ -1195,13 +1194,13 @@ IO.NET提供了17种针对各种例子进行优化的模型
1. Head over to the [Nebius Token Factory console](https://tokenfactory.nebius.com/), create an account, and click **Add Key**.
2. 执行`/connect`命令并搜索**Nebius令牌工厂**。
2. 执行`/connect`命令并搜索**NebiusTokens工厂**。
```txt
/connect
```
3. 输入您的 Nebius 令牌工厂 API 钥。
3. 输入您的 Nebius Tokens工厂 API 钥。
```txt
┌ API key
@@ -1210,7 +1209,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
└ enter
```
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型。
```txt
/models
@@ -1218,7 +1217,7 @@ IO.NET提供了17种针对各种例子进行优化的模型
---
### 成
### 成
您可以使用 Ollama 配置 opencode 本地模型。
@@ -1246,13 +1245,13 @@ Ollama can automatically configure itself for opencode. See the [Ollama integrat
}
```
這個例子中:
这个例子中:
- `ollama` 是自定义创建 ID。这可以是您想要的任何字串。
- `ollama` 是自定义创建 ID。这可以是您想要的任何字串。
- `npm` specifies the package to use for this provider. Here, `@ai-sdk/openai-compatible` is used for any OpenAI-compatible API.
- `name` 是 UI 中提供程序的显示名称。
- `name` 是 UI 中提供的显示名称。
- `options.baseURL` 是本地服务器器的端点。
- `models` 是型 ID 以及配置的对应映射。型名称将显示在型选择列表中。
- `models` 是型 ID 以及配置的对应映射。型名称将显示在型选择列表中。
:::tip
如果工具暂停,请尝试增加 Ollama 中的 `num_ctx`。从 16k - 32k 左右开始。
@@ -1264,11 +1263,11 @@ Ollama can automatically configure itself for opencode. See the [Ollama integrat
相当于 Ollama Cloud 与 opencode 一起使用:
1. 前往 [https://ollama.com/](https://ollama.com/) 并登或建立账户。
1. 前往 [https://ollama.com/](https://ollama.com/) 并登或建立账户。
2. 导航至**设置** > **金钥匙**,然后单击**添加API金钥匙**以生成新的API金钥匙
2. 导航至**设置** > **API 密钥**,然后单击**添加API 密钥**以生成新的API 密钥
3. 复制 API 钥以在 opencode 中使用。
3. 复制 API 钥以在 opencode 中使用。
4. 执行 `/connect` 命令并搜索 **Ollama Cloud**。
@@ -1276,7 +1275,7 @@ Ollama can automatically configure itself for opencode. See the [Ollama integrat
/connect
```
5. 输入您的 Ollama Cloud API 金钥匙
5. 输入您的 Ollama Cloud API 密钥
```txt
┌ API key
@@ -1310,7 +1309,7 @@ We recommend signing up for [ChatGPT Plus or Pro](https://chatgpt.com/pricing).
```
2. 您可以选择 **ChatGPT Plus 或 Pro** 选项,就会在这里开启您的浏览器
要求您行身份驗證
要求您行身份验证
```txt
┌ Select auth method
@@ -1328,7 +1327,7 @@ We recommend signing up for [ChatGPT Plus or Pro](https://chatgpt.com/pricing).
##### 使用 API 键
如果您已安装 API 金钥匙,则可以选择 **手动输入 API 金钥匙** 将其贴到终端中。
如果您已安装 API 密钥,则可以选择 **手动输入 API 密钥** 将其贴到终端中。
---
@@ -1336,7 +1335,7 @@ We recommend signing up for [ChatGPT Plus or Pro](https://chatgpt.com/pricing).
OpenCode Zen 是 opencode 团队提供的经过测试和验证的模型列表。 [了解更多](/docs/zen)。
1. 登 **<a href={console}>OpenCode Zen</a>** 並單擊 **建 API 金鑰**。
1. 登 **<a href={console}>OpenCode Zen</a>** 并单击 **建 API 密钥**。
2. 执行 `/connect` 命令并搜索 **OpenCode Zen**。
@@ -1344,7 +1343,7 @@ OpenCode Zen 是 opencode 团队提供的经过测试和验证的模型列表。
/connect
```
3. 输入您的 opencode API 金钥匙
3. 输入您的 opencode API 密钥
```txt
┌ API key
@@ -1353,7 +1352,7 @@ OpenCode Zen 是 opencode 团队提供的经过测试和验证的模型列表。
└ enter
```
4. 执行`/models`命令选择*Qwen 3 Coder 480B*等型
4. 执行`/models`命令选择*Qwen 3 Coder 480B*等型。
```txt
/models
@@ -1371,7 +1370,7 @@ OpenCode Zen 是 opencode 团队提供的经过测试和验证的模型列表。
/connect
```
3. 输入结构的API金钥匙
3. 输入结构的API 密钥
```txt
┌ API key
@@ -1456,7 +1455,7 @@ SAP AI Core跨统一平台提供对OpenAI、Anthropic、Google、Amazon、Meta
AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode
```
或者将其新增内容添加到您的 bash 配置文件中:
或者将其添加内容添加到您的 bash 配置文件中:
```bash title="~/.bash_profile"
export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
@@ -1472,7 +1471,7 @@ SAP AI Core跨统一平台提供对OpenAI、Anthropic、Google、Amazon、Meta
这些设置是可选的,应根据 SAP AI Core 设置进行配置。
:::
5. 执行 `/models` 命令从 40 个多个可用型中进行选择。
5. 执行 `/models` 命令从 40 个多个可用型中进行选择。
```txt
/models
@@ -1490,7 +1489,7 @@ SAP AI Core跨统一平台提供对OpenAI、Anthropic、Google、Amazon、Meta
/connect
```
3. 输入您的 OVHcloud AI 端点 API 金钥匙
3. 输入您的 OVHcloud AI 端点 API 密钥
```txt
┌ API key
@@ -1499,7 +1498,7 @@ SAP AI Core跨统一平台提供对OpenAI、Anthropic、Google、Amazon、Meta
└ enter
```
4. 执行`/models`命令选择*gpt-oss-120b*等型
4. 执行`/models`命令选择*gpt-oss-120b*等型。
```txt
/models
@@ -1519,7 +1518,7 @@ To use [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-ap
/connect
```
3. 输入您的Scaleway API 金钥匙
3. 输入您的Scaleway API 密钥
```txt
┌ API key
@@ -1546,7 +1545,7 @@ To use [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-ap
/connect
```
3. 输入您的Together AI API金钥匙
3. 输入您的Together AI API 密钥
```txt
┌ API key
@@ -1555,7 +1554,7 @@ To use [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-ap
└ enter
```
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型
4. 执行 `/models` 命令以选择类似 _Kimi K2 Instruct_ 的型。
```txt
/models
@@ -1573,7 +1572,7 @@ To use [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-ap
/connect
```
3. 输入您的威尼斯 AI API 金钥匙
3. 输入您的威尼斯 AI API 密钥
```txt
┌ API key
@@ -1582,7 +1581,7 @@ To use [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-ap
└ enter
```
4. 执行`/models`命令选择*Llama 3.3 70B*等型
4. 执行`/models`命令选择*Llama 3.3 70B*等型。
```txt
/models
@@ -1592,7 +1591,7 @@ To use [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-ap
### Vercel人工智慧闸道器
Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、Google、xAI 等的模型。型按标价提供,不加价。
Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、Google、xAI 等的模型。型按标价提供,不加价。
1. Head over to the [Vercel dashboard](https://vercel.com/), navigate to the **AI Gateway** tab, and click **API keys** to create a new API key.
@@ -1602,7 +1601,7 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
/connect
```
3. 输入您的 Vercel AI 网关 API 金钥匙
3. 输入您的 Vercel AI 网关 API 密钥
```txt
┌ API key
@@ -1611,13 +1610,13 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
└ enter
```
4. 执行`/models`命令选择型
4. 执行`/models`命令选择型。
```txt
/models
```
您还可以穿透 opencode 配置自定义模型。以下是指定提供路由顺序的示例。
您还可以穿透 opencode 配置自定义模型。以下是指定提供路由顺序的示例。
```json title="opencode.json"
{
@@ -1640,7 +1639,7 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
| 選項 | 描述 |
| ------------------- | ---------------------- |
| `order` | 提供尝试顺序 |
| `order` | 提供尝试顺序 |
| `only` | 限制特定提供商 |
| `zeroDataRetention` | 仅使用零资料保留的政策 |
@@ -1656,7 +1655,7 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
/connect
```
3. 输入您的 xAI API 金钥匙
3. 输入您的 xAI API 密钥
```txt
┌ API key
@@ -1685,7 +1684,7 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
如果您订阅了**GLM编码计划**,请选择**Z.AI编码计划**。
3. 输入您的 Z.AI API 钥。
3. 输入您的 Z.AI API 钥。
```txt
┌ API key
@@ -1712,7 +1711,7 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
/connect
```
3. 输入结构的API金钥匙
3. 输入结构的API 密钥
```txt
┌ API key
@@ -1746,10 +1745,10 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
## 定製提供商
新增 `/connect` 命令中未列出的任何 **OpenAI 容**提供程式
添加 `/connect` 命令中未列出的任何 **OpenAI 容**提供
:::tip
您可以将任何 OpenAI 容的提供方案与 opencode 一起使用。大多数人工现代智慧工厂都提供 OpenAI 容 API。
您可以将任何 OpenAI 容的提供与 opencode 一起使用。大多数 AI 提供商都提供 OpenAI 容 API。
:::
1. 执行`/connect`命令并逐步升级到**其他**。
@@ -1781,7 +1780,7 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
选择一个容易记住的 ID您将在配置文件中使用它。
:::
3. 输入您的事业的 API 钥。
3. 输入您的事业的 API 钥。
```bash
$ /connect
@@ -1818,14 +1817,14 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
```
以下是配置選項:
- **npm**要使用AI的SDK包`@ai-sdk/openai-compatible`用于OpenAI容的事业
- **npm**要使用AI的SDK包`@ai-sdk/openai-compatible`用于OpenAI容的事业
- **名称**UI中的显示名称。
- **型**:可用型
- **型**:可用型。
- **options.baseURL**API 端点 URL。
- **options.apiKey**如果不使用身份验证可以选择设置API金钥匙
- **options.apiKey**如果不使用身份验证可以选择设置API 密钥
- **options.headers**:可选择设置自定义标头。
有關高階選項的更多資訊,參見下面的示例。
有關高階選項的更多資訊,參見下面的示例。
5. 执行 `/models` 命令,您提供的自定义程序和模型将出现在选择列表中。
@@ -1863,27 +1862,27 @@ Vercel AI Gateway 可以让您跨统一端点访问来自 OpenAI、Anthropic、G
}
```
配置情:
配置情:
- **apiKey**:使用`env`变数语法[了解更多](/docs/config#env-vars)设置。
- ** headers **:随每个请求传送的自定义标头。
- **limit.context**:模型接受的最大输入标记。
- **limit.output**:模型可以生成的最大令牌
- **limit.output**:模型可以生成的最大Tokens
`limit` 栏位允许 opencode 了解您还剩下多少上下文。标准成功会自动从 models.dev 中提取这些内容。
`limit` 栏位允许 opencode 了解您还剩下多少上下文。标准提供商会自动从 models.dev 中提取这些内容。
---
## 故障排除
如果您在配置提供商時遇到問題,請檢查以下內容:
如果您在配置提供商時遇到問題,请检查以下內容:
1. **Check the auth setup**: Run `opencode auth list` to see if the credentials
提供商的配置已新增到您的配置中。
提供商的配置已添加到您的配置中。
这并不利于 Amazon Bedrock 等依赖环境变数进行身份验证的工作。
2. 对于自定义提供的程序,请检查 opencode 配置并:
- 确保 `/connect` 命令中使用的提供方案 ID 与 opencode 配置中的 ID 匹配。
- 正确的 npm 包用于提供程序。例如,对 Cerebras 使用 `@ai-sdk/cerebras`。对于所有其他 OpenAI 相内容的提供程序,请使用 `@ai-sdk/openai-compatible`。
- 确保 `/connect` 命令中使用的提供 ID 与 opencode 配置中的 ID 匹配。
- 正确的 npm 包用于提供。例如,对 Cerebras 使用 `@ai-sdk/cerebras`。对于所有其他 OpenAI 相内容的提供,请使用 `@ai-sdk/openai-compatible`。
- 检查 `options.baseURL` 栏位中使用的 API 端点是否正确。

View File

@@ -1,6 +1,6 @@
---
title: 規則
description: 置opencode的自定義指令。
title: 规则
description: 置opencode的自定義指令。
---
您可以通过 `AGENTS.md` 文件创建 opencode 的自定义指令。这和 Cursor 的规则类似。它包含将包含在 LLM 上下文中的说明,方便您的特定项目自定义其行为。
@@ -48,7 +48,7 @@ This is an SST v3 monorepo with TypeScript. The project uses bun workspaces for
- Import shared modules using workspace names: `@my-app/core/example`
```
在此處添加特定項目的說明,這將在您的團隊中共享。
在此處添加特定項目的說明,这将在您的團隊中共享。
---
@@ -56,7 +56,7 @@ This is an SST v3 monorepo with TypeScript. The project uses bun workspaces for
opencode 还支持从多个位置读取 `AGENTS.md` 文件。这有不同的目的。
###
###
将 `AGENTS.md` 放置在项目根目录中以获取特定于项目的规则。这些仅适用于您在此目录或子目录中工作时。
@@ -84,7 +84,7 @@ export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skills
---
## 先級
## 先級
当opencode启动时它会按以下顺序查找规则文件
@@ -118,7 +118,7 @@ export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skills
}
```
遠程指令的取有 5 秒的超時時間。
遠程指令的取有 5 秒的超時時間。
所有说明文件均与您的`AGENTS.md`文件合并。
@@ -168,9 +168,9 @@ For testing strategies and coverage requirements: @test/testing-guidelines.md
Read the following file immediately as it's relevant to all workflows: @rules/general-guidelines.md.
```
種方法允您:
種方法允您:
- 建模塊化、可重用的規則文件
- 建模塊化、可重用的规则文件
- 通过符号链接或git子模块在项目之间共享规则
- 保持 AGENTS.md 简洁,同时参考详细指南
- 确保opencode仅在特定任务需要时加载文件

View File

@@ -9,11 +9,11 @@ export const typesUrl = `${config.github}/blob/dev/packages/sdk/js/src/gen/types
opencode JS/TS SDK 提供类型其他安全的客户端用于与服务器交互。
使用它以程序设计方式构建集成和控制opencode。
[了解更多关于服务器如何工作的](/docs/server)。例如,检视社区构建的[projects](/docs/ecosystem#projects)。
[了解更多关于服务器如何工作的](/docs/server)。例如,查看社区构建的[projects](/docs/ecosystem#projects)。
---
## 安
## 安
从npm安装SDK
@@ -33,14 +33,14 @@ import { createOpencode } from "@opencode-ai/sdk"
const { client } = await createOpencode()
```
這會同時啟動伺服器和客戶端
这会同時启动服务器和客戶端
#### 選項
| 選項 | 型別 | 描述 | 預設 |
| 選項 | 型別 | 描述 | 默认 |
| ---------- | ------------- | ------------------------------ | ----------- |
| `hostname` | `string` | 服务器主机名 | `127.0.0.1` |
| `port` | `number` | 服器埠 | `4096` |
| `port` | `number` | 服器埠 | `4096` |
| `signal` | `AbortSignal` | 取消的中止讯号 | `undefined` |
| `timeout` | `number` | 服务器启动超时(以毫秒为单位) | `5000` |
| `config` | `Config` | 放置的财产 | `{}` |
@@ -67,7 +67,7 @@ console.log(`Server running at ${opencode.server.url}`)
opencode.server.close()
```
## 限客戶
## 限客戶
如果您已经有 opencode 的正在执行示例项,则可以创建一个客户端示例项来连线到它:
@@ -81,9 +81,9 @@ const client = createOpencodeClient({
#### 選項
| 選項 | 型別 | 描述 | 預設 |
| 選項 | 型別 | 描述 | 默认 |
| --------------- | ---------- | ---------------------------- | ----------------------- |
| `baseUrl` | `string` | 服器的 URL | `http://localhost:4096` |
| `baseUrl` | `string` | 服器的 URL | `http://localhost:4096` |
| `fetch` | `function` | 习俗获取实现 | `globalThis.fetch` |
| `parseAs` | `string` | 响应解析方法 | `auto` |
| `responseStyle` | `string` | 返回样式:`data` 或 `fields` | `fields` |
@@ -99,11 +99,11 @@ SDK 包括所有 API 型以外的 TypeScript 定义。直接汇入其中:
import type { Session, Message, Part } from "@opencode-ai/sdk"
```
所有型別均根據服器的 OpenAPI 規範生成,可在 <a href={typesUrl}> 型別檔案 </a> 中找到。
所有型別均根據服器的 OpenAPI 規範生成,可在 <a href={typesUrl}> 型別文件 </a> 中找到。
---
## 錯誤
## 错误
SDK 可能会丢掷错误,您可以捕获并处理这些错误:
@@ -125,7 +125,7 @@ SDK跨越型别安全客户端公开所有服务器API。
### 全球的
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ----------------- | ------------------------ | ------------------------------------ |
| `global.health()` | 检查服务器健康状况和版本 | `{ healthy: true, version: string }` |
@@ -140,9 +140,9 @@ console.log(health.data.version)
---
### 用程
### 用程
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| -------------- | ------------------ | ------------------------------------------ |
| `app.log()` | 登录日志 | `boolean` |
| `app.agents()` | 列出所有可用的代理 | <a href={typesUrl}><code>代理[]</code></a> |
@@ -167,12 +167,12 @@ const agents = await client.app.agents()
---
###
###
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ------------------- | ------------ | ------------------------------------------ |
| `project.list()` | 列出所有案 | <a href={typesUrl}><code>案[]</code></a> |
| `project.current()` | 獲取當前專案 | <a href={typesUrl}><code>案</code></a> |
| `project.list()` | 列出所有案 | <a href={typesUrl}><code>案[]</code></a> |
| `project.current()` | 获取当前专案 | <a href={typesUrl}><code>案</code></a> |
---
@@ -190,9 +190,9 @@ const currentProject = await client.project.current()
### 小路
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ------------ | ------------ | ---------------------------------------- |
| `path.get()` | 獲取當前路徑 | <a href={typesUrl}><code>路徑</code></a> |
| `path.get()` | 获取当前路徑 | <a href={typesUrl}><code>路徑</code></a> |
---
@@ -207,10 +207,10 @@ const pathInfo = await client.path.get()
### 配置
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| -------------------- | -------------------- | --------------------------------------------------------------------------------------------------- |
| `config.get()` | 取配置資訊 | <a href={typesUrl}><code>配置</code></a> |
| `config.providers()` | 列出提供商和預設模型 | `{ providers: `<a href={typesUrl}><code>提供商[]</code></a>`, default: { [key: string]: string } }` |
| `config.get()` | 取配置資訊 | <a href={typesUrl}><code>配置</code></a> |
| `config.providers()` | 列出提供商和默认模型 | `{ providers: `<a href={typesUrl}><code>提供商[]</code></a>`, default: { [key: string]: string } }` |
---
@@ -224,28 +224,28 @@ const { providers, default: defaults } = await client.config.providers()
---
### 會議
### 会话
| 方法 | 描述 | 筆記 |
| ---------------------------------------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `session.list()` | 列出會話 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.get({ path })` | 獲取會話 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.children({ path })` | 列出子會話 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.create({ body })` | 建立會話 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.list()` | 列出会话 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.get({ path })` | 获取会话 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `session.children({ path })` | 列出子会话 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.create({ body })` | 建立会话 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `session.delete({ path })` | 离开会话 | 返回`boolean` |
| `session.update({ path, body })` | 更新會話屬性 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.update({ path, body })` | 更新会话屬性 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `session.init({ path, body })` | Analyze app and create `AGENTS.md` | Returns `boolean` |
| `session.abort({ path })` | 中止正在执行的会话 | 返回`boolean` |
| `session.share({ path })` | 分享 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.unshare({ path })` | 取消共享會話 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.share({ path })` | 分享 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `session.unshare({ path })` | 取消共享会话 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `session.summarize({ path, body })` | 会议总结 | 返回`boolean` |
| `session.messages({ path })` | 列出會話中的息 | 返回 `{ info: `<a href={typesUrl}><code>息</code></a>`, parts: `<a href={typesUrl}><code>部分[]</code></a>`}[]` |
| `session.message({ path })` | 獲取訊息詳情 | 返回 `{ info: `<a href={typesUrl}><code>息</code></a>`, parts: `<a href={typesUrl}><code>部分[]</code></a>`}` |
| `session.prompt({ path, body })` | 送提示資訊 | `body.noReply: true` 返回 UserMessage限上下文)。預設返回 <a href={typesUrl}><code>AssistantMessage</code></a> 以及 AI 響 |
| `session.command({ path, body })` | 向會話傳送命令 | 返回 `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>部分[]</code></a>`}` |
| `session.shell({ path, body })` | 行 shell 命令 | 返回 <a href={typesUrl}><code>AssistantMessage</code></a> |
| `session.revert({ path, body })` | 回覆訊息 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.unrevert({ path })` | 恢已恢復的訊息 | 返回 <a href={typesUrl}><code>會話</code></a> |
| `session.messages({ path })` | 列出会话中的息 | 返回 `{ info: `<a href={typesUrl}><code>息</code></a>`, parts: `<a href={typesUrl}><code>部分[]</code></a>`}[]` |
| `session.message({ path })` | 获取消息详情 | 返回 `{ info: `<a href={typesUrl}><code>息</code></a>`, parts: `<a href={typesUrl}><code>部分[]</code></a>`}` |
| `session.prompt({ path, body })` | 送提示資訊 | `body.noReply: true` 返回 UserMessage限上下文)。默认返回 <a href={typesUrl}><code>AssistantMessage</code></a> 以及 AI 響 |
| `session.command({ path, body })` | 向会话发送命令 | 返回 `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>部分[]</code></a>`}` |
| `session.shell({ path, body })` | 行 shell 命令 | 返回 <a href={typesUrl}><code>AssistantMessage</code></a> |
| `session.revert({ path, body })` | 回复消息 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `session.unrevert({ path })` | 恢已恢复的消息 | 返回 <a href={typesUrl}><code>会话</code></a> |
| `postSessionByIdPermissionsByPermissionId({ path, body })` | 回复许可权限请求 | 返回`boolean` |
---
@@ -281,15 +281,15 @@ await client.session.prompt({
---
### 檔案
### 文件
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ------------------------- | -------------------- | ----------------------------------------------------------------------------------- |
| `find.text({ query })` | 搜索档案中文字 | 具有 `path`、`lines`、`line_number`、`absolute_offset`、`submatches` 的匹配对象数组 |
| `find.files({ query })` | 按名称查询档案和目录 | `string[]`(路径) |
| `find.symbols({ query })` | 查工作符號 | <a href={typesUrl}><code>符號[]</code></a> |
| `find.symbols({ query })` | 查工作符號 | <a href={typesUrl}><code>符號[]</code></a> |
| `file.read({ query })` | 读取档案 | `{ type: "raw" \| "patch", content: string }` |
| `file.status({ query? })` | 取跟蹤檔案的狀態 | <a href={typesUrl}><code>檔案[]</code></a> |
| `file.status({ query? })` | 取跟蹤文件的狀態 | <a href={typesUrl}><code>文件[]</code></a> |
`find.files` 支持一些可选的查询栏位:
@@ -324,7 +324,7 @@ const content = await client.file.read({
### TUI
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ------------------------------ | ---------------- | --------- |
| `tui.appendPrompt({ body })` | 将文字附加到提示 | `boolean` |
| `tui.openHelp()` | 开启帮助对话方块 | `boolean` |
@@ -355,7 +355,7 @@ await client.tui.showToast({
### 授權
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ------------------- | ---------------- | --------- |
| `auth.set({ ... })` | 设定身份验证凭据 | `boolean` |
@@ -372,9 +372,9 @@ await client.auth.set({
---
### 活
### 活
| 方法 | 描述 | 回 |
| 方法 | 描述 | 回 |
| ------------------- | ------------------ | ------------------ |
| `event.subscribe()` | 服务器传送的事件流 | 服务器传送的事件流 |

View File

@@ -1,5 +1,5 @@
---
title: 服器
title: 服
description: 通过 HTTP 与 opencode 服务器交互。
---
@@ -18,7 +18,7 @@ opencode serve [--port <number>] [--hostname <string>] [--cors <origin>]
#### 選項
| 旗幟 | 描述 | 預設 |
| 旗幟 | 描述 | 默认 |
| --------------- | ----------------------------------- | ---------------- |
| `--port` | 监听音频 | `4096` |
| `--hostname` | 监听的主机名 | `127.0.0.1` |
@@ -61,7 +61,7 @@ opencode TUI running, `opencode serve` will start a new server.
---
#### 連線到現有服器
#### 连接到現有服
当您启动 TUI 时,它会随机分配端口和主机名。您可以重新设置 `--hostname` 和 `--port` [flags](/docs/cli)。使用它连线到其服务器然后器。
@@ -71,7 +71,7 @@ opencode TUI running, `opencode serve` will start a new server.
## 規格
服务器发布了OpenAPI 3.1规范,可以在以下位置检视
服务器发布了OpenAPI 3.1规范,可以在以下位置查看
```
http://<hostname>:<port>/doc
@@ -89,34 +89,34 @@ opencode服务器公开以下API。
### 全球的
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ---------------- | ------------------------ | ------------------------------------ |
| `GET` | `/global/health` | 获取服务器运行状况和版本 | `{ healthy: true, version: string }` |
| `GET` | `/global/event` | 获取全域性事件SSE 流) | 事件流 |
---
###
###
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ------------------ | ------------ | ------------------------------------------ |
| `GET` | `/project` | 列出所有案 | <a href={typesUrl}><code>案[]</code></a> |
| `GET` | `/project/current` | 獲取當前專案 | <a href={typesUrl}><code>案</code></a> |
| `GET` | `/project` | 列出所有案 | <a href={typesUrl}><code>案[]</code></a> |
| `GET` | `/project/current` | 获取当前专案 | <a href={typesUrl}><code>案</code></a> |
---
### 路径和VCS
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ------- | ----------------------- | ------------------------------------------- |
| `GET` | `/path` | 獲取當前路徑 | <a href={typesUrl}><code>路徑</code></a> |
| `GET` | `/vcs` | 獲取當前專案的 VCS 資訊 | <a href={typesUrl}><code>VcsInfo</code></a> |
| `GET` | `/path` | 获取当前路徑 | <a href={typesUrl}><code>路徑</code></a> |
| `GET` | `/vcs` | 获取当前专案的 VCS 資訊 | <a href={typesUrl}><code>VcsInfo</code></a> |
---
### 例項
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ------ | ------------------- | -------------- | --------- |
| `POST` | `/instance/dispose` | 执行当前实例项 | `boolean` |
@@ -124,45 +124,45 @@ opencode服务器公开以下API。
### 配置
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ------- | ------------------- | -------------------- | -------------------------------------------------------------------------------------- |
| `GET` | `/config` | 取配置資訊 | <a href={typesUrl}><code>配置</code></a> |
| `GET` | `/config` | 取配置資訊 | <a href={typesUrl}><code>配置</code></a> |
| `PATCH` | `/config` | 更新配置 | <a href={typesUrl}><code>配置</code></a> |
| `GET` | `/config/providers` | 列出提供商和預設模型 | `{ providers: `<a href={typesUrl}>提供商[]</a>`, default: { [key: string]: string } }` |
| `GET` | `/config/providers` | 列出提供商和默认模型 | `{ providers: `<a href={typesUrl}>提供商[]</a>`, default: { [key: string]: string } }` |
---
### 提供
### 提供
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ------ | -------------------------------- | ---------------------- | --------------------------------------------------------------------------------- |
| `GET` | `/provider` | 列出所有提供商 | `{ all: `<a href={typesUrl}>提供商[]</a>`, default: {...}, connected: string[] }` |
| `GET` | `/provider/auth` | 取提供商身份驗證方法 | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` |
| `GET` | `/provider/auth` | 取提供商身份验证方法 | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` |
| `POST` | `/provider/{id}/oauth/authorize` | 使用 OAuth 授權提供商 | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> |
| `POST` | `/provider/{id}/oauth/callback` | 处理成功的 OAuth 回 | `boolean` |
| `POST` | `/provider/{id}/oauth/callback` | 处理提供商的 OAuth 回 | `boolean` |
---
### 會議
### 会话
| 方法 | 路徑 | 描述 | 筆記 |
| -------- | ---------------------------------------- | ---------------------------------- | -------------------------------------------------------------------------------- |
| `GET` | `/session` | 列出所有會話 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `POST` | `/session` | 建立新會話 | 正文: `{ parentID?, title? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/status` | 取所有會話的會話狀態 | 返回 `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
| `GET` | `/session/:id` | 獲取會話詳細資訊 | 返回<a href={typesUrl}><code>會話</code></a> |
| `GET` | `/session` | 列出所有会话 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `POST` | `/session` | 建立新会话 | 正文: `{ parentID?, title? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/status` | 取所有会话的会话狀態 | 返回 `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
| `GET` | `/session/:id` | 获取会话详细信息 | 返回<a href={typesUrl}><code>会话</code></a> |
| `DELETE` | `/session/:id` | 删除会话及所有资料 | 返回`boolean` |
| `PATCH` | `/session/:id` | 更新會話屬性 | 正文: `{ title? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | 獲取會話的子會話 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | 獲取會話的待辦事項列表 | 返回 <a href={typesUrl}><code>Todo[]</code></a> |
| `PATCH` | `/session/:id` | 更新会话屬性 | 正文: `{ title? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `GET` | `/session/:id/children` | 获取会话的子会话 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `GET` | `/session/:id/todo` | 获取会话的待辦事項列表 | 返回 <a href={typesUrl}><code>Todo[]</code></a> |
| `POST` | `/session/:id/init` | Analyze app and create `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returns `boolean` |
| `POST` | `/session/:id/fork` | 在息中分叉現有會話 | 正文: `{ messageID? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/fork` | 在息中分叉現有会话 | 正文: `{ messageID? }`,返回 <a href={typesUrl}><code>Session</code></a> |
| `POST` | `/session/:id/abort` | 中止正在执行的会话 | 返回`boolean` |
| `POST` | `/session/:id/share` | 分享會議 | 返回<a href={typesUrl}><code>會話</code></a> |
| `DELETE` | `/session/:id/share` | 取消共享會話 | 返回<a href={typesUrl}><code>會話</code></a> |
| `GET` | `/session/:id/diff` | 取本次會話的差異 | 查`messageID?`,返回 <a href={typesUrl}><code>FileDiff[]</code></a> |
| `POST` | `/session/:id/share` | 分享会话 | 返回<a href={typesUrl}><code>会话</code></a> |
| `DELETE` | `/session/:id/share` | 取消共享会话 | 返回<a href={typesUrl}><code>会话</code></a> |
| `GET` | `/session/:id/diff` | 取本次会话的差異 | 查`messageID?`,返回 <a href={typesUrl}><code>FileDiff[]</code></a> |
| `POST` | `/session/:id/summarize` | 会议总结 | 正文:`{ providerID, modelID }`,返回 `boolean` |
| `POST` | `/session/:id/revert` | 回讯息 | 正文:`{ messageID, partID? }`,返回 `boolean` |
| `POST` | `/session/:id/revert` | 回讯息 | 正文:`{ messageID, partID? }`,返回 `boolean` |
| `POST` | `/session/:id/unrevert` | 恢复所有已恢复的消息 | 返回`boolean` |
| `POST` | `/session/:id/permissions/:permissionID` | 回复许可权限请求 | 正文:`{ response, remember? }`,返回 `boolean` |
@@ -172,37 +172,37 @@ opencode服务器公开以下API。
| 方法 | 路徑 | 描述 | 筆記 |
| ------ | --------------------------------- | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `GET` | `/session/:id/message` | 列出會話中的息 | 查 `limit?`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>Part[]</a>`}[]` |
| `POST` | `/session/:id/message` | 傳送訊息並等待回 | 正文: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `GET` | `/session/:id/message/:messageID` | 獲取訊息詳情 | 返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `GET` | `/session/:id/message` | 列出会话中的息 | 查 `limit?`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>Part[]</a>`}[]` |
| `POST` | `/session/:id/message` | 发送消息并等待回 | 正文: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `GET` | `/session/:id/message/:messageID` | 获取消息详情 | 返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `POST` | `/session/:id/prompt_async` | 非同步传送消息(休眠等待) | 主体:与 `/session/:id/message` 相同,返回 `204 No Content` |
| `POST` | `/session/:id/command` | 行斜槓命令 | 正文: `{ messageID?, agent?, model?, command, arguments }`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `POST` | `/session/:id/shell` | 行 shell 命令 | 正文: `{ agent, model?, command }`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `POST` | `/session/:id/command` | 行斜槓命令 | 正文: `{ messageID?, agent?, model?, command, arguments }`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
| `POST` | `/session/:id/shell` | 行 shell 命令 | 正文: `{ agent, model?, command }`,返回 `{ info: `<a href={typesUrl}>息</a>`, parts: `<a href={typesUrl}>部分[]</a>`}` |
---
### 命令
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ---------- | ------------ | ------------------------------------------ |
| `GET` | `/command` | 列出所有命令 | <a href={typesUrl}><code>命令[]</code></a> |
---
### 檔案
### 文件
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ------------------------ | -------------------- | ----------------------------------------------------------------------------------- |
| `GET` | `/find?pattern=<pat>` | 搜尋檔案中的文字 | 具有 `path`、`lines`、`line_number`、`absolute_offset`、`submatches` 的匹配對像陣列 |
| `GET` | `/find/file?query=<q>` | 按名稱查詢檔案和目 | `string[]`(路徑) |
| `GET` | `/find/symbol?query=<q>` | 查工作符號 | <a href={typesUrl}><code>符號[]</code></a> |
| `GET` | `/file?path=<path>` | 列出檔案和目 | <a href={typesUrl}><code>FileNode[]</code></a> |
| `GET` | `/file/content?path=<p>` | 讀取檔案 | <a href={typesUrl}><code>檔案內容</code></a> |
| `GET` | `/file/status` | 取跟蹤檔案的狀態 | <a href={typesUrl}><code>檔案[]</code></a> |
| `GET` | `/find?pattern=<pat>` | 搜索文件中的文字 | 具有 `path`、`lines`、`line_number`、`absolute_offset`、`submatches` 的匹配对像数组 |
| `GET` | `/find/file?query=<q>` | 按名称查询文件和目 | `string[]`(路徑) |
| `GET` | `/find/symbol?query=<q>` | 查工作符號 | <a href={typesUrl}><code>符號[]</code></a> |
| `GET` | `/file?path=<path>` | 列出文件和目 | <a href={typesUrl}><code>FileNode[]</code></a> |
| `GET` | `/file/content?path=<p>` | 讀取文件 | <a href={typesUrl}><code>文件內容</code></a> |
| `GET` | `/file/status` | 取跟蹤文件的狀態 | <a href={typesUrl}><code>文件[]</code></a> |
#### `/find/file` 查询
#### `/find/file` 查询
- `query`(必需)—搜寻字串(模糊匹配)
- `query`(必需)—搜寻字串(模糊匹配)
- `type`(可选)— 将结果限制为 `"file"` 或 `"directory"`
- `directory` (任选) — 覆盖搜索的专案根目录
- `limit`(任选)— 最大结果 (1200)
@@ -212,7 +212,7 @@ opencode服务器公开以下API。
### 工具(實驗)
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ------------------------------------------- | ---------------------------- | -------------------------------------------- |
| `GET` | `/experimental/tool/ids` | 列出所有工具 ID | <a href={typesUrl}><code>工具ID</code></a> |
| `GET` | `/experimental/tool?provider=<p>&model=<m>` | 列出具有模型 JSON 模式的工具 | <a href={typesUrl}><code>工具列表</code></a> |
@@ -221,18 +221,18 @@ opencode服务器公开以下API。
### LSP、格式化程式和 MCP
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ------ | ------------ | ------------------- | ------------------------------------------------------ |
| `GET` | `/lsp` | 取 LSP 服器狀態 | <a href={typesUrl}><code>LSPStatus[]</code></a> |
| `GET` | `/formatter` | 取格式化程式狀態 | <a href={typesUrl}><code>FormatterStatus[]</code></a> |
| `GET` | `/mcp` | 取 MCP 服器狀態 | `{ [name: string]: `<a href={typesUrl}>MCP狀態</a>` }` |
| `GET` | `/lsp` | 取 LSP 服器狀態 | <a href={typesUrl}><code>LSPStatus[]</code></a> |
| `GET` | `/formatter` | 取格式化程式狀態 | <a href={typesUrl}><code>FormatterStatus[]</code></a> |
| `GET` | `/mcp` | 取 MCP 服器狀態 | `{ [name: string]: `<a href={typesUrl}>MCP狀態</a>` }` |
| `POST` | `/mcp` | 动态添加 MCP 服务器 | 主体:`{ name, config }`,返回 MCP 状态对象 |
---
### 代理商
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | -------- | ------------------ | ------------------------------------------ |
| `GET` | `/agent` | 列出所有可用的代理 | <a href={typesUrl}><code>代理[]</code></a> |
@@ -240,7 +240,7 @@ opencode服务器公开以下API。
### 記錄
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ------ | ------------------------------------------- | ------ | -------------------- |
| `POST` | 身体:`{ service, level, message, extra? }` | `/log` | 写入日志。 `boolean` |
@@ -248,7 +248,7 @@ opencode服务器公开以下API。
### TUI
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ------ | ----------------------- | ----------------------------------------- | ------------ |
| `POST` | `/tui/append-prompt` | 将文字附加到提示 | `boolean` |
| `POST` | `/tui/open-help` | 开启帮助对话方块 | `boolean` |
@@ -266,22 +266,22 @@ opencode服务器公开以下API。
### 授權
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ----------- | ------------------------------------------ | --------- |
| `PUT` | `/auth/:id` | 设置身份验证凭据。正文必须与提供架构匹配 | `boolean` |
| `PUT` | `/auth/:id` | 设置身份验证凭据。正文必须与提供架构匹配 | `boolean` |
---
### 活
### 活
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | -------- | ------------------------------------------------------------------- | ------------------ |
| `GET` | `/event` | 服务器发送事件流。第一个事件是 `server.connected`,之后是总线事件。 | 服务器发送事件流。 |
---
### 檔案
### 文件
| 方法 | 路徑 | 描述 | 回 |
| 方法 | 路徑 | 描述 | 回 |
| ----- | ------ | --------------- | ------------------------- |
| `GET` | `/doc` | 开启API 3.1规范 | 具有OpenAPI规范的HTML页面 |

View File

@@ -6,7 +6,7 @@ description: 分享您的 opencode 对话。
opencode 的共享功能允许您建立指向 opencode 对话的公共链接,以便您可以与蓝牙进行战斗或从其他人那里获得帮助。
:::note
任何知道連結的人都可以公開訪問共享對話
任何知道链接的人都可以公開访问共享对话
:::
---
@@ -16,8 +16,8 @@ opencode 的共享功能允许您建立指向 opencode 对话的公共链接,
当您分享对话时opencode
1. 为您的会话建立唯一的公共 URL
2. 您的對話歷史記錄同步到我們的伺服
3. 透過可共享連結訪問對話 — `opncd.ai/s/<share-id>`
2. 您的对话歷史記錄同步到我们的服务
3. 通过可共享链接访问对话 — `opncd.ai/s/<share-id>`
---
@@ -27,7 +27,7 @@ opencode 支持清晰控制对话共享方式的共享模式:
---
### 手動(預設
### 手动(默认
在默认情况下opencode 使用手动共享模式。会话不会自动共享,但您可以使用 `/share` 命令手动共享它们:
@@ -48,7 +48,7 @@ opencode 支持清晰控制对话共享方式的共享模式:
---
### 自分享
### 自分享
您可以通过将 [config file](/docs/config) 中的 `share` 选项设置为 `"auto"` 来为所有新对话启用自动共享:
@@ -59,7 +59,7 @@ opencode 支持清晰控制对话共享方式的共享模式:
}
```
用自共享後,每個新對話都會自動共享生成連結
用自共享後,每个新对话都会自动共享生成链接
---
@@ -80,49 +80,49 @@ To enforce this across your team for a given project, add it to the `opencode.js
## 取消共享
要停止共享對話並將其從公共訪問中刪除:
要停止共享对话并将其從公共访问中删除:
```
/unshare
```
這將刪除共享連結並刪除與對話相關的資料
这将删除共享链接并删除与对话相关的数据
---
## 隱私
分享對話時需要記住一些事項。
分享对话時需要記住一些事項。
---
### 資料保留
### 数据保留
共享對話仍然可以訪問,直到您明確取消共享。
共享对话仍然可以访问,直到您明確取消共享。
包括:
- 完整的對話歷史記錄
- 所有息和回
- 會話後設資料
- 完整的对话歷史記錄
- 所有息和回
- 会话元数据
---
### 建議
- 共享不包含敏感資訊的對話
- 分享之前檢視對話內容。
- 協作完成後取消共享對話
- 避免與專有程式碼或機密資料共享對話
- 對於敏感案,完全禁用共享。
- 共享不包含敏感資訊的对话
- 分享之前查看对话內容。
- 協作完成後取消共享对话
- 避免与专有程式碼或機密数据共享对话
- 对于敏感案,完全禁用共享。
---
## 對於企業
## 对于企業
對於企業部署,共享功能可以是:
对于企業部署,共享功能可以是:
- **出安全合規性完全禁用**
- **仅限** 仅过 SSO 进行身份验证的用户
- **出安全合規性完全禁用**
- **仅限** 仅过 SSO 进行身份验证的用户
- **在您自己的基礎設施上自行託管**
[了解更多关于在您的组织中使用opencode的](/docs/enterprise)。

View File

@@ -4,21 +4,21 @@ description: “贯穿 SKILL.md 定义可重用行为”
---
代理让 opencode 技能从您的存储库或主目录中找到可重用的指令。
技能贯穿本机 `skill` 工具输入导入 - 代理可以检视可用技能并可以在需要时加载完整内容。
技能贯穿本机 `skill` 工具输入导入 - 代理可以查看可用技能并可以在需要时加载完整内容。
---
## 放置檔案
## 放置文件
为每个技能名称建立一个资料夹,并在其中放入`SKILL.md`。
opencode 搜索这些位置:
- Project config: `.opencode/skills/<name>/SKILL.md`
- Global config: `~/.config/opencode/skills/<name>/SKILL.md`
- 案Claude容:`.claude/skills/<name>/SKILL.md`
- 全域性 Claude 容: `~/.claude/skills/<name>/SKILL.md`
- 案代理容:`.agents/skills/<name>/SKILL.md`
- 全球代理容:`~/.agents/skills/<name>/SKILL.md`
- 案Claude容:`.claude/skills/<name>/SKILL.md`
- 全域性 Claude 容: `~/.claude/skills/<name>/SKILL.md`
- 案代理容:`.agents/skills/<name>/SKILL.md`
- 全球代理容:`~/.agents/skills/<name>/SKILL.md`
---
@@ -34,13 +34,13 @@ Global definitions are also loaded from `~/.config/opencode/skills/*/SKILL.md`,
## 寫前言
每个 `SKILL.md` 必须以 YAML frontmatter 。
識別些欄位:
識別些欄位:
- `name`(必填)
- `description`(必填)
- `license`(任选)
- `compatibility`(任选)
- `metadata`(任选,字串到字串对映)
- `metadata`(任选,字串到字串对映)
未知的 frontmatter 栏位将被忽略。
@@ -50,8 +50,8 @@ Global definitions are also loaded from `~/.config/opencode/skills/*/SKILL.md`,
`name` 必须:
- 長度 164 字元
- 小寫字母數字並帶有單連字元分隔符
- 長度 164 字元
- 小寫字母數字并带有單連字元分隔符
- 不以 `-` 開始或結束
- 不包含連續的 `--`
- 匹配包含 `SKILL.md` 的目录名
@@ -64,14 +64,14 @@ Global definitions are also loaded from `~/.config/opencode/skills/*/SKILL.md`,
---
## 遵循長度規則
## 遵循長度规则
`description` 必须是 1-1024 个字元。
保持足夠具體,以便代理能夠正確選擇
保持足夠具體,以便代理能夠正确选择
---
## 使用一例子
## 使用一例子
Create `.opencode/skills/git-release/SKILL.md` like this:
@@ -103,7 +103,7 @@ Ask clarifying questions if the target versioning scheme is unclear.
## 識別工具說明
opencode 列出了 `skill` 工具描述中的可用技能。
個條目都包含技能名和描述:
个条目都包含技能名和描述:
```xml
<available_skills>
@@ -114,7 +114,7 @@ opencode 列出了 `skill` 工具描述中的可用技能。
</available_skills>
```
代理透過呼叫工具來載入技能:
代理通过呼叫工具來載入技能:
```
skill({ name: "git-release" })
@@ -122,7 +122,7 @@ skill({ name: "git-release" })
---
## 配置許可權
## 配置权限
Control which skills agents can access using pattern-based permissions in `opencode.json`:
@@ -139,7 +139,7 @@ Control which skills agents can access using pattern-based permissions in `openc
}
```
| 許可 | 行 |
| 許可 | 行 |
| ------- | -------------------------- |
| `allow` | 技能立即加载 |
| `deny` | 对特工隐藏技能,访问被拒绝 |
@@ -149,11 +149,11 @@ Control which skills agents can access using pattern-based permissions in `openc
---
## 覆蓋每個代理
## 覆盖每个代理
特定代理授予全域性預設許可權不同的許可權
特定代理授予全域性默认权限不同的权限
**對於自定義代理**(在代理前言中):
**对于自定義代理**(在代理前言中):
```yaml
---
@@ -183,9 +183,9 @@ permission:
## 禁用技能工具
完全禁用不應該使用技能的特工:
完全禁用不应该使用技能的特工:
**對於定製代理**
**对于定製代理**
```yaml
---
@@ -194,7 +194,7 @@ tools:
---
```
**對於內建代理**
**对于內建代理**
```json
{
@@ -208,15 +208,15 @@ tools:
}
```
禁用後,`<available_skills>` 部分被完全省略。
禁用後,`<available_skills>` 部分被完全省略。
---
## 解決載入問題
如果某項技能沒有示:
如果某項技能沒有示:
1. 验证 `SKILL.md` 拼写为全部大写
2. 检查 frontmatter 是否包括 `name` 和 `description`
3. 確保技能名在所有位置都是唯一的
3. 確保技能名在所有位置都是唯一的
4. 查询权限——具有`deny`的代理隐藏技能

View File

@@ -1,6 +1,6 @@
---
title: 主
description: 選擇內建主或定義您自己的主
title: 主
description: 选择內建主或定義您自己的主
---
使用 opencode您可以从多个内建主题中进行选择使用适合您的终端主题的主题或定义您自己的自定义主题。
@@ -9,23 +9,23 @@ By default, opencode uses our own `opencode` theme.
---
## 端要求
## 端要求
了使主能夠正確顯示完整的調色盤,您的端必須支**真彩色**24 位顏色)。大多數現代終端預設支援此功能,但您可能需要用它:
了使主能夠正确显示完整的调色板,您的端必須支**真彩色**24 位顏色)。大多數现代终端默认支持此功能,但您可能需要用它:
- **检查支持**:执行 `echo $COLORTERM` - 它应该输出 `truecolor` 或 `24bit`
- **启用真彩色**在shell配置文件中设置环境变量`COLORTERM=truecolor`
- **您的终端容性**确保终端模拟器支持24位颜色大多数现代终端如iTerm2、Alacritty、Kitty、Windows终端和最新版本的GNOME终端都支持
- **您的终端容性**确保终端模拟器支持24位颜色大多数现代终端如iTerm2、Alacritty、Kitty、Windows终端和最新版本的GNOME终端都支持
如果沒有真彩色支,主的顏色精度可能降低或回落到最接近的 256 色近似值。
如果沒有真彩色支,主的顏色精度可能降低或回落到最接近的 256 色近似值。
---
## 內建主
## 內建主
opencode 带有几个内建主题。
| 名 | 描述 |
| 名 | 描述 |
| ---------------------- | ---------------------------------------------------------------------------- |
| `system` | 适应您所处的背景颜色 |
| `tokyonight` | Based on the [Tokyonight](https://github.com/folke/tokyonight.nvim) theme |
@@ -39,27 +39,27 @@ opencode 带有几个内建主题。
| `matrix` | 骇客风格黑底绿主题 |
| `one-dark` | Based on the [Atom One](https://github.com/Th3Whit3Wolf/one-nvim) Dark theme |
此外,我們還在不斷新增新主
此外,我们还在不斷添加新主
---
## 系統主
## 系統主
`system` 主题旨在自动适应您的最终方案。与使用固定颜色的传统主题不同_system_ 主题:
- **生成灰度**:根據端的背景顏色建立自定義灰度,確保最佳比度。
- **生成灰度**:根據端的背景顏色建立自定義灰度,確保最佳比度。
- **使用 ANSI 颜色**:使用标准 ANSI 颜色 (0-15) 进行语法突出显示和 UI 元素,尊重 Windows 的调色盘。
- **保留默认设置**:使用 `none` 作为文字和背景颜色以保持本机的外观。
系統主適合以下使用者
系統主適合以下用户
- 希望 opencode 与终端的外观相匹配
- 使用自定義端配色方案
- 希望所有終端應用程具有一致的外觀
- 使用自定義端配色方案
- 希望所有终端应用程具有一致的外觀
---
## 使用主
## 使用主
您可以通过使用 `/theme` 命令调出主题选择来选择主题。或者您可以在 [config](/docs/config) 中指定它。
@@ -72,7 +72,7 @@ opencode 带有几个内建主题。
---
## 自定義主
## 自定義主
opencode 支持灵活的基于 JSON 的主题系统,允许用户轻松创建和自定义主题。
@@ -80,29 +80,29 @@ opencode 支持灵活的基于 JSON 的主题系统,允许用户轻松创建
### 等級制度
按以下序從多個目錄載入,其中面的目錄覆蓋前面的目
按以下序從多个目录載入,其中面的目录覆盖前面的目
1. **內建主** - 些主嵌入在二進製檔案
1. **內建主** - 些主嵌入在二進製文件
2. **User config directory** - Defined in `~/.config/opencode/themes/*.json` or `$XDG_CONFIG_HOME/opencode/themes/*.json`
3. **Project root directory** - Defined in the `<project-root>/.opencode/themes/*.json`
4. **Current working directory** - Defined in `./.opencode/themes/*.json`
如果多個目錄包含同名主題,則將使用優先順序較高的目中的主
如果多个目录包含同名主题,则将使用优先顺序較高的目中的主
---
### 建立主
### 建立主
要创建自定义主题,请在主题目录中创建 JSON 档案。
對於使用者範圍的主
对于用户范围的主
```bash no-frame
mkdir -p ~/.config/opencode/themes
vim ~/.config/opencode/themes/my-theme.json
```
以及針特定案的主
以及針特定案的主
```bash no-frame
mkdir -p .opencode/themes
@@ -129,7 +129,7 @@ vim .opencode/themes/my-theme.json
---
### 終端預設
### 终端默认
特殊值 `"none"` 可用于任何颜色以继承默认的默认颜色。这对于建立与终端方案无缝的融合主题特别有用:
@@ -140,7 +140,7 @@ vim .opencode/themes/my-theme.json
### 例子
以下是自定義主的示例:
以下是自定義主的示例:
```json title="my-theme.json"
{

View File

@@ -64,7 +64,7 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
### 編輯
使用精確的字串替換修改現有檔案
使用精確的字串替換修改現有文件
```json title="opencode.json" {4}
{
@@ -75,13 +75,13 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
}
```
该工具取消替换精确的文字来匹配对文件执行精确编辑。这是 LLM 修改程序代码的主要方式。
该工具取消替换精确的文字来匹配对文件执行精确编辑。这是 LLM 修改代码的主要方式。
---
### 寫
建立新檔案或覆現有檔案
建立新文件或覆現有文件
```json title="opencode.json" {4}
{
@@ -102,7 +102,7 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
### 讀
從程式碼庫中讀取檔案內容。
從程式碼庫中讀取文件內容。
```json title="opencode.json" {4}
{
@@ -113,13 +113,13 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
}
```
工具讀取檔案並返回其內容。它支讀取大檔案的特定行範圍
工具讀取文件并返回其內容。它支讀取大文件的特定行范围
---
### grep
使用正規表示式搜尋檔案內容。
使用正規表示式搜索文件內容。
```json title="opencode.json" {4}
{
@@ -130,13 +130,13 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
}
```
在您的程式碼庫中快速進行內容搜。支完整的正規表示式語法和檔案模式濾。
在您的程式碼庫中快速進行內容搜。支完整的正規表示式語法和文件模式濾。
---
### 全域性
透過模式匹配查詢檔案
通过模式匹配查询文件
```json title="opencode.json" {4}
{
@@ -153,7 +153,7 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
### 列表
列出給定路徑中的檔案和目
列出給定路徑中的文件和目
```json title="opencode.json" {4}
{
@@ -164,7 +164,7 @@ This tool allows the LLM to run terminal commands like `npm install`, `git statu
}
```
工具列出目內容。它接受全域性模式來濾結果。
工具列出目內容。它接受全域性模式來濾結果。
---
@@ -185,7 +185,7 @@ This tool is only available when `OPENCODE_EXPERIMENTAL_LSP_TOOL=true` (or `OPEN
}
```
的操作包括 `goToDefinition`、`findReferences`、`hover`、`documentSymbol`、`workspaceSymbol`、`goToImplementation`、`prepareCallHierarchy`、`incomingCalls` 和 `outgoingCalls`。
的操作包括 `goToDefinition`、`findReferences`、`hover`、`documentSymbol`、`workspaceSymbol`、`goToImplementation`、`prepareCallHierarchy`、`incomingCalls` 和 `outgoingCalls`。
To configure which LSP servers are available for your project, see [LSP Servers](/docs/lsp).
@@ -193,7 +193,7 @@ To configure which LSP servers are available for your project, see [LSP Servers]
### 修補
對檔案應用補丁。
对文件应用補丁。
```json title="opencode.json" {4}
{
@@ -204,7 +204,7 @@ To configure which LSP servers are available for your project, see [LSP Servers]
}
```
工具補丁檔案應用到您的程式碼庫。對於應用來自各種來源的差異和補丁很有
工具補丁文件应用到您的程式碼庫。对于应用來自各種來源的差異和補丁很有帮助
:::note
`patch`工具由`edit`许可权控制,该许可权主题所有文件修改(`edit`、`write`、`patch`、`multiedit`)。
@@ -229,7 +229,7 @@ To configure which LSP servers are available for your project, see [LSP Servers]
### 待辦寫入
在編碼會話期間管理待辦事項列表。
在編碼会话期間管理待辦事項列表。
```json title="opencode.json" {4}
{
@@ -271,7 +271,7 @@ To configure which LSP servers are available for your project, see [LSP Servers]
### 網頁抓取
取網頁內容。
取網頁內容。
```json title="opencode.json" {4}
{
@@ -282,13 +282,13 @@ To configure which LSP servers are available for your project, see [LSP Servers]
}
```
允许 LLM 获取和读取网页。对于查询文件或研究线上资源很有
允许 LLM 获取和读取网页。对于查询文件或研究线上资源很有帮助
---
### 網路搜
### 網路搜
在網路上搜資訊。
在網路上搜資訊。
:::note
仅当使用 opencode 提供或 `OPENCODE_ENABLE_EXA` 程序环境变量设置为任何真值(例如 `true` 或 `1`)时,此工具才可用。
@@ -310,9 +310,9 @@ OPENCODE_ENABLE_EXA=1 opencode
}
```
使用 Exa AI 执行网路搜索以线上查询相关资讯。对于研究主题、查询时事或收集训练超出数据范围的资讯很有
使用 Exa AI 执行网路搜索以线上查询相关资讯。对于研究主题、查询时事或收集训练超出数据范围的资讯很有帮助
不需要 API 金钥匙 — 该工具消耗身份验证即可直接连线到 Exa AI 的托管 MCP 服务。
不需要 API 密钥 — 该工具消耗身份验证即可直接连线到 Exa AI 的托管 MCP 服务。
:::tip
当您需要查询资讯(发现)时,请使用 `websearch`;当您需要从特定 URL 检索内容(搜索)时,请使用 `webfetch`。
@@ -322,7 +322,7 @@ OPENCODE_ENABLE_EXA=1 opencode
### 問題
執行過程中詢問使用者問題。
执行过程中詢問用户問題。
```json title="opencode.json" {4}
{
@@ -335,24 +335,24 @@ OPENCODE_ENABLE_EXA=1 opencode
该工具允许 LLM 在任务期间询问用户问题。它适用于:
- 收集使用者偏好或要求
- 收集用户偏好或要求
- 澄清不明確的指令
- 就實施選擇做出決策
- 提供選擇方向
- 就實施选择做出決策
- 提供选择方向
問題都包含標題、問題文字和選項列表。使用者可以從提供的選項中進行選擇或輸入自定義答案。存在多問題時,使用者可以在提交所有答案之前在些問題之間導航。
問題都包含標題、問題文字和選項列表。用户可以從提供的選項中進行选择或輸入自定義答案。存在多問題時,用户可以在提交所有答案之前在些問題之间导航。
---
## 定製工具
自定义工具可以让您定义LLM可以调用自己的函式。这些是在您的配置文件中定义的并且可以执行任何程序代码。
自定义工具可以让您定义LLM可以调用自己的函式。这些是在您的配置文件中定义的并且可以执行任何代码。
[了解更多](/docs/custom-tools)关于创建自定义工具。
---
## MCP 服器
## MCP 服
MCP模型上下文协议服务器允许您集成外部工具和服务。这包括数据库访问、API 集成和第三方服务。
@@ -360,7 +360,7 @@ MCP模型上下文协议服务器允许您集成外部工具和服务。
---
## 部結構
## 部結構
Internally, tools like `grep`, `glob`, and `list` use [ripgrep](https://github.com/BurntSushi/ripgrep) under the hood. By default, ripgrep respects `.gitignore` patterns, which means files and directories listed in your `.gitignore` will be excluded from searches and listings.

View File

@@ -9,7 +9,7 @@ description: 常見問題以及如何解決它們。
## 紀錄
日誌檔案寫入:
日誌文件寫入:
- **macOS/Linux**: `~/.local/share/opencode/log/`
- **Windows**: Press `WIN+R` and paste `%USERPROFILE%\.local\share\opencode\log`
@@ -27,33 +27,33 @@ opencode程序将会话数据和其他应用程序数据存储在磁碟上
- **macOS/Linux**: `~/.local/share/opencode/`
- **Windows**: Press `WIN+R` and paste `%USERPROFILE%\.local\share\opencode`
該目錄包含:
该目录包含:
- `auth.json` - 身份验证资料例如API密钥、OAuth令牌
- `auth.json` - 身份验证凭据,例如 API 密钥、OAuth Tokens
- `log/` - 应用日志
- `project/` - 专案特定数据,例如会话和消息数据
- 如果專案位於 Git 儲存庫中,則它儲存在 `./<project-slug>/storage/` 中
- `project/` - 项目特定数据,例如会话和消息数据
- 如果项目位于 Git 仓库中,则存储在 `./<project-slug>/storage/` 中
- 如果不是 Git 存储库,则存储在 `./global/storage/` 中
---
## 桌面用程
## 桌面用程
opencode Desktop runs a local opencode server (the `opencode-cli` sidecar) in the background. Most issues are caused by a misbehaving plugin, a corrupted cache, or a bad server setting.
### 快速
### 快速
- 完全退出重新啟動應用程
- 如果用程式顯示錯誤螢幕,請單擊“**重新啟動**”並複制錯誤詳細資訊
- 完全退出重新启动应用程
- 如果用程序显示错误界面,请单击“**重新启动**”并复制错误详细信息
- macOS only: `opencode` menu -> **Reload Webview** (helps if the UI is blank/frozen).
---
### 禁用外掛
### 禁用插件
如果桌面用程式在啟動時崩潰、掛起或行異常,首先禁用外掛
如果桌面用程序在启动時崩潰、掛起或行異常,首先禁用插件
#### 查全域性配置
#### 查全域性配置
开启全域性文件并查询`plugin`键。
@@ -61,7 +61,7 @@ opencode Desktop runs a local opencode server (the `opencode-cli` sidecar) in th
- **macOS/Linux** (older installs): `~/.local/share/opencode/opencode.jsonc`
- **Windows**: Press `WIN+R` and paste `%USERPROFILE%\.config\opencode\opencode.jsonc`
如果您配置了外掛,請透過刪除金鑰或將其設定為空陣列來暫時禁用它們:
如果您配置了插件,请通过删除密钥或将其设置为空数组來暂时禁用它們:
```jsonc
{
@@ -70,26 +70,26 @@ opencode Desktop runs a local opencode server (the `opencode-cli` sidecar) in th
}
```
#### 檢查外掛目錄
#### 检查插件目录
opencode 还可以从磁碟加载本地外挂。暂时将它们移开(或重新命名资料夹)并重新启动桌面应用程序:
- **全域性外掛**
- **全域性插件**
- **macOS/Linux**: `~/.config/opencode/plugins/`
- **Windows**: Press `WIN+R` and paste `%USERPROFILE%\.config\opencode\plugins`
- **專案外掛**僅當您使用每個專案配置時)
- **专案插件**仅当您使用每个专案配置時)
- `<your-project>/.opencode/plugins/`
如果用程再次開始工作,一次重新用一個外掛,以找出導致問題的外掛
如果用程再次開始工作,一次重新用一个插件,以找出導致問題的插件
---
### 清除快取
### 清除缓存
如果取消外挂没有帮助(或者外挂安装被卡住),请清除快取方便opencode可以重建它。
如果取消外挂没有帮助(或者外挂安装被卡住),请清除缓存方便opencode可以重建它。
1. 完全退出 opencode 桌面。
2. 刪除快取目錄
2. 删除缓存目录
- **macOS**: Finder -> `Cmd+Shift+G` -> paste `~/.cache/opencode`
- **Linux**: delete `~/.cache/opencode` (or run `rm -rf ~/.cache/opencode`)
@@ -99,7 +99,7 @@ opencode 还可以从磁碟加载本地外挂。暂时将它们移开(或重
---
### 修復伺服器連線問題
### 修復服务器连接問題
opencode Desktop 可以启动自己的本地服务器(默认配置)或连线到您的服务器 URL。
@@ -107,13 +107,13 @@ opencode Desktop 可以启动自己的本地服务器(默认配置)或连线
#### 清除桌面桌面服务器 URL
在主幕中,單擊伺服器名稱(帶有狀態點)以開啟伺服器選擇器。在“**預設伺服器**”部分中,單擊“**清除**”。
在主幕中,单击服务器名称(带有状态点)以打开服务器选择器。在“**默认服务器**”部分中,单击“**清除**”。
#### 从配置中删除 `server.port` / `server.hostname`
If your `opencode.json(c)` contains a `server` section, temporarily remove it and restart the desktop app.
#### 檢查環境變數
#### 检查环境变量
如果您在环境中设置了 `OPENCODE_PORT`,桌面应用程序将尝试将交换机用于本地服务器。
@@ -142,16 +142,16 @@ If you're experiencing slow performance, file access issues, or terminal problem
---
### 通知不
### 通知不
opencode 桌面仅在以下情况下显示系统通知:
- 在您的作业系统中设置为 opencode 启用了通知,并且
- 用程視窗未聚焦。
- 用程視窗未聚焦。
---
### 重置桌面用程儲存(最的手段)
### 重置桌面用程儲存(最的手段)
如果应用程序无法并且启动您无法从 UI 内部清除设置,请重置桌面应用程序的存储状态。
@@ -161,7 +161,7 @@ opencode 桌面仅在以下情况下显示系统通知:
- `opencode.settings.dat` (desktop default server URL)
- `opencode.global.dat` and `opencode.workspace.*.dat` (UI state like recent servers/projects)
快速找到目
快速找到目
- **macOS**Finder -> `Cmd+Shift+G` -> `~/Library/Application Support`(然后搜索上面的档名)
- **Linux**:在`~/.local/share`下搜索上述档名
@@ -179,9 +179,9 @@ opencode 桌面仅在以下情况下显示系统通知:
[**github.com/anomalyco/opencode/issues**](https://github.com/anomalyco/opencode/issues)
在建立新問題之前,請搜尋現有問題以檢視您的問題是否已被報告。
在建立新問題之前,请搜索現有問題以查看您的問題是否已被報告。
2. **加入我的不和諧**
2. **加入我的不和諧**
获得实时帮助和社群讨论请加入我们的Discord服务器
@@ -197,29 +197,29 @@ opencode 桌面仅在以下情况下显示系统通知:
### opencode 无法启动
1. 查日誌中是否有錯誤訊
2. 尝试使用 `--print-logs` 执行以检视终端中的输出
1. 查日誌中是否有错误消
2. 尝试使用 `--print-logs` 执行以查看终端中的输出
3. Ensure you have the latest version with `opencode upgrade`
---
### 身份驗證問題
### 身份验证問題
1. 尝试使用 TUI 中的 `/connect` 命令重新进行身份验证
2. 检查您的API金钥匙是否有效
2. 检查您的API 密钥是否有效
3. 保证您的网路允许连线到达辉煌的API
---
### 型不可用
### 型不可用
1. 查您是否已透過提供商的身份驗證
2. 驗證配置中的型號名稱是否正
3. 某些型可能需要特定的訪問許可權或訂閱
1. 查您是否已通过提供商的身份验证
2. 驗證配置中的模型名称是否正
3. 某些型可能需要特定的访问权限或訂閱
如果您遇到 `ProviderModelNotFoundError` 您很可能是错误的
在某處引用模型。
模型應該像這樣引用:`<providerId>/<modelId>`
模型应该像这樣引用:`<providerId>/<modelId>`
示例:
@@ -231,14 +231,14 @@ To figure out what models you have access to, run `opencode models`
---
### 提供初始化錯誤
### 提供初始化错误
如果遇到 ProviderInitError您的配置可能无效或损坏。
要解決這個問題:
要解決这个問題:
1. 首先,按照[提供商指南](/docs/providers) 验证您的事业是否已正确设置
2. 如果問題仍然存在,嘗試清除儲存的配置:
2. 如果問題仍然存在,嘗試清除儲存的配置:
```bash
rm -rf ~/.local/share/opencode
@@ -250,13 +250,13 @@ To figure out what models you have access to, run `opencode models`
---
### AI_API_CallError 和提供程序包问题
### AI_API_CallError 和提供包问题
如果您遇到 API 呼叫错误,这可能是由于过去提供程序包造成的。 opencode 根据需要动态安装提供程序OpenAI、Anthropic、Google 等)将其快取放在本地。
如果您遇到 API 呼叫错误,这可能是由于过去提供包造成的。 opencode 根据需要动态安装提供包OpenAI、Anthropic、Google 等)将其缓存放在本地。
要解決提供程式包問題:
要解決provider 包問題:
1. 清除提供程式包快取
1. 清除provider 包缓存
```bash
rm -rf ~/.cache/opencode
@@ -264,13 +264,13 @@ To figure out what models you have access to, run `opencode models`
On Windows, press `WIN+R` and delete: `%USERPROFILE%\.cache\opencode`
2. 重新启动 opencode 以重新安装最新的提供程序
2. 重新启动 opencode 以重新安装最新的提供包
这将需要 opencode 下载最新版本的提供程序包,这通常可以解决模型数和 API 更改的容性问题。
这将需要 opencode 下载最新版本的提供包,这通常可以解决模型数和 API 更改的容性问题。
---
### 複製/paste 不适用 Linux
### 复制/粘贴在 Linux 上不可用
Linux 用户需要安装以下剪贴簿实用程序之一才能使 copy/paste 功能正常工作:
@@ -288,7 +288,7 @@ apt install -y xsel
apt install -y wl-clipboard
```
**對於無頭環境:**
**对于無頭環境:**
```bash
apt install -y xvfb

View File

@@ -13,7 +13,7 @@ opencode 提供交互式终端介面或 TUI以便使用 LLM 处理您的专
opencode
```
或者您可以特定的工作目錄啟動它。
或者您可以特定的工作目录启动它。
```bash
opencode /path/to/project
@@ -27,19 +27,19 @@ Give me a quick summary of the codebase.
---
## 檔案參考
## 文件參考
您可以使用 `@` 在息中引用檔案。這會在當前工作目中進行模糊檔案搜尋
您可以使用 `@` 在息中引用文件。这会在当前工作目中進行模糊文件搜索
:::tip
可以使用 `@` 來引用息中的檔案
可以使用 `@` 來引用息中的文件
:::
```text "@packages/functions/src/api/index.ts"
How is auth handled in @packages/functions/src/api/index.ts?
```
檔案的內容會自動新增到對話中。
文件的內容会自动添加到对话中。
---
@@ -51,7 +51,7 @@ How is auth handled in @packages/functions/src/api/index.ts?
!ls -la
```
命令的輸出將作為工具結果新增到對話中。
命令的輸出将作为工具結果添加到对话中。
---
@@ -69,9 +69,9 @@ How is auth handled in @packages/functions/src/api/index.ts?
---
### 連線
### 连接
新增到 opencode。允许您从可用的成功中进行选择并新增他们的 API 重要
提供商添加到 opencode。你可以从可用提供商中选择,并添加它们的 API 密钥
```bash frame="none"
/connect
@@ -79,7 +79,7 @@ How is auth handled in @packages/functions/src/api/index.ts?
---
### 袖珍的
### 紧凑
压缩当前会话。_别名_ `/summarize`
@@ -87,19 +87,19 @@ How is auth handled in @packages/functions/src/api/index.ts?
/compact
```
** 按键系结** `ctrl+x c`
** 快捷键** `ctrl+x c`
---
### 細節
切換工具執行詳細資訊
切換工具执行详细信息
```bash frame="none"
/details
```
** 按键系结** `ctrl+x d`
** 快捷键** `ctrl+x d`
---
@@ -111,7 +111,7 @@ How is auth handled in @packages/functions/src/api/index.ts?
/editor
```
** 按键系结** `ctrl+x e`
** 快捷键** `ctrl+x e`
---
@@ -123,7 +123,7 @@ How is auth handled in @packages/functions/src/api/index.ts?
/exit
```
** 按键系结** `ctrl+x q`
** 快捷键** `ctrl+x q`
---
@@ -135,19 +135,19 @@ How is auth handled in @packages/functions/src/api/index.ts?
/export
```
** 按键系结** `ctrl+x x`
** 快捷键** `ctrl+x x`
---
### 幫助
示幫助對話方塊。
示幫助对话方塊。
```bash frame="none"
/help
```
** 按键系结** `ctrl+x h`
** 快捷键** `ctrl+x h`
---
@@ -159,19 +159,19 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
/init
```
** 按键系结** `ctrl+x i`
** 快捷键** `ctrl+x i`
---
### 型
###
列出可用型
列出可用型。
```bash frame="none"
/models
```
** 按键系结** `ctrl+x m`
** 快捷键** `ctrl+x m`
---
@@ -183,7 +183,7 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
/new
```
** 按键系结** `ctrl+x n`
** 快捷键** `ctrl+x n`
---
@@ -192,7 +192,7 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
删除之前重做消除的讯息。仅在使用`/undo`后可用。
:::tip
任何檔案更改也被恢
任何文件更改也被恢
:::
在内部,这使用 Git 来管理文件更改。所以你的专案**需要
@@ -202,11 +202,11 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
/redo
```
** 按键系结** `ctrl+x r`
** 快捷键** `ctrl+x r`
---
### 會議
### 会话
上市会话并在会话之间切换。 _别名_`/resume`、`/continue`
@@ -214,7 +214,7 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
/sessions
```
** 按键系结** `ctrl+x l`
** 快捷键** `ctrl+x l`
---
@@ -226,19 +226,19 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
/share
```
** 按键系结** `ctrl+x s`
** 快捷键** `ctrl+x s`
---
### 主
### 主
列出可用的主
列出可用的主
```bash frame="none"
/theme
```
** 按键系结** `ctrl+x t`
** 快捷键** `ctrl+x t`
---
@@ -258,10 +258,10 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
### 撤消
撤消對話中的最後一條訊息。除最近的使用者訊息、所有後續響應以及任何檔案更改。
撤消对话中的最后一条消息。除最近的用户消息、所有后续響应以及任何文件更改。
:::tip
所做的任何檔案更改也被恢
所做的任何文件更改也被恢
:::
在内部,这使用 Git 来管理文件更改。所以你的专案**需要
@@ -271,7 +271,7 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
/undo
```
** 按键系结** `ctrl+x u`
** 快捷键** `ctrl+x u`
---
@@ -285,7 +285,7 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
---
## 編輯器設定
## 编辑器设置
`/editor` 和 `/export` 命令都使用 `EDITOR` 环境变量中指定的编辑器。
@@ -334,9 +334,9 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
</TabItem>
</Tabs>
流行的編輯器選項包括:
流行的编辑器選項包括:
- `code` - Visual Studio 程序代码
- `code` - Visual Studio Code
- `cursor` - 游标
- `windsurf` - 风帆冲浪
- `nvim` - Neovim 编辑器
@@ -349,7 +349,7 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
一些编辑器如 VS Code 需要以 `--wait` 标志启动。
:::
某些编辑器需要命令列数才能在阻止模式下执行。 `--wait` 标志使编辑器程序阻塞直至关闭。
某些编辑器需要命令列数才能在阻止模式下执行。 `--wait` 标志使编辑器程序阻塞直至关闭。
---
@@ -378,13 +378,13 @@ Create or update `AGENTS.md` file. [Learn more](/docs/rules).
## 定製化
您可以使用命令选项板(`ctrl+x h` 或 `/help`)自定义 TUI 检视的各个方面。这些设置在重新启动后仍然存在。
您可以使用命令选项板(`ctrl+x h` 或 `/help`)自定义 TUI 查看的各个方面。这些设置在重新启动后仍然存在。
---
#### 使用者名稱顯
#### 用户名称显
切換您的使用者名稱是否出現在聊天息中。透過以下方式訪問
切換您的用户名称是否出現在聊天息中。通过以下方式访问
- 命令面板:搜尋“使用者名稱”或“隱藏使用者名稱
- 命令面板:搜索“用户名称”或“隐藏用户名称
- 该设置会自动保留,放在 TUI 会话中被记住

View File

@@ -21,7 +21,7 @@ opencode web
如果未设置`OPENCODE_SERVER_PASSWORD`,服务器将不安全。这对于本地使用来说很好,但应该针对网路访问进行设置。
:::
:::tip[Windows 使用者]
:::tip[Windows 用户]
For the best experience, run `opencode web` from [WSL](/docs/windows-wsl) rather than PowerShell. This ensures proper file system access and terminal integration.
:::
@@ -94,21 +94,21 @@ The username defaults to `opencode` but can be changed with `OPENCODE_SERVER_USE
启动后,网路界面将提供对您的 opencode 会话的访问。
### 會議
### 会话
從主頁檢視和管理您的會話。您可以檢視活動會話並開始新會話
從主頁查看和管理您的会话。您可以查看活动会话并開始新会话
![opencode Web - Active Session](../../../assets/web/web-homepage-active-session.png)
### 服器狀態
### 服器狀態
單擊“檢視伺服器”可檢視連線的伺服器及其狀態。
单击“查看服务器”可查看连接的服务器及其狀態。
![opencode Web - See Servers](../../../assets/web/web-homepage-see-servers.png)
---
## 連線終
## 连接终
您可以将终端 TUI 连线到正在执行的 Web 服务器:
@@ -124,7 +124,7 @@ opencode attach http://localhost:4096
---
## 配置檔案
## 配置文件
You can also configure server settings in your `opencode.json` config file:
@@ -139,4 +139,4 @@ You can also configure server settings in your `opencode.json` config file:
}
```
命令列標誌優先於配置檔案設定
命令行标志优先于配置文件设置

View File

@@ -13,7 +13,7 @@ Error 500 (Server Error)!!1500.Thats an error.There was an error. Please try
OpenCode Zen 目前处于一个测试阶段。
:::
Zen 的工作方式与 opencode 中的任何其他提供程序相同。您登 OpenCode Zen 并获得
Zen 的工作方式与 opencode 中的任何其他提供相同。您登 OpenCode Zen 并获得
你的API钥匙。它是**完全可选的**,你不需要使用它即可使用
opencode。
@@ -21,25 +21,25 @@ opencode。
## 背景
市面上有很多型,但其中只有少數幾
些模型可以很好地用作編碼代理。此外,大多數提供商都
配置非常不同;所以你得到截然不同的效能和質量。
市面上有很多型,但其中只有少數幾
些模型可以很好地用作編碼代理。此外,大多數提供商都
配置非常不同;所以你得到截然不同的效能和質量。
:::tip
我们测试了一组与 opencode 配合良好的模型并提供方案
我们测试了一组与 opencode 配合良好的模型并提供
:::
因此,如果您使用 OpenRouter 之类的东西使用模型,您永远无法
確定您是否獲得了您想要的模型的最佳版本。
瞭解決這個問題,我做了幾件事:
瞭解決这个問題,我做了幾件事:
1. 我測試了一組選定的模型,並與他們的團隊討論瞭如何
最好行它們。
2. 然後我們與一些提供商合作以確保些服務得到服務
1. 我測試了一組選定的模型,并与他們的團隊討論瞭如何
最好行它們。
2. 然後我们与一些提供商合作以確保些服務得到服務
3. 最后,我们对 model/provider 的组合进行了基准测试,总结了
附上一份我覺得不錯的推薦清單。
附上一份我覺得不錯的推薦清單。
OpenCode Zen 是一个AI闸道器可以让您访问这些模型。
@@ -49,12 +49,12 @@ OpenCode Zen 是一个AI闸道器可以让您访问这些模型。
OpenCode Zen 的工作方式与 opencode 中的任何其他功能相同。
1. 您登 **<a href={console}>OpenCode Zen</a>**新增您的帳單
详细资讯,然后复制您的 API 金钥匙
2. 您在 TUI 中执行 `/connect` 命令,选择 OpenCode Zen然后贴上 API 金钥匙
3. 在 TUI 中执行 `/models` 以检视我们推荐的型列表。
1. 您登 **<a href={console}>OpenCode Zen</a>**添加您的账单
详细信息,然后复制您的 API 密钥
2. 您在 TUI 中执行 `/connect` 命令,选择 OpenCode Zen然后贴上 API 密钥
3. 在 TUI 中执行 `/models` 以查看我们推荐的型列表。
您需要按求付費,且您可以積分新增到您的帳戶中。
您需要按求付費,且您可以積分添加到您的账户中。
---
@@ -62,7 +62,7 @@ OpenCode Zen 的工作方式与 opencode 中的任何其他功能相同。
您还可以通过以下 API 端点访问我们的模型。
| 型 | 型ID | 端点 | 人工智慧SDK包 |
| 型 | 型ID | 端点 | 人工智慧SDK包 |
| ------------------ | ------------------ | -------------------------------------------------- | --------------------------- |
| GPT 5.2 | gpt-5.2 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.2 Codex | gpt-5.2-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
@@ -100,9 +100,9 @@ use `opencode/gpt-5.2-codex` in your config.
---
### 型
###
您可以從以下位置取可用模型及其後設資料的完整列表:
您可以從以下位置取可用模型及其元数据的完整列表:
```
https://opencode.ai/zen/v1/models
@@ -112,48 +112,48 @@ https://opencode.ai/zen/v1/models
## 定價
們支援即用即付模式。以下是**每 100 萬代幣的價格**。
们支持即用即付模式。以下是**每 100 万Tokens的价格**。
| 型號 | 輸入 | 輸出 | 快取讀取 | 快取寫入 |
| --------------------------------- | ---------- | ---------- | ---------- | ---------- |
| 大泡菜 | 免費 | 免費 | 免費 | - |
| MiniMax M2.1 免费 | 免费 | 免费 | 免费 | - |
| 迷你最大M2.1 | 0.30 美元 | 1.20 美元 | 0.10 美元 | - |
| GLM 4.7 免费 | 免费 | 免费 | 免费 | - |
| GLM 4.7 | 0.60 美元 | 2.20 美元 | 0.10 美元 | - |
| GLM 4.6 | 0.60 美元 | 2.20 美元 | 0.10 美元 | - |
| Kimi K2.5 免费 | 免费 | 免费 | 免费 | - |
| 作为K2.5 | 0.60 美元 | $3.00 | 0.08 美元 | - |
| Kimi K2 思考 | 0.40 美元 | 2.50 美元 | - | - |
| 作为K2 | 0.40 美元 | 2.50 美元 | - | - |
| Qwen3 编码器 480B | 0.45 美元 | 1.50 美元 | - | - |
| Claude Sonnet 4.5(≤ 200K 令牌) | $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| 克劳德十四行诗 4.5> 200K 代币) | 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
| Claude Sonnet 4≤ 200K 令牌) | $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| Claude Sonnet 4> 200K 令牌) | 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
| Claude 俳句 4.5 | 1.00 美元 | 5.00 美元 | 0.10 美元 | 1.25 美元 |
| Claude 俳句 3.5 | 0.80 美元 | 4.00 美元 | 0.08 美元 | 1.00 美元 |
| 克劳德作品4.6(≤ 200K 代币) | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| Claude Opus 4.6> 200K 代幣) | 10.00 美元 | 37.50 美元 | 1.00 美元 | 12.50 美元 |
| Claude 工作 4.5 | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| Claude 工作 4.1 | 15.00 美元 | 75.00 美元 | 1.50 美元 | 18.75 美元 |
| Gemini 3 Pro≤20万代币 | 2.00 美元 | 12.00 美元 | 0.20 美元 | - |
| Gemini 3 Pro>20万代币 | 4.00 美元 | 18.00 美元 | 0.40 美元 | - |
| 双子座 3 闪光 | 0.50 美元 | $3.00 | 0.05 美元 | - |
| GPT 5.2 | 1.75 美元 | 14.00 美元 | 0.175 美元 | - |
| GPT 5.2 法典 | 1.75 美元 | 14.00 美元 | 0.175 美元 | - |
| GPT 5.1 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5.1 法典 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5.1 法典最大 | 1.25 美元 | 10.00 美元 | 0.125 美元 | - |
| GPT 5.1 迷你版 | 0.25 美元 | 2.00 美元 | 0.025 美元 | - |
| GPT 5 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5 法典 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5 奈米 | 免费 | 免费 | 免费 | - |
| 模型 | 輸入 | 輸出 | 缓存讀取 | 缓存寫入 |
| ---------------------------------- | ---------- | ---------- | ---------- | ---------- |
| 大泡菜 | 免費 | 免費 | 免費 | - |
| MiniMax M2.1 免费 | 免费 | 免费 | 免费 | - |
| 迷你最大M2.1 | 0.30 美元 | 1.20 美元 | 0.10 美元 | - |
| GLM 4.7 免费 | 免费 | 免费 | 免费 | - |
| GLM 4.7 | 0.60 美元 | 2.20 美元 | 0.10 美元 | - |
| GLM 4.6 | 0.60 美元 | 2.20 美元 | 0.10 美元 | - |
| Kimi K2.5 免费 | 免费 | 免费 | 免费 | - |
| 作为K2.5 | 0.60 美元 | $3.00 | 0.08 美元 | - |
| Kimi K2 思考 | 0.40 美元 | 2.50 美元 | - | - |
| 作为K2 | 0.40 美元 | 2.50 美元 | - | - |
| Qwen3 编码器 480B | 0.45 美元 | 1.50 美元 | - | - |
| Claude Sonnet 4.5(≤ 200K Tokens | $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| 克劳德十四行诗 4.5> 200K 代币) | 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
| Claude Sonnet 4≤ 200K Tokens | $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| Claude Sonnet 4> 200K Tokens | 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
| Claude 俳句 4.5 | 1.00 美元 | 5.00 美元 | 0.10 美元 | 1.25 美元 |
| Claude 俳句 3.5 | 0.80 美元 | 4.00 美元 | 0.08 美元 | 1.00 美元 |
| 克劳德作品4.6(≤ 200K 代币) | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| Claude Opus 4.6> 200K Tokens | 10.00 美元 | 37.50 美元 | 1.00 美元 | 12.50 美元 |
| Claude 工作 4.5 | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| Claude 工作 4.1 | 15.00 美元 | 75.00 美元 | 1.50 美元 | 18.75 美元 |
| Gemini 3 Pro≤20万代币 | 2.00 美元 | 12.00 美元 | 0.20 美元 | - |
| Gemini 3 Pro>20万代币 | 4.00 美元 | 18.00 美元 | 0.40 美元 | - |
| 双子座 3 闪光 | 0.50 美元 | $3.00 | 0.05 美元 | - |
| GPT 5.2 | 1.75 美元 | 14.00 美元 | 0.175 美元 | - |
| GPT 5.2 法典 | 1.75 美元 | 14.00 美元 | 0.175 美元 | - |
| GPT 5.1 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5.1 法典 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5.1 法典最大 | 1.25 美元 | 10.00 美元 | 0.125 美元 | - |
| GPT 5.1 迷你版 | 0.25 美元 | 2.00 美元 | 0.025 美元 | - |
| GPT 5 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5 法典 | 1.07 美元 | 8.50 美元 | 0.107 美元 | - |
| GPT 5 奈米 | 免费 | 免费 | 免费 | - |
您可能会在您的使用历史记录中注意到*Claude Haiku 3.5*。这是一个[低成本模型](/docs/config/#models),用于生成会话标题。
:::note
信用卡用按成本轉嫁4.4% + 每筆交易 0.30 美元);除此之外我不收取任何用。
信用卡用按成本轉嫁4.4% + 每筆交易 0.30 美元);除此之外我不收取任何用。
:::
免費模型:
@@ -163,32 +163,32 @@ https://opencode.ai/zen/v1/models
- MiniMax M2.1 在 opencode 限时免费供应。团队正在利用这段时间收集反馈并改进模型。
- Big Pickle 是一个隐形模型,在 opencode 上限时免费。团队正在利用这个临时收集反馈并改进模型。
<a href={email}>如果您有任何疑問,聯絡我</a>。
<a href={email}>如果您有任何疑問,聯絡我</a>。
---
### 自重新載入
### 自重新載入
如果您的余额低于 5 美元Zen 将自动充值 20 美元。
您可以更改自充值金額。您可以完全禁用自重新載入。
您可以更改自充值金額。您可以完全禁用自重新載入。
---
### 每月限
### 每月限
可以為整個工作和每工作區設定每月使用限制
你的團隊成
可以为整个工作和每工作区设置每月使用限制
你的團隊成
例如,假设您将每月使用中断设置为 20 美元Zen 将不会使用
一个月超过 20 美元。但如果你启用了自动重新加载Zen 可能会结束
如果您的餘額低於 5 美元,向您收取超 20 美元的用。
如果您的余额低于 5 美元,向您收取超 20 美元的用。
---
## 隱私
所有的模型都在美託管。我的提供商遵循零保留政策,不會將您的資料用於模型訓練,但以下情除外:
所有的模型都在美託管。我的提供商遵循零保留政策,不会将您的数据用于模型训练,但以下情除外:
- Big Pickle在免费期间收集可用于改进模型的数据。
- GLM 4.7 免费:在免费期间,收集可用于改进模型的数据。
@@ -199,56 +199,56 @@ https://opencode.ai/zen/v1/models
---
## 對於團隊
## 对于團隊
Zen 对团队也很有效。您可以参与第三方、角色、策划
您的團隊使用的模型等等。
:::note
測試版的一部分,工作空間目前團隊免費。
測試版的一部分,工作空間目前團隊免費。
:::
測試版的一部分,管理工作空間目前團隊免費。我們將會
很快就分享更多有關定價的細節。
測試版的一部分,管理工作空間目前團隊免費。我们将会
很快就分享更多有關定價的細節。
---
### 角色
您可以邀團隊成到您的工作區並分配角色:
您可以邀團隊成到您的工作区并分配角色:
- **管理员**管理模型、成员、API 金钥匙和设备
- **管理员**管理模型、成员、API 密钥和设备
- **成员**仅管理自己的API 金?
管理員還可以為每個成員設定每月支出限,以控成本。
管理员还可以为每个成员设置每月支出限,以控成本。
---
### 模型訪問
### 模型访问
管理可以用或禁用工作的特定模型。禁用模型出的請求將返回錯誤
管理可以用或禁用工作的特定模型。禁用模型出的请求会返回错误
這對於您想要禁用以下模型的情很有
收集資料
这对于您想要禁用以下模型的情很有帮助
收集数据
---
### 帶上你自己的鑰匙
### 使用你自己的密钥
可以使用自己的 OpenAI 或 Anthropic API ,同时仍然访问 Zen 的其他模型。
可以使用自己的 OpenAI 或 Anthropic API 密钥,同时继续使用 Zen 的其他模型。
当您使用自己的金密钥时,令牌将由强大的直接设备组成,而不是由 Zen。
使用自己的 API 密钥时Tokens 会直接由对应提供商计费,而不是由 Zen 计费
例如,的组织可能已经有 OpenAI 或 Anthropic 的金?
使用它而不是 Zen 提供的。
例如,的组织可能已经有 OpenAI 或 Anthropic 的 API 密钥,
希望优先使用它们,而不是 Zen 提供的密钥
---
## 去寻找
## 为什么使用 Zen
我们建立OpenCode Zen是为了
我们构建 OpenCode Zen 是为了:
1. **基准**编码代理的最佳models/providers。
2. 可以使用**最高質量**選項,而不是降低效能或轉向更便宜的提供商。
3. 透過按成本價銷售來傳遞任何**價格下跌**;所以唯一的加價就是支付我們的加工費
4. 通过允许您将其与任何其他编码代理一起使用**无锁定**。并且始终允许您将任何其他成功与 opencode 一起使用。
1. **基准测试**最适合编码代理的 models/providers。
2. 可以优先使用 **高质量** 选项,而不是被迫降级性能或改用更便宜的提供商。
3. 通过按成本价计费传递任何**降价收益**,额外费用仅为处理费
4. 通过可与其他编码代理一起使用实现 **无锁定**,你也始终可以把其他提供商与 opencode 组合使用。