turn-cost-footer:在 DSH 完成輪頁腳顯示本輪與今日人民幣消耗

前言

在 DeepSeek Harness(DSH)里長時間跑會話時,模型每輪會消耗大量 token,但界面頁腳通常只顯示用量與時間,不直接給出按本地單價折算的人民幣金額。若要對賬或控制日預算,只能事後查日誌或自行估算。社區插件 turn-cost-footer(倉庫 qcy-good/turn-cost-footer)在每條助手回覆完成後的頁腳末尾追加「本輪真實消耗」與「今日累計」,數據來自本會話日誌中的 TokenUsage,不調用計費或餘額接口。

這是什麼

turn-cost-footer 由維護者 qcy-good 發佈,分類爲客戶端插件(Host + Client 雙邊),當前版本 0.1.0,許可證 MIT。它在已完成助手回覆的頁腳時間行後插入人民幣角標,字號與頁腳時間一致。插件獨立實現成本表、存儲與路由,不讀取、不修改、也不依賴 dsh-whale-widget。

目錄頁:SkillHub — turn-cost-footer

頁面上你會看到什麼

完成一輪後,頁腳在原有「用量 + 時間」之後追加成本信息,例如:

用量 3.7M tok 20:26 · 本輪 ¥0.12 · 今日 ¥3.41

用戶消息沒有對應頁腳行,因此不會被注入。Host 側尚未有真實用量時,Client 不顯示金額(amount 爲 null 時不編造數字)。

核心功能

  1. 數據源:Host 訂閱 DSH 會話日誌事件 session/event,處理 assistant/message(讀取 data.usage)與 turn/end(結算)。
  2. 計價字段:inputTokens(未命中緩存)× cacheMiss,cacheReadTokens(命中緩存)× cacheHit,outputTokens × output;模型名來自 data.message.source.model,在本地 prices 表中按最長匹配子串選檔。
  3. 峯谷:北京時間工作日 9–12、14–18 爲峯時,單價乘以 peakMultiplier;可配置週末一律谷時價。
  4. 對外接口:僅註冊只讀路由 GET /turn-cost-footer/turn.json,供 Client 每秒輪詢;不訪問 DeepSeek 餘額/賬單、不讀 credentials、不走 llm 服務。
  5. 持久化:最近一輪寫入 $DSH_HOME/.turn-cost-footer.json(默認 ~/.dsh/.turn-cost-footer.json),刷新或重啓後仍可回填最近一輪;子代理會話只計入今日累計,不頂掉當前會話頁腳。

安裝與啓用

換機器安裝時,README 給出的命令爲:

# 從 GitHub 直接裝(倉庫推送之後)
dsh plugin --profile web add github:qcy-good/turn-cost-footer

也可將包放入 profile 的 node_modules 後通過插件管理器 plugin_manager install_bundle 安裝。本機若已用 link: 指向開發目錄,則視爲已隨 profile 裝好。

插件以當前 DSH 進程權限運行;安裝前建議閱讀倉庫源碼與 MIT 許可證。

配置

在 profile 的 cordis.patch.yml 中修改已安裝行的 config:,或安裝前改包內 cordis.patch.yml;改完重啓 DSH,或停用/啓用該插件行。

鍵 默認值 含義
enabled true 總開關
showToday true 是否顯示今日累計
currency CNY 顯示單位
peakHours [[9,12],[14,18]] 北京時間峯時區間
peakMultiplier 2 峯時單價倍率
weekendValley true 週末按谷時價
prices 見 patch 元/百萬 token:cacheHit、cacheMiss、output
debug false 每輪結算時在 Host 控制台打印明細

官方調價時需手工同步 prices;金額是本地折算,不是賬單接口返回值。

典型響應示例

Client 輪詢到的 JSON 形態如下(摘自 README):

GET /turn-cost-footer/turn.json
{
  "ok": true, "seq": 3, "enabled": true, "showToday": true, "currency": "CNY",
  "turn": 50, "amount": 0.084, "tokens": 3025392, "model": "deepseek-flash",
  "ts": 1793974422671, "todayUsage": 0.1589
}

README 實測樣例:turn 50,3,025,392 tok,模型 deepseek-flash → ¥0.0840。

適用場景與注意

適合:在 DSH Web 端日常對話、需要即時感知單輪與當日 token 成本(人民幣)的開發者;希望與鯨魚類插件解耦、僅依賴會話日誌的場景。

限制(README 原文):

  • 刷新頁面後只回填最近一輪;更早歷史頁腳不補金額。
  • 價格表爲本地配置,需自行維護。
  • 無官方「每條消息」頁腳插槽,Client 通過 DOM 注入;選擇器集中在 SELECTORS,界面結構變化時需改插件。

Host 掉線或插件停用約兩秒後,舊角標會自動移除。卸載時在插件管理器停用或移除本包即可,不改寫應用其他文件。

結尾

turn-cost-footer 把會話日誌裏的真實 token 用量折成人民幣,並貼回完成輪頁腳,全程離線、只讀自有路由。DSH 生態理念是「一切皆插件」;SkillHub 爲社區目錄,與 DeepSeek / 幻方無官方從屬關係。

  • 目錄頁:https://www.skillhub.cn/plugins/qcy-good/turn-cost-footer
  • GitHub:https://github.com/qcy-good/turn-cost-footer
羽毛球分组比赛记分
小程序二维码

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

小夜