前言¶
用 DSH Web GUI 做開發時,額度這件事通常是另開一個頁面看:登錄 Fireworks Nexus 桌面應用、找到 Overview 卡片、確認本月用了多少、5 小時會話窗口還剩下多少、重置時間是幾點。再想看細一點,比如每個模型花了多少錢、緩存命中率多少,網頁端沒有對應的入口。
下面介紹的插件就是把這張用量卡片搬進 DSH Web GUI。它不開放新的計費能力,只是用 Nexus 客戶端自己用過的那個私有 REST API,把已經存在的用量數據讀到面板裏,並附帶按模型的花費拆解。
這是什麼¶
dsh-nexus-usage-panel(目錄頁分類:聯網工具)由 bradywatkinson 維護,是一個 DeepSeek Harness Web GUI 的面板插件。
它做的事情一句話:在 DSH 的 Settings → Nexus Usage 頁面復刻 Fireworks Nexus 桌面應用 Overview 卡片上的內容,包括套餐檔位、本月已用百分比與重置日期、當前會話已用百分比與重置時間,並額外提供按模型的花費拆解和估算節省、緩存命中行(README 中標註爲 Milestone 2)。
它不改計費,也不修改用量數據;面板只讀,數據來自 Nexus 桌面應用在登錄時簽發的那把機器級密鑰。
核心功能¶
面板讀的是 nexus.fireworks.ai 和 Nexus 桌面應用在讀的同一套私有 REST API。README 裏給出的端點對應關係如下:
| 端點 | 用途 |
|---|---|
GET /v1/accounts/{account}/nexusPlans |
當前套餐檔位與計費週期 |
GET /v1/accounts/{account}/users/{user}/nexusPlanUsage |
monthly 與 5 小時 rollingWindow 的用量百分比和重置時間 |
POST /v1/accounts/{account}/usageCosts:query |
按天、按模型的花費(Milestone 2),歸屬滯後於儀表 |
POST /v1/accounts/{account}/usageSavings:query |
實時按天花費、估算節省與緩存命中率 |
認證用的是 Nexus 桌面應用登錄時簽發的機器密鑰,存放在 macOS 登錄鑰匙串裏(服務名 FireworksAI,賬號 fireworks-api-key)。密鑰不會離開本機進程,瀏覽器側只會拿到脫敏後的百分比。覆蓋方式有兩種:環境變量 FIREWORKS_NEXUS_KEY 或插件配置裏的 apiKey;網關地址可用 NEXUS_GATEWAY_URL 或配置項 gatewayBase 覆蓋。
需要注意一點:nexusPlanUsage 只暴露套餐額度的百分比,不返回金額;而 savings 端點對成員密鑰會返回美元花費(見 README 指向的 Milestone 2 文檔)。按模型的花費只能通過 usageCosts:query 拿到,其歸屬進度落後於儀表(月初會處於 INCOMPLETE、沒有行),在歸屬完成前面板會顯示一條歸屬等待提示,並附帶一條從 savings 管道讀取的實時每日花費趨勢,同時把模型查詢窗口放寬到最近 30 天,讓上一週期的行在歸屬後立即出現。
每日花費趨勢默認渲染成 GitHub 風格的貢獻網格(周對齊到週日、月標籤、Nexus 粉色熱力、Less→More 圖例),每一格有品牌懸浮提示(Tue, Nov 3 · $4.25,無花費留空);區塊頭部的 ▦/☰ 選擇器可切換成按天表格。這個選擇是宿主端設置,持久化在 ~/.dsh/nexus-usage-panel.json,由 GET/POST /api/dsh-nexus-usage/config 提供,取值形如 {"spendStyle": "grid" | "table"},其他值回落到 grid。
另外,DSH 會話本身走 Nexus Auto(api.fireworks.ai/inference/v1,model 爲 auto),Fireworks 在服務端路由,不會把命中的模型 id 回傳給客戶端。
安裝與啓用¶
在 DSH profile 裏,或者通過 Web GUI 的 Plugins 頁安裝。README 給出的命令是:
# In a DSH profile (or via the Plugins page):
pnpm add dsh-nexus-usage-panel
也可以在 DSH Web GUI 裏直接裝:Plugins → Install,spec 填 dsh-nexus-usage-panel。裝完刷新,打開 Settings → Nexus Usage。
不走 npm、直接從 GitHub 安裝:同樣在 Plugins → Install,spec 填:
github:bradywatkinson/dsh-nexus-usage-panel
用實驗性的 Discover 標籤(自定義插件市場)時,添加 index 源:
https://raw.githubusercontent.com/bradywatkinson/dsh-nexus-usage-panel/main/market/index.json
然後從卡片上安裝 Nexus Usage。該 index 是 format-1,用 @deepseek-ai/dsh-plugin-market-index 校驗過。
README 給了兩條運行時前提:密鑰讀取只支持 macOS(且 Nexus 桌面應用必須登錄過一次);網關讀取每分鐘一次並帶緩存,plan 與 seat 各自獨立失敗,與 Nexus 應用行爲一致。
典型用法¶
裝好之後不用再關心命令行參數。在 macOS 上確保 Nexus 桌面應用已登錄過,然後打開 DSH Web GUI,進入 Settings → Nexus Usage,頁面會渲染以下內容:套餐檔位徽標、”This month — N% used · Resets
如果歸屬數據還在 INCOMPLETE 狀態,頁面上會顯示歸屬等待說明,同時用一條每日花費趨勢圖替代按模型行。想切表格視圖,用區塊頭部 ▦/☰ 選擇器;切完刷新後仍然保持,因爲宿主會把選擇寫進 ~/.dsh/nexus-usage-panel.json。
驗證改動是否生效可以用倉庫自帶的測試:
npm test # host shaping + client smoke
倉庫結構上,lib/index.js 是宿主側 cordis 插件,提供 /api/dsh-nexus-usage/usage;lib/client.js 是瀏覽器側模塊,在 settings.section 槽位渲染儀表卡片;cordis.patch.yml 是打包用的補丁行。
適用場景與注意¶
適合手上有 Fireworks Nexus 額度、同時在 DSH Web GUI 裏幹活的開發者,想在一個界面裏確認本月與 5 小時窗口還剩多少、以及每個模型大概花掉多少。
幾個必須知道的前提:
- 目前只有 macOS 可用,因爲要讀登錄鑰匙串;Nexus 桌面應用需先登錄一次以簽發密鑰。
- 面板以當前 DSH 進程的權限運行,也就是它會以你的賬號身份訪問這些只讀端點。安裝前建議先讀一遍
lib/下的源碼與LICENSE(MIT),確認它訪問的端點範圍符合你的預期。 - 按模型花費存在歸屬滯後,月初可能沒有數據;此時面板自動回退到實時每日花費趨勢,不是功能壞了。
- Token 級別的明細沒有任何已驗證端點會暴露,打算做 token 級追蹤的可以先跳過。
- 倉庫目前星標數爲 0,屬於早期項目,接口或配置字段在後續版本中可能調整。
需要修問題或跟蹤進展,README 指向 Issues 頁:https://github.com/bradywatkinson/dsh-nexus-usage-panel/issues 。Milestone 2(#3)的規劃是繼續推進 usageCosts:query 的按模型/token 拆解。
結尾¶
這個插件沒有引入新的計費口徑,它的價值在於把分散在 Nexus 桌面應用裏的計劃檔位、月份用量、會話窗口和重置時間集中到 DSH Web GUI 的同一頁,並補上按模型花費與節省估算這條線。對已經在用 Nexus 的 DSH 開發者來說,屬於可以直接替代「另開一個頁面看額度」這一步的工具。
目錄頁:https://www.skillhub.cn/plugins/bradywatkinson/dsh-nexus-usage-panel
源碼:https://github.com/bradywatkinson/dsh-nexus-usage-panel