dsh-plugin-minimax-usage:在 DSH 側邊欄即時查看 MiniMax Coding Plan 配額

前言

用 DeepSeek Harness(DSH)搭配 MiniMax Coding Plan 時,想知道配額還剩多少,得切到 MiniMax 平臺後臺去看:5 小時窗口什麼時候重置、本週用量走到哪了,都不在眼前的界面裏。寫代碼時來回切換,很打斷。

DSH 的理念是「一切皆插件」,客戶端 UI 也不例外。下面介紹的 dsh-plugin-minimax-usage 是一個客戶端插件:它把 5 小時配額、每週配額的進度條和重置倒計時直接渲染在 DSH web 界面的側邊欄裏,每 60 秒自動刷新。

這是什麼

dsh-plugin-minimax-usage 由 ovensi 維護,MIT 協議,npm 包名爲 @dsh-external/minimax-usage,當前版本 0.1.0,要求 Node.js >= 18.0.0。

它解決一個問題:不離開 DSH web 界面,直接看到 MiniMax Coding Plan 的配額使用情況。

實現分兩端:

  • Host 端(lib/index.js)註冊 /api/minimax/quota 接口,讀取 MINIMAX_API_KEY 並調用 MiniMax REST API,結果帶 60 秒服務端緩存;
  • Client 端(lib/client.js)把配額面板渲染在 sidebar.footer.action 槽位,位於 Settings 按鈕上方,通過 fetch('/api/minimax/quota') 取數。

核心功能

已實現的能力:

  • 5-Hour Quota Bar:即時顯示當前 5 小時週期剩餘配額進度條;
  • Weekly Quota Bar:每週配額使用量一覽;
  • Reset Countdown:顯示各窗口重置倒計時,如「重置於 2h 17m」;
  • Collapsible Panel:點擊箭頭可摺疊/展開,摺疊態顯示緊湊摘要;
  • Auto Refresh:通過服務端緩存每 60 秒自動刷新;
  • Sidebar Integration:渲染在 sidebar.footer.action 槽位,位於 Settings 按鈕上方;
  • Lightweight:純 React.createElement 實現,無 CSS 框架、無外部圖片。

README 中的面板效果示意(數字爲示例):

┌──────────────────────────────┐
│  ▼ MINIMAX                   │
│  5 小時   42 / 100 (42%)     │
│  ████████████░░░░░░░░░░░░░░  │
│  重置於 2h 17m                │
│  本週     78 / 100 (78%)     │
│  ████████████████████████░░  │
│  重置於 3d 12h               │
└──────────────────────────────┘
       ↕ click to toggle
┌──────────────────────────────┐
│  ▶ MINIMAX  5h: 42% · 周: 78%│
└──────────────────────────────┘

安裝與啓用

先安裝包,再註冊插件,最後配置 API key。

1、進入 web profile 目錄安裝。推薦本地路徑安裝(Quick Install),不依賴 npm registry:

cd ~/.dsh/profiles/web
npm link /path/to/this/plugin

或:

cd ~/.dsh/profiles/web
pnpm add /path/to/this/plugin

npm 包名爲 @dsh-external/minimax-usage。README 中的 registry 安裝方式(pnpm add @dsh-external/minimax-usage)標註爲 (when published),使用前請先確認包已實際發佈;本地路徑安裝沒有這個前置條件。

2、在 ~/.dsh/profiles/web/cordis.patch.yml 末尾追加註冊項:

- insert:
    - id: minimax-usage
      name: '@dsh-external/minimax-usage'

3、在 shell 密鑰文件(如 ~/.zshrc.secret)中導出 API key。key 來自 MiniMax Open Platform(https://www.minimaxi.com/):

export MINIMAX_API_KEY="your-minimax-api-key-here"

插件在請求時通過 source~/.zshrc.secret 讀取該變量。

4、重啓 DSH web 服務器,然後強制刷新瀏覽器(Cmd+Shift+R / Ctrl+Shift+R):

dsh web

經過上面的步驟,側邊欄底部、Settings 按鈕上方會出現 MINIMAX 配額面板。

重置倒計時的實現細節

這裏有一個值得留意的坑:MiniMax API 返回的 remains_time / weekly_remains_time 字段不可靠,5 小時窗口可能返回約 96 天。插件沒有使用這兩個字段,而是改用 end_time - Date.now() 推導重置倒計時。

另外幾個與數據相關的行爲:

  • end_timestart_timeweekly_end_timeweekly_start_time 按 Unix 毫秒時間戳處理,儘管字段名沒有體現這一點;
  • 配額百分比由 API 以 0–100 整數返回;
  • MINIMAX_API_KEY 未設置,插件會在側邊欄顯示錯誤信息,而不是崩潰。

刷新頻率爲每 60 秒一次(服務端緩存),面板數字不會逐秒變化,屬預期行爲。

適用場景與注意

適合兩類場景:

  • 把 MiniMax Coding Plan 作爲 DSH 的常用模型來源,需要在長會話中隨時掌握 5 小時窗口和每週配額;
  • 不想頻繁切到平臺後臺查用量,希望在側邊欄一眼看到進度條和重置時間。

使用前注意:

  • 插件以當前 dsh 進程的權限運行,host 端會持有你的 MINIMAX_API_KEY 並向外調用 MiniMax REST API。安裝前建議先閱讀源碼確認數據流向,並覈對許可證(本項目爲 MIT);
  • 重置倒計時基於 end_time 推算,依賴 MiniMax API 返回的時間戳字段,若上游字段行爲變化,以插件倉庫的後續更新爲準。

結尾

這個插件做的事不復雜:把配額查詢從「切後臺」變成「掃一眼側邊欄」。對 MiniMax Coding Plan 用戶來說,是一個小而實用的補充。

  • 插件目錄頁:https://www.skillhub.cn/plugins/ovensi/dsh-plugin-minimax-usage
  • GitHub 倉庫:https://github.com/ovensi/dsh-plugin-minimax-usage

需要說明的是,skillhub.cn 是社區維護的插件目錄,爲獨立站點,與 DeepSeek、幻方沒有官方從屬關係。

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

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

小夜