Back to home@onclaw-dev

dsh-workflow-designer

`dsh-workflow-designer` 是面向 DeepSeek Harness 的提示词优先工作流设计插件。它收集当前 Agent 可见的本地 Skill、原生 Tool 与 MCP Tool,提供必要的可视化编排和约束编辑能力,并导出稳定的 YAML 中间表示。后续可由大模型及对应框架把 YAML 生成 Python、`workflow.mjs` 或其他代码工作流。

Stars
0
Language
JavaScript
Created
Aug 31, 2026
Updated
Aug 31, 2026
GitHub repo

Introduction

dsh-workflow-designer

dsh-workflow-designer 是面向 DeepSeek Harness 的提示词优先工作流设计插件。它收集当前 Agent 可见的本地 Skill、原生 Tool 与 MCP Tool,提供必要的可视化编排和约束编辑能力,并导出稳定的 YAML 中间表示。后续可由大模型及对应框架把 YAML 生成 Python、workflow.mjs 或其他代码工作流。

工作流辅助编排界面预览

为什么采用提示词优先的工作流

Dify、Langflow 一类强编排工作流适合严格控制固定流程,但会牺牲一部分大模型的语义理解和动态规划能力;完全依赖提示词又很难细致控制复杂分支、工具参数、错误处理和结果约束。

本项目采用折中方式:保留 LLM 通过提示词理解和生成任务的灵活性,同时用可视化节点、显式端口、资源快照、参数 Schema、分支条件和验证规则提供强控制,减少工作流生成阶段的漂移与幻觉。设计器本身不负责执行完整工作流,而是生成可审计、可迁移、适合继续代码生成的规范化描述。

当前能力

  • 在 Harness 的 sidebar.footer.action slot 注册“工作流辅助编排”(Assisted Workflow Orchestration)入口。
  • 提供 Prompt、Sub-Agent、Sub-Agent Flow、Skill、Skill Interface、MCP Tool、Native Tool、Group、If/Else、Switch 和 Ask User Question 等节点。
  • 仅在用户选择资源时,从当前 Session/Agent scope 查询 ctx.skillsctx.tools
  • 保存 Skill/Tool locator、digest、Schema snapshot 与 Prompt Card,便于发现资源变化并重新验证。
  • 支持 MCP Tool 真实调用测试;调用经过 Harness 的 schema、权限、策略、超时和 Tool pipeline。
  • 支持 Skill 静态接口索引,并可选择使用当前 Harness Sub-Agent 对接口文档做受限复核。
  • 保存 dsh.workflow/v1alpha1 YAML,并可导出 Mermaid、Markdown 与代码生成上下文。
  • 可把去除画布坐标后的语义 YAML 写入当前 Harness 对话输入框,但不会自动发送。

DeepSeek Harness 兼容基线

本次首发锚定以下不可变基线:

项目
Releasedsh-v0.1.1-rc.2
npm version0.1.1-rc.2
Git commitb150a551b8d465e31e418e1b2eaf5e79bbb7d28e
Repositoryhttps://github.com/deepseek-ai/deepseek-harness
Plugin version0.1.1-rc.2.plugin.1
建议 Git tagv0.1.1-rc.2.plugin.1

package.json.deepseekHarness 是机器可读的基线记录,README 中的 Release、version 和 commit 必须始终与它一致。项目不会自动跟随 Harness 的分支、latestnext

Harness rc.2 要求 Node.js ^22.19.0 || >=24.0.0,上游源码使用 pnpm@11.7.0

直接依赖

项目只声明实际 import 或运行时外置所需的依赖。直接使用的 DSH 包均精确固定为同一个 Release:

  • @deepseek-ai/dsh-client-runtime@0.1.1-rc.2
  • @deepseek-ai/dsh-client-ui-conversation@0.1.1-rc.2
  • @deepseek-ai/dsh-client-ui-sidebar@0.1.1-rc.2
  • @deepseek-ai/dsh-client-ui-slots@0.1.1-rc.2

yaml 是 Host bundle 的外置运行时依赖。reactflow 被打入 Client bundle,因此只属于开发依赖。React 与 React DOM 由 Harness Web 客户端提供,作为 peer dependency 声明。插件不直接 import @deepseek-ai/cordis,因此不把它列为直接依赖。

安装与运行

从 npm 安装到 Web profile:

cd C:\Users\rone\Documents\deepseek-harness
pnpm dsh plugin --profile web add dsh-workflow-designer@0.1.1-rc.2.plugin.1
pnpm dsh web

本地发包前联调可安装当前工作区:

cd C:\Users\rone\Documents\deepseek-harness
pnpm dsh plugin --profile web add D:\WorkSpace\dsh-workflow-designer
pnpm dsh web

包通过 dsh.bundle.patch 加载 cordis.patch.yml,并通过 dsh.client./client 提供浏览器端插件。正常安装不需要手工传入 --patch,也不需要修改 Harness 源码。

开发与发包前验证

本地类型检查直接使用 lockfile 安装的精确 rc.2 npm 类型声明,不依赖开发机上的 Harness 绝对路径。发布验证使用 registry 安装得到的精确依赖和提交的 lockfile:

npm ci
npm run check
npm test
npm run build
npm pack --dry-run

4 组较大的 Skill 接口黄金样例属于可选外部验收数据。设置 DSH_SKILL_DEMO_ROOT 指向包含这些样例的目录后会执行;未设置且默认相邻目录不存在时,相关 3 项测试会明确标记为 skipped,其余仓库内测试仍是强制门禁。

lib/client.js 是浏览器 bundle,lib/index.js 是 Host bundle。打包清单不得包含 Harness checkout、凭证、缓存、临时文件或本地链接。

输出目录

  • 工作流源文件:当前 workspace 的 .dsh/workflows/<name>.workflow.yaml
  • 生成结果:当前 workspace 的 .dsh/generated/<name>/
  • 示例:examples/
  • 设计器 Skill:skills/dsh-design-workflow/

当前版本不执行完整工作流,也不实现 Parallel/Join/Loop、MCP 配置管理、LLM 自动改图、源 Skill 写入或 Mermaid 反向导入。