前言¶
在 DeepSeek Harness(DSH)裏開多個會話時,模型調用會逐條產生 usage,但界面側欄通常只顯示會話標題,很難快速判斷「這一條會話累計花了多少 Token、大致多少錢」。若要到後端或賬單裏對照,又和當前正在懸停的那條會話對不上號。
下面介紹維護者 limingwei-88 的客戶端插件 dsh-session-usage-meter(npm 包名同插件名,當前版本 0.1.0,MIT 許可證):在側邊欄會話行的懸浮卡片裏彙總該會話的累計 Token,並按可配置價格表給出人民幣估算,數據只讀當前會話已落盤事件,不額外發請求。
這是什麼¶
dsh-session-usage-meter 是 DSH 的 Web 客戶端插件,分類爲客戶端。Host 端(index.js)僅用於讓 bundle 可被解析,不註冊資源;實際 UI 在 client.js 中通過 ctx.slots.inject('sidebar.session.row.hover', ...) 注入區塊。
它解決的是「按會話一眼看清用量與粗略成本」的問題,和在整個應用裏做全局計費儀表盤不同:數字只在鼠標懸停該會話行時出現,且明確標註爲估算而非賬單。
核心功能¶
-
按會話彙總 usage
對當前會話每個assistant/message事件上的usage求和,包含輸入、輸出、緩存命中(cacheRead)、緩存寫入(cacheWrite)。 -
懸浮卡片展示
一行摘要形如:12.4k Tokens · 估算 ¥0.0081;繼續懸停可見分項明細。 -
內置價格表與本地覆蓋
默認價格在client.js的DEFAULT_PRICES中,按模型名匹配;匹配不到則用default。可在瀏覽器localStorage寫入dsh-session-usage-meter.prices覆蓋,無需改代碼或重新構建。 -
界面與主題
跟隨 DSH 主題,不單獨引入配色;中英文文案隨界面語言切換。 -
數據邊界
數據全部來自該會話自身的事件窗口,不把用量寫回會話,也不發起額外 HTTP 請求。
安裝與啓用¶
安裝前請自行查看 GitHub 倉庫 源碼與 MIT 許可證;插件隨當前 dsh 進程與 Web 前端運行,權限與所用 profile 一致。
README 給出的安裝方式如下(--profile web 爲默認 Web profile;若本機用 Desktop 等其它 profile,請換成實際啓動名,否則會裝到別的 profile 裏當前界面看不到):
# 從 npm 安裝(發佈後)
dsh plugin --profile web add dsh-session-usage-meter
# 從 GitHub 安裝
dsh plugin --profile web add github:limingwei-88/dsh-session-usage-meter
# 從本地目錄安裝(開發調試)
dsh plugin --profile web add "C:\\path\\to\\dsh-session-usage-meter"
安裝後重啓 dsh 並刷新頁面。dsh plugin ... add 只是把包加入 profile 依賴;bundle 掛載還需 dsh.bundle.patch 被 profile 選中。本包自帶 cordis.patch.yml,在支持 dsh.bundle 的 DSH 版本上會自動登記。
運行環境要求(來自 package.json):Node >= 20。
典型用法¶
日常查看¶
- 完成安裝並重啓、刷新後,在側邊欄將鼠標移到目標會話行上。
- 在會話行懸浮卡片中查看累計 Token 與「估算 ¥…」;需要明細時保持懸停即可。
覆蓋默認價格(人民幣 / 每百萬 Token)¶
默認字段含義與默認值:
| 字段 | 含義 | 默認值 |
|---|---|---|
input |
輸入(緩存未命中) | 2 |
cacheRead |
緩存命中 | 0.2 |
cacheWrite |
緩存寫入 | 2 |
output |
輸出 | 3 |
在瀏覽器控制台執行後刷新頁面:
localStorage.setItem(
'dsh-session-usage-meter.prices',
JSON.stringify({ default: { input: 2, cacheRead: 0.2, cacheWrite: 2, output: 3 } })
)
可按模型名在 JSON 中增加與 DEFAULT_PRICES 相同的鍵,實現按模型區分單價;自定義 provider 下模型名對不上表項時會落到 default。
金額僅爲估算:不含套餐折扣、階梯計價、緩存策略差異,也不包含未被 usage 覆蓋的消耗。
適用場景與注意¶
適合誰
- 在 DSH Web 側欄頻繁切換會話、希望懸停即可對比各會話 Token 與粗略成本的開發者或智能體調試者。
- 需要本地自定義單價、又不想動插件源碼重新打包的場景。
已知限制(來自 README)
- 只統計帶
usage的assistant/message;早期歷史或中斷的調用可能沒有 usage。 - 懸浮卡片僅在懸停該會話行時掛載,沒有常駐數字。
- 價格按模型名精確匹配;陌生模型名走
default。
DSH 生態理念是「一切皆插件」;SkillHub 目錄頁 爲社區站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-session-usage-meter 把單會話 Token 彙總與人民幣粗算放進側欄會話行懸浮卡片,只讀本地會話事件、可 localStorage 調價,適合邊跑 Harness 邊對照用量。安裝與價格細節以倉庫 README 爲準。