前言¶
DeepSeek Harness(DSH)採用插件化架構來擴展智能體的行爲。當開發涉及多個步驟、外部 API 調用和複雜邏輯的應用時,簡單的腳本往往難以維護。DSH Workflow 是一個原生工作流自動化平臺,旨在提供一種可視化的方式來組織觸發器、HTTP 請求、代碼執行、條件分支和定時任務。
核心功能¶
可視化編排與節點測試¶
插件提供畫布式界面,支持通過拖拽節點和連接端口來直觀定義執行路徑。每個可執行節點(除持久 Wait 外)都支持單獨測試。測試過程中,系統會從測試輸入或上游樣本生成 JSON 字段樹,允許通過點擊或拖拽插入嵌套字段表達式。
代碼執行與 HTTP 請求¶
代碼節點支持 TypeScript 與 Python,提供全屏編輯器。HTTP 節點支持自定義方法、請求頭、請求體、響應解析、超時和模板。兩者均在宿主進程中運行,代碼節點可通過全局 dsh 對象訪問 DSH 的運行時能力。
觸發與調度¶
工作流支持多種啓動方式。Webhook 觸發器使用獨立 token 接收外部請求,支持 HMAC-SHA256 驗籤。定時任務使用 5 段 Cron 表達式。應用事件觸發器支持對 GitHub、Slack 等服務的持續輪詢,新事件會觸發獨立的運行實例。
可靠性與容錯¶
系統內置失敗重試機制,支持 0-10 次重試及指數退避。可執行節點在重試耗盡後可路由到錯誤分支,錯誤事件經過脫敏處理。服務端會在節點邊界持久保存檢查點,支持從失敗處恢復。執行預算可限制最長運行時間和最大步數,超限後保留安全檢查點。
安全與狀態管理¶
連接管理支持 Bearer Token、API Key、Basic Auth 和 OAuth2,敏感信息使用 AES-256-GCM 加密。項目變量與 Secret 統一存儲在主機變量庫,運行記錄中自動脫敏。Data Store 提供加密的小型狀態存儲。
安裝與啓用¶
該項目尚未發佈到 npm,請直接從 GitHub 倉庫安裝。
dsh plugin --profile web add git+https://github.com/luxi233/dsh-workflow.git
安裝完成後重啓 Web UI (dsh web)。進入 DSH 後,從側邊欄打開 節點模式 即可使用。
典型用法¶
- 創建工作流:從節點模式主頁創建新工作流,或從左側文件夾進行篩選。
- 添加節點:從左側工具軌進入節點庫,搜索並添加所需節點(如 Agent、Code、HTTP)。
- 建立連接:拖動節點端口建立連接,或點擊連線中間的
+插入步驟。 - 配置參數:在右側檢查器的配置或輸出標籤中編輯參數。
- 測試節點:在檢查器填寫 JSON 測試輸入,通過字段映射插入表達式,點擊“測試此節點”。
- 發佈流程:點擊發布,更新實際運行與 Cron 調度使用的快照。
- 管理憑據:在主頁連接中創建 Bearer Token、OAuth2 等憑據,在節點中選擇。
- 配置策略:在“更多操作 → 運行策略”中設置併發模式、最長運行時間和最大執行步數。
- 錯誤處理:選擇節點的“失敗時行爲 → 路由到錯誤分支”,連接紅色
error端口。 - 版本控制:點擊版本歷史比較版本,或恢復併發布。
注意事項¶
- 兼容性標識:npm 包名、Cordis bundle ID 及宿主 API 路徑仍保留
dsh-node-flow,僅爲兼容性標識,不影響獨立倉庫維護。 - Secret 安全:Secret 不回傳瀏覽器,在運行記錄、錯誤和 API 響應中自動脫敏。
- 重放機制:重放固定使用當時保存的工作流快照,而非當前草稿。
- 執行預算:預算不會跨運行累計,恢復運行會重新使用快照中的預算。
- 文件夾歸屬:文件夾只管理控制面歸屬(如列表篩選),不改變草稿、已發佈快照、運行記錄或版本歷史的內容。
總結¶
DSH Workflow 提供了一套完整的可視化工作流解決方案,將 Agent 調用、代碼執行、HTTP 請求和條件邏輯組合成可直接運行的流程。通過節點測試、錯誤分支、檢查點恢復和版本歷史等機制,它爲構建可靠的自動化任務提供了基礎。
- GitHub: https://github.com/luxi233/dsh-workflow
- 技能目錄: https://www.skillhub.cn/plugins/luxi233/dsh-workflow