DSH 声明式任务 DAG 编排:校验依赖图,通过工作流子智能体并行执行拓扑任务层,并确定性传播失败。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-tool-orchestrate
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:apheli0os/deepseek-harness-orchestrate
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本。请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
English | 中文
DeepSeek Harness 的声明式任务 DAG 编排插件。这个可选 Cordis 插件注册面向模型的 orchestrate_tasks 工具,在启动任何内容之前校验有向无环任务图,并通过现有 ctx.workflowEngine 执行。
这是独立的社区插件,并非 DeepSeek 官方软件包。
包内固定 worker 脚本执行确定性的拓扑层。模型编写的任务 id、提示词、依赖 id、schema、提供方名称、模型名称与上游结果只作为 JSON 数据传递,绝不插值到 JavaScript 源码中。
安装
dsh plugin --profile web add dsh-tool-orchestrate
可以把 web 换成需要扩展的 profile。包声明了 DSH bundle manifest,因此安装时会自动加入 tool-orchestrate Cordis 行。本项目通过 npm 分发预构建版本,不支持直接从 GitHub 仓库安装。
插件要求 DeepSeek Harness 部署已经提供:
ctx.toolsctx.systemPromptctx.workflowEngine,通常由@deepseek-ai/dsh-workflow-worker-thread提供- workflow engine 选定的 subagent provider
手动配置 Cordis
执行 dsh plugin add 后通常无需手动配置。自定义组合可以加入:
- id: tool-orchestrate
name: 'dsh-tool-orchestrate'
标准 DSH base bundle 已经加载 workflow-worker-thread。自定义组合必须提供 ctx.workflowEngine;如果某个 preset 关闭了 workflow engine,应在后续 patch 层显式重新启用。
模型输入
orchestrate_tasks 接收:
meta:规范化name与description;tasks:非空任务数组,任务包含小写 kebab-caseid、title和规范化prompt;- 可选逐任务
dependsOn、provider、model与对象根outputSchema。
完成的任务返回子级文本或结构化值。失败子级变为 { status: 'failed', error: 'subagent_failed' };被失败或跳过的直接依赖阻塞的任务变为 skipped,并带有确定性的 blockedBy id。结果保持原始任务数组顺序,并附带聚合计数与顶层 completed、partial 或 failed 状态。
API key 归属
本插件不拥有也不保存 API key。子任务使用宿主部署已有的 LLM 路由与凭证来源,例如进程环境中的 DEEPSEEK_API_KEY、宿主凭证 provider 或其他已配置路由。除非任务选择不同的 provider/model 路由,subagent 会继承与父级组合相同的凭证配置。
不要把 API key 写入提示词、cordis.yml、源码或 GitHub Actions 日志。优先使用环境变量或部署方的凭证机制。
配置
| 键 | 默认值 | 含义 |
|---|---|---|
toolName |
orchestrate_tasks |
面向模型的工具名称。 |
maxTasks |
64 |
单次调用最大任务数。 |
maxDependencies |
16 |
单个任务最大直接依赖数。 |
maxPromptChars |
32768 |
单个任务规范化提示词最大字符数。 |
maxResultChars |
50000 |
渲染规范 JSON 的上限。 |
所有数值限制都必须是正安全整数;toolName 必须是非空且已规范化的字符串。
开发
pnpm install
pnpm run typecheck
pnpm run check
发布从干净 checkout 通过手动触发的 Publish to npm GitHub Actions workflow 完成。维护者需要先配置该 workflow 使用的 npm environment 和 NPM_TOKEN secret。
链接
同类插件
NanmiCoder/dsh-agent-teams★ 327
AgentTeams 多智能体团队。
icetomoyo/dsh_workflow★ 59
把 UltraCode 式多 Agent 调度带给 DSH:可生成、可保存、可治理、可观察、可恢复的 Workflow 层。
btspoony/mstar-harness★ 46
技能驱动的 harness/loop 工程化工作流插件。
titanwings/dsh-automation★ 41
定时任务:让 Coding 任务按计划在全新 Agent Session 中运行,保留可审计历史。
whyihaveyou/dsh-suite#plugin-team-board★ 27
多 agent 共享任务板:经 Cordis service key 创建/认领/流转/查询任务。
omdsh-dev/dsh-deep-research★ 12
自适应深度研究编排器(基于官方 workflow 引擎)。