在 DeepSeek Harness (DSH) 的開發中,模型經常需要調用 plugin_manager list_bundles 來獲取當前 profile 的 bundle 列表。然而,這個動作默認會返回每個 bundle 的完整聲明行,數據量巨大。實測中,某個 profile 裏 @deepseek-ai/dsh-base 的聲明行就有 94 條。這導致模型在上下文中消耗大量 token,卻往往只需要知道 bundle 的名稱和狀態。
deadbushxw/dsh-plugin-query-enhance 是一個 DSH Host 側插件,旨在解決這一問題。它不改變底層邏輯,而是通過“投影”和“新工具”兩種機制,降低模型調用 bundle 查詢工具的成本。
核心功能¶
插件主要提供兩項互補的能力:
- 返回瘦身:
list_bundles與list_plugins依然可用,但返回的每條記錄只包含摘要信息(如name、version、enabled),去掉了rows、description等大字段。投影發生在 Host 內部序列化之前,意味着這些字節根本沒有產生,而不是產生了再被忽略。 - 參數化查詢工具:新增
plugin_query工具,支持按name、match、enabled等條件篩選。模型可以精準地查詢“哪個 bundle 聲明瞭某個模塊”,而不需要把所有 bundle 的所有行都拉出來。
這兩個機制都沒有改動 @deepseek-ai/dsh-plugin-manager,Web 側邊欄繼續直接讀服務,卸載即恢復原有行爲。
安裝與啓用¶
安裝即 bundle 安裝。DSH 會把包寫進當前 profile、註冊 Loader 行並熱應用。安裝後需要重啓 DSH。
plugin_manager install_bundle github:deadbushxw/dsh-plugin-query-enhance
配置項位於 bundle 自身的 cordis.patch.yml 中,由包導出的 Config schema 校驗。沒有額外的配置文件或設置頁。
典型用法¶
安裝完成後,你可以使用以下命令:
plugin_manager list_bundles
plugin_manager list_plugins
plugin_query match="@deepseek-ai/dsh-plugin-manager"
plugin_query name="@deepseek-ai/dsh-base"
適用場景與注意¶
適合需要頻繁查詢 bundle 狀態或依賴關係的 DSH/Agent 開發者。
- 依賴項:插件依賴
@deepseek-ai/schemastery。如果通過本地目錄安裝,需在克隆目錄下執行npm install;通過github:安裝則無需此步驟。 - 權限:插件以當前 DSH 進程權限運行。安裝前建議檢查源碼與許可證。
- 生效方式:修改配置或安裝後,必須重啓 DSH 才能重新裝載模塊。
總結¶
該插件通過投影和工具增強,解決了 list 動作數據過載的問題,讓模型能更高效地使用 bundle 管理接口。