前言¶
在官方 DeepSeek Harness(@deepseek-ai/dsh-agent-loop)上跑多輪智能體時,常見負擔來自三方面:默認系統提示體量大、單輪裏重複讀改多個文件效率低、以及 Windows 環境下鏈式 shell 與無進展重試帶來的超時或浪費。社區插件 dsh-awesome-optimizer 以非侵入方式掛接 DSH 流水線,在 cordis.patch.yml 默認可用前提下提供精簡提示、PTC 複合批工具、防禦性運行時策略與 A/B 遙測。下面按定位、能力、安裝與配置說明如何使用。
這是什麼¶
dsh-awesome-optimizer 由維護者 Jaylor-Wang 發佈,在 SkillHub 目錄中歸類爲「工作流」。項目自述爲:面向官方 DeepSeek Harness 的高性能、非侵入式運行時策略、PTC 支持的複合批處理工具、獨立精煉系統提示引擎(約 80% token 節省)以及客觀的輪次 A/B 遙測插件。當前 npm 包版本爲 1.5.0(MIT 許可證);GitHub 倉庫星標數爲 2。
核心功能¶
精煉系統提示與文件驅動熱重載(customPrompt)¶
插件在 DSH system-prompt/assemble 瀑布流中工作。placement: "replace-all" 模式下會剝離官方冗長區塊(harness:*、deployment:*、tool:*、deliverable:*、web:* 等),以用戶提供的 SYSTEM.md 作爲獨立權威來源。資料中的對比表寫明:默認約 2000 tokens/輪可降至約 380 tokens/輪,約 82% 減量。
路徑約定如下:
- 全局:
~/.dsh/SYSTEM.md或$DSH_HOME/SYSTEM.md - 工作區:項目內
.dsh/SYSTEM.md或SYSTEM.md
保存文件後通過 debounced fs.watch 在下一輪即時生效,無需重啓 DSH。級聯策略支持 concat(默認,全局與工作區拼接)與 workspace-override(倉庫級完全覆蓋全局)。另提供 lintPrompt / fixPrompt / lintPromptFile 等 API,並按已加載插件做工具指令校驗。
PTC 原生複合批工具(compositeTools)¶
read_batch:單輪內併發檢視最多 10 個目標文件片段,適合多文件排查與依賴追蹤。edit_batch:單輪內順序執行最多 10 處字面替換,可跨文件;部分失敗時保留已成功的前序編輯。參數語義與官方edit對齊(須先file_path,再old_string/new_string)。
子動作經官方 ToolExecutionPipeline(tool/ptc-dispatch-start / tool/ptc-dispatch)分發,繼承文件策略鎖、變更守衛與審計鉤子。
防禦性運行時策略與自愈(runtimePolicy / failureRecovery)¶
NO_PROGRESS:對工具調用做確定性指紋;相同失敗調用重複達到noProgressLimit(默認 2)時在tools/pre-execute攔截。EMBEDDED_SHELL_PAYLOAD_TOO_LARGE:攔截超過 4096 字節的命令,或內聯腳本(node -e、python -c、pwsh -Command)超過 512 字節的情形。CHAINED_NETWORK_COMMAND:阻止將網絡/憑據類操作(如npm publish)與本地操作在同一複合命令中鏈式執行;本地可用&&鏈式,網絡操作單獨執行,以降低 Windows 進程掛起與 120s 超時風險。- failureRecovery:在可用
edit時抑制對大文件的破壞性write覆蓋;大尺寸write因未配對 justification 被拒時,可註冊retry_failed_write做一次性恢復。
v1.5.0 起強化 RFC 2119 限制性措辭(如 NEVER、ONLY)在引導與攔截原因中的一致性;edit_batch schema 與官方 edit 契約對齊。
輕量收斂與 A/B 遙測(convergence / telemetry)¶
- convergence:在接近步數預算間隔(默認
stepInterval: 8,每輪最多 4 條)時追加軟性收斂提示;調試場景下可抑制以免打斷排錯。 - telemetry:採集模型請求、工具調用、複合並行比(
parallelismRatio)、首 token 時延(TTFT)、token 消耗與前綴緩存穩定性(prefixChanges)等指標。
安裝與啓用¶
通過 DSH 插件命令(推薦)¶
將插件加入當前 web profile:
dsh plugin --profile web add dsh-awesome-optimizer
通過包管理器¶
npm install dsh-awesome-optimizer
或:
pnpm add dsh-awesome-optimizer
安裝後優化項默認全部開啓,無需在全局 cordis.patch.yml 中額外寫配置。運行環境要求:node >= 22.0.0,dsh >= 0.2.2-rc.1。
僅在自定義路徑或關閉子系統時,再在 cordis.patch.yml 中聲明覆蓋,例如:
- id: agent-optimizer
config:
customPrompt:
enabled: false
compositeTools:
maxBatchFiles: 15
maxBatchEdits: 15
runtimePolicy:
noProgressLimit: 3
典型用法¶
- 安裝插件後保持默認配置,即可同時獲得運行時策略、批工具與提示優化(若使用
replace-all,在~/.dsh/SYSTEM.md或項目.dsh/SYSTEM.md編寫規則)。 - 多文件閱讀:在 agent 輪次中調用
read_batch,一次提交最多 10 個片段請求。 - 多文件小步編輯:使用
edit_batch集中提交替換列表,由流水線順序執行並保留部分成功結果。 - 需要恢復官方冗長系統提示時,在
cordis.patch.yml將customPrompt.enabled設爲false。
README 中還提供面向生產的 SYSTEM.md 推薦(截斷前可見),完整正文見倉庫 README.zh.md。
適用場景與注意¶
適合:長期在官方 DSH agent loop 上開發、希望壓低每輪系統提示 token、需要 read_batch / edit_batch 減少往返,或在 Windows 上希望降低鏈式 shell 與超大內聯腳本風險的團隊與個人。
注意:
- 插件與 DSH 同進程、同權限運行;安裝前請閱讀 GitHub 源碼 與 MIT 許可證,確認策略攔截與批處理上限符合你的安全與合規要求。
- SkillHub(https://www.skillhub.cn/plugins/Jaylor-Wang/dsh-awesome-optimizer)爲社區目錄,與 DeepSeek / 幻方無官方從屬關係;版本與配置以倉庫與 npm 爲準。
- token 節省比例、測試通過數(資料標明 21 passed)來自項目自述,實際會話仍取決於模型、插件組合與
SYSTEM.md內容。
結尾¶
dsh-awesome-optimizer 把精簡提示、PTC 批工具、運行時斷路器與遙測收斂到單一 DSH 插件中,默認零配置即可啓用。查閱目錄與源碼:
- 目錄頁:https://www.skillhub.cn/plugins/Jaylor-Wang/dsh-awesome-optimizer
- GitHub:https://github.com/Jaylor-Wang/dsh-awesome-optimizer