dsh_workflow_fang: Running Governable Multi-Agent Workflows on DSH 0.2.1-rc.3

前言

DeepSeek Harness(DSH)里,主 Agent 可以按需拉起子 Agent,完成调查、评审、并行分析等任务。这类调度往往是一次性的:流程写在当轮对话里,难以保存、难以复跑,也缺少统一的运行记录与暂停、续跑能力。

上游项目 omdsh-dev/dsh_workflow 在较早的 DSH 版本上提供了 Workflow 层:斜杠命令给人用,工具给模型用,共用同一套引擎与安全策略。宿主升级到 0.2.1-rc.3 后,插件赖以工作的 API 与构建方式都变了。维护者 PatTianFang 在 GitHub 发布 PatTianFang/dsh_workflow_fang,把同一套用户可见能力迁到当前 DSH,不删功能、不改交互、不放宽安全边界,只重写宿主接缝与工程化方式。

下面介绍这个插件的定位、能力与安装用法。事实以仓库 README 与 package 信息为准;本仓库是上游的适配改造版(port),不是 DSH 官方插件,也不是上游官方仓库。

这是什么

项目 内容
插件目录 skillhub.cn/plugins/PatTianFang/dsh_workflow_fang
源码 github.com/PatTianFang/dsh_workflow_fang
npm 包名 @dsh-external/workflow(版本 0.2.0)
许可证 MIT
目标宿主 DSH 0.2.1-rc.3
上游基线 omdsh-dev/dsh_workflow v0.1.2

一句话:把 DSH 的一次性多 Agent 调度,升级为可生成、可保存、可治理、可观察、可恢复的工作流层。斜杠命令 /workflow 与三个模型工具(workflow_list、run_workflow、workflow_manage)共用同一引擎、同一份 run 记录、同一套安全策略(QuickJS 沙箱、只读掩码、审批分级等仍保留)。

核心功能

内置与模式

执行 /workflow list 可看到:

  • 2 个 built-in:parallel-investigation、scoped-review
  • 6 个 pattern:classify-and-act、fan-out-and-synthesize、adversarial-verification、generate-and-filter、tournament、loop-until-done
  • 项目级 .dsh/workflows 与个人级 $DSH_HOME/workflows 中保存的自定义流程

人机两套入口

人可在会话里用 /workflow 子命令:列出、创建、按名运行、代码评审、查看 run、暂停/停止、保存与重跑、续跑缓存等。模型侧通过上述三个工具完成等价操作;内联 workflow 需满足 run(wf, args) 与 manifest 契约(README 中有最小示例)。

运行产物与可恢复性

运行默认落在当前项目的 .dsh/workflow-runs/<run-id>/(含 run.json、events.jsonl、snapshot、results/、artifacts/),并写入原生 tool-workflow/* Session 事件,便于在 DSH Web 中观察进度。支持 resume-run 命中缓存续跑、save 将某次 run 存为可复用 workflow。

相对上游的改造范围(使用者视角)

用户可见功能按上游 1:1 保留;改造集中在 DSH 0.2.1-rc.3 的宿主 API(如子 Agent 启动、只读约束、会话事件、后台 job 等)与 npm 构建。两处边界变化来自宿主能力变化,且更严格:只读子 Agent 在 provider 不发布本地子 Agent 时会直接报错;结构化修复子 Agent 改为 deny 全部可见工具,效果与上游「无工具调查、只改文本」一致。

仓库 README 标明上游 179 个测试已迁移并通过,并增加安装后端到端验证。

安装与启用

环境要求:Node.js >=22.19,DSH 版本与仓库内 compatibility.json 一致(当前为 0.2.1-rc.3)。

从 GitHub 安装(产物已随仓库提交,用户侧不需要编译):

dsh plugin --profile desktop add "github:PatTianFang/dsh_workflow_fang#main"

也可从本地目录或 npm pack 生成的 tarball 安装;DeepSeek Harness Desktop 的插件管理器也可指向包目录。

安装后,profile 合成树中应出现:

- id: dsh-external-workflow
  name: '@dsh-external/workflow'

任选一种方式确认生效:

dsh --profile desktop --dump-config

会话中执行 /workflow list,或确认模型侧出现 workflow_list、run_workflow、workflow_manage 三个工具。

典型用法

列出与运行现成流程

/workflow list

参数化并行调查示例:

/workflow parallel-investigation {"question":"为什么这个测试会间歇失败?"}

让主 Agent 为任务生成流程

/workflow create 为这个仓库设计一个并行安全评审流程,重点看权限与路径处理

命令会立即结束,将原始 query 作为真正的 user message 交给当前主 Agent;主 Agent 调查仓库后,通过 source + manifest 调用 run_workflow 生成并启动流程。生成脚本在 QuickJS 沙箱执行,启动前有冒烟校验与一次性授权。此路径不接受 --wait(生成由当前 Agent turn 接管)。

代码评审

/workflow review

/workflow review base --risk high \
  --requirement "不得破坏公开 API" \
  --test-evidence "npm test 通过" \
  --wait -- 重点看错误处理

会捕获 Git diff、生成 content-addressed 评审包,再跑 scoped-review(双 primary、逐 finding verifier、audit artifact)。

查看与控制运行

/workflow runs
/workflow show
/workflow stop
/workflow save <runId> my-flow
/workflow my-flow {"k":"v"}
/workflow rerun <runId|名字>
/workflow resume-run <runId>

更多子命令见 /workflow help;完整配置字段见仓库 docs/CONFIGURATION.md。默认可用;需在 profile 的 cordis.patch.yml 覆写时,常见项包括 approvalMode、maxAgents、maxConcurrency、maxRetainedRuns 等(README 配置节有示例)。

适用场景与注意

适合需要在 DSH 0.2.1-rc.3 上使用可复用、可审计多 Agent 工作流的开发者:并行调查、分类决策、对抗验证、循环直到完成、Git 改动 scoped 评审等。分类上属于社区「工作流」类插件;SkillHub 目录页与 GitHub 为独立社区入口,与 DeepSeek / 幻方无官方从属关系。

安装前建议阅读仓库源码与 MIT 许可证,并理解 DSH 插件以当前 dsh 进程权限运行,workflow 会启动子 Agent、读写项目下 .dsh/ 目录。本包是 PatTianFang 对上游的需求化改造版,问题反馈可走 GitHub Issues。

结尾

dsh_workflow_fang 把上游 DSH Workflow 完整迁到 0.2.1-rc.3,在不大改使用方式的前提下提供可保存、可治理、可恢复的多 Agent 流程。目录页:https://www.skillhub.cn/plugins/PatTianFang/dsh_workflow_fang;源码与文档:https://github.com/PatTianFang/dsh_workflow_fang。

羽毛球分组比赛记分
小程序二维码

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

Xiaoye