dsh-opencode-go-quota-settings:在設置頁查看 OpenCode GO 額度與模型目錄

前言

在 DSH 裏用 OpenCode GO 做模型路由時,除了能正常聊天,往往還需要隨時看清三窗口額度還剩多少、官方目錄裏有哪些模型、以及網關和密鑰是否配置一致。社區裏已有在側欄底部常駐 widget 的用法插件;若你更習慣把賬戶類信息收進 設置,且不想爲額度單獨再配一把 key,就需要一個入口與 Command Code、Codex 賬戶頁同級、又不佔用左側欄的客戶端插件。下面介紹維護者 zztdandan 發佈的 dsh-opencode-go-quota-settings(當前 package 版本 0.7.2,MIT 許可證)。

這是什麼

dsh-opencode-go-quota-settings 是 DSH 的 web 客戶端插件:在 設置 → OpenCode GO 一頁內展示 OpenCode GO 的三窗口額度、模型目錄、密鑰與連接參數;瀏覽器通過 同源代理 訪問用量與模型接口,密鑰由 host 端調用,不進前端。對話裏還提供斜槓命令 /opencode-go-quota。

本倉庫是 @astervolans/dsh-opencode-go-usage 的改造分支(上游又來自 yumusb/dsh-opencode-go-usage)。與上游 1.5.0 相比,入口從側欄 widget 改爲 settings.section;展示改爲三張額度卡;密鑰 複用 DSH opencode-go 模型路由 的解析順序,並可在設置頁內填寫;額外讀取 模型目錄、密鑰指紋與診斷快照;不註冊任何側欄槽位。

數據來源爲官方接口:GET https://opencode.ai/zen/go/v1/usage 與 GET https://opencode.ai/zen/go/v1/models(網關地址可在頁內配置,默認 https://opencode.ai/zen/go)。

核心功能

設置頁:額度、模型、密鑰、連接

  • 額度:5 小時 / 每週 / 每月三窗口,每張卡含剩餘百分比、進度條、已用比例、重置倒計時、絕對時間與窗口占比;支持手動刷新與按間隔自動刷新。
  • 模型目錄:來自 host 拉取的 /v1/models,展示上下文與輸出上限、視覺/工具/推理能力、每 1M token 價格、峯時倍率等;可搜索、按能力篩選,逐個開關後保存到 llm-pi-ai 的 providers.<route>.models(模型選擇器只顯示已啓用項);「恢復目錄默認」可撤銷限制。
  • API 密鑰:與 設置 → 模型 → OpenCode Go 同源,不必爲額度單獨複製 key;頁面可顯示當前引用與來源、密鑰指紋(不暴露明文);未綁定時可用 同步到模型設置 補配置。
  • 連接與刷新:網關地址、自動刷新間隔、額度緩存 TTL、是否注入 x-opencode-session、是否顯示模型目錄/診斷等,寫入本插件 profile 後 熱生效。

密鑰解析順序(與模型設置同源)

插件按下列順序解析 key(資料原文順序):

  1. llm-pi-ai 的 providers.opencode-go.apiKeyEnv(無 opencode-go 時也會參考 providers.opencode);
  2. llm-pi-ai 登錄憑據 llm-pi-ai/opencode-go;
  3. 環境引用 OPENCODE_API_KEY;
  4. 兜底:本插件配置 apiKeyEnv(默認 OPENCODE_GO_API_KEY)。

在設置頁保存密鑰時,會寫入模型路由使用的同一憑據引用;必要時補上 providers.opencode-go.apiKeyEnv,與模型頁保存等效。

仍可用文件方式(與模型頁同一憑據域):

# ~/.dsh/.credentials.yaml
OPENCODE_API_KEY: sk-...

路由與命令

與上游路徑並存、不衝突,例如:

  • /dsh-opencode-go-quota-settings/usage
  • /dsh-opencode-go-quota-settings/models
  • /opencode-go-quota

DSH Go(手機 App)

插件通過 ctx.settings.configure({ auto: false }) 關閉自動生成表單,App 直接打開插件自帶的 settings.section 整頁(與 Command Code、Prime Memory 同一路徑):額度、模型目錄、密鑰與連接參數同屏,窄屏單列布局。資料說明不在輸入框上方佔用狀態條。

可配置項(插件 profile)

鍵 默認 說明
apiKeyEnv OPENCODE_GO_API_KEY 兜底憑據引用
baseUrl https://opencode.ai/zen/go GO 網關
cacheMs 30000 host 端額度緩存 TTL
refreshMs 60000 設置頁自動刷新間隔(最小 15 秒)
modelsCacheMs 300000 模型目錄緩存 TTL(最小 60 秒)
requestTimeoutMs 20000 /v1/usage、/v1/models 超時
injectSessionHeader true 是否爲 GO 網關聊天注入 x-opencode-session
showModels true 是否顯示模型目錄卡片
showDiagnostics false 是否顯示診斷卡片

開啓診斷後,「複製診斷」輸出不含密鑰明文的 JSON,便於貼到 issue。

版本門禁:peerDependencies 爲 @deepseek-ai/dsh >=0.1.7-rc.1 <0.3.0;README 記載在 DSH 0.2.1-rc.2 隔離 profile 中用真實 key 做過只讀接口驗證(2026-10-31)。

安裝與啓用

若曾安裝側欄版 OpenCode GO 用量插件,先移除,避免設置裏出現兩份 OpenCode GO:

dsh plugin --profile web remove @astervolans/dsh-opencode-go-usage
dsh plugin --profile web add dsh-opencode-go-quota-settings

未走 npm 分發時,也可從 GitHub 安裝:

dsh plugin --profile web add github:zztdandan/dsh-opencode-go-quota-settings

經過上面的步驟,重啓 dsh web,並在瀏覽器 硬刷新。入口:設置 → OpenCode GO;對話中可用 /opencode-go-quota。

回滾:

dsh plugin --profile web remove dsh-opencode-go-quota-settings

典型用法

  1. 確認 設置 → 模型 → OpenCode Go 已能聊天,或在本插件 API 密鑰 卡片粘貼 key 並保存。
  2. 打開 設置 → OpenCode GO,查看三窗口額度;需要時用頁內「刷新」或調整 自動刷新 / 額度緩存。
  3. 在 模型目錄 中搜索、篩選,啓用/禁用模型後保存;用「測試連接」確認 /v1/models 可達。
  4. 排查問題時打開 顯示診斷信息,用「複製診斷」導出 JSON(不含 key 明文)。

頁內 連接與刷新 與 設置 → 插件 裏該插件的配置表單是同一份數據。

適用場景與注意

適合:已在 DSH web(及資料所述的 dsh-go App 路徑)使用 OpenCode GO,希望額度與模型管理集中在設置頁、且密鑰與模型路由一致的用戶;不想側欄再佔一個 widget 時,本插件與上游側欄版可二選一。

注意:

  • 插件在 當前 dsh 進程權限 下運行,安裝前請自行查看 GitHub 倉庫 源碼與 MIT 許可證及 NOTICE 中的 fork 說明。
  • 關閉 注入 x-opencode-session 後,資料提示聊天可能被網關拒絕。
  • 社區插件目錄 SkillHub 上的條目 爲獨立站點信息,與 DeepSeek / 幻方無官方從屬關係;DSH 生態本身是「一切皆插件」的擴展方式。

結尾

dsh-opencode-go-quota-settings 把 OpenCode GO 的額度、模型目錄、密鑰與連接參數收進 設置 → OpenCode GO,同源代理保護 key,並與模型路由共用憑據;側欄無入口,對話可用 /opencode-go-quota。

  • 目錄頁:https://www.skillhub.cn/plugins/zztdandan/dsh-opencode-go-quota-settings
  • GitHub:https://github.com/zztdandan/dsh-opencode-go-quota-settings
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜