- Início
- Plugins
- Fluxos e automação
- dsh-knj-workflow
dsh-knj-workflow
yangdongzhen590/dsh-knj-workflow
Orquestração de tarefas de desenvolvimento dirigida por configuração para DSH: workflows em grafo (nós de tarefa/porta de entrada/humano) com persistência por estágio, além de um assistente de IA no editor que configura workflows por meio de conversa com validação ao vivo. Passe documentos aos nós como anexos genéricos (sem necessidade de declaração): os arquivos vão para o espaço de trabalho da tarefa e ${inputs.附件} fornece os caminhos absolutos unidos por quebras de linha, para que um nó os analise com seu próprio prompt.
Instalar
dsh plugin --profile web add github:yangdongzhen590/dsh-knj-workflowREADME
dsh-knj-workflow
开发任务编排插件(DeepSeek Harness):配置驱动的工作流 + 开发任务管理 + 可视化阶段进度。
📖 详细设计文档见 DESIGN.md(架构、数据模型、Host/Client 设计、编排器、踩坑记录、验证记录)。
功能
- 工作流管理:可新增 N 个工作流,每个工作流由多个阶段组成;阶段行为由
prompt(提示词)+ 可选skill定义 - 模板导入/导出:工作流列表与图编辑器均支持把模板导出为
.workflow.json文件、从文件导入(跨机器移植);导入后先进入编辑器检查再保存,同 ID 冲突会提示 - 开发任务:创建任务并绑定工作流,自动启动执行
- 可视化进度:右侧栏「开发任务」tab 横向步骤条展示每个阶段状态(待执行/运行中/完成/失败),实时刷新
- 阶段重跑 / 继续:失败的阶段可点击「重跑」,暂停/失败的任务可点击「继续」——基于断点持久化(每阶段结果落盘)
- 斜杠命令:
/dev-task new <标题>、/dev-task list、/dev-task status <id>、/dev-task wf - 定时调度集成(可选):为
dsh-scheduler提供进程内knjWorkflowScheduler服务;定时触发时按最新保存的流程定义创建并启动任务,历史可直达该任务详情 - UI 融入原生:左侧栏底部「新建任务」入口 + 右侧栏两个 tab(better-sidebar 扩展点),全部使用 DSH 原生设计令牌(
--dsw-*)
架构
┌─ Client 端(lib/client.js)───────────────────────────────┐
│ 左侧栏 sidebar.footer.action →「➕ 新建任务」 │
│ 右侧栏 better-sidebar →「开发任务」「工作流」两个 tab │
└──────────────┬──────────────────────────────────────────┘
│ fetch('/devtask/...') 同源 HTTP
┌──────────────▼──────────────────────────────────────────┐
│ Host 端(lib/index.js) │
│ DevTaskStore(JSON 持久化) + HTTP API + /dev-task 命令 │
│ WorkflowBridge:从 parent agent 作用域取 workflowEngine │
│ (rc.8 起引擎位于 agent preset realm,非 host realm) │
└──────────────┬──────────────────────────────────────────┘
│ ctx.workflowEngine(script = lib/orchestrator.js)
┌──────────────▼──────────────────────────────────────────┐
│ 编排器(lib/orchestrator.js)支持 resumeFrom / rerunStage │
│ 每阶段子 agent 结果落盘 <taskDir>/stages/<stageId>.json │
└─────────────────────────────────────────────────────────┘
数据目录(默认):~/.dsh/dev-orchestrator/
workflows.json # N 个工作流定义
tasks/<taskId>/task.json # 任务元数据 + 阶段状态
tasks/<taskId>/stages/<stageId>.json # 阶段断点产物
安装
dsh plugin --profile web add dsh-knj-workflow
npm 包
dsh-knj-workflow;安装后重启 dsh web 生效。dsh-scheduler可独立安装;同时安装本插件后,调度器才会显示「KNJ 工作流」任务类型。
配置(可选,在 profile 的 cordis.patch.yml 中按 id knj-workflow 覆盖):
| 键 | 默认 | 说明 |
|---|---|---|
dataRoot | ~/.dsh/dev-orchestrator | 数据存储目录 |
httpPrefix | /devtask | HTTP API 前缀 |
HTTP API
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /devtask/health | 健康检查 |
| GET/POST/PUT | /devtask/workflows | 工作流列表 / 保存 |
| DELETE | /devtask/workflows/:id | 删除工作流 |
| GET/POST | /devtask/tasks | 任务列表 / 创建(绑定工作流并启动) |
| GET | /devtask/tasks/:id | 任务详情(含阶段状态) |
| POST | /devtask/tasks/:id/start /cancel /resume | 启动 / 取消 / 继续 |
| POST | /devtask/tasks/:id/rerun-stage | 重跑指定阶段 |
| GET | /devtask/tasks/:id/stages/:stageId | 阶段断点产物 |
编排器参数
args.config:工作流定义({ name, description, stages: [...] })args.task:任务元数据({ id, title, taskDir })args.resumeFrom:从某阶段继续(之前阶段读缓存)args.rerunStage:只重跑某阶段(其余读缓存)
Plugins relacionados
ouroboros (dsh-plugin)
q00/ouroboros
loopx (dsh-loopx-plugin)
huangruiteng/loopx
dashi-taskboard (deepseek-harness)
chuspeeism/dashi-taskboard
dsh-agent-teams
nanmicoder/dsh-agent-teams