dsh-comfyui-commander:讓 DSH Agent 通過自然語言全自動控制 ComfyUI

前言

DSH Agent 的控制範圍目前主要在本地腳本或通用網絡服務。對於 Stable Diffusion 工作流(如 ComfyUI),手動操作繁瑣且難以自動化。dsh-comfyui-commander 解決了這個問題,它通過 DSH 的 Subprocess 能力,讓 Agent 直接接管 ComfyUI 的生成任務、進度監控與模型管理。

是什麼

這是一個由 suika009 維護的插件,通過 Node.js 輔助進程與 ComfyUI API 通信,實現自然語言控制。它不依賴外部運行時,僅要求本機 Node >= 22。

核心功能

插件提供以下工具集:

  • 工作流控制:列出工作流 (comfy_list_workflows),加載工作流並轉換爲 API 格式 (comfy_load_workflow),支持通過 overrides 修改任意節點參數。
  • 任務執行:提交生成任務 (comfy_submit),實時監控進度 (comfy_get_progress,包含隊列位置、當前節點、採樣百分比),獲取結果 (comfy_fetch_results) 並下載到本地。
  • 批量編排:通過 comfy_wait_task 實現阻塞等待,串聯多階段任務(例如先生成分鏡再合成視頻)。
  • 模型管理:上傳模型 (comfy_upload_model)、移動模型 (comfy_move_model)、導出歸檔 (comfy_export_model)、盤點磁盤佔用 (comfy_model_disk_usage)。

安裝與啓用

  1. 進入 DSH 的 Profile 目錄:
    cd $DSH_HOME/profiles/<name>
  1. 安裝依賴:
    pnpm add dsh-comfyui-commander
  1. 在 cordis.patch.yml 中添加插件行:
    - insert:
        - id: comfyui-commander
          name: 'dsh-comfyui-commander'
  1. 重啓 DSH。

典型用法

Agent 可以通過自然語言編排一系列操作,例如:

  1. 單次生成:
    「列出工作流 → 加載 SDXL.json → 提示詞換成 ‘a cat, masterpiece’ → 生成 → 下載到本地」
    對應工具鏈:comfy_list_workflows → comfy_load_workflow → comfy_submit(overrides) → comfy_get_progress → comfy_fetch_results(download)。

  2. 批量生成:
    「先生成 5 張分鏡,全部完成後用合併工作流合成視頻」。
    對應工具鏈:利用 comfy_wait_task 串行執行。

安全與限制

  • 不保存只提交:對現有工作流的任何改造只作用於本次提交,絕不改動已保存的工作流文件。
  • 安全配置:模型文件操作遵循默認安全、危險操作需手動開啓的原則。默認關閉刪除、覆蓋、修改。若需使用 comfy_delete_model,需在配置文件中將 allowDelete 設爲 true 並重啓。
  • 已知邊界:打開的工作流標籤頁是瀏覽器 localStorage 狀態,服務端不可枚舉;動態 Cordis 插件在部分部署中不可見。

總結

該插件爲 DSH Agent 提供了完整的 ComfyUI 控制面,適合需要自動化生成、批量處理和模型管理的場景。更多細節可參考插件目錄或GitHub 倉庫。

羽毛球分组比赛记分
小程序二维码

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

小夜