前言¶
DeepSeek Harness(DSH)通過插件機制擴展能力,核心執行通常依賴 Harness 現有的工具、審批和日誌系統。團隊在定義開發、測試、發佈和運維流程時,通常以文檔或腳本形式存在,難以校驗、複用和審計。
dsh-runbook-ops 插件解決的是“流程定義”的問題。它將團隊的 SOP(標準作業程序)寫成結構化 YAML,並以 Harness 工具的形式提供給模型使用。它不替代 Harness 的執行系統,而是提供可校驗、可複用、可審計的執行指導。
功能¶
該插件提供以下能力:
- 列出 runbook:列出當前項目中的 runbook。
- 讀取並校驗:讀取並校驗指定 runbook。
- 生成指導文本:生成按步驟執行的模型指導文本。
- 默認目錄:默認只讀取當前會話工作區內的
.dsh/runbooks。 - 執行控制:不直接執行 shell 命令,命令執行繼續交給 Harness 現有工具、審批和日誌系統。
安裝與啓用¶
發佈後可通過 DeepSeek Harness 的插件機制安裝:
dsh plugin --profile web add dsh-runbook-ops
本地開發¶
本地開發時需要先構建插件,再在 DeepSeek Harness 倉庫中加載 patch:
cd C:/Users/admin/Desktop/code/dsh-runbook-ops
npm run build
cd C:/Users/admin/Desktop/code/deepseek-harness
pnpm dsh web --patch C:/Users/admin/Desktop/code/dsh-runbook-ops/cordis.dev.yml
Headless 驗證:
pnpm dsh --profile headless --patch C:/Users/admin/Desktop/code/dsh-runbook-ops/cordis.dev.yml "按 release-preflight runbook 檢查當前項目"
注意:在 --patch 參數中,插件入口必須寫成 file:///C:/.../lib/index.js 以避免 Node ESM loader 把 C: 當成不支持的協議。本地開發加載構建後的 JS 產物,可以避免不同 DSH 啓動方式對 .ts loader 支持不一致的問題。
配置¶
插件支持通過配置文件調整行爲。默認配置如下:
- insert:
- id: runbook-ops
name: dsh-runbook-ops
config:
root: .dsh/runbooks
maxBytes: 65536
allowAbsoluteRoot: false
| 字段 | 默認值 | 說明 |
|---|---|---|
root |
.dsh/runbooks |
相對當前會話工作區的 runbook 目錄 |
maxBytes |
65536 |
單個 runbook 最大讀取字節數 |
allowAbsoluteRoot |
false |
是否允許絕對路徑 root |
依賴¶
該插件依賴以下庫:
@deepseek-ai/schemasteryjs-yaml@deepseek-ai/cordis(peer dependency)@deepseek-ai/dsh-tools(peer dependency)
總結¶
dsh-runbook-ops 將結構化的 YAML 流程轉化爲 DSH 可識別的工具,適合希望規範開發與運維流程的團隊。它通過 Harness 的現有體系進行執行,保證了安全性和可審計性。