dsh-cost-pill:在 DSH Web 裏實時查看對話花費(人民幣)

前言

在 DeepSeek Harness(DSH)裏跑長對話、多輪工具調用時,界面上通常能看到輪次、步數、吞吐和 token 統計,但很難立刻把「用了多少 token」換算成「這次對話花了多少錢」。若按上下文長度粗估,又容易和 provider 實際上報的緩存命中、寫入分桶不一致。維護者 xin1223yue 的客戶端插件 dsh-cost-pill 面向 DSH Web:在輸入框下方統計行和每條助手回覆腳註各增加一格人民幣金額,點開可看分項賬單,並按每條回覆的 turn/start 時刻套用官方高峯/空閒價表計價。

這是什麼

dsh-cost-pill 是掛在 DSH Web 上的純前端 bundle(分類:客戶端)。它不註冊 Host 服務、不發額外網絡請求,只讀取會話裏已有的 turn-tail.tokenUsage、路由模型與時間戳,在官方預留槽位裏渲染金額與賬單彈層。倉庫:xin1223yue/dsh-cost-pill;社區目錄:SkillHub 條目。當前包版本 1.1.0,許可證 MIT,在資料中於 dsh 0.2.1-rc.5(Windows / Chromium)上驗證。

界面上會出現什麼

下面三塊能力均來自 README 說明,可與截圖 docs/demo.png、docs/turn.png 對照。

統計行一格:與「輪次 / 步數 · tok/s|總 token · 緩存命中|進度」並排,例如顯示 ¥2.15,不佔額外一行。

每輪腳註一格:在複製、點贊、用量 x.xM tok 同一行旁增加本輪花費(如 ¥0.07)。

點開賬單:展示輸入(未命中 + 緩存寫入)、緩存命中、輸出三行,各行含 token 與金額;並標明模型、計費時刻、當前時段、當輪單價。彈層複用官方「輪次用量」類 UI(半透明菜單、背景虛化)。窗口外沒有逐輪記錄的部分會用已計價輪次的均價折算,並一定帶 ≈ 標記。

計價邏輯(爲何數字可信)

插件按「能拿到時間的輪次儘量精確、否則估算且標 ≈」設計,要點如下。

關心的事 做法
分桶是否準確 用 provider 上報的真實桶(含緩存命中/寫入),不按上下文長度估
高峯 / 空閒 按該輪 turn/start 定檔;跨 12:00、18:00 自動分段(北京時間高峯 09:00–12:00 / 14:00–18:00)
換模型 讀 routes[].model,歷史輪次不被新模型價覆蓋
重開舊會話 已加載輪次按當時價,不用今天時段重算
性能與侵入 純前端讀現有數據;只往 conversation.composer.dock(id cost,order 2)與 conversation.chat.assistant-actions(id cost,order 60)各加一格

價表單位爲 元 / 百萬 tokens(節選自 README):高峯 deepseek-v4-flash 輸入未命中 3、緩存命中 0.1、輸出 9;空閒 flash 分別爲 1.5、0.05、4.5;pro 檔數值更高。2026-08-17 之前有舊價行;cacheWrite 按未命中輸入價計。改價需編輯 bundle 內 client.js 的 V4_PEAK / V4_OFFPEAK / V4_BASE / POLICY_SWITCH。

安裝與啓用

插件零運行時依賴、無構建步驟;安裝是把包掛到 profile 的 node_modules 並把包名寫入 dsh.profile.bundles。裝完後需重啓 dsh web,再對頁面 Ctrl+Shift+R 硬刷(bundle revision 在 dsh 啓動時烘進頁面)。

方式一:克隆目錄 + 一鍵腳本(README 推薦,腳本不聯網裝包)

Windows:

git clone https://github.com/xin1223yue/dsh-cost-pill.git
cd dsh-cost-pill
powershell -ExecutionPolicy Bypass -File .\install.ps1

macOS / Linux:

git clone https://github.com/xin1223yue/dsh-cost-pill.git
cd dsh-cost-pill && sh ./install.sh

install.mjs 會在 ~/.dsh/profiles/web/node_modules/dsh-cost-pill 建指向克隆目錄的鏈接,並把 dsh-cost-pill 寫入 package.json 的 dependencies 與 dsh.profile.bundles(冪等)。可選參數:--profile <名字>(默認 web,也讀 $DSH_PROFILE)、--dry-run。

方式二:dsh 插件命令(需聯網)

dsh plugin --profile web add xin1223yue/dsh-cost-pill

該命令只加依賴(經 pnpm);還須手工編輯 ~/.dsh/profiles/web/package.json,把 "dsh-cost-pill" 加入 dsh.profile.bundles,否則不會加載。

生效與卸載

重啓示例(Windows,默認端口 3080):

powershell -ExecutionPolicy Bypass -File .\restart-dsh.ps1

或手動結束 dsh web 後重新啓動,用新控制台 URL 打開頁面並硬刷。

卸載:

dsh plugin --profile web remove dsh-cost-pill

並從 dsh.profile.bundles 刪除對應行後重啓。

典型用法

  1. 完成安裝並重啓 DSH Web,打開任意會話。
  2. 看輸入框下方統計行是否出現人民幣一格;完成一輪對話後,在該條助手回覆腳註行查看本輪金額。
  3. 點擊金額打開賬單,覈對三行分桶與「當前時段高峯/空閒」說明是否符合該輪發生時刻。

開發側離線校驗計價純函數:

node verify.mjs

適用場景與注意

適合:長期在 DSH Web 裏調試智能體、需要按官方 DeepSeek 價表(含高峯策略)對照真實 token 分桶的用戶。

權限與安全:插件以當前 dsh 進程及瀏覽器會話上下文運行;apply() 爲空實現,不碰 API Key。安裝前建議瀏覽倉庫源碼與 MIT 許可證。

已知限制(README 原文):一輪內跨模型重試時整輪按最後一路由計價;只認 DeepSeek 價表,其他 provider 模型落到 flash 檔僅供參照;子代理獨立會話各自計費,不彙總到父會話。

兼容性:依賴槽位名 conversation.composer.dock 與 conversation.chat.assistant-actions;若未來 dsh 重命名槽位,金額可能靜默不出現,需在 apply() 中改掛載名。

結尾

dsh-cost-pill 把「這次對話多少錢」放進 DSH 已有的統計行與回覆腳註,計價跟逐輪日誌與時間戳走,高峯/空閒與歷史會話重開行爲在 README 中有明確表格說明。需要安裝步驟與價表細節時,以 GitHub README 爲準:https://github.com/xin1223yue/dsh-cost-pill;目錄頁:https://www.skillhub.cn/plugins/xin1223yue/dsh-cost-pill。

DSH 生態主張「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

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

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

小夜