dsh-opencode-usage:在 DSH web GUI 中顯示 OpenCode Go 套餐用量

前言

在 DSH web GUI 中使用 OpenCode Go 套餐時,滾動、每週、每月用量以及重置時間需要被頻繁查看。dsh-opencode-usage 把這個查詢結果放到 composer 輸入框下方:常駐徽章展示三個窗口的用量百分比和重置倒計時,點擊徽章可以展開卡片,Agent 也可以通過一個無參數工具查詢當前套餐用量。

下面按倉庫名 vinyumao/dsh-opencode-usage 介紹它的功能、安裝方式和需要注意的事項。

這是什麼

  • 倉庫:vinyumao/dsh-opencode-usage
  • 維護者:vinyumao
  • 許可證:MIT
  • 適用對象:DSH web GUI
  • 用途:顯示 OpenCode Go 套餐的滾動、每週、每月用量百分比和重置倒計時
  • 插件形態:按 DSH bundle 插件方式安裝;package.json 聲明 dsh.bundle.patch,安裝後進入 profile 的 dsh.profile.bundles
  • 源碼形態:純源碼 index.mjs / client.js,無構建步驟;宿主側運行時不導入 @deepseek-ai/*

它只針對 OpenCode Go 套餐的訂閱配額窗口,不適用於 OpenCode Zen 按量計費餘額。

核心功能

輸入框下方的常駐徽章

插件會在 DSH web GUI 的 composer 輸入框下方顯示一個常駐徽章,展示:

  • 滾動用量百分比
  • 每週用量百分比
  • 每月用量百分比
  • 重置倒計時

徽章會按可配置間隔自動刷新。

用量卡片

點擊徽章後展開用量卡片。卡片內包含:

  • 滾動、每週、每月三個窗口的進度條
  • 每個窗口已使用的百分比
  • 每秒更新的重置倒計時
  • 立即刷新按鈕
  • 一個 opencode 鏈接,點擊後在新標籤打開 web 用量面板

卡片內配置表單

用量卡片內提供配置表單,可以填寫:

  • API key
  • Base URL
  • 刷新間隔
  • web usage URL

保存會立即生效。

Agent 工具 opencode_go_usage

插件提供一個無參數的 Agent 工具:

opencode_go_usage

Agent 調用它後,可以查詢 OpenCode Go 套餐當前三個窗口的餘額或用量信息,包括滾動、每週、每月窗口的已用百分比和重置倒計時。

本地化

插件界面支持中文和英文:

  • 文案跟隨 DSH 全局語言設置
  • 卡片頁腳提供中文 / 英文切換

請求與密鑰處理

瀏覽器不會直接請求上游。插件把相關請求交給宿主進程處理,使用同源路由:

/api/dsh-opencode-usage/*

API key 不進入瀏覽器。

API key 默認從環境變量讀取:

OPENCODE_GO_API_KEY

通常情況下可以零配置使用。也可以在卡片配置表單中覆蓋。

安裝與啓用

環境要求

插件要求 Node 版本滿足:

^22.19.0 || >=24.0.0

安裝命令

運行下面命令安裝插件:

dsh plugin --profile web add github:vinyumao/dsh-opencode-usage#<ref>

這裏的 <ref> 可以固定爲 commit SHA,便於復現安裝。

安裝後重啓 dsh web。啓動後,composer 輸入框下方應出現 OpenCode Go 用量徽章。

pnpm 構建權限問題

如果 pnpm 拒絕運行 git 依賴的 prepare 腳本,需要把 pnpm 打印的 package key 加入 profile 的 pnpm-workspace.yamlallowBuilds,然後重試。

典型用法

1. 安裝並重啓

dsh plugin --profile web add github:vinyumao/dsh-opencode-usage#<ref>

安裝完成後重啓 dsh web

2. 查看徽章

打開 DSH web GUI,在 composer 輸入框下方查看 OpenCode Go 徽章。徽章會顯示三個窗口的用量百分比和重置倒計時。

3. 展開卡片

點擊徽章展開用量卡片,查看進度條、已用百分比、每秒重置倒計時,並可以點擊立即刷新按鈕。

4. 讓 Agent 查詢

在會話中讓 Agent 運行 opencode_go_usage 工具,獲取滾動、每週、每月三個窗口的已用百分比和重置倒計時。

5. 處理查詢失敗

如果徽章顯示 query failed,先檢查是否設置了:

OPENCODE_GO_API_KEY

如果沒有設置,也可以點擊徽章,在卡片配置表單中填寫 API key。

6. 卸載

運行下面命令卸載插件:

dsh plugin --profile web remove @chen-001/dsh-opencode-usage

卸載後重啓 dsh web

如果不再安裝該插件,並且卡片配置表單中填寫過 API key,可以刪除本地配置文件:

rm ~/.dsh/dsh-opencode-usage.json

該文件保存 API key,文件權限爲 0600

適用場景與注意

適合在 DSH web GUI 中長期使用 OpenCode Go 套餐、並且希望在輸入框附近直接看到用量狀態的開發者。它也適合希望 Agent 在對話中按需查詢套餐用量的場景。

使用前需要注意:

  • 插件以當前 dsh 進程的權限運行,安裝前應檢查倉庫源碼與許可證。
  • 許可證爲 MIT
  • 它只針對 OpenCode Go 套餐,不適用於 OpenCode Zen 按量計費餘額。
  • 用量端點被標註爲未驗證:
GET https://opencode.ai/zen/go/v1/usage

該端點不屬於官方公開文檔,響應結構可能變化,不能確認其長期穩定性。
- API key 默認讀取 OPENCODE_GO_API_KEY,也可以在卡片配置表單中覆蓋。
- 如果在卡片中保存了 API key,密鑰會明文保存在:

~/.dsh/dsh-opencode-usage.json

不再使用時可刪除該文件。

結尾

dsh-opencode-usage 解決的是 DSH web GUI 中 OpenCode Go 套餐用量的可見性問題:徽章常駐顯示,卡片展開細節,Agent 可調用 opencode_go_usage 工具查詢。當前資料未提供目錄頁 URL;GitHub 地址爲:

https://github.com/vinyumao/dsh-opencode-usage

羽毛球分组比赛记分
小程序二维码

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

小夜