前言¶
DeepSeek Harness (DSH) 的核心理念是「一切皆插件」。隨着插件生態的擴展,如何在不中斷工作流的前提下,監控插件表現、識別性能退化或邏輯問題,並安全地執行迭代,成爲維護 DSH 環境的難點。現有的手動維護方式效率低下且容易遺漏關鍵信號。爲了解決這一問題,我們需要一個能夠主動掃描、監控並提出改進建議的工具。
插件定位¶
Harness Self-Evolution Plugin 是一個基於 MoonBit 原生編寫的 DSH 插件。它負責對已安裝的 DSH 插件進行掃描、監控,並基於基準測試提出符合工程原則的演進方案,最終由人工審覈後執行。
- 項目名稱:Harness Self-Evolution Plugin
- 維護者:Across2005
- 開源協議:MIT
- 定位:工作流
核心功能¶
該插件通過一套自動化流程管理 DSH 插件的生命週期演進:
-
掃描與監控
在配置的掃描根目錄下掃描當前主機安裝的所有插件,並持續監控調用延遲、成功率、Token 使用量、重試次數以及用戶反饋。 -
信號識別
插件會識別兩類信號來觸發演進請求:- 強信號:用戶手動覆蓋、連續三次失敗、延遲迴退超過 20%。
- 中信號:參數誤用重複出現、檢測到循環、偏好記錄重複。
-
方案提案與執行
- 提案:基於基準測試提出演進方案,方案需符合 Matt Pocock 的工程原則。
- 執行狀態機:執行流程遵循
pending -> approved -> executing -> completed的狀態流轉。 - 安全機制:默認關閉自動批准(
auto_approve: false),執行階段在事務性沙箱適配器存在前保持 fail-closed 策略。
-
子代理工廠
支持持久化存儲 Markdown 和 YAML Frontmatter 定義的子代理,其作用域分爲plugin(插件數據根目錄)和user(用戶級技能目錄)。
安裝與啓用¶
安裝是按 DSH 樹進行的。安裝完成後,需要重啓 DSH 進程以加載工具。
- 執行安裝腳本。以
web配置文件爲例:
pwsh -File scripts/install-dsh.ps1 -Profile web
- 驗證安裝是否成功。檢查配置中是否包含該插件:
dsh --profile web --dump-config | Select-String 'mcp-harness-evolution'
典型用法¶
在安裝並重啓 DSH 後,可以通過環境變量覆蓋默認的數據存儲和配置文件位置:
- 覆蓋存儲位置:
使用$HARNESS_EVOLUTION_HOME環境變量指定插件數據目錄。 - 覆蓋配置文件位置:
使用$HARNESS_EVOLUTION_CONFIG環境變量指定配置文件路徑。
注意事項¶
- DSH 獨佔兼容性:自 v3.0.0 起,插件已移除 MiniMax Code 兼容性,僅支持 DSH。
- 安裝隔離性:插件安裝是針對特定 DSH 樹(
$DSH_HOME)的,不同 DSH 樹之間互不干擾。dsh plugin add會將文件寫入$DSH_HOME/profiles/<name>。 - 啓動行爲:
failOnStartupError: true不會中止配置文件啓動,只會標記該插件爲可選(optional)並記錄警告。 - 配置文件變更:自 v2.7.0(未發佈版本)起,不再讀取舊的
<cwd>/.zcode-plugin/plugin.json回退文件。 - 默認配置:插件默認不開啓自動批准,執行失敗會返回
pending狀態。
總結¶
Harness Self-Evolution Plugin 爲 DSH 插件生態提供了一個從監控到執行的完整閉環。它通過基準驅動的提案和嚴格的人工審覈機制,確保了插件演進的穩定性與安全性。
- 文檔目錄:https://www.skillhub.cn/plugins/Across2005/harness-self-evolution-plugin
- 源碼倉庫:https://github.com/Across2005/harness-self-evolution-plugin