前言¶
DeepSeek Harness(下文簡稱 DSH)的核心理念是「一切皆插件」:模型、工具、會話、UI 都由插件組合而成,開發者不必改框架源碼就能擴展能力。官方倉庫見 deepseek-ai/deepseek-harness。社區裏也有獨立的插件目錄站點,用來檢索、安裝第三方插件;該目錄與 DeepSeek / 幻方沒有官方從屬關係,不是官方應用商店。
日常用 DSH 跑長對話時,一個很具體的問題會反覆出現:當前會話已經佔了多少上下文、這一輪大概花了多少錢、今天和這個月一共用了多少 token。DSH 本身提供了 token 計量與會話投影等底層服務,但默認界面並不把這些數字常駐在眼前。社區插件 dsh-token-panel 做的事情很直接:在 Web UI 右下角掛一塊可拖拽的 Token 儀表盤,把會話壓力、分模型花費和按日/按月用量攤開。
本文依據插件目錄頁與 GitHub 倉庫 README、package.json、cordis.patch.yml、CHANGELOG 交叉覈對後整理,版本以倉庫當前發佈的 0.4.7 爲準。
這是什麼¶
dsh-token-panel 是一款面向 DSH 的會話與消息類插件,由 juhe291 維護,許可證爲 MIT,主要語言是 TypeScript,客戶端平臺聲明爲 web。GitHub 倉庫當前爲 7 星(以倉庫頁面爲準;目錄頁收錄時顯示爲 6 星)。
一句話定位:右下角常駐一塊 Token HUD。它讀取 DSH 的 tokenMeter、sessionProjections、會話標題等服務,把「此刻佔了多少上下文」和「歷史上累計用了多少」分開展示,並按 DeepSeek 官方價表做花費估算;預算和餘額可以在面板上直接改,用量按天落到本地文件裏。
倉庫創建於 2026-08-14,最近一次推送約在 2026-08-17。插件目錄頁的收錄說明與倉庫 README 對核心能力的描述一致:即時會話壓力、會話花費、歷史曲線、按日/按月統計,面板跟隨當前對話,可拖拽並自定義默認位置。
核心功能¶
右下角先出現一枚迷你膠囊,顯示總 Token 壓力;點擊後展開爲 即時 / 統計 雙視圖。配色跟隨 DSH 淺色 / 深色主題。面板默認只跟當前打開的對話走,空會話(0 token)不顯示,歷史會話收在「展開全部」後面。
即時視圖¶
- 每個會話一行:標題、當前上下文壓力(k 單位)、累計消耗(灰色
≈小字,M 單位,含緩存讀)、該會話估算花費(綠色¥)。標題來自 DSH 的會話標題服務。 - 點開會話行可以看到輸入 / 輸出 / 緩存讀 / 緩存寫、壓力 / 預計 / 容量、估算成本和上下文佔用進度條;佔用超過 85% 時進度條變紅。
- 每會話有獨立的 SVG 面積曲線,支持 2 分鐘 / 5 分鐘 / 15 分鐘窗口;曲線帶自動 Y 軸刻度、時間刻度和懸停氣泡。曲線下方有時間拖動條,可以回看緩衝區裏更早的一段。
- 窗口內峯值消耗速率(t/s)顯示在曲線區頂部;膠囊和底部欄還會顯示生成速度 TPS。
- 即時曲線是滾動內存窗口(約 600 個點,對應大約 15 分鐘),重啓後清零。長期趨勢要看統計視圖。
這裏有一個容易看錯的口徑,倉庫 README 寫得很明確:即時主數字是當前上下文壓力(此刻佔用,通常是幾十萬級,k 單位);統計視圖的按日 / 按月是歷史累計消耗(輸入 + 輸出 + 緩存讀全部累加,緩存讀往往最大,單日可能到上億,M 單位)。看到「即時 400k / 統計 100M」並不表示面板算錯了,兩個量本來就不是一回事。會話行上的 ≈ 小字才和統計口徑一致。
統計視圖¶
- 頂部一行彙總累計 token 與估算成本。
- 「按日 / 按月」切換粒度,趨勢曲線加明細列表;明細默認收起,點「展開全部」再展開。
- 本月預算和賬戶餘額可以點擊後行內編輯(回車保存,Esc 取消)。預算會顯示本月已用 / 總額進度條,超支變紅。餘額隨 token 消耗在本地按估算遞減;未手動設置時,回退到通過 API 拉取的官網餘額(5 分鐘緩存)。
- 數據按天寫成 JSONL,默認目錄是
~/.dsh/cache/dsh-token-panel/,重啓後續接,不丟不重。
成本估算¶
花費不是拍腦袋算的,而是按模型分桶:內置 deepseek-v4-flash 與 deepseek-v4-pro 兩套價表,緩存命中、未命中輸入、輸出分開計費。混用過模型的會話不會整段套同一個價。
默認 priceMode 爲 auto:2026-08-17 零時(北京時間)之前用原來的 flat 價,之後自動切到 DeepSeek 官方峯谷價(高峯 9–12、14–18 點)。面板底部徽章會顯示「標準價 / 高峯價 / 空閒價」。倉庫明確寫了:這些數字只作展示參考,賬單以 DeepSeek 開放平臺 爲準。
面板交互¶
三種手勢互不搶:
- 單擊膠囊打開面板。
- 按住膠囊或面板頭部拖動;允許拖出屏幕邊緣,但會留一條頭部欄,方便抓回來。位置會記住,刷新不丟。
- 長按約 0.6 秒彈出位置菜單:四角預設、自定義默認位置,以及隱藏整個 HUD。隱藏後可在 DSH 設置裏把
hidden關掉再顯示,不必卸載插件。
安裝與啓用¶
插件目錄頁給出的安裝命令如下,在 DSH 終端裏運行即可:
dsh plugin add github:juhe291/dsh-token-panel
目錄頁同時提示:如需可復現安裝,應固定 commit 哈希:
dsh plugin add github:juhe291/dsh-token-panel#<commit>
倉庫 README 寫得更細。它建議裝到 web profile,並推薦從 npm 安裝精確版本(當前文檔寫的是 0.4.7),這樣直接用打包好的 lib/,本機不用構建:
dsh plugin --profile web add dsh-token-panel@0.4.7
從 GitHub 安裝則是:
dsh plugin --profile web add github:juhe291/dsh-token-panel
本地路徑安裝(把路徑換成自己的檢出目錄):
dsh plugin --profile web add /path/to/dsh-token-panel
裝完後需要重啓 profile,再刷新瀏覽器,右下角應出現 TOKEN 膠囊。
卸載:
dsh plugin --profile web remove dsh-token-panel
幾點安裝側的限制,都來自倉庫說明,不要略過:
- 若終端提示找不到
dsh,需要先安裝 CLI:npm install -g @deepseek-ai/dsh,然後重開終端。 - 從 GitHub / 本地安裝時,pnpm ≥ 10 可能攔截 Git 依賴的
prepare腳本,報ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED。按報錯把allowBuilds條目寫進該 profile 的pnpm-workspace.yaml後再跑一次安裝。這是 pnpm 的安全機制,等於允許這段代碼在安裝階段、在 agent 沙箱之外執行。 - 源碼安裝會跑構建,倉庫寫明需要 Node ≥ 22.5;Node 20 會失敗。npm 安裝不走這條路徑。
- 新發布的 npm 包大約 24 小時內可能被 DSH 的供應鏈年齡校驗攔住,
@latest有可能解析到舊版,所以 README 要求寫精確版本號。同一原因下,剛發佈時dsh plugin remove也可能失敗,倉庫附帶了scripts/uninstall.mjs作爲備用卸載方式。
典型用法¶
安裝並刷新頁面後,按倉庫給出的操作順序即可:
- 單擊右下角膠囊展開面板。
- 用頭部的「即時 | 統計」切換視圖,點「✕」收起(收起後位置保持不變)。
- 即時視圖裏點會話行看詳情和曲線;用 2m / 5m / 15m 切換窗口,用下方拖動條回看緩衝區。
- 統計視圖裏切換「按日 / 按月」,點預算或餘額數值直接改;不設餘額時顯示 API 拉到的官網餘額。
- 需要看歷史會話時點「展開全部」。不想看見這塊 HUD 時,長按菜單選「隱藏 HUD」,或在 DSH 設置裏打開隱藏開關。
需要改計價或輪詢間隔時,編輯 profile 裏的 cordis.patch.yml(或 settings.yaml 的插件分節)。倉庫給出的默認配置如下,字段含義以 README 爲準:
- id: token-panel
name: dsh-token-panel
config:
pollInterval: 1500 # 瀏覽器即時輪詢間隔 (ms)
priceMode: auto # auto / flat / peak-offpeak
pricePerMInput: 1 # 未命中輸入,CNY / 百萬 token
pricePerMCacheRead: 0.02 # 緩存命中
pricePerMOutput: 2 # 輸出
budgetMonthly: 0 # 月預算 (CNY),0 表示關閉
hidden: false
# dataDir: ~/.dsh/cache/dsh-token-panel
priceMode: auto 會在 2026-08-17 零時自動從 flat 切到峯谷價,一般不用改。其他模型或供應商需要自己補 modelPrices。budgetMonthly 也可以不改配置,直接在統計視圖裏點數值設置。
用量日誌默認長這樣:
~/.dsh/cache/dsh-token-panel/
├── usage-2026-08-14.jsonl # 每日增量:輸入/輸出/緩存讀/緩存寫/模型
├── state.json # 上次用量基線,重啓續接
└── known-sessions.json # 會話註冊表,歷史會話「展開全部」不丟
實現上分成兩面:Host 側聚合 ctx.tokenMeter.measure()、ctx.sessionProjections.snapshot()、ctx.sessionTitle.get(),並註冊 /plugins/dsh-token-panel/snapshot、/stats、/balance 三條路由;Client 側把面板掛到頁面右下角,約 1.5 秒輪詢即時數據、10 秒輪詢統計、60 秒輪詢餘額。界面語言跟隨 DSH 的中英文設置。
適用場景與注意事項¶
比較適合這幾類用法:長時間掛着 DSH Web UI 寫代碼或跑 agent、需要同時盯上下文是否接近上限、以及想按天/按月看用量和估算花費。peer 依賴聲明對準的是 DSH 0.1.0-rc.6 一帶的客戶端與 session / token-meter 服務,平臺是 web,不要指望它出現在純終端 profile 裏。
使用時注意這幾件事:
- 數字口徑:壓力(即時)和累計消耗(統計)不要橫着比。緩存讀會計入累計,所以統計數字會大很多。
- 花費是估算:按內置官方價表分級計算,不含折扣、贈送等賬單項。餘額若是你點進去手填的,之後按本地估算遞減,和官網對不上時重新輸入一次即可校準。
- 即時曲線不持久:只有大約 15 分鐘的內存窗口;要留歷史,看統計視圖和磁盤上的 JSONL。
- 權限與供應鏈:插件以當前 dsh 進程的權限運行,安裝時可能執行代碼。目錄頁和官方插件文檔都要求:安裝前檢查源碼倉庫和許可證;只對信任的包打開
allowBuilds;生產環境儘量固定 commit,避免後續 push 悄悄改掉實際運行的內容。
小結¶
dsh-token-panel 把 DSH 已有的 token 計量攤到右下角:當前壓力、分模型花費、按日按月用量、可編輯預算,一塊可拖拽的 HUD 就能看完。它是 juhe291 維護的 MIT 開源插件,不是 DeepSeek 官方組件;社區目錄只負責收錄和給出安裝入口。
目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-token-panel/
GitHub:https://github.com/juhe291/dsh-token-panel