前言¶
DeepSeek Harness (DSH) 的核心設計理念是「一切皆插件」。在多代理開發場景下,成本控制是剛需。openplancc/dsh-fuse 是一個專注於成本策略的插件。它提供每次調用的計費功能,以及一個離線的 fuse 機制:在 token 被消耗前,強制執行預算、模型和推理努力限制。
核心功能¶
該插件具備以下能力:
- 多代理成本策略:支持在多代理環境下的成本管控。
- 每次調用計費:精確到每一次調用的計量。
- 離線 Fuse:在本地強制執行預算、模型和推理努力限制,響應時間通常小於 100ms。
- SaaS 儀表板同步:與
https://dsh.openplan.cc同步數據,展示組織、項目和個人的支出情況。 - 零原生構建:使用
@libsql/client作爲本地存儲,無需編譯即可分發(需要 Node >= 20)。 - 設備流認證:默認使用設備流(RFC 8628)進行用戶認證。
- 狀態查詢工具:提供
dsh_budget_status工具,允許模型在運行時讀取策略狀態。
安裝與啓用¶
插件通過 dsh.bundle 聲明來激活。安裝時,DSH 會讀取該聲明並加載插件層。
通過註冊表安裝(推薦):
dsh plugin --profile <perfil> add @openplan/dsh-fuse
通過本地 tarball 安裝:
pnpm pack
dsh plugin --profile <perfil> add ./openplan-dsh-fuse-<versão>.tgz
通過 Git 安裝:
dsh plugin --profile <perfil> add github:<org>/<repo>#<sha>
配置¶
插件默認工作在本地模式。要啓用 SaaS 同步或自定義策略,需要編輯 profile 目錄下的 cordis.patch.yml 文件。該配置層位於 bundle 層之上。
配置結構如下:
# ~/.dsh/profiles/<perfil>/cordis.patch.yml
- id: fuse
name: '@openplan/dsh-fuse'
config:
project: meu-projeto
dev: eu@empresa.com
# 機器/CI 環境,無瀏覽器時使用
orgKey: !!js process.env.DSH_ORG_KEY
baseUrl: https://dsh-api.openplan.cc
# 本地預算(Fuse 在離線時強制執行):
budgets:
- limitUsd: 50
window: month
- limitUsd: 5
window: day
# 策略限制:
policies:
maxReasoningEffort: medium
allowedModels:
- deepseek/deepseek-v4-flash
denylistedProjects:
- projeto-cliente-confidencial
# 價格配置(可選,默認從 registry/gateway 自動解析):
pricingTable:
deepseek/deepseek-v4.1-flash:
inputCentsPerM: 15
outputCentsPerM: 60
# 未定價模型的兜底價格(防止費用爲 0):
unpricedFallback:
inputCentsPerM: 15
outputCentsPerM: 60
認證方式¶
- 設備流(默認):人類用戶連接時,運行以下命令:
dsh plugin --profile <perfil> exec dsh-fuse-connect
此過程會打開瀏覽器進行授權,Token 保存爲只讀權限,且可隨時在儀表板撤銷。
- Org Key:無頭環境或 CI 中,通過環境變量
DSH_ORG_KEY傳入。
價格解析邏輯¶
插件自動從註冊表(models.dev)或網關獲取價格,並按以下順序解析模型價格:
1. pricingAliases 中的顯式映射。
2. 本地配置的 pricingTable。
3. Registry 或 Gateway 中的 provider/model 路由價格。
4. Adapter ID 本身。
5. 逐步移除前綴的後備匹配。
如果模型無定價,插件會標記爲 unpriced 並記錄日誌,除非設置了 unpricedFallback。
使用¶
安裝並配置後,可以通過以下命令進行操作:
連接到儀表板:
dsh plugin --profile <perfil> exec dsh-fuse-connect
檢查配置層(無需啓動 Harness):
dsh --profile <perfil> --dump-config
Agent 狀態查詢:
當 @deepseek-ai/dsh-tools 服務啓動時,插件會註冊 dsh_budget_status 工具。模型可以在會話中查詢當前預算狀態、已用額度及遠程 429 限制,以便自適應調整策略。可以通過 budgetStatusTool: false 禁用此工具。
注意事項¶
- 環境要求:需要 Node.js >= 20。
- 本地模式:如果不配置
baseUrl或orgKey,插件將在本地模式運行,不與 SaaS 同步,僅依賴本地 Fuse 限制。 - 權限:插件以當前 DSH 進程權限運行,安裝前建議檢查源碼與許可證(MIT)。