chore: generate

This commit is contained in:
opencode-agent[bot]
2026-02-09 17:35:30 +00:00
parent dc53086c1e
commit d578f80f00
222 changed files with 6797 additions and 6590 deletions

View File

@@ -29,15 +29,15 @@ opencode [project]
#### 旗幟
|旗幟|短|描述 |
| ------------ | ----- | ------------------------------------------ |
| `--continue` | `-c` |繼續上一期 |
| `--session` | `-s` |會話 ID 繼續 |
| `--prompt` | |提示使用|
| `--model` | `-m` |以提供者/模型形式使用的模型 |
| `--agent` | |代理使用|
| `--port` | |監聽端口 |
| `--hostname` | |監聽的主機名 |
| 旗幟 | 短 | 描述 |
| ------------ | ---- | --------------------------- |
| `--continue` | `-c` | 繼續上一期 |
| `--session` | `-s` | 會話 ID 繼續 |
| `--prompt` | | 提示使用 |
| `--model` | `-m` | 以提供者/模型形式使用的模型 |
| `--agent` | | 代理使用 |
| `--port` | | 監聽端口 |
| `--hostname` | | 監聽的主機名 |
---
@@ -77,10 +77,10 @@ opencode attach http://10.20.30.40:4096
#### 旗幟
|旗幟|短|描述 |
| ----------- | ----- | --------------------------------- |
| `--dir` | |啟動 TUI 的工作目錄 |
| `--session` | `-s` |會話 ID 繼續 |
| 旗幟 | 短 | 描述 |
| ----------- | ---- | ------------------- |
| `--dir` | | 啟動 TUI 的工作目錄 |
| `--session` | `-s` | 會話 ID 繼續 |
---
@@ -186,10 +186,10 @@ opencode github run
##### 旗幟
|旗幟|描述 |
| --------- | -------------------------------------- |
| `--event` |用於運行代理的 GitHub 模擬事件 |
| `--token` | GitHub 個人訪問令牌 |
| 旗幟 | 描述 |
| --------- | ------------------------------ |
| `--event` | 用於運行代理的 GitHub 模擬事件 |
| `--token` | GitHub 個人訪問令牌 |
---
@@ -295,10 +295,10 @@ opencode models anthropic
#### 旗幟
|旗幟|描述 |
| ----------- | ------------------------------------------------------------ |
| `--refresh` |從 models.dev | 刷新模型緩存
| `--verbose` |使用更詳細的模型輸出(包括成本等元數據)|
| 旗幟 | 描述 |
| ----------- | ---------------------------------------- | ------------ |
| `--refresh` | 從 models.dev | 刷新模型緩存 |
| `--verbose` | 使用更詳細的模型輸出(包括成本等元數據) |
使用`--refresh`標誌來更新緩存的模型列表。當新模型已添加到提供程序並且您希望在 OpenCode 中查看它們時,這非常有用。
@@ -334,19 +334,19 @@ opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
#### 旗幟
|旗幟|短|描述 |
| ------------ | ----- | ------------------------------------------------------------------ |
| `--command` | |要運行的命令,使用消息作為參數 |
| `--continue` | `-c` |繼續上一期 |
| `--session` | `-s` |會話 ID 繼續 |
| `--share` | |分享會議 |
| `--model` | `-m` |以提供者/模型形式使用的模型 |
| `--agent` | |代理使用|
| `--file` | `-f` |要附加到消息的文件 |
| `--format` | |格式:默認(格式化)或 json原始 JSON 事件)|
| `--title` | |會話標題(如果未提供值,則使用截斷的提示)|
| `--attach` | |連接到正在運行的 opencode 服務器例如http://localhost:4096|
| `--port` | |本地服務器的端口(默認為隨機端口) |
| 旗幟 | 短 | 描述 |
| ------------ | ---- | --------------------------------------------------------------- |
| `--command` | | 要運行的命令,使用消息作為參數 |
| `--continue` | `-c` | 繼續上一期 |
| `--session` | `-s` | 會話 ID 繼續 |
| `--share` | | 分享會議 |
| `--model` | `-m` | 以提供者/模型形式使用的模型 |
| `--agent` | | 代理使用 |
| `--file` | `-f` | 要附加到消息的文件 |
| `--format` | | 格式:默認(格式化)或 json原始 JSON 事件) |
| `--title` | | 會話標題(如果未提供值,則使用截斷的提示) |
| `--attach` | | 連接到正在運行的 opencode 服務器例如http://localhost:4096 |
| `--port` | | 本地服務器的端口(默認為隨機端口) |
---
@@ -362,12 +362,12 @@ opencode serve
#### 旗幟
|旗幟|描述 |
| ------------ | ------------------------------------------ |
| `--port` |監聽端口 |
| `--hostname` |監聽的主機名 |
| `--mdns` |啟用 mDNS 發現 |
| `--cors` |允許 CORS 的其他瀏覽器源 |
| 旗幟 | 描述 |
| ------------ | ------------------------ |
| `--port` | 監聽端口 |
| `--hostname` | 監聽的主機名 |
| `--mdns` | 啟用 mDNS 發現 |
| `--cors` | 允許 CORS 的其他瀏覽器源 |
---
@@ -391,10 +391,10 @@ opencode session list
##### 旗幟
|旗幟|短|描述 |
| ------------- | ----- | ------------------------------------ |
| `--max-count` | `-n` |限制為最近 N 個會話 |
| `--format` | |輸出格式table 或 json(table) |
| 旗幟 | 短 | 描述 |
| ------------- | ---- | ------------------------------ |
| `--max-count` | `-n` | 限制為最近 N 個會話 |
| `--format` | | 輸出格式table 或 json(table) |
---
@@ -408,12 +408,12 @@ opencode stats
#### 旗幟
|旗幟|描述 |
| ----------- | --------------------------------------------------------------------------- |
| `--days` |顯示過去 N 天(所有時間)的統計數據 |
| `--tools` |顯示的工具數量(全部)|
| `--models` |顯示模型使用情況細分(默認隱藏)。傳遞一個數字來顯示前 N |
| `--project` |按項目過濾(所有項目,空字符串:當前項目)|
| 旗幟 | 描述 |
| ----------- | -------------------------------------------------------- |
| `--days` | 顯示過去 N 天(所有時間)的統計數據 |
| `--tools` | 顯示的工具數量(全部) |
| `--models` | 顯示模型使用情況細分(默認隱藏)。傳遞一個數字來顯示前 N |
| `--project` | 按項目過濾(所有項目,空字符串:當前項目) |
---
@@ -458,12 +458,12 @@ opencode web
#### 旗幟
|旗幟|描述 |
| ------------ | ------------------------------------------ |
| `--port` |監聽端口 |
| `--hostname` |監聽的主機名 |
| `--mdns` |啟用 mDNS 發現 |
| `--cors` |允許 CORS 的其他瀏覽器源 |
| 旗幟 | 描述 |
| ------------ | ------------------------ |
| `--port` | 監聽端口 |
| `--hostname` | 監聽的主機名 |
| `--mdns` | 啟用 mDNS 發現 |
| `--cors` | 允許 CORS 的其他瀏覽器源 |
---
@@ -479,11 +479,11 @@ opencode acp
#### 旗幟
|旗幟|描述 |
| ------------ | --------------------- |
| `--cwd` |工作目錄 |
| `--port` |監聽端口 |
| `--hostname` |監聽的主機名 |
| 旗幟 | 描述 |
| ------------ | ------------ |
| `--cwd` | 工作目錄 |
| `--port` | 監聽端口 |
| `--hostname` | 監聽的主機名 |
---
@@ -497,12 +497,12 @@ opencode uninstall
#### 旗幟
|旗幟|短|描述 |
| --------------- | ----- | ------------------------------------------- |
| `--keep-config` | `-c` |保留配置文件|
| `--keep-data` | `-d` |保留會話數據和快照 |
| `--dry-run` | |顯示在不刪除的情況下將刪除的內容 |
| `--force` | `-f` |跳過確認提示 |
| 旗幟 | 短 | 描述 |
| --------------- | ---- | -------------------------------- |
| `--keep-config` | `-c` | 保留配置文件 |
| `--keep-data` | `-d` | 保留會話數據和快照 |
| `--dry-run` | | 顯示在不刪除的情況下將刪除的內容 |
| `--force` | `-f` | 跳過確認提示 |
---
@@ -528,9 +528,9 @@ opencode upgrade v0.1.48
#### 旗幟
|旗幟|短|描述 |
| ---------- | ----- | ----------------------------------------------------------------- |
| `--method` | `-m` |使用的安裝方法捲曲、npm、pnpm、bun、brew |
| 旗幟 | 短 | 描述 |
| ---------- | ---- | ------------------------------------------ |
| `--method` | `-m` | 使用的安裝方法捲曲、npm、pnpm、bun、brew |
---
@@ -538,12 +538,12 @@ opencode upgrade v0.1.48
opencode CLI 採用以下全局標誌。
|旗幟|短|描述 |
| -------------- | ----- | ------------------------------------ |
| `--help` | `-h` |顯示幫助|
| `--version` | `-v` |打印版本號 |
| `--print-logs` | |將日誌打印到 stderr |
| `--log-level` | |日誌級別(調試、信息、警告、錯誤)|
| 旗幟 | 短 | 描述 |
| -------------- | ---- | ---------------------------------- |
| `--help` | `-h` | 顯示幫助 |
| `--version` | `-v` | 打印版本號 |
| `--print-logs` | | 將日誌打印到 stderr |
| `--log-level` | | 日誌級別(調試、信息、警告、錯誤) |
---
@@ -551,32 +551,32 @@ opencode CLI 採用以下全局標誌。
可以使用環境變量配置 OpenCode。
|變量|類型 |描述 |
| ------------------------------------- | ------- | ------------------------------------------------- |
| `OPENCODE_AUTO_SHARE` |布爾 |自動共享會話 |
| `OPENCODE_GIT_BASH_PATH` |字符串| Windows 上 Git Bash 可執行文件的路徑 |
| `OPENCODE_CONFIG` |字符串|配置文件路徑 |
| `OPENCODE_CONFIG_DIR` |字符串|配置目錄的路徑 |
| `OPENCODE_CONFIG_CONTENT` |字符串|內聯 json 配置內容 |
| `OPENCODE_DISABLE_AUTOUPDATE` |布爾 |禁用自動更新檢查 |
| `OPENCODE_DISABLE_PRUNE` |布爾 |禁用舊數據的修剪 |
| `OPENCODE_DISABLE_TERMINAL_TITLE` |布爾 |禁用自動終端標題更新 |
| `OPENCODE_PERMISSION` |字符串|內聯 json 權限配置 |
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` |布爾 |禁用默認插件 |
| `OPENCODE_DISABLE_LSP_DOWNLOAD` |布爾 |禁用自動 LSP 服務器下載 |
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` |布爾 |啟用實驗模型 |
| `OPENCODE_DISABLE_AUTOCOMPACT` |布爾 |禁用自動上下文壓縮 |
| `OPENCODE_DISABLE_CLAUDE_CODE` |布爾 |禁止從`.claude`讀取(提示+技巧)|
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` |布爾 |禁用讀取`~/.claude/CLAUDE.md` |
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` |布爾 |禁用加載`.claude/skills` |
| `OPENCODE_DISABLE_MODELS_FETCH` |布爾 |禁用從遠程源獲取模型 |
| `OPENCODE_FAKE_VCS` |字符串|用於測試目的的假 VCS 提供商 |
| `OPENCODE_DISABLE_FILETIME_CHECK` |布爾 |禁用文件時間檢查以進行優化 |
| `OPENCODE_CLIENT` |字符串|客戶端標識符(默認為`cli`|
| `OPENCODE_ENABLE_EXA` |布爾 |啟用 Exa 網絡搜索工具 |
| `OPENCODE_SERVER_PASSWORD` |字符串|為 `serve`/`web` 啟用基本身份驗證 |
| `OPENCODE_SERVER_USERNAME` |字符串|覆蓋基本身份驗證用戶名(默認`opencode`|
| `OPENCODE_MODELS_URL` |字符串|用於獲取模型配置的自定義 URL |
| 變量 | 類型 | 描述 |
| ------------------------------------- | ------ | ---------------------------------------- |
| `OPENCODE_AUTO_SHARE` | 布爾 | 自動共享會話 |
| `OPENCODE_GIT_BASH_PATH` | 字符串 | Windows 上 Git Bash 可執行文件的路徑 |
| `OPENCODE_CONFIG` | 字符串 | 配置文件路徑 |
| `OPENCODE_CONFIG_DIR` | 字符串 | 配置目錄的路徑 |
| `OPENCODE_CONFIG_CONTENT` | 字符串 | 內聯 json 配置內容 |
| `OPENCODE_DISABLE_AUTOUPDATE` | 布爾 | 禁用自動更新檢查 |
| `OPENCODE_DISABLE_PRUNE` | 布爾 | 禁用舊數據的修剪 |
| `OPENCODE_DISABLE_TERMINAL_TITLE` | 布爾 | 禁用自動終端標題更新 |
| `OPENCODE_PERMISSION` | 字符串 | 內聯 json 權限配置 |
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | 布爾 | 禁用默認插件 |
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | 布爾 | 禁用自動 LSP 服務器下載 |
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | 布爾 | 啟用實驗模型 |
| `OPENCODE_DISABLE_AUTOCOMPACT` | 布爾 | 禁用自動上下文壓縮 |
| `OPENCODE_DISABLE_CLAUDE_CODE` | 布爾 | 禁止從`.claude`讀取(提示+技巧) |
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | 布爾 | 禁用讀取`~/.claude/CLAUDE.md` |
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | 布爾 | 禁用加載`.claude/skills` |
| `OPENCODE_DISABLE_MODELS_FETCH` | 布爾 | 禁用從遠程源獲取模型 |
| `OPENCODE_FAKE_VCS` | 字符串 | 用於測試目的的假 VCS 提供商 |
| `OPENCODE_DISABLE_FILETIME_CHECK` | 布爾 | 禁用文件時間檢查以進行優化 |
| `OPENCODE_CLIENT` | 字符串 | 客戶端標識符(默認為`cli` |
| `OPENCODE_ENABLE_EXA` | 布爾 | 啟用 Exa 網絡搜索工具 |
| `OPENCODE_SERVER_PASSWORD` | 字符串 | 為 `serve`/`web` 啟用基本身份驗證 |
| `OPENCODE_SERVER_USERNAME` | 字符串 | 覆蓋基本身份驗證用戶名(默認`opencode` |
| `OPENCODE_MODELS_URL` | 字符串 | 用於獲取模型配置的自定義 URL |
---
@@ -584,18 +584,18 @@ opencode CLI 採用以下全局標誌。
這些環境變量啟用可能會更改或刪除的實驗性功能。
|變量|類型 |描述 |
| ----------------------------------------------- | ------- | --------------------------------------- |
| `OPENCODE_EXPERIMENTAL` |布爾 |啟用所有實驗性功能 |
| `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_FILEWATCHER` |布爾 |為整個目錄啟用文件觀察器 |
| `OPENCODE_EXPERIMENTAL_OXFMT` |布爾 |啟用 oxfmt 格式化程序 |
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` |布爾 |啟用實驗性 LSP 工具 |
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` |布爾 |禁用文件觀察器 |
| `OPENCODE_EXPERIMENTAL_EXA` |布爾 |啟用實驗性 Exa 功能 |
| `OPENCODE_EXPERIMENTAL_LSP_TY` |布爾 |啟用實驗性 LSP 類型檢查 |
| `OPENCODE_EXPERIMENTAL_MARKDOWN` |布爾 |啟用實驗性 Markdown 功能 |
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` |布爾 |啟用計劃模式 |
| 變量 | 類型 | 描述 |
| ----------------------------------------------- | ---- | ----------------------------------- |
| `OPENCODE_EXPERIMENTAL` | 布爾 | 啟用所有實驗性功能 |
| `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_FILEWATCHER` | 布爾 | 為整個目錄啟用文件觀察器 |
| `OPENCODE_EXPERIMENTAL_OXFMT` | 布爾 | 啟用 oxfmt 格式化程序 |
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | 布爾 | 啟用實驗性 LSP 工具 |
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | 布爾 | 禁用文件觀察器 |
| `OPENCODE_EXPERIMENTAL_EXA` | 布爾 | 啟用實驗性 Exa 功能 |
| `OPENCODE_EXPERIMENTAL_LSP_TY` | 布爾 | 啟用實驗性 LSP 類型檢查 |
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | 布爾 | 啟用實驗性 Markdown 功能 |
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | 布爾 | 啟用計劃模式 |

View File

@@ -15,62 +15,62 @@ description: 使用 OpenCode 構建的項目和集成。
## 插件
|名稱 |描述 |
| --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| [Opencode-Daytona](https://github.com/jamesmurdza/daytona/blob/main/guides/typescript/opencode/README.md) |使用 git 同步和實時預覽在隔離的 Daytona 沙箱中自動運行 OpenCode 會話 |
| [opencode-helicone-會話](https://github.com/H2Shami/opencode-helicone-session) |自動注入 Helicone 會話標頭以進行請求分組 |
| [打開代碼類型注入](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) |使用 Antigravity 的免費模型代替 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-pty](https://github.com/shekohex/opencode-pty.git) |使 AI 代理能夠在 PTY 中運行後台進程,並向其發送交互式輸入。 |
| [opencode-shell-策略](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) |清理法學碩士生成的降價表 |
| [開放代碼變形快速應用](https://github.com/JRedeker/opencode-morph-fast-apply) |使用 Morph Fast Apply API 和惰性編輯標記將代碼編輯速度提高 10 倍 |
| [哦我的開放代碼](https://github.com/code-yeongyu/oh-my-opencode) |後台代理、預構建的 LSP/AST/MCP 工具、精選代理、兼容 Claude 代碼 |
| [開放代碼通知器](https://github.com/panta82/opencode-notificator) | OpenCode 會話的桌面通知和聲音警報 |
| [開放代碼通知程序](https://github.com/mohak34/opencode-notifier) |針對權限、完成和錯誤事件的桌面通知和聲音警報 |
| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) |基於 OpenCode 上下文的 AI 支持的自動 Zellij 會話命名 |
| [開放代碼熟練](https://github.com/zenobi-us/opencode-skillful) |允許 OpenCode 代理通過技能發現和注入按需延遲加載提示 |
| [開放代碼超級內存](https://github.com/supermemoryai/opencode-supermemory) |使用超級內存跨會話持久內存 |
| [@Plannotator/OpenCode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) |具有視覺註釋和私人/離線共享的交互式計劃審查|
| [@openspoon/子任務2](https://github.com/spoons-and-mirrors/subtask2) |將開放代碼/命令擴展為具有精細流程控制的強大編排系統 |
| [開放代碼調度程序](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 的本機操作系統通知 了解任務何時完成 |
| [開放代碼工作區](https://github.com/kdcokenny/opencode-workspace) |捆綁的多代理編排工具 16 個組件,一次安裝 |
| [開放代碼工作樹](https://github.com/kdcokenny/opencode-worktree) | OpenCode 的零摩擦 git 工作樹 |
| 名稱 | 描述 |
| --------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- |
| [Opencode-Daytona](https://github.com/jamesmurdza/daytona/blob/main/guides/typescript/opencode/README.md) | 使用 git 同步和實時預覽在隔離的 Daytona 沙箱中自動運行 OpenCode 會話 |
| [opencode-helicone-會話](https://github.com/H2Shami/opencode-helicone-session) | 自動注入 Helicone 會話標頭以進行請求分組 |
| [打開代碼類型注入](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) | 使用 Antigravity 的免費模型代替 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-pty](https://github.com/shekohex/opencode-pty.git) | 使 AI 代理能夠在 PTY 中運行後台進程,並向其發送交互式輸入。 |
| [opencode-shell-策略](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) | 清理法學碩士生成的降價表 |
| [開放代碼變形快速應用](https://github.com/JRedeker/opencode-morph-fast-apply) | 使用 Morph Fast Apply API 和惰性編輯標記將代碼編輯速度提高 10 倍 |
| [哦我的開放代碼](https://github.com/code-yeongyu/oh-my-opencode) | 後台代理、預構建的 LSP/AST/MCP 工具、精選代理、兼容 Claude 代碼 |
| [開放代碼通知器](https://github.com/panta82/opencode-notificator) | OpenCode 會話的桌面通知和聲音警報 |
| [開放代碼通知程序](https://github.com/mohak34/opencode-notifier) | 針對權限、完成和錯誤事件的桌面通知和聲音警報 |
| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) | 基於 OpenCode 上下文的 AI 支持的自動 Zellij 會話命名 |
| [開放代碼熟練](https://github.com/zenobi-us/opencode-skillful) | 允許 OpenCode 代理通過技能發現和注入按需延遲加載提示 |
| [開放代碼超級內存](https://github.com/supermemoryai/opencode-supermemory) | 使用超級內存跨會話持久內存 |
| [@Plannotator/OpenCode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) | 具有視覺註釋和私人/離線共享的交互式計劃審查 |
| [@openspoon/子任務2](https://github.com/spoons-and-mirrors/subtask2) | 將開放代碼/命令擴展為具有精細流程控制的強大編排系統 |
| [開放代碼調度程序](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 的本機操作系統通知 了解任務何時完成 |
| [開放代碼工作區](https://github.com/kdcokenny/opencode-workspace) | 捆綁的多代理編排工具 16 個組件,一次安裝 |
| [開放代碼工作樹](https://github.com/kdcokenny/opencode-worktree) | OpenCode 的零摩擦 git 工作樹 |
---
## 專案
|名稱 |描述 |
| ------------------------------------------------------------------------------------------ | ---------------------------------------------------------------- |
| [木牧](https://github.com/remorses/kimaki) |用於控制 OpenCode 會話的 Discord 機器人,基於 SDK 構建 |
| [開放代碼.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 插件的模板 |
| [開放代碼.nvim](https://github.com/sudo-tee/opencode.nvim) | Neovim opencode 前端 - 基於終端的 AI 編碼代理 |
| 名稱 | 描述 |
| ------------------------------------------------------------------------------------------ | --------------------------------------------------------------- |
| [木牧](https://github.com/remorses/kimaki) | 用於控制 OpenCode 會話的 Discord 機器人,基於 SDK 構建 |
| [開放代碼.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 插件的模板 |
| [開放代碼.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、移動和遠程客戶端應用程序 |
| [開放室](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、移動和遠程客戶端應用程序 |
---
## 代理商
|名稱 |描述 |
| ----------------------------------------------------------------- | ------------------------------------------------------------ |
| [代理](https://github.com/Cluster444/agentic) |用於結構化開發的模塊化人工智能代理和命令 |
| [開放代碼代理](https://github.com/darrenhinde/opencode-agents) |用於增強工作流程的配置、提示、代理和插件 |
| 名稱 | 描述 |
| -------------------------------------------------------------- | ---------------------------------------- |
| [代理](https://github.com/Cluster444/agentic) | 用於結構化開發的模塊化人工智能代理和命令 |
| [開放代碼代理](https://github.com/darrenhinde/opencode-agents) | 用於增強工作流程的配置、提示、代理和插件 |

View File

@@ -11,32 +11,32 @@ description: OpenCode 使用特定於語言的格式化程序。
OpenCode 附帶了多個適用於流行語言和框架的內置格式化程序。下面是格式化程序、支持的文件擴展名以及所需的命令或配置選項的列表。
|格式化程序|擴展 |要求|
| -------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
|政府| .go | `gofmt` 命令可用 |
|混合| .ex、.exs、.eex、.heex、.leex、.neex、.sface | `mix` 命令可用 |
|更漂亮 | .js、.jsx、.ts、.tsx、.html、.css、.md、.json、.yaml 和 [更多的](https://prettier.io/docs/en/index.html) | `package.json` | `prettier` 依賴關係
|生物群系 | .js、.jsx、.ts、.tsx、.html、.css、.md、.json、.yaml 和 [更多的](https://biomejs.dev/) | `biome.json(c)` 配置文件 |
|之字形 | .zig、.zon | `zig` 命令可用 |
| clang 格式 | .c、.cpp、.h、.hpp、.ino 和 [更多的](https://clang.llvm.org/docs/ClangFormat.html) | `.clang-format` 配置文件 |
|克特林特 | .kt、.kts | `ktlint` 命令可用 |
|領子 | .py, .pyi | `ruff` 命令可通過配置 |
|生鏽 | .rs | `rustfmt` 命令可用 |
|貨物運輸 | .rs | `cargo fmt` 命令可用 |
|紫外線| .py, .pyi | `uv` 命令可用 |
|魯博科普 | .rb、.rake、.gemspec、.ru | `rubocop` 命令可用 |
|標準rb | .rb、.rake、.gemspec、.ru | `standardrb` 命令可用 |
| html美化器 | .erb、.html.erb | `htmlbeautifier` 命令可用 |
|空氣| .R | `air` 命令可用 |
|飛鏢 | .dart | `dart` 命令可用 |
| ocaml 格式 | .ml、.mli | `ocamlformat` 可用命令和 `.ocamlformat` 配置文件 |
|地形 | .tf、.tfvars | `terraform` 命令可用 |
|微光| .gleam | `gleam` 命令可用 |
|尼克斯夫MTT | .nix | `nixfmt` 命令可用 |
| sfmt| .sh、.bash | `shfmt` 命令可用 |
|品脫 | .php | `composer.json` | `laravel/pint` 依賴關係
| oxfmt實驗| .js、.jsx、.ts、.tsx | `package.json` 和[實驗環境變量標誌](/docs/cli/#experimental) | `oxfmt` 依賴關係
|奧爾莫魯 | .hs | `ormolu` 命令可用 |
| 格式化程序 | 擴展 | 要求 |
| ------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | ----------------------- |
| 政府 | .go | `gofmt` 命令可用 |
| 混合 | .ex、.exs、.eex、.heex、.leex、.neex、.sface | `mix` 命令可用 |
| 更漂亮 | .js、.jsx、.ts、.tsx、.html、.css、.md、.json、.yaml 和 [更多的](https://prettier.io/docs/en/index.html) | `package.json` | `prettier` 依賴關係 |
| 生物群系 | .js、.jsx、.ts、.tsx、.html、.css、.md、.json、.yaml 和 [更多的](https://biomejs.dev/) | `biome.json(c)` 配置文件 |
| 之字形 | .zig、.zon | `zig` 命令可用 |
| clang 格式 | .c、.cpp、.h、.hpp、.ino 和 [更多的](https://clang.llvm.org/docs/ClangFormat.html) | `.clang-format` 配置文件 |
| 克特林特 | .kt、.kts | `ktlint` 命令可用 |
| 領子 | .py, .pyi | `ruff` 命令可通過配置 |
| 生鏽 | .rs | `rustfmt` 命令可用 |
| 貨物運輸 | .rs | `cargo fmt` 命令可用 |
| 紫外線 | .py, .pyi | `uv` 命令可用 |
| 魯博科普 | .rb、.rake、.gemspec、.ru | `rubocop` 命令可用 |
| 標準rb | .rb、.rake、.gemspec、.ru | `standardrb` 命令可用 |
| html美化器 | .erb、.html.erb | `htmlbeautifier` 命令可用 |
| 空氣 | .R | `air` 命令可用 |
| 飛鏢 | .dart | `dart` 命令可用 |
| ocaml 格式 | .ml、.mli | `ocamlformat` 可用命令和 `.ocamlformat` 配置文件 |
| 地形 | .tf、.tfvars | `terraform` 命令可用 |
| 微光 | .gleam | `gleam` 命令可用 |
| 尼克斯夫MTT | .nix | `nixfmt` 命令可用 |
| sfmt | .sh、.bash | `shfmt` 命令可用 |
| 品脫 | .php | `composer.json` | `laravel/pint` 依賴關係 |
| oxfmt實驗 | .js、.jsx、.ts、.tsx | `package.json` 和[實驗環境變量標誌](/docs/cli/#experimental) | `oxfmt` 依賴關係 |
| 奧爾莫魯 | .hs | `ormolu` 命令可用 |
因此,如果您的項目的`package.json`中有`prettier`OpenCode將自動使用它。
@@ -67,12 +67,12 @@ OpenCode 附帶了多個適用於流行語言和框架的內置格式化程序
每個格式化程序配置支持以下內容:
|物業 |類型 |描述 |
| ------------- | -------- | ------------------------------------------------------- |
| `disabled` |布爾 |將其設置為 `true` 以禁用格式化程序 |
| `command` |字符串[] |格式化運行的命令 |
| `environment` |對象|運行格式化程序時要設置的環境變量 |
| `extensions` |字符串[] |此格式化程序應處理的文件擴展名 |
| 物業 | 類型 | 描述 |
| ------------- | -------- | ---------------------------------- |
| `disabled` | 布爾 | 將其設置為 `true` 以禁用格式化程序 |
| `command` | 字符串[] | 格式化運行的命令 |
| `environment` | 對象 | 運行格式化程序時要設置的環境變量 |
| `extensions` | 字符串[] | 此格式化程序應處理的文件擴展名 |
讓我們看一些例子。

View File

@@ -105,14 +105,14 @@ opencode github install
OpenCode 可以由以下 GitHub 事件觸發:
|事件類型 |觸發者 |詳情 |
| ----------------------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `issue_comment` |對問題或 PR 發表評論 | Mention `/opencode` or `/oc` in your comment. OpenCode 讀取上下文並可以創建分支、打開 PR 或回复。 |
| `pull_request_review_comment` |對 PR 中的特定代碼行進行評論 |在檢查代碼時提及`/opencode` 或`/oc`。 OpenCode receives file path, line numbers, and diff context. |
| `issues` |問題已打開或已編輯 |創建或修改問題時自動觸發 OpenCode。需要 `prompt` 輸入。 |
| `pull_request` | PR 已開啟或已更新 | Automatically trigger OpenCode when PRs are opened, synchronized, or reopened.對於自動評論很有用。 |
| `schedule` |基於 Cron 的計劃 |按計劃運行 OpenCode。需要 `prompt` 輸入。輸出進入日誌和 PR沒有可評論的問題。 |
| `workflow_dispatch` |從 GitHub UI 手動觸發 |通過“操作”選項卡按需觸發 OpenCode。需要 `prompt` 輸入。輸出進入日誌和 PR。 |
| 事件類型 | 觸發者 | 詳情 |
| ----------------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------- |
| `issue_comment` | 對問題或 PR 發表評論 | Mention `/opencode` or `/oc` in your comment. OpenCode 讀取上下文並可以創建分支、打開 PR 或回复。 |
| `pull_request_review_comment` | 對 PR 中的特定代碼行進行評論 | 在檢查代碼時提及`/opencode` 或`/oc`。 OpenCode receives file path, line numbers, and diff context. |
| `issues` | 問題已打開或已編輯 | 創建或修改問題時自動觸發 OpenCode。需要 `prompt` 輸入。 |
| `pull_request` | PR 已開啟或已更新 | Automatically trigger OpenCode when PRs are opened, synchronized, or reopened.對於自動評論很有用。 |
| `schedule` | 基於 Cron 的計劃 | 按計劃運行 OpenCode。需要 `prompt` 輸入。輸出進入日誌和 PR沒有可評論的問題 |
| `workflow_dispatch` | 從 GitHub UI 手動觸發 | 通過“操作”選項卡按需觸發 OpenCode。需要 `prompt` 輸入。輸出進入日誌和 PR。 |
### 時間表示例

View File

@@ -134,21 +134,21 @@ OpenCode 對大多數按鍵綁定使用 `leader` 鍵。這可以避免終端中
OpenCode 桌面應用程序提示輸入支持常見的 Readline/Emacs 風格的文本編輯快捷方式。這些是內置的,目前無法通過`opencode.json`進行配置。
|快捷方式 |行動|
| -------- | ---------------------------------------- |
| `ctrl+a` |移至當前行開頭 |
| `ctrl+e` |移至當前行尾 |
| `ctrl+b` |將光標向後移動一個字符 |
| `ctrl+f` |將光標向前移動一個字符 |
| `alt+b` |將光標向後移動一個字 |
| `alt+f` |將光標向前移動一個字 |
| `ctrl+d` |刪除光標下的字符|
| `ctrl+k` |殺到行尾 |
| `ctrl+u` |殺至行首 |
| `ctrl+w` |刪除前一個單詞 |
| `alt+d` |殺死下一個詞 |
| `ctrl+t` |轉置字符 |
| `ctrl+g` |取消彈出窗口/中止運行響應 |
| 快捷方式 | 行動 |
| -------- | ------------------------- |
| `ctrl+a` | 移至當前行開頭 |
| `ctrl+e` | 移至當前行尾 |
| `ctrl+b` | 將光標向後移動一個字符 |
| `ctrl+f` | 將光標向前移動一個字符 |
| `alt+b` | 將光標向後移動一個字 |
| `alt+f` | 將光標向前移動一個字 |
| `ctrl+d` | 刪除光標下的字符 |
| `ctrl+k` | 殺到行尾 |
| `ctrl+u` | 殺至行首 |
| `ctrl+w` | 刪除前一個單詞 |
| `alt+d` | 殺死下一個詞 |
| `ctrl+t` | 轉置字符 |
| `ctrl+g` | 取消彈出窗口/中止運行響應 |
---

View File

@@ -11,40 +11,40 @@ OpenCode 與您的語言服務器協議 (LSP) 集成,以幫助 LLM 與您的
OpenCode 附帶了多種適用於流行語言的內置 LSP 服務器:
| LSP服務器|擴展 |要求|
| ------------------ | ------------------------------------------------------------------- | ------------------------------------------------------------ |
|天文 | .astro | Astro 項目自動安裝 |
| bash | .sh、.bash、.zsh、.ksh |自動安裝 bash-語言-服務器 |
|叮叮 | .c、.cpp、.cc、.cxx、.c++、.h、.hpp、.hh、.hxx、.h++ |自動安裝 C/C++ 項目 |
|夏普| .cs | `.NET SDK` 已安裝 |
| Clojure-lsp | 語言.clj、.cljs、.cljc、.edn | `clojure-lsp` 命令可用 |
|飛鏢 | .dart | `dart` 命令可用 |
|給定 | .ts、.tsx、.js、.jsx、.mjs | `deno` 命令可用(自動檢測 deno.json/deno.jsonc|
|長生不老藥-LS | .ex、.exs | `elixir` 命令可用 |
|埃斯林特 | .ts、.tsx、.js、.jsx、.mjs、.cjs、.mts、.cts、.vue | `eslint` 項目中的依賴項 |
|銳利 | .fs、.fsi、.fsx、.fsscript | `.NET SDK` 已安裝 |
|微光| .gleam | `gleam` 命令可用 |
|伙計們| .go | `go` 命令可用 |
| HLS | .hs、.lhs | `haskell-language-server-wrapper` 命令可用 |
| jdtls| .java | `Java SDK (version 21+)` 已安裝 |
| kotlin-ls | .kt、.kts | Kotlin 項目的自動安裝 |
| lua-ls | .lua |自動安裝 Lua 項目 |
|尼克斯 | .nix | `nixd` 命令可用 |
| ocaml-lsp | .ml、.mli | `ocamllsp` 命令可用 |
|奧克斯林特 | .ts、.tsx、.js、.jsx、.mjs、.cjs、.mts、.cts、.vue、.astro、.svelte | `oxlint` 項目中的依賴項 |
| php intelephense | php .php | PHP 項目的自動安裝 |
|棱鏡| .prisma | `prisma` 命令可用 |
|皮賴特| .py, .pyi | `pyright` 依賴項已安裝 |
| ruby-lsprubocop| .rb、.rake、.gemspec、.ru | `ruby` 和 `gem` 命令可用 |
|生鏽| .rs | `rust-analyzer` 命令可用 |
|源套件-lsp | .swift、.objc、.objcpp | `swift` 已安裝(`xcode` 在 macOS 上)|
|苗條| .svelte | Svelte 項目的自動安裝 |
|地形 | .tf、.tfvars |從 GitHub 版本自動安裝 |
|微霧| .typ、.typc |從 GitHub 版本自動安裝 |
|打字稿 | .ts、.tsx、.js、.jsx、.mjs、.cjs、.mts、.cts | `typescript` 項目中的依賴項 |
|視圖 | .vue | Vue 項目自動安裝 |
| yaml-ls | .yaml、.yml |自動安裝 Red Hat yaml-language-server |
|中立 | .zig、.zon | `zig` 命令可用 |
| LSP服務器 | 擴展 | 要求 |
| ------------------- | ------------------------------------------------------------------- | ------------------------------------------------ |
| 天文 | .astro | Astro 項目自動安裝 |
| bash | .sh、.bash、.zsh、.ksh | 自動安裝 bash-語言-服務器 |
| 叮叮 | .c、.cpp、.cc、.cxx、.c++、.h、.hpp、.hh、.hxx、.h++ | 自動安裝 C/C++ 項目 |
| 夏普 | .cs | `.NET SDK` 已安裝 |
| Clojure-lsp | 語言.clj、.cljs、.cljc、.edn | `clojure-lsp` 命令可用 |
| 飛鏢 | .dart | `dart` 命令可用 |
| 給定 | .ts、.tsx、.js、.jsx、.mjs | `deno` 命令可用(自動檢測 deno.json/deno.jsonc |
| 長生不老藥-LS | .ex、.exs | `elixir` 命令可用 |
| 埃斯林特 | .ts、.tsx、.js、.jsx、.mjs、.cjs、.mts、.cts、.vue | `eslint` 項目中的依賴項 |
| 銳利 | .fs、.fsi、.fsx、.fsscript | `.NET SDK` 已安裝 |
| 微光 | .gleam | `gleam` 命令可用 |
| 伙計們 | .go | `go` 命令可用 |
| HLS | .hs、.lhs | `haskell-language-server-wrapper` 命令可用 |
| jdtls | .java | `Java SDK (version 21+)` 已安裝 |
| kotlin-ls | .kt、.kts | Kotlin 項目的自動安裝 |
| lua-ls | .lua | 自動安裝 Lua 項目 |
| 尼克斯 | .nix | `nixd` 命令可用 |
| ocaml-lsp | .ml、.mli | `ocamllsp` 命令可用 |
| 奧克斯林特 | .ts、.tsx、.js、.jsx、.mjs、.cjs、.mts、.cts、.vue、.astro、.svelte | `oxlint` 項目中的依賴項 |
| php intelephense | php .php | PHP 項目的自動安裝 |
| 棱鏡 | .prisma | `prisma` 命令可用 |
| 皮賴特 | .py, .pyi | `pyright` 依賴項已安裝 |
| ruby-lsprubocop | .rb、.rake、.gemspec、.ru | `ruby` 和 `gem` 命令可用 |
| 生鏽 | .rs | `rust-analyzer` 命令可用 |
| 源套件-lsp | .swift、.objc、.objcpp | `swift` 已安裝(`xcode` 在 macOS 上) |
| 苗條 | .svelte | Svelte 項目的自動安裝 |
| 地形 | .tf、.tfvars | 從 GitHub 版本自動安裝 |
| 微霧 | .typ、.typc | 從 GitHub 版本自動安裝 |
| 打字稿 | .ts、.tsx、.js、.jsx、.mjs、.cjs、.mts、.cts | `typescript` 項目中的依賴項 |
| 視圖 | .vue | Vue 項目自動安裝 |
| yaml-ls | .yaml、.yml | 自動安裝 Red Hat yaml-language-server |
| 中立 | .zig、.zon | `zig` 命令可用 |
當檢測到上述文件擴展名之一併且滿足要求時LSP 服務器將自動啟用。
@@ -76,13 +76,13 @@ OpenCode 附帶了多種適用於流行語言的內置 LSP 服務器:
每個LSP服務器支持以下功能
|物業 |類型 |描述 |
| ---------------- | -------- | ------------------------------------------------- |
| `disabled` |布爾 |將其設置為`true` 以禁用LSP 服務器|
| `command` |字符串[] |啟動LSP服務器的命令|
| `extensions` |字符串[] |此 LSP 服務器應處理的文件擴展名 |
| `env` |對象|啟動服務器時設置的環境變量|
| `initialization` |對象|發送到LSP服務器的初始化選項|
| 物業 | 類型 | 描述 |
| ---------------- | -------- | --------------------------------- |
| `disabled` | 布爾 | 將其設置為`true` 以禁用LSP 服務器 |
| `command` | 字符串[] | 啟動LSP服務器的命令 |
| `extensions` | 字符串[] | 此 LSP 服務器應處理的文件擴展名 |
| `env` | 對象 | 啟動服務器時設置的環境變量 |
| `initialization` | 對象 | 發送到LSP服務器的初始化選項 |
讓我們看一些例子。

View File

@@ -116,13 +116,13 @@ use the mcp_everything tool to add the number 3 and 4
以下是配置本地 MCP 服務器的所有選項。
|選項|類型 |必填 |描述 |
| ------------- | ------- | -------- | ----------------------------------------------------------------------------------- |
| `type` |字符串|是 | MCP 服務器連接類型,必須是`"local"`。 |
| `command` |數組 |是 |運行 MCP 服務器的命令和參數。 |
| `environment` |對象| |運行服務器時設置的環境變量。 |
| `enabled` |布爾 | |在啟動時啟用或禁用 MCP 服務器。 |
| `timeout` |數量 | |從 MCP 服務器獲取工具的超時(以毫秒為單位)。默認為 50005 秒)。 |
| 選項 | 類型 | 必填 | 描述 |
| ------------- | ------ | ---- | ------------------------------------------------------------------ |
| `type` | 字符串 | 是 | MCP 服務器連接類型,必須是`"local"`。 |
| `command` | 數組 | | 運行 MCP 服務器的命令和參數。 |
| `environment` | 對象 | | 運行服務器時設置的環境變量。 |
| `enabled` | 布爾 | | 在啟動時啟用或禁用 MCP 服務器。 |
| `timeout` | 數量 | | 從 MCP 服務器獲取工具的超時(以毫秒為單位)。默認為 50005 秒)。 |
---
@@ -152,14 +152,14 @@ use the mcp_everything tool to add the number 3 and 4
#### 選項
|選項|類型 |必填 |描述 |
| --------- | ------- | -------- | ----------------------------------------------------------------------------------- |
| `type` |字符串|是 | MCP 服務器連接類型,必須是`"remote"`。 |
| `url` |字符串|是 |遠程 MCP 服務器的 URL。 |
| `enabled` |布爾 | |在啟動時啟用或禁用 MCP 服務器。 |
| `headers` |對象| |隨請求一起發送的標頭。 |
| `oauth` |對象| | OAuth 身份驗證配置。請參閱下面的[開放認證](#oauth) 部分。 |
| `timeout` |數量 | |從 MCP 服務器獲取工具的超時(以毫秒為單位)。默認為 50005 秒)。 |
| 選項 | 類型 | 必填 | 描述 |
| --------- | ------ | ---- | ------------------------------------------------------------------ |
| `type` | 字符串 | 是 | MCP 服務器連接類型,必須是`"remote"`。 |
| `url` | 字符串 | 是 | 遠程 MCP 服務器的 URL。 |
| `enabled` | 布爾 | | 在啟動時啟用或禁用 MCP 服務器。 |
| `headers` | 對象 | | 隨請求一起發送的標頭。 |
| `oauth` | 對象 | | OAuth 身份驗證配置。請參閱下面的[開放認證](#oauth) 部分。 |
| `timeout` | 數量 | | 從 MCP 服務器獲取工具的超時(以毫秒為單位)。默認為 50005 秒)。 |
---
@@ -266,12 +266,12 @@ opencode mcp logout my-oauth-server
#### OAuth 選項
|選項|類型 |描述 |
| -------------- | --------------- | -------------------------------------------------------------------------------- |
| `oauth` |對象\|假 | OAuth 配置對象,或 `false` 以禁用 OAuth 自動檢測。 |
| `clientId` |字符串| OAuth 客戶端 ID。如果未提供將嘗試動態客戶端註冊。 |
| `clientSecret` |字符串| OAuth 客戶端密鑰(如果授權服務器需要)。 |
| `scope` |字符串|授權期間請求的 OAuth 範圍。 |
| 選項 | 類型 | 描述 |
| -------------- | -------- | --------------------------------------------------- |
| `oauth` | 對象\|假 | OAuth 配置對象,或 `false` 以禁用 OAuth 自動檢測。 |
| `clientId` | 字符串 | OAuth 客戶端 ID。如果未提供將嘗試動態客戶端註冊。 |
| `clientSecret` | 字符串 | OAuth 客戶端密鑰(如果授權服務器需要)。 |
| `scope` | 字符串 | 授權期間請求的 OAuth 範圍。 |
#### 偵錯

View File

@@ -225,19 +225,19 @@ Markdown 文件名成為模式名稱(例如,`review.md` 創建`review` 模
這裡是所有可以通過模式配置控制的工具。
|工具|描述 |
| ----------- | ----------------------- |
| `bash` |執行 shell 命令 |
| `edit` |修改現有文件 |
| `write` |創建新文件 |
| `read` |讀取文件內容 |
| `grep` |搜索文件內容 |
| `glob` |按模式查找文件 |
| `list` |列出目錄內容 |
| `patch` |對文件應用補丁 |
| `todowrite` |管理待辦事項列表 |
| `todoread` |閱讀待辦事項列表 |
| `webfetch` |獲取網頁內容 |
| 工具 | 描述 |
| ----------- | ---------------- |
| `bash` | 執行 shell 命令 |
| `edit` | 修改現有文件 |
| `write` | 創建新文件 |
| `read` | 讀取文件內容 |
| `grep` | 搜索文件內容 |
| `glob` | 按模式查找文件 |
| `list` | 列出目錄內容 |
| `patch` | 對文件應用補丁 |
| `todowrite` | 管理待辦事項列表 |
| `todoread` | 閱讀待辦事項列表 |
| `webfetch` | 獲取網頁內容 |
---

View File

@@ -434,7 +434,7 @@ OpenCode Zen 是 OpenCode 團隊提供的模型列表,這些模型已被
└ enter
```
4. 運行`/models`命令選擇型號,如_Qwen 3 Coder 480B_
4. 運行`/models`命令選擇型號,如*Qwen 3 Coder 480B*
```txt
/models
@@ -519,7 +519,7 @@ Cloudflare AI Gateway 讓您可以通過統一端點訪問來自 OpenAI、Anthro
└ enter
```
4. 運行`/models`命令選擇一個模型,如_Kimi K2 Instruct_
4. 運行`/models`命令選擇一個模型,如*Kimi K2 Instruct*
```txt
/models
@@ -627,7 +627,7 @@ Cloudflare AI Gateway 讓您可以通過統一端點訪問來自 OpenAI、Anthro
└ enter
```
4. 運行`/models`命令選擇一個模型,如_Kimi K2 Instruct_
4. 運行`/models`命令選擇一個模型,如*Kimi K2 Instruct*
```txt
/models
@@ -1023,12 +1023,12 @@ npm install -g opencode-helicone-session
##### 常見 Helicone 接頭
|標題 |描述 |
| -------------------------- | ------------------------------------------------------------- |
| `Helicone-Cache-Enabled` |啟用響應緩存 (`true`/`false`) |
| `Helicone-User-Id` |按用戶跟踪指標 |
| `Helicone-Property-[Name]` |添加自定義屬性(例如`Helicone-Property-Environment`|
| `Helicone-Prompt-Id` |將請求與提示版本相關聯 |
| 標題 | 描述 |
| -------------------------- | ----------------------------------------------------- |
| `Helicone-Cache-Enabled` | 啟用響應緩存 (`true`/`false`) |
| `Helicone-User-Id` | 按用戶跟踪指標 |
| `Helicone-Property-[Name]` | 添加自定義屬性(例如`Helicone-Property-Environment` |
| `Helicone-Prompt-Id` | 將請求與提示版本相關聯 |
有關所有可用標頭,請參閱[Helicone 頭目錄](https://docs.helicone.ai/helicone-headers/header-directory)。
@@ -1156,7 +1156,7 @@ IO.NET 提供了 17 種針對各種用例進行優化的模型:
└ enter
```
4. 運行`/models`命令選擇_Kimi K2_
4. 運行`/models`命令選擇*Kimi K2*
```txt
/models
@@ -1183,7 +1183,7 @@ IO.NET 提供了 17 種針對各種用例進行優化的模型:
└ enter
```
4. 運行`/models`命令選擇型號,如_M2.1_
4. 運行`/models`命令選擇型號,如*M2.1*
```txt
/models
@@ -1210,7 +1210,7 @@ IO.NET 提供了 17 種針對各種用例進行優化的模型:
└ enter
```
4. 運行`/models`命令選擇一個模型,如_Kimi K2 Instruct_
4. 運行`/models`命令選擇一個模型,如*Kimi K2 Instruct*
```txt
/models
@@ -1353,7 +1353,7 @@ OpenCode Zen 是 OpenCode 團隊提供的經過測試和驗證的模型列表。
└ enter
```
4. 運行`/models`命令選擇型號,如_Qwen 3 Coder 480B_
4. 運行`/models`命令選擇型號,如*Qwen 3 Coder 480B*
```txt
/models
@@ -1499,7 +1499,7 @@ SAP AI Core 通過統一平台提供對 OpenAI、Anthropic、Google、Amazon、M
└ enter
```
4. 運行`/models`命令選擇型號,如_gpt-oss-120b_
4. 運行`/models`命令選擇型號,如*gpt-oss-120b*
```txt
/models
@@ -1528,7 +1528,7 @@ SAP AI Core 通過統一平台提供對 OpenAI、Anthropic、Google、Amazon、M
└ enter
```
4. 運行`/models`命令選擇模型,如_devstral-2-123b-instruct-2512_或_gpt-oss-120b_
4. 運行`/models`命令選擇模型,如*devstral-2-123b-instruct-2512*或*gpt-oss-120b*
```txt
/models
@@ -1555,7 +1555,7 @@ SAP AI Core 通過統一平台提供對 OpenAI、Anthropic、Google、Amazon、M
└ enter
```
4. 運行`/models`命令選擇一個模型,如_Kimi K2 Instruct_
4. 運行`/models`命令選擇一個模型,如*Kimi K2 Instruct*
```txt
/models
@@ -1582,7 +1582,7 @@ SAP AI Core 通過統一平台提供對 OpenAI、Anthropic、Google、Amazon、M
└ enter
```
4. 運行`/models`命令選擇型號,如_Llama 3.3 70B_
4. 運行`/models`命令選擇型號,如*Llama 3.3 70B*
```txt
/models
@@ -1638,11 +1638,11 @@ Vercel AI Gateway 可讓您通過統一端點訪問來自 OpenAI、Anthropic、G
一些有用的路由選項:
|選項 |描述 |
| ------------------- | ---------------------------------------------------- |
| `order` |提供者嘗試順序|
| `only` |限制特定提供商 |
| `zeroDataRetention` |僅使用零數據保留政策的提供商 |
| 選項 | 描述 |
| ------------------- | ---------------------------- |
| `order` | 提供者嘗試順序 |
| `only` | 限制特定提供商 |
| `zeroDataRetention` | 僅使用零數據保留政策的提供商 |
---
@@ -1665,7 +1665,7 @@ Vercel AI Gateway 可讓您通過統一端點訪問來自 OpenAI、Anthropic、G
└ enter
```
4. 運行`/models`命令選擇一個模型,如_Grok Beta_
4. 運行`/models`命令選擇一個模型,如*Grok Beta*
```txt
/models
@@ -1694,7 +1694,7 @@ Vercel AI Gateway 可讓您通過統一端點訪問來自 OpenAI、Anthropic、G
└ enter
```
4. 運行`/models`命令選擇_GLM-4.7_等模型。
4. 運行`/models`命令選擇*GLM-4.7*等模型。
```txt
/models

View File

@@ -37,13 +37,13 @@ const { client } = await createOpencode()
#### 選項
|選項 |類型 |描述 |默認 |
| 選項 | 類型 | 描述 | 默認 |
| ---------- | ------------- | ------------------------------ | ----------- |
| `hostname` | `string` |服務器主機名 | `127.0.0.1` |
| `port` | `number` |服務器端口 | `4096` |
| `signal` | `AbortSignal` |取消的中止信號 | `undefined` |
| `timeout` | `number` |服務器啟動超時(以毫秒為單位)| `5000` |
| `config` | `Config` |配置對象| `{}` |
| `hostname` | `string` | 服務器主機名 | `127.0.0.1` |
| `port` | `number` | 服務器端口 | `4096` |
| `signal` | `AbortSignal` | 取消的中止信號 | `undefined` |
| `timeout` | `number` | 服務器啟動超時(以毫秒為單位) | `5000` |
| `config` | `Config` | 配置對象 | `{}` |
---
@@ -81,13 +81,13 @@ const client = createOpencodeClient({
#### 選項
|選項 |類型 |描述 |默認|
| --------------- | ---------- | -------------------------------- | ----------------------- |
| `baseUrl` | `string` |服務器的 URL | `http://localhost:4096` |
| `fetch` | `function` |自定義獲取實現 | `globalThis.fetch` |
| `parseAs` | `string` |響應解析方法 | `auto` |
| `responseStyle` | `string` |返回樣式:`data` 或 `fields` | `fields` |
| `throwOnError` | `boolean` |拋出錯誤而不是返回 | `false` |
| 選項 | 類型 | 描述 | 默認 |
| --------------- | ---------- | ---------------------------- | ----------------------- |
| `baseUrl` | `string` | 服務器的 URL | `http://localhost:4096` |
| `fetch` | `function` | 自定義獲取實現 | `globalThis.fetch` |
| `parseAs` | `string` | 響應解析方法 | `auto` |
| `responseStyle` | `string` | 返回樣式:`data` 或 `fields` | `fields` |
| `throwOnError` | `boolean` | 拋出錯誤而不是返回 | `false` |
---
@@ -125,9 +125,9 @@ SDK 通過類型安全的客戶端公開所有服務器 API。
### 全球的
|方法|描述 |回應 |
| ----------------- | ------------------------------- | ------------------------------------ |
| `global.health()` |檢查服務器健康狀況和版本 | `{ healthy: true, version: string }` |
| 方法 | 描述 | 回應 |
| ----------------- | ------------------------ | ------------------------------------ |
| `global.health()` | 檢查服務器健康狀況和版本 | `{ healthy: true, version: string }` |
---
@@ -142,10 +142,10 @@ console.log(health.data.version)
### 應用程式
|方法|描述 |回應 |
| -------------- | ------------------------- | ------------------------------------------- |
| `app.log()` |寫入日誌條目 | `boolean` |
| `app.agents()` |列出所有可用的代理 | <a href={typesUrl}><code>代理[]</code></a> |
| 方法 | 描述 | 回應 |
| -------------- | ------------------ | ------------------------------------------ |
| `app.log()` | 寫入日誌條目 | `boolean` |
| `app.agents()` | 列出所有可用的代理 | <a href={typesUrl}><code>代理[]</code></a> |
---
@@ -169,10 +169,10 @@ 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>Provider[]</code></a>`, default: { [key: string]: string } }` |
| 方法 | 描述 | 回應 |
| -------------------- | -------------------- | ----------------------------------------------------------------------------------------------------- |
| `config.get()` | 獲取配置信息 | <a href={typesUrl}><code>配置</code></a> |
| `config.providers()` | 列出提供商和默認模型 | `{ providers: `<a href={typesUrl}><code>Provider[]</code></a>`, default: { [key: string]: string } }` |
---
@@ -226,27 +226,27 @@ const { providers, default: defaults } = await client.config.providers()
### 會議
|方法|描述 |筆記|
| ---------------------------------------------------------- | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `session.list()` |列出會話 |返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.get({ path })` |獲取會話 |返回 <a href={typesUrl}><code>Session</code></a> |
| `session.children({ path })` |列出子會話 |返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.create({ body })` |創建會話 |返回 <a href={typesUrl}><code>Session</code></a> |
| `session.delete({ path })` |刪除會話 |返回 `boolean` |
| `session.update({ path, body })` |更新會話屬性 |返回 <a href={typesUrl}><code>Session</code></a> |
| `session.init({ path, body })` |分析應用程序並創建`AGENTS.md` |返回 `boolean` |
| `session.abort({ path })` |中止正在運行的會話 |返回 `boolean` |
| `session.share({ path })` |分享會 |返回 <a href={typesUrl}><code>Session</code></a> |
| `session.unshare({ path })` |取消共享會話 |返回 <a href={typesUrl}><code>Session</code></a> |
| `session.summarize({ path, body })` |會議總結 |返回 `boolean` |
| `session.messages({ path })` |列出會話中的消息 |返回 `{ info: `<a href={typesUrl}><code>消息</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` |
| `session.message({ path })` |獲取消息詳情 |返回 `{ info: `<a href={typesUrl}><code>消息</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
| `session.prompt({ path, body })` |發送提示信息 | `body.noReply: true` 返回 UserMessage僅上下文。默認返回帶有 AI 響應的 <a href={typesUrl}><code>AssistantMessage</code></a> |
| `session.command({ path, body })` |向會話發送命令 |返回 `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
| `session.shell({ path, body })` |運行 shell 命令 |返回 <a href={typesUrl}><code>AssistantMessage</code></a> |
| `session.revert({ path, body })` |回复消息 |返回 <a href={typesUrl}><code>Session</code></a> |
| `session.unrevert({ path })` |恢復已恢復的消息 |返回 <a href={typesUrl}><code>Session</code></a> |
| `postSessionByIdPermissionsByPermissionId({ path, body })` |回復權限請求 |返回 `boolean` |
| 方法 | 描述 | 筆記 |
| ---------------------------------------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `session.list()` | 列出會話 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.get({ path })` | 獲取會話 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `session.children({ path })` | 列出子會話 | 返回 <a href={typesUrl}><code>Session[]</code></a> |
| `session.create({ body })` | 創建會話 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `session.delete({ path })` | 刪除會話 | 返回 `boolean` |
| `session.update({ path, body })` | 更新會話屬性 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `session.init({ path, body })` | 分析應用程序並創建`AGENTS.md` | 返回 `boolean` |
| `session.abort({ path })` | 中止正在運行的會話 | 返回 `boolean` |
| `session.share({ path })` | 分享會 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `session.unshare({ path })` | 取消共享會話 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `session.summarize({ path, body })` | 會議總結 | 返回 `boolean` |
| `session.messages({ path })` | 列出會話中的消息 | 返回 `{ info: `<a href={typesUrl}><code>消息</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` |
| `session.message({ path })` | 獲取消息詳情 | 返回 `{ info: `<a href={typesUrl}><code>消息</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
| `session.prompt({ path, body })` | 發送提示信息 | `body.noReply: true` 返回 UserMessage僅上下文。默認返回帶有 AI 響應的 <a href={typesUrl}><code>AssistantMessage</code></a> |
| `session.command({ path, body })` | 向會話發送命令 | 返回 `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
| `session.shell({ path, body })` | 運行 shell 命令 | 返回 <a href={typesUrl}><code>AssistantMessage</code></a> |
| `session.revert({ path, body })` | 回复消息 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `session.unrevert({ path })` | 恢復已恢復的消息 | 返回 <a href={typesUrl}><code>Session</code></a> |
| `postSessionByIdPermissionsByPermissionId({ path, body })` | 回復權限請求 | 返回 `boolean` |
---
@@ -283,13 +283,13 @@ 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> |
| `file.read({ query })` |讀取文件 | `{ type: "raw" \| "patch", content: string }` |
| `file.status({ query? })` |獲取跟踪文件的狀態 | <a href={typesUrl}><code>文件[]</code></a> |
| 方法 | 描述 | 回應 |
| ------------------------- | -------------------- | -------------------------------------------------------------------- | -------------- |
| `find.text({ query })` | 搜索文件中的文本 | 具有 `path`、`lines`、`line_number`、`absolute_offset`、`submatches` | 的匹配對像數組 |
| `find.files({ query })` | 按名稱查找文件和目錄 | `string[]`(路徑) |
| `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> |
`find.files` 支持一些可選的查詢字段:
@@ -324,17 +324,17 @@ const content = await client.file.read({
### TUI
|方法|描述 |回應 |
| ------------------------------ | ------------------------- | --------- |
| `tui.appendPrompt({ body })` |將文本附加到提示 | `boolean` |
| `tui.openHelp()` |打開幫助對話框 | `boolean` |
| `tui.openSessions()` |打開會話選擇器 | `boolean` |
| `tui.openThemes()` |打開主題選擇器 | `boolean` |
| `tui.openModels()` |打開模型選擇器 | `boolean` |
| `tui.submitPrompt()` |提交當前提示| `boolean` |
| `tui.clearPrompt()` |清除提示| `boolean` |
| `tui.executeCommand({ body })` |執行命令| `boolean` |
| `tui.showToast({ body })` |顯示 toast 通知 | `boolean` |
| 方法 | 描述 | 回應 |
| ------------------------------ | ---------------- | --------- |
| `tui.appendPrompt({ body })` | 將文本附加到提示 | `boolean` |
| `tui.openHelp()` | 打開幫助對話框 | `boolean` |
| `tui.openSessions()` | 打開會話選擇器 | `boolean` |
| `tui.openThemes()` | 打開主題選擇器 | `boolean` |
| `tui.openModels()` | 打開模型選擇器 | `boolean` |
| `tui.submitPrompt()` | 提交當前提示 | `boolean` |
| `tui.clearPrompt()` | 清除提示 | `boolean` |
| `tui.executeCommand({ body })` | 執行命令 | `boolean` |
| `tui.showToast({ body })` | 顯示 toast 通知 | `boolean` |
---
@@ -355,9 +355,9 @@ await client.tui.showToast({
### 授權
|方法|描述 |回應 |
| ------------------- | ------------------------------ | --------- |
| `auth.set({ ... })` |設置身份驗證憑據 | `boolean` |
| 方法 | 描述 | 回應 |
| ------------------- | ---------------- | --------- |
| `auth.set({ ... })` | 設置身份驗證憑據 | `boolean` |
---
@@ -374,9 +374,9 @@ await client.auth.set({
### 活動
|方法|描述 |回應 |
| ------------------- | ------------------------- | ------------------------- |
| `event.subscribe()` |服務器發送的事件流 |服務器發送的事件流 |
| 方法 | 描述 | 回應 |
| ------------------- | ------------------ | ------------------ |
| `event.subscribe()` | 服務器發送的事件流 | 服務器發送的事件流 |
---

View File

@@ -18,13 +18,13 @@ opencode serve [--port <number>] [--hostname <string>] [--cors <origin>]
#### 選項
|旗幟|描述 |默認 |
| --------------- | ----------------------------------- | ---------------- |
| `--port` |監聽端口 | `4096` |
| `--hostname` |監聽的主機名 | `127.0.0.1` |
| `--mdns` |啟用 mDNS 發現 | `false` |
| 旗幟 | 描述 | 默認 |
| --------------- | --------------------- | ---------------- |
| `--port` | 監聽端口 | `4096` |
| `--hostname` | 監聽的主機名 | `127.0.0.1` |
| `--mdns` | 啟用 mDNS 發現 | `false` |
| `--mdns-domain` | mDNS 服務的自定義域名 | `opencode.local` |
| `--cors` |允許的其他瀏覽器來源 | `[]` |
| `--cors` | 允許的其他瀏覽器來源 | `[]` |
`--cors` 可以多次傳遞:
@@ -89,116 +89,116 @@ opencode 服務器公開以下 API。
### 全球的
|方法|路徑|描述 |回應 |
| ------ | ---------------- | ------------------------------ | ------------------------------------ |
| `GET` | `/global/health` |獲取服務器運行狀況和版本 | `{ healthy: true, version: string }` |
| `GET` | `/global/event` |獲取全局事件SSE 流)|事件流 |
| 方法 | 路徑 | 描述 | 回應 |
| ----- | ---------------- | ------------------------ | ------------------------------------ |
| `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` |
| 方法 | 路徑 | 描述 | 回應 |
| ------ | ------------------- | ------------ | --------- |
| `POST` | `/instance/dispose` | 處置當前實例 | `boolean` |
---
### 配置
|方法|路徑|描述 |回應 |
| ------- | ------------------- | --------------------------------- | ---------------------------------------------------------------------------------------- |
| `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` | 獲取配置信息 | <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` | `/provider` |列出所有提供商 | `{ all: `<a href={typesUrl}>提供商[]</a>`, default: {...}, connected: string[] }` |
| `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` |
| 方法 | 路徑 | 描述 | 回應 |
| ------ | -------------------------------- | ----------------------- | --------------------------------------------------------------------------------- |
| `GET` | `/provider` | 列出所有提供商 | `{ all: `<a href={typesUrl}>提供商[]</a>`, default: {...}, connected: string[] }` |
| `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` |
---
### 會議
|方法|路徑|描述 |筆記|
| -------- | ---------------------------------------- | ------------------------------------- | ---------------------------------------------------------------------------------- |
| `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>Session</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> |
| `POST` | `/session/:id/init` |分析應用程序並創建`AGENTS.md` |主體:`{ messageID, providerID, modelID }`,返回`boolean` |
| `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>Session</code></a> |
| `DELETE` | `/session/:id/share` |取消共享會話 |返回 <a href={typesUrl}><code>Session</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/unrevert` |恢復所有已恢復的消息 |返回 `boolean` |
| `POST` | `/session/:id/permissions/:permissionID` |回復權限請求 |主體:`{ response, remember? }`,返回`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>Session</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> |
| `POST` | `/session/:id/init` | 分析應用程序並創建`AGENTS.md` | 主體:`{ messageID, providerID, modelID }`,返回`boolean` |
| `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>Session</code></a> |
| `DELETE` | `/session/:id/share` | 取消共享會話 | 返回 <a href={typesUrl}><code>Session</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/unrevert` | 恢復所有已恢復的消息 | 返回 `boolean` |
| `POST` | `/session/:id/permissions/:permissionID` | 回復權限請求 | 主體:`{ response, remember? }`,返回`boolean` |
---
### 留言
|方法|路徑|描述 |筆記|
| ------ | --------------------------------- | --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `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` |異步發送消息(無需等待)| body與`/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>`}` |
| 方法 | 路徑 | 描述 | 筆記 |
| ------ | --------------------------------- | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `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` | 異步發送消息(無需等待) | body與`/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>`}` |
---
### 命令
|方法|路徑|描述 |回應 |
| ------ | ---------- | ----------------- | --------------------------------------------- |
| `GET` | `/command` |列出所有命令 | <a href={typesUrl}><code>命令[]</code></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>FileContent</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>FileContent</code></a> |
| `GET` | `/file/status` | 獲取跟踪文件的狀態 | <a href={typesUrl}><code>文件[]</code></a> |
#### `/find/file`查詢參數
@@ -212,76 +212,76 @@ opencode 服務器公開以下 API。
### 工具(實驗)
|方法|路徑|描述 |回應 |
| ------ | ------------------------------------------- | ---------------------------------------- | -------------------------------------------- |
| `GET` | `/experimental/tool/ids` |列出所有工具 ID | <a href={typesUrl}><code>ToolID</code></a> |
| `GET` | `/experimental/tool?provider=<p>&model=<m>` |列出具有模型 JSON 架構的工具 | <a href={typesUrl}><code>工具列表</code></a> |
| 方法 | 路徑 | 描述 | 回應 |
| ----- | ------------------------------------------- | ---------------------------- | -------------------------------------------- |
| `GET` | `/experimental/tool/ids` | 列出所有工具 ID | <a href={typesUrl}><code>ToolID</code></a> |
| `GET` | `/experimental/tool?provider=<p>&model=<m>` | 列出具有模型 JSON 架構的工具 | <a href={typesUrl}><code>工具列表</code></a> |
---
### 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}>MCPStatus</a>` }` |
| `POST` | `/mcp` |動態添加MCP服務器| body: `{ name, config }`, 返回 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}>MCPStatus</a>` }` |
| `POST` | `/mcp` | 動態添加MCP服務器 | body: `{ name, config }`, 返回 MCP 狀態對象 |
---
### 代理商
|方法|路徑|描述 |回應 |
| ------ | -------- | ------------------------- | ------------------------------------------- |
| `GET` | `/agent` |列出所有可用的代理 | <a href={typesUrl}><code>代理[]</code></a> |
| 方法 | 路徑 | 描述 | 回應 |
| ----- | -------- | ------------------ | ------------------------------------------ |
| `GET` | `/agent` | 列出所有可用的代理 | <a href={typesUrl}><code>代理[]</code></a> |
---
### 記錄
|方法|路徑|描述 |回應 |
| ------ | ------ | ------------------------------------------------------------ | --------- |
| `POST` | `/log` |寫入日誌條目。正文:`{ service, level, message, extra? }` | `boolean` |
| 方法 | 路徑 | 描述 | 回應 |
| ------ | ------ | --------------------------------------------------------- | --------- |
| `POST` | `/log` | 寫入日誌條目。正文:`{ service, level, message, extra? }` | `boolean` |
---
### TUI
|方法|路徑|描述 |回應 |
| ------ | ----------------------- | ------------------------------------------- | ---------------------- |
| `POST` | `/tui/append-prompt` |將文本附加到提示 | `boolean` |
| `POST` | `/tui/open-help` |打開幫助對話框 | `boolean` |
| `POST` | `/tui/open-sessions` |打開會話選擇器 | `boolean` |
| `POST` | `/tui/open-themes` |打開主題選擇器 | `boolean` |
| `POST` | `/tui/open-models` |打開模型選擇器 | `boolean` |
| `POST` | `/tui/submit-prompt` |提交當前提示| `boolean` |
| `POST` | `/tui/clear-prompt` |清除提示| `boolean` |
| `POST` | `/tui/execute-command` |執行命令(`{ command }`) | `boolean` |
| `POST` | `/tui/show-toast` |顯示祝酒 (`{ title?, message, variant }`) | `boolean` |
| `GET` | `/tui/control/next` |等待下一個控制請求 |控制請求對象|
| `POST` | `/tui/control/response` |響應控制請求 (`{ body }`) | `boolean` |
| 方法 | 路徑 | 描述 | 回應 |
| ------ | ----------------------- | ----------------------------------------- | ------------ |
| `POST` | `/tui/append-prompt` | 將文本附加到提示 | `boolean` |
| `POST` | `/tui/open-help` | 打開幫助對話框 | `boolean` |
| `POST` | `/tui/open-sessions` | 打開會話選擇器 | `boolean` |
| `POST` | `/tui/open-themes` | 打開主題選擇器 | `boolean` |
| `POST` | `/tui/open-models` | 打開模型選擇器 | `boolean` |
| `POST` | `/tui/submit-prompt` | 提交當前提示 | `boolean` |
| `POST` | `/tui/clear-prompt` | 清除提示 | `boolean` |
| `POST` | `/tui/execute-command` | 執行命令(`{ command }`) | `boolean` |
| `POST` | `/tui/show-toast` | 顯示祝酒 (`{ title?, message, variant }`) | `boolean` |
| `GET` | `/tui/control/next` | 等待下一個控制請求 | 控制請求對象 |
| `POST` | `/tui/control/response` | 響應控制請求 (`{ body }`) | `boolean` |
---
### 授權
|方法|路徑|描述 |回應 |
| ------ | ----------- | --------------------------------------------------------------- | --------- |
| `PUT` | `/auth/:id` |設置身份驗證憑據。正文必須與提供者架構匹配 | `boolean` |
| 方法 | 路徑 | 描述 | 回應 |
| ----- | ----------- | ------------------------------------------ | --------- |
| `PUT` | `/auth/:id` | 設置身份驗證憑據。正文必須與提供者架構匹配 | `boolean` |
---
### 活動
|方法|路徑|描述 |回應 |
| ------ | -------- | ----------------------------------------------------------------------------- | ------------------------- |
| `GET` | `/event` |服務器發送的事件流。第一個活動是`server.connected`,然後是巴士活動 |服務器發送的事件流 |
| 方法 | 路徑 | 描述 | 回應 |
| ----- | -------- | ------------------------------------------------------------------ | ------------------ |
| `GET` | `/event` | 服務器發送的事件流。第一個活動是`server.connected`,然後是巴士活動 | 服務器發送的事件流 |
---
### 文件
|方法|路徑|描述 |回應 |
| ------ | ------ | ------------------------- | --------------------------- |
| `GET` | `/doc` | OpenAPI 3.1 規範 |具有 OpenAPI 規範的 HTML 頁面 |
| 方法 | 路徑 | 描述 | 回應 |
| ----- | ------ | ---------------- | ----------------------------- |
| `GET` | `/doc` | OpenAPI 3.1 規範 | 具有 OpenAPI 規範的 HTML 頁面 |

View File

@@ -139,11 +139,11 @@ skill({ name: "git-release" })
}
```
|許可|行為 |
| ---------- | ----------------------------------------- |
| `allow` |技能立即加載 |
| `deny` |技能對特工隱藏,訪問被拒絕 |
| `ask` |加載前提示用戶批准 |
| 許可 | 行為 |
| ------- | -------------------------- |
| `allow` | 技能立即加載 |
| `deny` | 技能對特工隱藏,訪問被拒絕 |
| `ask` | 加載前提示用戶批准 |
模式支持通配符:`internal-*` 匹配`internal-docs`、`internal-tools` 等。

View File

@@ -25,19 +25,19 @@ description: 選擇內置主題或定義您自己的主題。
OpenCode 附帶了幾個內置主題。
|名稱 |描述 |
| ---------------------- | ---------------------------------------------------------------------------- |
| `system` |適應您終端的背景顏色 |
| `tokyonight` |基於[東京之夜](https://github.com/folke/tokyonight.nvim)主題 |
| `everforest` |基於[永福森林](https://github.com/sainnhe/everforest)主題 |
| `ayu` |基於[香魚](https://github.com/ayu-theme)深色主題 |
| `catppuccin` |基於[卡普布辛](https://github.com/catppuccin)主題 |
| `catppuccin-macchiato` |基於[卡普布辛](https://github.com/catppuccin)主題 |
| `gruvbox` |基於[礦箱](https://github.com/morhetz/gruvbox)主題 |
| `kanagawa` |基於[神奈川](https://github.com/rebelot/kanagawa.nvim)主題 |
| `nord` |基於[諾德](https://github.com/nordtheme/nord)主題 |
| `matrix` |黑客風格黑底綠主題|
| `one-dark` |基於[原子一號](https://github.com/Th3Whit3Wolf/one-nvim) 深色主題 |
| 名稱 | 描述 |
| ---------------------- | ----------------------------------------------------------------- |
| `system` | 適應您終端的背景顏色 |
| `tokyonight` | 基於[東京之夜](https://github.com/folke/tokyonight.nvim)主題 |
| `everforest` | 基於[永福森林](https://github.com/sainnhe/everforest)主題 |
| `ayu` | 基於[香魚](https://github.com/ayu-theme)深色主題 |
| `catppuccin` | 基於[卡普布辛](https://github.com/catppuccin)主題 |
| `catppuccin-macchiato` | 基於[卡普布辛](https://github.com/catppuccin)主題 |
| `gruvbox` | 基於[礦箱](https://github.com/morhetz/gruvbox)主題 |
| `kanagawa` | 基於[神奈川](https://github.com/rebelot/kanagawa.nvim)主題 |
| `nord` | 基於[諾德](https://github.com/nordtheme/nord)主題 |
| `matrix` | 黑客風格黑底綠主題 |
| `one-dark` | 基於[原子一號](https://github.com/Th3Whit3Wolf/one-nvim) 深色主題 |
此外,我們還在不斷添加新主題。

View File

@@ -62,37 +62,37 @@ OpenCode Zen 的工作方式與 OpenCode 中的任何其他提供程序一樣。
您還可以通過以下 API 端點訪問我們的模型。
|型號|型號 ID |端點 |人工智能SDK包|
| ------------------ | ------------------ | -------------------------------------------------- | --------------------------- |
| GPT 5.2 | gpt-5.2 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.2 法典 | gpt-5.2-codex | gpt-5.2-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 | gpt-5.1 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 法典 | gpt-5.1-codex | gpt-5.1-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 法典最大 | gpt-5.1-codex-max | gpt-5.1-codex-max | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 迷你版 | gpt-5.1-codex-mini | gpt-5.1-codex-mini | gpt-5.1-codex-mini `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5 | gpt-5 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5 法典 | gpt-5-法典 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5 納米 | GPT-5-納米| @@c0@@ | @@c1@ |
|克勞德十四行詩 4.5 |克勞德十四行詩-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|克勞德十四行詩 4 |克勞德十四行詩-4 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|克勞德俳句 4.5 |克勞德俳句-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|克勞德俳句 3.5 | claude-3-5-俳句 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|近距離工作4.6 |近距離工作4-6 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|近距離工作4.5 |近距離工作4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|近距離工作4.1 |近距離工作4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|雙子座 3 Pro |雙 3 為 | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` |
|雙子座3閃光|雙子座 3 閃光 | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` |
|迷你最大M2.1 |極小極大-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| MiniMax M2.1 免費 | minimax-m2.1-免費 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| GLM 4.7 免費 | glm-4.7-免費 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|作為K2.5| as-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| Kimi K2.5 免費 | kimi-k2.5-免費 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| Kimi K2 思考 | kimi-k2-思考 | kimi-k2-thinking | kimi-k2-thinking `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|作為K2 | as-k2 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| Qwen3 編碼器 480B | qwen3-編碼器 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|大泡菜|大泡菜| `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| 型號 | 型號 ID | 端點 | 人工智能SDK包 |
| ------------------ | ------------------ | -------------------------------------------------- | -------------------------------------------------------------- | --------------------------- |
| GPT 5.2 | gpt-5.2 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.2 法典 | gpt-5.2-codex | gpt-5.2-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 | gpt-5.1 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 法典 | gpt-5.1-codex | gpt-5.1-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 法典最大 | gpt-5.1-codex-max | gpt-5.1-codex-max | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5.1 迷你版 | gpt-5.1-codex-mini | gpt-5.1-codex-mini | gpt-5.1-codex-mini `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5 | gpt-5 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5 法典 | gpt-5-法典 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
| GPT 5 納米 | GPT-5-納米 | @@c0@@ | @@c1@ |
| 克勞德十四行詩 4.5 | 克勞德十四行詩-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 克勞德十四行詩 4 | 克勞德十四行詩-4 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 克勞德俳句 4.5 | 克勞德俳句-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 克勞德俳句 3.5 | claude-3-5-俳句 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 近距離工作4.6 | 近距離工作4-6 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 近距離工作4.5 | 近距離工作4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 近距離工作4.1 | 近距離工作4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| 雙子座 3 Pro | 雙 3 為 | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` |
| 雙子座3閃光 | 雙子座 3 閃光 | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` |
| 迷你最大M2.1 | 極小極大-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| MiniMax M2.1 免費 | minimax-m2.1-免費 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| GLM 4.7 免費 | glm-4.7-免費 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| 作為K2.5 | as-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| Kimi K2.5 免費 | kimi-k2.5-免費 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| Kimi K2 思考 | kimi-k2-思考 | kimi-k2-thinking | kimi-k2-thinking `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| 作為K2 | as-k2 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| Qwen3 編碼器 480B | qwen3-編碼器 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
| 大泡菜 | 大泡菜 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
OpenCode 配置中的 [型號編號](/docs/config/#models)
使用格式`opencode/<model-id>`。例如,對於 GPT 5.2 Codex您將
@@ -114,43 +114,43 @@ https://opencode.ai/zen/v1/models
我們支持即用即付模式。以下是**每 100 萬代幣的價格**。
|型號|輸入 |輸出|緩存讀取 |緩存寫入|
| --------------------------------- | ------ | ------ | ----------- | ------------ |
|大泡菜|免費|免費|免費| - |
| 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 美元 | - | - |
|克勞德十四行詩 4.5(≤ 200K 代幣)| $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| Claude Sonnet 4.5> 200K 代幣)| 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
|克勞德十四行詩 4≤ 200K 代幣)| $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
|克勞德十四行詩 4> 200K 代幣)| 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
|克勞德俳句 4.5 | 1.00 美元 | 5.00 美元 | 0.10 美元 | 1.25 美元 |
|克勞德俳句 3.5 | 0.80 美元 | 4.00 美元 | 0.08 美元 | 1.00 美元 |
| Claude Opus 4.6(≤ 200K 代幣)| 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| Claude Opus 4.6> 200K 代幣)| 10.00 美元 | 37.50 美元 | 1.00 美元 | 12.50 美元 |
|近距離工作4.5 | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
|近距離工作4.1 | 15.00 美元 | 75.00 美元 | 1.50 美元 | 18.75 美元 |
| Gemini 3 Pro≤ 200K 代幣)| 2.00 美元 | 12.00 美元 | 0.20 美元 | - |
| Gemini 3 Pro> 200K 代幣)| 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 美元 | - | - |
| 克勞德十四行詩 4.5(≤ 200K 代幣) | $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| Claude Sonnet 4.5> 200K 代幣) | 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
| 克勞德十四行詩 4≤ 200K 代幣) | $3.00 | 15.00 美元 | 0.30 美元 | 3.75 美元 |
| 克勞德十四行詩 4> 200K 代幣) | 6.00 美元 | 22.50 美元 | 0.60 美元 | 7.50 美元 |
| 克勞德俳句 4.5 | 1.00 美元 | 5.00 美元 | 0.10 美元 | 1.25 美元 |
| 克勞德俳句 3.5 | 0.80 美元 | 4.00 美元 | 0.08 美元 | 1.00 美元 |
| Claude Opus 4.6(≤ 200K 代幣) | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| Claude Opus 4.6> 200K 代幣) | 10.00 美元 | 37.50 美元 | 1.00 美元 | 12.50 美元 |
| 近距離工作4.5 | 5.00 美元 | 25.00 美元 | 0.50 美元 | 6.25 美元 |
| 近距離工作4.1 | 15.00 美元 | 75.00 美元 | 1.50 美元 | 18.75 美元 |
| Gemini 3 Pro≤ 200K 代幣) | 2.00 美元 | 12.00 美元 | 0.20 美元 | - |
| Gemini 3 Pro> 200K 代幣) | 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),用於生成會話標題。
您可能會在使用歷史記錄中註意到*Claude Haiku 3.5*。這是一個[低成本模式](/docs/config/#models),用於生成會話標題。
:::note
信用卡費用按成本轉嫁4.4% + 每筆交易 0.30 美元);除此之外我們不收取任何費用。