前言¶
在 DeepSeek Harness(DSH)的插件模式下,模型調用本身可以正常運行,但多次會話之後,token 用量往往缺少統一落盤。若只靠單次調用日誌,很難回答“最近花了多少 token”“某個模型用了多少”“預算是否接近上限”這類問題。
下面介紹 dsh-cost-ledger。它是一個 DSH 插件,用於把 LLM token 用量記錄到 SQLite,並提供 record_cost、query_cost、set_budget 三個 agent 工具。
這是什麼¶
dsh-cost-ledger 的定位是 DSH 的跨會話持久化成本賬本。GitHub 倉庫位於 https://github.com/suimi8/dsh-cost-ledger,許可證爲 MIT。按已覈實資料,package.json 的 author 爲空,維護者信息以倉庫當前內容爲準。
它解決的問題是:DSH 中的 LLM token 用量可以按 provider call 自動記錄,並通過 SQLite 持久化,供後續查詢和預算設置使用。按已覈實資料,Phase 1 host side 已完成,並在 DSH 0.1.0-rc.6 中 live-verified。
核心能力¶
自動記錄 token 用量¶
插件訂閱 llm/stream waterfall。每次 provider call 會寫入一條記錄,字段包括:
timestampsessionprojectmodelinputTokensoutputTokenscacheReadTokenscacheWriteTokenscost
按已覈實資料,usage chunk 不保證存在;缺失時會按 debug 記錄。
SQLite 持久化¶
插件使用 SQLite 做持久化存儲,依賴 better-sqlite3。
DeepSeek 定價¶
插件內置 DeepSeek 定價,並支持通過配置覆蓋或新增模型價格。
未知模型會先記錄 token,cost 爲 0,直到設置價格。
agent 工具¶
插件提供三個 agent 工具:
record_cost:手動記錄一條用量。query_cost:查詢成本。set_budget:設置預算。
安裝與啓用¶
環境要求¶
package.json 的 engines 要求:
node ^22.19.0 || >=24.0.0
安裝¶
使用 DSH 插件命令安裝:
dsh plugin --profile web add <path-or-package>
安裝後重啓:
Restart dsh web
如果使用 git 安裝,且 pnpm >= 10 阻止了 git 依賴的 prepare script,需要在 profile 的 pnpm-workspace.yaml 中配置 allowBuilds 放行該包,然後重新安裝。具體包鍵以 pnpm 輸出爲準。
本地開發與加載¶
本地開發時可以執行:
pnpm install
pnpm selftest
pnpm typecheck
pnpm build
隨後通過 patch 加載:
dsh web --patch ./cordis.patch.yml
典型用法¶
驗證真實 LLM 調用¶
可以用 headless profile 驗證真實 LLM 調用是否生成 ledger 行:
dsh --profile headless "reply with exactly: hi"
使用 agent 工具¶
啓用後,可在 agent 中調用:
record_costquery_costset_budget
具體參數以倉庫 README 和源碼爲準。
配置與持久化¶
按已覈實資料:
- dashboard 設置中的配置爲 runtime,重啓後不持久。
- WebUI plugin config card 或
cordis.patch.yml可持久。 - 配置可用於覆蓋或新增模型價格。
適用場景與注意¶
- 適合需要在 DSH 中跨會話查看 token 用量、成本和預算的開發者。
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
- 已驗證 DSH 版本爲
0.1.0-rc.6,last verified2026-08-13。 - WebUI dashboard panel 僅 researched,not implemented。
- 按已覈實資料,README 和
package.json均被截斷;實際依賴、限制或兼容性信息應以當前倉庫源碼爲準。
鏈接¶
GitHub:https://github.com/suimi8/dsh-cost-ledger
目錄頁 URL 未在已覈實資料中給出,暫不列出。