前言¶
DSH 生態強調「一切皆插件」,插件可以補足主流程中常見的界面與狀態展示需求。對於使用 DSH web profile 的開發者來說,賬戶餘額、會話上下文剩餘、峯谷單價、自動壓縮狀態等信息如果不集中展示,往往需要切換到不同頁面或日誌裏查看。
dsh-game-hud 是一個 DeepSeek Harness 插件,把這些狀態做成一個遊戲風格懸浮 HUD。它把餘額顯示爲血條,把上下文剩餘顯示爲藍條,並展示峯谷定價、切換倒計時、低餘額告警、自動壓縮與攜帶記憶的新會話入口。
下面介紹它的定位、功能、安裝方式、配置方式和注意事項。
插件定位¶
dsh-game-hud 可以理解爲 DSH Web 端的狀態面板插件。它適合希望在一個固定位置快速查看 DeepSeek 賬戶餘額、當前會話上下文、峯谷定價和壓縮狀態的開發者。
倉庫地址:
https://github.com/guoliyuan97-png/dsh-game-hud
許可證爲 MIT。已覈實資料中 package.json 聲明 Node.js 引擎要求爲:
"engines": {
"node": ">=18"
}
核心功能¶
餘額血條¶
血條用於即時顯示 DeepSeek 賬戶餘額。插件調用官方 user/balance 接口,滿格金額默認爲 ¥20,並且可配置。
餘額展示不是客戶端直接頻繁請求官方接口。已覈實機制是:客戶端每 3 秒輪詢宿主,宿主緩存 30 秒後重查官方餘額接口。
上下文藍條¶
藍條用於顯示當前會話上下文剩餘。它基於與官方 UI 同源的 contextPressure 投影,隨對話增長而從滿格減少。
上下文剩餘每 3 秒重新測量。
低餘額告警¶
當餘額低於閾值時,懸浮窗四周會閃爍紅光。默認閾值爲 10%,告警開關可配置。
該告警只針對餘額血條,不針對上下文藍條。
摺疊迷你視圖¶
摺疊後,HUD 會顯示緊湊的血條和藍條,方便在不需要完整面板時查看餘額與上下文。
峯谷定價¶
插件按官方北京時間峯谷規則展示當前單價和切換倒計時。
已覈實的峯谷時段爲:
09:00–12:00
14:00–18:00
這兩個時段爲高峯,谷時半價。插件會顯示當前單價,並展示距下次切換的倒計時。倒計時每秒本地跳動。
自動壓縮與攜帶記憶¶
當上下文剩餘低於 5% 時,插件自動觸發:
/compact
壓縮滿 2 輪後,會出現「開啓新對話(攜帶記憶)」按鈕。如果不點擊該按鈕,插件會繼續自動壓縮。
點擊「開啓新對話(攜帶記憶)」後,流程爲:
1、用當前模型生成記憶摘要。
2、新建會話。
3、向新會話注入記憶。
4、新會話上下文重新累計。
注入方式是通過 POST /hud/seed,以 user/message append 方式靜默注入記憶,不觸發 agent 回覆,也不回答舊問題。
安裝與啓用¶
使用 dsh 命令安裝¶
在 DSH 環境執行:
dsh plugin --profile web add github:guoliyuan97-png/dsh-game-hud#v1.2.0
安裝後重啓 DSH。
已覈實資料中安裝命令引用的是 v1.2.0,而倉庫 package.json 中版本顯示爲 1.3.1。如果你按 tag 或包版本安裝,請在安裝前核對倉庫當前可用版本。
寫入 web profile 安裝¶
也可以在 DSH 的 web profile 中直接聲明依賴。
在 web profile 的 package.json 中設置:
{
"dependencies": {
"dsh-game-hud": "github:guoliyuan97-png/dsh-game-hud#v1.2.0"
},
"dsh": {
"profile": {
"bundles": ["dsh-game-hud"]
}
}
}
也可以理解爲在 dsh.profile.bundles 中加入:
"dsh-game-hud"
然後執行:
pnpm install
安裝完成後重啓 DSH。
本地開發安裝¶
如果本地倉庫在 ./packages/dsh-game-hud,可以在 package.json 中使用 file: 引用:
{
"dependencies": {
"dsh-game-hud": "file:./packages/dsh-game-hud"
},
"dsh": {
"profile": {
"bundles": ["dsh-game-hud"]
}
}
}
配置與典型用法¶
配置入口¶
可以通過 DSH 設置中的插件入口編輯配置:
DSH 設置 → 插件 → dsh-game-hud
也可以在 profile 的 cordis.patch.yml 中覆蓋配置項。
已覈實的可配置項包括:
maxBalance
lowAlert
lowThreshold
priceTable
含義如下:
maxBalance 血條滿格金額,默認 20
lowAlert 低餘額紅光告警開關,默認 true
lowThreshold 低餘額告警閾值,默認 10
priceTable 按模型覆蓋峯谷單價
cordis.patch.yml 示例¶
示例中配置了 maxBalance、lowAlert、lowThreshold,以及 deepseek-v4-flash 的峯谷單價:
- insert:
- id: game-hud
name: 'dsh-game-hud'
config:
maxBalance: 50
lowAlert: true
lowThreshold: 10
priceTable:
deepseek-v4-flash:
peak: { input: 3.0, output: 9.0, cacheHit: 0.1 }
valley: { input: 1.5, output: 4.5, cacheHit: 0.05 }
API Key 解析¶
插件的 API Key 通過宿主 credentials 服務解析。
默認環境名爲:
DEEPSEEK_API_KEY
同時,它會讀取 llm-deepseek 配置中的 apiKeyEnv。
宿主路由¶
宿主註冊了三個 HTTP 路由:
GET /hud/state?sessionId=<id>
POST /hud/digest
POST /hud/seed
用途如下:
1、GET /hud/state?sessionId=<id> 用於查詢即時狀態。
2、POST /hud/digest 用於生成記憶摘要。
3、POST /hud/seed 用於向新會話注入記憶。
其中 POST /hud/seed 以 user/message append 方式靜默注入記憶,不觸發 agent 回覆,也不回答舊問題。
客戶端打包方式¶
已覈實資料中說明,客戶端以 window.__ModuleLoader__.load() 手寫格式打包,無需構建器。
適用場景與注意¶
這個插件適合以下場景:
1、使用 DSH web profile,希望在會話界面旁邊查看 DeepSeek 賬戶餘額。
2、需要關注當前會話上下文剩餘,避免長對話後才發現上下文不足。
3、需要查看 DeepSeek 峯谷定價和切換倒計時。
4、希望在上下文不足時自動觸發壓縮,並在必要時攜帶記憶開啓新會話。
使用前注意:
1、插件以當前 dsh 進程權限運行。安裝前應檢查源碼、依賴與許可證。
2、許可證爲 MIT。
3、安裝後需要重啓 DSH。
4、餘額展示依賴官方 user/balance 接口,客戶端每 3 秒輪詢宿主,宿主緩存 30 秒後重查。
5、峯谷定價展示依據已覈實的官方峯谷時段與半價規則,具體計費仍以 DeepSeek 官方規則爲準。
6、已覈實資料中安裝命令使用 v1.2.0,倉庫 package.json 顯示版本爲 1.3.1。安裝前建議覈對實際可用版本。
結尾¶
dsh-game-hud 把 DeepSeek 賬戶餘額、會話上下文、峯谷定價、自動壓縮和攜帶記憶的新會話入口集中到一個 HUD 面板裏。對於使用 DSH web profile 的開發者來說,它的價值主要在於減少狀態切換成本,讓餘額、上下文和價格變化在會話旁邊直接可見。
倉庫地址:
https://github.com/guoliyuan97-png/dsh-game-hud