前言¶
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 的现有体系进行执行,保证了安全性和可审计性。