dsh-workflow-templates:DeepSeek Harness 预置 Workflow 模板库

DSH 提供了官方的 workflow 工具,用于处理大规模多智能体编排,但缺乏现成的模板库。dsh-workflow-templates 插件内置了 12 个可复用的 workflow 编排脚本模板,并提供 list、search、run、validate 四个面向模型的工具,以及模板格式的静态校验能力。该插件对齐官方 tool-workflow 契约,但不强制限制官方合法脚本(例如允许 return 1 等计算型返回),旨在降低编排脚本的编写门槛。

核心功能

该插件提供四个核心工具,用于模板的管理、检索与调用。

  • wf_template_list:列出模板目录,支持按领域(domain)或标签(tag)过滤,输出 Markdown 格式的模板清单。
  • wf_template_search:按关键词搜索,匹配名称、标签、描述、领域及参数名,并标注命中依据。
  • wf_template_run:读取模板内容,生成调用官方 workflow 工具的三参数起点(meta、script、args)及参数填充引导。它仅输出调用起点,不自动执行模板脚本。
  • wf_template_validate:检查模板格式合法性,包括 META 的必填字段、结尾 return 表达式结构、脚本钩子使用情况等,对齐官方 tool-workflow 契约。

安装与配置

插件以 Cordis 插件包组织。安装依赖并构建后,通过 cordis.yml 挂载。

1. 安装依赖与构建

npm install
npm run build        # tsc → lib/

2. 挂载插件

在 DSH 的配置文件(如 cordis.yml)中添加以下条目。插件支持两种挂载模式:

  • 已发布态(推荐):使用裸包名。
    - insert:
        - id: workflow-templates
          name: 'dsh-workflow-templates'
          config:
            workflowToolName: workflow
  • 开发态:使用相对路径直挂源码(仅限本地开发/测试)。
    - insert:
        - id: workflow-templates
          name: './src/index.ts'
          config:
            workflowToolName: workflow

3. 配置项

键 默认值 说明
workflowToolName workflow 官方 workflow 工具名称,需与宿主配置中的 toolName 保持一致,否则可见性探测会误报。
templatesDir 包内 templates/ 覆盖模板目录的绝对路径。

使用方法

1. 列出与搜索

使用 wf_template_list 查看所有模板,或使用 wf_template_search 查找特定关键词。

  • 按领域过滤:wf_template_list domain=security
  • 按标签过滤:wf_template_list tag=release
  • 关键词搜索:wf_template_search docker

2. 生成调用起点

当需要执行 workflow 时,使用 wf_template_run。它不直接运行脚本,而是输出符合官方 workflow 工具规范的调用起点(meta/script/args),供模型或用户进一步执行。

// 示例:调用 wf_template_run 生成 workflow 起点
// wf_template_run pr-deep-review

3. 校验模板

在修改或编写模板前,使用 wf_template_validate 进行静态检查。它会报错(E)或警告(W),例如缺少必填的 name/description,或使用了非官方钩子。

// 示例:校验模板格式
// wf_template_validate templates/security/dep-vuln-sweep.js

模板契约与校验规则

插件内置校验器,确保模板符合官方 tool-workflow 契约,但不会比官方更严格。

  • META 字段:name 和 description 必填。tags、args、phases 为可选扩展,缺失仅警告。
  • REQUIRED_REASON:可选字段,用于声明为何必须走官方 workflow 工具执行,缺失仅警告。
  • 脚本钩子:仅允许使用官方钩子(agent/pipeline/parallel/phase/log)。禁止使用模块语句(import/export/require)。
  • 结尾 Return:必须以 return <表达式> 结尾,不做 JSON 字面量限制,允许计算型返回值。

注意事项与权限

  • 使用边界:仅在模型/用户显式要求 workflow 或大规模多智能体编排时使用。简单的委派任务不应使用 workflow 工具。
  • 执行机制:插件不自动执行模板脚本,仅输出调用起点。执行权在官方 workflow 工具。
  • 权限范围:插件仅具备读取模板与渲染输出的权限,不写入文件,不调用外部服务。
  • 开发依赖:开发形态下依赖相邻的 dsh-src 检出(使用 link: 依赖),需确保目录布局为 <parent>/dsh-src。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜