dsh-workflow-library:把工作流存成文件,按名字重复运行

前言

DeepSeek Harness(DSH)自带 workflow 工具,模型可以现场写一段编排脚本,扇出到多个子 agent 完成任务。脚本跑完就结束,下次同类任务往往要重新写一遍,也不方便放进 git 做 code review,更谈不上在团队里按同一套流程协作。

dsh-workflow-library 在原生能力之上补了一层:把工作流以文件形式放在项目里,按名字调用,并可传参。适合发版前检查、依赖审计、固定格式报告等需要反复执行的流程。

这是什么

  • 名称:dsh-workflow-library(npm 包名与插件标识一致)
  • 维护者:WilShi
  • 分类:工作流(社区目录归类为工作流类插件)
  • 定位:可复用的工作流库——编排脚本存成文件,按名字运行;英文 README 表述为 Reusable workflow library for DeepSeek Harness
  • 许可证:MIT(见 GitHub 仓库 README)

社区目录页:https://www.skillhub.cn/plugins/WilShi/dsh-workflow-library
源码与文档:https://github.com/WilShi/dsh-workflow-library

SkillHub 为独立社区目录站点,与 DeepSeek / 幻方无官方从属关系;安装与使用仍以仓库 README 为准。

核心功能

插件向 DSH 注册四个工具,不自行实现编排逻辑,执行时走 DSH 自带的 ctx.workflowEngine.start()。

工具 作用
workflow_list 列出当前项目可用的工作流
workflow_show 查看某个工作流的元信息与完整脚本
workflow_run 按名字运行,可传 args
workflow_save 把刚跑通的流程存成模板文件

与工作流文件相关的约定:

  1. 文件上半部为极简 YAML 元信息(仅支持 key: value),下半部为与原生 workflow 工具相同的脚本体。
  2. 查找目录按优先级(与 DSH skill 约定一致):<项目根>/.dsh/workflows/ → <项目根>/.agents/workflows/ → <DSH_HOME>/workflows/。项目根指最近包含 .git 的祖先目录;同名工作流时优先级高的覆盖低的。
  3. 未部署完整引擎的环境仍可加载插件;调用 workflow_run 时会给出明确报错。

安装与启用

下面介绍两种 README 中写明的安装方式。

从 npm:

dsh plugin add dsh-workflow-library

或从 GitHub 安装(会走构建脚本):

dsh plugin add github:WilShi/dsh-workflow-library

package.json 声明的运行时 Node 版本为 ^22.19.0 || >=24.0.0,peer 依赖含 @deepseek-ai/cordis 与 @deepseek-ai/dsh-tools。安装前建议浏览仓库源码与 MIT 许可证;插件以当前 DSH 进程权限运行,工作流脚本会在 worker 线程中执行并调用 agent() 扇出子任务。

典型用法

1. 在工作流目录新增文件

在项目里创建例如 .dsh/workflows/review-files.js:

---
name: review-files
description: 并发审查多个文件
whenToUse: 需要一次性审查一批文件时
---
const files = (args && args.files) || []

const results = await Promise.all(
  files.map(async (file) => {
    const answer = await agent({ prompt: `审查 ${file},指出最严重的问题` })
    return { file, review: String(answer) }
  }),
)

return { reviewed: results.length, results }

元信息描述用途;脚本正文与你在原生 workflow 工具里写的形式一致。

2. 用自然语言触发

在对话中可以这样说(README 示例):

> 跑一下 review-files,审查 src/index.ts 和 src/cli.ts

模型会调用 workflow_run 并把 args 传入。之后多次执行只需说「跑一下 review-files」即可。

3. 与原生 workflow 的取舍

原生 workflow 本插件
脚本来源 模型每次现写 从磁盘读取
复用 否 是,按名字
进 git / 团队共享 否 是
传参 支持 支持

一次性编排仍可用原生工具;需要版本化、可 review、可共享的固定流程,用本插件更合适。

适用场景与注意

适合谁:已在用 DSH 多 agent 编排、又希望把「每周依赖审计」「发版前检查清单」等流程固化下来的开发者或小团队。

注意:

  • 工作流文件应纳入版本管理,变更走 PR,避免生产项目里直接改未审查的脚本。
  • E2E 测试说明真实引擎会启动子 agent(provider 可桩掉,故测 E2E 不一定需要模型 key);线上运行则依赖你配置的模型与子 agent 能力。
  • 仓库 npm run verify 含类型检查、构建与加载测试;贡献者可按 README 在本地 npm install --ignore-scripts 后执行 npm run verify。

结尾

dsh-workflow-library 把 DSH 里「现写现跑」的 workflow 脚本,变成项目内可按名调用、可传参、可进 git 的资产;四个工具覆盖列表、查看、运行与保存。若你正在 DSH 生态里找可复用编排模板,可从社区目录页进入说明,或直接查看 GitHub 仓库的安装命令与示例文件。

  • 目录页:https://www.skillhub.cn/plugins/WilShi/dsh-workflow-library
  • GitHub:https://github.com/WilShi/dsh-workflow-library
羽毛球分组比赛记分
小程序二维码

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

小夜