前言¶
在 DeepSeek Harness(DSH)裏跑多 workspace、子智能體會話時,Token 消耗分散在各次 assistant/message 事件裏,Web 界面默認不會把「全庫彙總、按日趨勢、預算還剩多少」放在一處。若只靠賬單或手工翻日誌,很難對照當前 profile 裏到底花了多少、哪條 session 最貴、Host 進程是否喫滿 CPU。
下面介紹的 dsh-usage-insights 是社區維護的 Web UI 插件(維護者 yuhaoboris),在左側欄增加 用量統計 入口,用 profile 已持久化的會話日誌做聚合,不造假數據、也不另建賬本。
這是什麼¶
dsh-usage-insights 歸類爲「模型推理」相關插件。它在 Harness Web 側欄註冊圖標(順序 5,位於 Plugins 與 Schedules 之間),打開後展示完整統計面板:總 Token、會話數(含子 agent 拆分)、估算美元成本、預算剩餘、按日時間線、可搜索的會話表,以及 Host 進程的 CPU / 內存採樣。
數據全部來自 ctx.sessionQuery 重放各 session 日誌裏已提交的、帶 provider usage 的 assistant/message;fork 繼承的事件(inheritedEventCount)會跳過,避免父會話重複計費。開發與驗證目標版本爲 DSH 0.2.1-rc.5;package.json 中插件版本爲 1.0.0,許可證 MIT。
核心功能¶
KPI 與預算¶
頂欄 KPI 包括:總 Token、帶 sub-agent 拆分的會話數、估算成本、預算剩餘。預算區展示已花費相對 budgetUsd 的進度、今日花費、近 7 日日均、30 日投影、按當前節奏估算的剩餘天數。預算對比的是全歷史估算成本與配置上限;30 日投影依據最近 7 日日均成本。
時間線¶
按 7 / 14 / 30 天切換日粒度柱狀圖,軸上帶數值標籤。可堆疊展示 cache-read / input / output Token、僅 output,或按日成本;懸停某日可看明細,當天在軸上有標記。Host 返回的日桶長度由 timelineDays 控制(7–90 天)。
會話列表¶
表格列出全部 session,支持排序與搜索,每頁 10 條、表頭固定。列包括模型、Token 合計、估算成本、最後活動時間;展開行可看 Token 分項、模型、工作目錄、session ID、父 session。
CPU 與費率¶
CPU 區塊展示進程 CPU(每核與整機佔比)、系統 CPU、load 1/5/15、內存、uptime、每核條形圖,以及近期採樣的滾動 sparkline;採樣間隔約 2 秒,數據來自 Host 內 node:os 與 process。
Rates 爲可摺疊表格,列出估算成本所用的「每百萬 Token 美元」費率;可在配置裏按模型覆蓋,未列出的模型走 defaultPrice。
成本模型(估算)¶
成本按 README 公式從 usage 字段折算,單位爲 USD / 1M tokens;reasoning tokens 計入 output,不二次計費。這是按配置費率的估算,不是供應商賬單。
cost = input × inputRate
+ cacheRead × cachedInputRate
+ cacheWrite × cacheWriteRate
+ output × outputRate
數據刷新與隱私¶
Host 緩存各 session 的 fold:活躍 session 至多每 10 s 重讀,全庫至多每 5 min 重讀;瀏覽器默認每 5 s 輪詢 snapshot,因此不會每次請求都重放全部日誌。
只讀路由 GET /usage-insights/snapshot 掛在現有 webServer 上,返回聚合、標題、工作目錄、session ID 與 CPU/內存計數,不包含消息正文。與其它命名路由一樣未單獨做鑑權,繼承 server 的 loopback 綁定;響應爲 no-store。
環境與依賴¶
- Profile 需通過 Web GUI(
@deepseek-ai/dsh-web-app或等價物)組裝,並提供ctx.sessionQuery與ctx.webServer。 - Node/Host 運行環境需支持
node:os(常規 DSH desktop/web 部署均滿足)。 - 插件無運行時 npm 依賴,安裝目錄即可,無需
npm install。
安裝與啓用¶
官方流程是先取得倉庫目錄,再在 Harness Web UI 裏把該目錄作爲 bundle 裝進 profile。
git clone https://github.com/yuhaoboris/dsh-usage-insights.git
# SSH instead of HTTPS:
# git clone git@github.com:yuhaoboris/dsh-usage-insights.git
在 Web UI 中選擇 Plugins → Add,選中克隆下來的 dsh-usage-insights 文件夾;profile 的 bundle 選擇與 dsh.profile.bundles 會隨之更新。程序化安裝可對克隆目錄的絕對路徑調用 plugin_manager 的 install_bundle action。
bundle 通過 cordis.patch.yml 插入配置行,默認示例爲:
- insert:
- id: usage-insights
name: dsh-usage-insights
config:
budgetUsd: 20
timelineDays: 30
includeSubagents: true
安裝完成後在左側欄打開 用量統計。若 profile 支持 HMR 通常無需整頁刷新;否則需重啓 profile 後再用。
配置說明¶
可在 profile 的 cordis.patch.yml 中編輯 usage-insights 行,或在安裝前改 bundle 內 cordis.patch.yml 的 config 塊。完整字段示例如下:
- id: usage-insights
config:
budgetUsd: 20
timelineDays: 30
refreshMs: 5000
liveRefreshMs: 10000
fullRefreshMs: 300000
includeSubagents: true
pricing:
deepseek-flash:
input: 0.28
cachedInput: 0.028
cacheWrite: 0.28
output: 0.42
defaultPrice:
input: 0.28
cachedInput: 0.028
cacheWrite: 0.28
output: 0.42
| 字段 | 默認值 | 含義 |
|---|---|---|
budgetUsd |
20 |
預算上限;0 表示不顯示上限相關 UI |
timelineDays |
30 |
Host 返回的日桶天數(7–90) |
refreshMs |
5000 |
瀏覽器輪詢間隔(最小 2000) |
liveRefreshMs |
10000 |
活躍 session 最小重讀間隔 |
fullRefreshMs |
300000 |
全庫重讀間隔 |
includeSubagents |
true |
是否在合計與表格中計入 sub-agent session |
pricing |
DeepSeek 風格估算 | 各模型 USD/1M tokens |
defaultPrice |
同上 | 未列出模型的回退費率 |
默認費率偏 DeepSeek 官方量級,實際賬戶價不同時應改 pricing / defaultPrice,否則成本數字僅供趨勢參考。
典型用法¶
- 在已啓用 Web GUI 的 profile 中按上文安裝 bundle 並打開 用量統計。
- 先看 KPI 與預算條,確認全庫估算成本是否接近你設定的
budgetUsd。 - 在時間線切換 7 / 14 / 30 天,按 Token 堆疊或「僅 cost」觀察近期峯值日。
- 在 Sessions 表搜索模型名或按成本排序,展開高成本行覈對 working directory 與 session ID。
- 長時間跑 agent 時對照 CPU 區塊與 load,判斷 Host 是否資源緊張。
Host 側實現位於 index.js(聚合、snapshot、CPU 採樣),客戶端爲無構建步驟的 client.js,經上述 HTTP 路由拉取數據而非 Remote namespace,以保持零依賴。
適用場景與注意¶
適合:需要在 DSH Web 裏一眼看到真實會話 Token 與估算 spend、做簡單預算約束、同時關心 Host CPU/內存的開發者。
注意:
- 插件在 當前 DSH Host 進程權限 下運行,並註冊本機 web 路由;安裝前請閱讀 倉庫源碼 與 MIT 許可證,確認符合你的安全策略。
- 社區目錄 SkillHub 插件頁 與 GitHub 倉庫由社區維護,與 DeepSeek / 幻方無官方從屬關係;DSH 生態強調「一切皆插件」,安裝來源以你信任的倉庫爲準。
- 無
ctx.sessionQuery或非 Web GUI profile 無法滿足 README 中的 Requirements。 - GitHub 星標爲 0(截至資料抓取),不代表功能描述;以 README 與 CHANGELOG 爲準升級。
結尾¶
dsh-usage-insights 把 profile 裏真實的 assistant/message usage 折成總覽、預算、時間線與逐 session 明細,並附帶 Host 側 CPU 監控,適合作爲日常跑 Harness 時的用量儀表盤。安裝與配置以倉庫 README 爲準。