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
羽毛球分组比赛记分
小程序二维码

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

小夜