mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-05 20:27:01 +00:00
docs: improve zh-cn and zh-tw documentation translations (#13942)
This commit is contained in:
@@ -3,15 +3,15 @@ title: 工具
|
||||
description: 管理 LLM 可以使用的工具。
|
||||
---
|
||||
|
||||
工具允許 LLM 在您的程式碼庫中執行操作。 opencode 附帶了一組內建工具,但您可以使用 [自定義工具](/docs/custom-tools) 或 [MCP 伺服器](/docs/mcp-servers) 對其進行擴展。
|
||||
工具允許 LLM 在您的程式碼庫中執行操作。OpenCode 自帶一組內建工具,您也可以透過[自訂工具](/docs/custom-tools)或 [MCP 伺服器](/docs/mcp-servers)來擴充它。
|
||||
|
||||
預設情況下,所有工具都是**啟用**並且不需要執行權限。您可以透過 [權限](/docs/permissions) 控制工具行為。
|
||||
預設情況下,所有工具都是**啟用**的,且無需權限即可執行。您可以透過[權限](/docs/permissions)來控制工具的行為。
|
||||
|
||||
---
|
||||
|
||||
## 配置
|
||||
## 設定
|
||||
|
||||
使用 `permission` 欄位控制工具行為。您可以允許、拒絕或要求批准每個工具。
|
||||
使用 `permission` 欄位來控制工具行為。您可以對每個工具設定允許、拒絕或需要審批。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -24,7 +24,7 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
您還可以使用通配符同時控制多個工具。例如,要求 MCP 伺服器批准所有工具:
|
||||
您還可以使用萬用字元同時控制多個工具。例如,要求某個 MCP 伺服器的所有工具都需要審批:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -35,13 +35,13 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
[了解更多](/docs/permissions) 關於配置權限。
|
||||
[了解更多](/docs/permissions)關於設定權限的內容。
|
||||
|
||||
---
|
||||
|
||||
## 內建
|
||||
## 內建工具
|
||||
|
||||
以下是 opencode 中可用的所有內建工具。
|
||||
以下是 OpenCode 中所有可用的內建工具。
|
||||
|
||||
---
|
||||
|
||||
@@ -58,13 +58,13 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
該工具允許 LLM 執行 `npm install`、`git status` 等終端機指令或任何其他 shell 指令。
|
||||
該工具允許 LLM 執行終端機指令,例如 `npm install`、`git status` 或其他任何 shell 指令。
|
||||
|
||||
---
|
||||
|
||||
### edit
|
||||
|
||||
使用精確的字串替換修改現有檔案。
|
||||
透過精確的字串替換來修改現有檔案。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -75,7 +75,7 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
該工具透過替換精確的文字匹配來對檔案執行精確編輯。這是 LLM 修改程式碼的主要方式。
|
||||
該工具透過替換精確匹配的文字來對檔案進行編輯。這是 LLM 修改程式碼的主要方式。
|
||||
|
||||
---
|
||||
|
||||
@@ -92,17 +92,17 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
使用它允許 LLM 建立新檔案。如果現有檔案已經存在,它將覆蓋它們。
|
||||
使用此工具允許 LLM 建立新檔案。如果檔案已存在,則會覆蓋現有檔案。
|
||||
|
||||
:::note
|
||||
`write` 工具由 `edit` 權限控制,該權限涵蓋所有檔案修改(`edit`、`write`、`patch`、`multiedit`)。
|
||||
`write` 工具由 `edit` 權限控制,該權限涵蓋所有檔案修改操作(`edit`、`write`、`patch`、`multiedit`)。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### read
|
||||
|
||||
從程式碼庫中讀取檔案內容。
|
||||
讀取程式碼庫中的檔案內容。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -113,7 +113,7 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
該工具讀取檔案並返回其內容。它支援讀取大檔案的特定行範圍。
|
||||
該工具讀取檔案並回傳其內容。它支援對大檔案讀取指定行範圍。
|
||||
|
||||
---
|
||||
|
||||
@@ -130,13 +130,13 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
在您的程式碼庫中快速進行內容搜尋。支援完整的正規表示式語法和檔案模式過濾。
|
||||
在程式碼庫中快速搜尋內容。支援完整的正規表示式語法和檔案模式過濾。
|
||||
|
||||
---
|
||||
|
||||
### glob
|
||||
|
||||
透過模式匹配尋找檔案。
|
||||
透過模式匹配查找檔案。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -147,13 +147,13 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
使用 `**/*.js` 或 `src/**/*.ts` 等全域模式搜尋檔案。返回按修改時間排序的匹配檔案路徑。
|
||||
使用 `**/*.js` 或 `src/**/*.ts` 等 glob 模式搜尋檔案。回傳按修改時間排序的匹配檔案路徑。
|
||||
|
||||
---
|
||||
|
||||
### list
|
||||
|
||||
列出給定路徑中的檔案和目錄。
|
||||
列出指定路徑下的檔案和目錄。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -164,16 +164,16 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
該工具列出目錄內容。它接受全域模式來過濾結果。
|
||||
該工具用於列出目錄內容。它接受 glob 模式來過濾結果。
|
||||
|
||||
---
|
||||
|
||||
### lsp(實驗性)
|
||||
|
||||
與您配置的 LSP 伺服器互動,以獲得程式碼智慧功能,例如定義、引用、游標懸停資訊和呼叫階層。
|
||||
與已設定的 LSP 伺服器互動,取得程式碼智慧功能,如定義跳轉、參考查找、懸停資訊和呼叫階層結構。
|
||||
|
||||
:::note
|
||||
該工具僅在 `OPENCODE_EXPERIMENTAL_LSP_TOOL=true`(或 `OPENCODE_EXPERIMENTAL=true`)時可用。
|
||||
該工具僅在設定 `OPENCODE_EXPERIMENTAL_LSP_TOOL=true`(或 `OPENCODE_EXPERIMENTAL=true`)時可用。
|
||||
:::
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
@@ -187,13 +187,13 @@ description: 管理 LLM 可以使用的工具。
|
||||
|
||||
支援的操作包括 `goToDefinition`、`findReferences`、`hover`、`documentSymbol`、`workspaceSymbol`、`goToImplementation`、`prepareCallHierarchy`、`incomingCalls` 和 `outgoingCalls`。
|
||||
|
||||
要配置哪些 LSP 伺服器可用於您的專案,請參閱 [LSP 伺服器](/docs/lsp)。
|
||||
要設定專案可用的 LSP 伺服器,請參閱 [LSP 伺服器](/docs/lsp)。
|
||||
|
||||
---
|
||||
|
||||
### patch
|
||||
|
||||
對檔案套用 Patch。
|
||||
對檔案套用補丁。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -204,17 +204,17 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
該工具將 Patch 檔案套用到您的程式碼庫。對於套用來自各種來源的差異和 Patch 很有用。
|
||||
該工具將補丁檔案套用到您的程式碼庫中。適用於套用來自各種來源的 diff 和補丁。
|
||||
|
||||
:::note
|
||||
`patch` 工具由 `edit` 權限控制,該權限涵蓋所有檔案修改(`edit`、`write`、`patch`、`multiedit`)。
|
||||
`patch` 工具由 `edit` 權限控制,該權限涵蓋所有檔案修改操作(`edit`、`write`、`patch`、`multiedit`)。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### skill
|
||||
|
||||
載入 [技能](/docs/skills)(`SKILL.md` 檔案)並在對話中返回其內容。
|
||||
載入一個[技能](/docs/skills)(即 `SKILL.md` 檔案)並在對話中回傳其內容。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -229,7 +229,7 @@ description: 管理 LLM 可以使用的工具。
|
||||
|
||||
### todowrite
|
||||
|
||||
在編碼工作階段期間管理待辦事項清單。
|
||||
在編碼工作階段中管理待辦事項清單。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -240,17 +240,17 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
建立和更新任務列表以追蹤複雜操作期間的進度。LLM 使用它來組織多步驟任務。
|
||||
建立和更新任務清單以追蹤複雜操作的進度。LLM 使用此工具來組織多步驟任務。
|
||||
|
||||
:::note
|
||||
預設情況下,子代理禁用此工具,但您可以手動啟用它。 [了解更多](/docs/agents/#permissions)
|
||||
該工具預設對子代理停用,但您可以手動啟用。[了解更多](/docs/agents/#permissions)
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### todoread
|
||||
|
||||
閱讀現有的待辦事項清單。
|
||||
讀取現有的待辦事項清單。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -261,17 +261,17 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
讀取當前待辦事項清單狀態。LLM 用來追蹤哪些任務待處理或已完成。
|
||||
讀取當前待辦事項清單的狀態。LLM 使用此工具來追蹤哪些任務待處理、哪些已完成。
|
||||
|
||||
:::note
|
||||
預設情況下,子代理禁用此工具,但您可以手動啟用它。 [了解更多](/docs/agents/#permissions)
|
||||
該工具預設對子代理停用,但您可以手動啟用。[了解更多](/docs/agents/#permissions)
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### webfetch
|
||||
|
||||
獲取網頁內容。
|
||||
擷取網頁內容。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -282,7 +282,7 @@ description: 管理 LLM 可以使用的工具。
|
||||
}
|
||||
```
|
||||
|
||||
允許 LLM 獲取和閱讀網頁。對於尋找文件或研究線上資源很有用。
|
||||
允許 LLM 擷取並讀取網頁內容。適用於查閱文件或研究線上資源。
|
||||
|
||||
---
|
||||
|
||||
@@ -291,9 +291,9 @@ description: 管理 LLM 可以使用的工具。
|
||||
在網路上搜尋資訊。
|
||||
|
||||
:::note
|
||||
僅當使用 opencode 供應商或 `OPENCODE_ENABLE_EXA` 環境變數設定為任何真值(例如 `true` 或 `1`)時,此工具才可用。
|
||||
該工具僅在使用 OpenCode 供應商時,或當 `OPENCODE_ENABLE_EXA` 環境變數設定為任意真值(例如 `true` 或 `1`)時可用。
|
||||
|
||||
要在啟動 opencode 時啟用:
|
||||
在啟動 OpenCode 時啟用:
|
||||
|
||||
```bash
|
||||
OPENCODE_ENABLE_EXA=1 opencode
|
||||
@@ -310,19 +310,19 @@ OPENCODE_ENABLE_EXA=1 opencode
|
||||
}
|
||||
```
|
||||
|
||||
使用 Exa AI 執行網路搜尋以線上尋找相關資訊。對於研究主題、尋找時事或收集超出訓練數據截止範圍的資訊很有用。
|
||||
使用 Exa AI 進行網路搜尋以查找相關資訊。適用於研究主題、了解時事動態或取得超出訓練資料截止日期的資訊。
|
||||
|
||||
不需要 API 金鑰 - 該工具無需身分驗證即可直接連接到 Exa AI 的託管 MCP 服務。
|
||||
無需 API 金鑰——該工具無需身分驗證即可直接連接到 Exa AI 的託管 MCP 服務。
|
||||
|
||||
:::tip
|
||||
當您需要尋找資訊(發現)時,請使用 `websearch`;當您需要從特定 URL 檢索內容(檢索)時,請使用 `webfetch`。
|
||||
當您需要查找資訊(發現)時使用 `websearch`,當您需要從特定 URL 擷取內容(檢索)時使用 `webfetch`。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### question
|
||||
|
||||
在執行過程中詢問使用者問題。
|
||||
在執行過程中向使用者提問。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -333,42 +333,42 @@ OPENCODE_ENABLE_EXA=1 opencode
|
||||
}
|
||||
```
|
||||
|
||||
該工具允許 LLM 在任務期間詢問使用者問題。它適用於:
|
||||
該工具允許 LLM 在執行任務期間向使用者提問。適用於以下場景:
|
||||
|
||||
- 收集使用者偏好或要求
|
||||
- 澄清不明確的指令
|
||||
- 就實作選擇做出決策
|
||||
- 提供選擇方向
|
||||
- 收集使用者偏好或需求
|
||||
- 釐清模糊的指令
|
||||
- 取得實作方案的決策
|
||||
- 提供方向選擇的選項
|
||||
|
||||
每個問題都包含標題、問題文字和選項列表。使用者可以從提供的選項中進行選擇或輸入自定義答案。當存在多個問題時,使用者可以在提交所有答案之前在這些問題之間導航。
|
||||
每個問題包含標題、問題正文和選項清單。使用者可以從提供的選項中選擇,也可以輸入自訂答案。當有多個問題時,使用者可以在提交所有答案之前在各問題之間切換瀏覽。
|
||||
|
||||
---
|
||||
|
||||
## 自定義工具
|
||||
## 自訂工具
|
||||
|
||||
自定義工具可讓您定義 LLM 可以呼叫的自己的函式。這些是在您的設定檔中定義的並且可以執行任意程式碼。
|
||||
自訂工具允許您定義 LLM 可以呼叫的自訂函式。這些函式在您的設定檔中定義,可以執行任意程式碼。
|
||||
|
||||
[了解更多](/docs/custom-tools) 關於建立自定義工具。
|
||||
[了解更多](/docs/custom-tools)關於建立自訂工具的內容。
|
||||
|
||||
---
|
||||
|
||||
## MCP 伺服器
|
||||
|
||||
MCP(模型上下文協定)伺服器允許您整合外部工具和服務。這包括資料庫存取、API 整合和第三方服務。
|
||||
MCP(Model Context Protocol)伺服器允許您整合外部工具和服務,包括資料庫存取、API 整合和第三方服務。
|
||||
|
||||
[了解更多](/docs/mcp-servers) 關於配置 MCP 伺服器。
|
||||
[了解更多](/docs/mcp-servers)關於設定 MCP 伺服器的內容。
|
||||
|
||||
---
|
||||
|
||||
## 內部結構
|
||||
## 內部機制
|
||||
|
||||
在內部,`grep`、`glob` 和 `list` 等工具在底層使用 [ripgrep](https://github.com/BurntSushi/ripgrep)。預設情況下,ripgrep 遵循 `.gitignore` 模式,這意味著 `.gitignore` 中列出的檔案和目錄將從搜尋和列表中排除。
|
||||
在內部,`grep`、`glob` 和 `list` 等工具底層使用 [ripgrep](https://github.com/BurntSushi/ripgrep)。預設情況下,ripgrep 遵循 `.gitignore` 中的模式,這意味著 `.gitignore` 中列出的檔案和目錄將被排除在搜尋和列表結果之外。
|
||||
|
||||
---
|
||||
|
||||
### 忽略模式
|
||||
|
||||
要包含通常會被忽略的檔案,請在專案根目錄中建立一個 `.ignore` 檔案。該檔案可以明確允許某些路徑。
|
||||
要包含通常會被忽略的檔案,請在專案根目錄下建立一個 `.ignore` 檔案。該檔案可以明確允許某些路徑。
|
||||
|
||||
```text title=".ignore"
|
||||
!node_modules/
|
||||
@@ -376,4 +376,4 @@ MCP(模型上下文協定)伺服器允許您整合外部工具和服務。
|
||||
!build/
|
||||
```
|
||||
|
||||
例如,此 `.ignore` 檔案允許 ripgrep 在 `node_modules/`、`dist/` 和 `build/` 目錄中搜尋,即使它們列在 `.gitignore` 中。
|
||||
例如,這個 `.ignore` 檔案允許 ripgrep 在 `node_modules/`、`dist/` 和 `build/` 目錄中進行搜尋,即使它們已在 `.gitignore` 中列出。
|
||||
|
||||
Reference in New Issue
Block a user