dsh-plugin-openai-quota:DSH Web UI 頂欄一行額度提示

前言

在 DeepSeek Harness(DSH)裏同時用 DeepSeek 賬戶和已在 DSH 裏登錄的 ChatGPT/Codex 時,餘額、5 小時窗口剩餘比例、周額度以及重置卡到期時間往往要分別打開網頁或設置頁查看。下面介紹的插件把這幾項收成 Web UI 頂邊一條固定狀態行,不彈面板、不佔側邊欄,適合長時間開着 DSH 桌面端或 dsh web 時掃一眼用量。

這是什麼

dsh-plugin-openai-quota 由維護者 pythoner1984 發佈,在 SkillHub 插件目錄 中歸類爲客戶端插件。官方簡介是:爲 DeepSeek Harness 提供一行額度通知——DeepSeek 餘額、ChatGPT/Codex 速率限制窗口與重置卡信息。

數據全部來自你已在 DSH 中登錄的賬戶;插件不會新建、複製或存儲 API Key。

界面上顯示什麼

通知條固定在 DSH 窗口頂邊,示例形態如下(數值隨賬戶實時變化):

DeepSeek餘額:65.2元 | OpenAI額度26%(80%) 重置時間:12:10(11月7日) | 重置卡:1張 11月7日 05:23到期

各段含義與數據來源如下。

顯示段 來源 說明
DeepSeek 餘額 DSH deepseekAccount.getBalance() 人民幣錢包,保留一位小數
OpenAI 當前額度 + 重置時刻 GET https://chatgpt.com/backend-api/wham/usage → rate_limit.primary_window 5 小時窗口剩餘百分比,重置時間爲 HH:mm
OpenAI 周額度 + 周重置 同上 → rate_limit.secondary_window 周窗口剩餘百分比與重置日期
重置卡 GET https://chatgpt.com/backend-api/wham/rate-limit-reset-credits 仍爲 available 且計劃支持的卡中,最近到期的一張

點擊「重置卡」相關段落會在系統默認瀏覽器打開 ChatGPT 用量頁;插件只展示信息,不會替你兌換重置卡。

客戶端通過 shell.overlay(id: openai-quota,order: 600)註冊頂欄 overlay,向 Host 請求 /openai-quota/summary 渲染;每 15 分鐘刷新一次,頁面重新可見時立即再拉一次。

工作原理概要

Host 端(index.js)從 DSH 憑證庫讀取已有 ChatGPT OAuth(llm-pi-ai/openai-codex),調用上述兩個 chatgpt.com/backend-api/wham/* 接口,並通過 deepseekAccount 讀 DeepSeek 餘額,對外提供四條需本地信任校驗的路由:

路由 方法 用途
/openai-quota/summary GET 通知條渲染所需的彙總
/openai-quota/usage GET 原始額度窗口
/openai-quota/health GET 脫敏自檢(排障用)
/openai-quota/reset-card/open POST 在默認瀏覽器打開用量頁

瀏覽器側僅看到百分比、時間戳與卡數量;訪問令牌不離開 Host 進程。

環境與依賴

  • 帶 Web UI 的 DeepSeek Harness(桌面應用或 dsh web)。
  • 已在 DSH 中配置 ChatGPT/Codex 登錄(OpenAI 額度段依賴此 OAuth)。
  • 可選:已登錄 DeepSeek 賬戶;未登錄時餘額段顯示爲 —。

package.json 要求 Node >=20;當前插件版本爲 1.8.0,許可證 MIT(非 OpenAI / DeepSeek 官方項目)。

安裝與啓用

官方 README 給出的方式是:將倉庫克隆到持久目錄,再用 DSH Plugin Manager 以本地 bundle 安裝。

git clone https://github.com/pythoner1984/dsh-plugin-openai-quota.git

在 DSH Plugin Manager 中執行(將 <absolute path to the clone> 換成本機克隆目錄的絕對路徑):

plugin_manager install_bundle   target: <absolute path to the clone>

git pull 更新代碼後需重新安裝 bundle 或重啓 DSH 以加載新版本。

也可在自己的 Cordis 組合中插入:

- insert:
    - id: openai-quota
      name: 'dsh-plugin-openai-quota'

移除 bundle 會去掉 overlay 條目,不殘留插件狀態。

配置

無配置文件。刷新間隔、時區(Asia/Shanghai)與目標 URL 在代碼中爲常量,不能通過配置改指向其他主機。若需不同行爲需 fork 倉庫自行修改。

典型用法與交互

  1. 完成安裝並重啓或重裝 bundle 後,打開 DSH Web UI,頂邊應出現一行額度文案。
  2. 需要覈對 OpenAI 側是否正常時,可在本機訪問 GET /openai-quota/health(須通過 DSH 本地信任校驗),查看脫敏 JSON,例如:
{
  "ok": true,
  "plugin": "dsh-plugin-openai-quota",
  "version": "1.8.0",
  "routes": { "usage": true, "summary": true, "health": true, "openResetCard": true },
  "credentialConfigured": true,
  "openaiReachable": true,
  "usageError": null,
  "windows": { "primary_window": true, "secondary_window": true },
  "resetCredits": { "status": "ready", "count": 1, "nextExpiresAt": "2026-11-06T21:23:57.312Z" }
}
  1. 點擊重置卡段落打開瀏覽器用量頁;在桌面應用內可能只打開頁面頂部,無法像瀏覽器標籤頁那樣通過 text-fragment 定位到重置卡區塊(README 已知限制)。

開發側可運行 npm test(node --test,覆蓋 Host 與 Client 兩半)。

適用場景與注意

適合:已在 DSH 內登錄 ChatGPT/Codex、並希望在不打開額外面板的前提下監視 DeepSeek 餘額與 OpenAI 窗口額度、重置卡到期時間的用戶。

安全與隱私(README 強調):不索取 admin key;各路由經 connection.requestRejection 本地信任檢查,失敗則關閉;打開瀏覽器時 URL 爲 Host 常量,不把請求參數拼進 shell。

已知限制:

  • chatgpt.com/backend-api/wham/* 屬於 ChatGPT Web 內部接口,可能變更;異常時界面降級爲 — / 暫不可用 而非整頁崩潰。
  • 重置時間一律按 Asia/Shanghai 顯示,而非本機時區。
  • credentialConfigured: false 表示未找到 llm-pi-ai/openai-codex 登錄;usageError: "upstream-http" 且 401 時 OAuth 可能過期,需在 DSH 內重新登錄。

插件以當前 DSH 進程權限運行;安裝前請閱讀 GitHub 倉庫 源碼與 MIT 許可證,自行評估風險。DSH 生態強調「一切皆插件」;SkillHub 目錄 爲社區站點,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-plugin-openai-quota 把 DeepSeek 餘額、ChatGPT 主/次窗口額度與重置卡到期收成 Web UI 頂欄一行,複用 DSH 已有登錄、無需額外 Key。需要安裝步驟與排障表時,以 README 爲準。

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

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

小夜