前言¶
DeepSeek Harness 可以通過插件爲 agent 增加新的工具。dsh-autoresearch 解決的是候選修改如何被自動評估和篩選的問題:在固定指標下,先建立 baseline,再對候選修改執行 bounded keep/reject 判定。
插件把該過程放在隔離 Git worktree 中運行,並用 SQLite 保存運行記錄。
這是什麼¶
- 插件名:
dsh-autoresearch - 維護者:
EveGoodEvening - 許可證:MIT
- 定位:
Bounded, metric-driven autoresearch plugin for DeepSeek Harness - 核心工具:爲 DeepSeek Harness agent 提供
autoresearch工具 - 默認運行形態:
dsh-jobsbackground jobs
它把“候選修改”和“指標判定”分開處理。Host 提供 evaluator_id,以及可信的註冊、argv、metric、環境和 dataset 身份;插件基於這些材料執行 baseline-first、bounded keep/reject 優化循環。
核心能力¶
單一標量指標判定¶
autoresearch 使用單一標量指標進行嚴格 minimize / maximize 判定。候選結果與 baseline 比較,按改進保留或回退。
可信 evaluator 身份¶
新 run 使用 evaluator_id 命名部署註冊。插件使用 Host 提供的可信註冊、argv、metric、環境和 dataset 身份。
proposal model 不能提交 evaluator commands、metric definitions、dataset authority 或 evaluator environment。
受控可寫範圍¶
優化循環運行在隔離 Git worktree 中。可寫範圍受 mutable_globs 限制,只有匹配的路徑可以變更。
持久化與恢復¶
插件使用 SQLite 保存 run、experiment、attempt 和 bounded artifact 記錄。
恢復採用 fail-closed recovery:resume 前先覈對 durable Host evidence。
後臺任務管理¶
插件默認以 dsh-jobs background jobs 運行。運行過程中,可以用通用 job tools 檢查或停止任務。
安裝與啓用¶
安裝前需要滿足以下版本要求:
- Node.js
^22.19.0 || >=24.0.0 - pnpm
11.7.0 - DeepSeek Harness
0.1.1-rc.2
Host 必須提供 agents、jobs、subprocess、systemPrompt 和 tools。背景模式還要求調用 Agent 掛載 dsh-tool-jobs。
在目標 profile 中安裝插件:
dsh plugin --profile <name> add dsh-autoresearch
dsh --profile <name> --dump-config
將 <name> 替換爲實際 profile 名。第二條命令用於檢查當前 profile 的配置 dump。dump 中應包含:
id: autoresearch
name: dsh-autoresearch
典型用法¶
1、安裝插件後,用 dsh --profile <name> --dump-config 確認 id: autoresearch 和 name: dsh-autoresearch 出現在配置中。
2、新 run 使用 evaluator_id 命名部署註冊。
3、插件在隔離 Git worktree 中運行 baseline-first、bounded keep/reject 循環。
4、候選修改只允許發生在 mutable_globs 路徑內。
5、插件按單一標量指標的 minimize / maximize 結果做 keep/reject 判定。
6、任務以 dsh-jobs background jobs 運行;可用通用 job tools 檢查或停止。
7、需要恢復時,先進行 fail-closed recovery,覈對 durable Host evidence 後再繼續。
適用場景與注意¶
適合以下使用方式:
- 有明確標量指標,並需要 agent 在受限路徑中自動迭代候選修改。
- 需要把運行狀態、實驗和 attempt 記錄保存在 SQLite 中。
- 需要以 DSH 後臺任務方式運行,並可通過通用 job tools 管理任務。
使用前需要明確邊界:
- 該插件不提供 OS 級沙箱、進程、網絡、同 UID 或權限隔離。
- 隔離 Git worktree 不是 OS 安全邊界。
proposal model不能提交 evaluator commands、metric definitions、dataset authority 或 evaluator environment。- Cordis patch row 的配置是整段替換,不是 deep-merge。
- 插件以當前 DSH 進程權限運行;安裝前應檢查源碼與許可證。