前言¶
DeepSeek Harness (DSH) 的核心設計理念是“一切皆插件”。對於開發者來說,如何讓 Agent 能夠直接調用本地運行的圖形化工具(如 ComfyUI),是一個常見需求。傳統的做法需要編寫大量的 API 適配代碼或通過腳本中轉。DSH 的 Agent 插件機制提供瞭解決方案:通過接入 dsh-comfyui-agent,Agent 可以直接讀取你本地保存的 ComfyUI 畫布工作流、修改參數、執行出圖,並將結果直接回顯在對話中。
插件介紹¶
dsh-comfyui-agent 是一個面向 DeepSeek Harness 0.2.0-rc.2 的工具插件,由開發者 Nana7mi0721 維護。它解決了 Agent 與本地 ComfyUI 通信的痛點,讓 Agent 能夠像操作本地程序一樣控制 ComfyUI。
- 核心價值:直接驅動本地 ComfyUI,跑存好的工作流,產出的圖片直接顯示在對話裏。
- 兼容性:兼容 DSH 0.2.0-rc.2(
@deepseek-ai/dsh-tools0.2.0-rc.2 / cordis 4.x)。該插件不依賴dsh-settings,因此可以直接安裝使用。 - 許可證:MIT。
核心功能¶
該插件註冊了五個工具,覆蓋了從狀態探測到結果展示的完整流程:
-
comfyui_status
- 作用:探活。用於確認 ComfyUI 版本、隊列長度、路徑以及可用模型清單。
- 使用時機:在第一次使用前先跑它,確認連接正常。
-
comfyui_nodes
- 作用:搜節點類或查某個類的輸入定義。
- 使用時機:不確定某個節點具體需要什麼參數時使用。
-
comfyui_workflows
- 作用:管理本地保存的畫布工作流。
- 用法:
action:"list":列出工作流名字、節點數、輸出節點。action:"params":列出可調參數(按節點分組,帶取值範圍)。action:"get":打印完整 API 工作流(診斷用,費 token)。
-
comfyui_run
- 作用:真正跑圖。
- 用法:通過
file(畫布工作流名)、template(內置模板)或workflow(自定義 API 工作流對象)執行。
-
comfyui_show
- 作用:查看或上傳圖片。
- 用法:
action:"latest":查看最近產出(默認 6 張)。action:"view":按文件名取圖。action:"upload":把本地圖片傳進 ComfyUI 的input/(img2img 要用)。
安裝與配置¶
插件安裝後,配置項會寫入 ~/.dsh/profiles/desktop/cordis.patch.yml。
安裝步驟:
- 確保你的 DSH 版本爲 0.2.0-rc.2。
- 執行以下命令將插件安裝到桌面配置文件中:
dsh plugin --profile desktop add \
https://github.com/Nana7mi0721/dsh-comfyui-agent/releases/download/v0.1.3/dsh-comfyui-agent-0.1.3.tgz
配置說明:
安裝時(或事後修改)需要配置 ComfyUI 的連接信息,配置項如下:
| 字段 | 默認值 | 說明 |
|---|---|---|
baseUrl |
http://127.0.0.1:8188 |
ComfyUI 的 HTTP 服務地址。核心默認只監聽 127.0.0.1,跨機器需加 --listen |
comfyuiDir |
E:\ComfyUI\ComfyUI |
ComfyUI 本體目錄(讀取 output/、input/、user/default/workflows/) |
workflowsDir |
空 | 留空則自動使用 <comfyuiDir>/user/default/workflows |
timeoutMs |
120000 | 單次 HTTP 請求超時時間 |
pollIntervalMs |
1200 | 等待運行結果時的輪詢間隔 |
runTimeoutMs |
1800000 | 一次運行跑完的上限(30 分鐘) |
toolTimeoutMs |
2400000 | 單個工具調用的上限(40 分鐘) |
典型用法¶
下面是一個 Agent 修改畫布參數並重新出圖的典型對話流程:
-
列出參數:首先查看畫布裏有哪些可調參數。
> Agent:comfyui_workflows {action:"params", name:"anima v2"}
> 輸出結果:看到節點 765:709 是 steps(步數)。 -
第一次出圖:使用默認步數(如 12)出一張圖。
> Agent:comfyui_run {file:"anima v2", inputs:{"765:709":{"value":12}}, savePrefix:"silver"} -
修改參數再次出圖:將步數改爲 20。
> Agent:comfyui_run {file:"anima v2", inputs:{"765:709":{"value":20}}, savePrefix:"silver20"}
注意事項與限制¶
在使用該插件時,請注意以下事實:
- 純前端節點會被跳過:如果工作流中包含純前端節點(如 Note、Fast Muter 或沒有服務端實現的 rgthree 開關),這些節點會被跳過。如果下游連線因節點被跳過而斷開,會在工具回覆的
warnings中說明。 - 顯存限制:在 8GB 顯存下,建議不要併發提交多個大工作流,以免 OOM。
- 版本依賴:必須安裝 DSH 0.2.0-rc.2 或更高版本。
- 圖片回顯:默認最多回顯 4 張圖(上限 12 張),顯式設置
0則只返回路徑不回顯圖片。
總結¶
dsh-comfyui-agent 通過將 ComfyUI 的圖形化工作流轉化爲 Agent 可執行的指令,實現了本地繪圖任務的自動化。它不依賴額外的配置管理庫,直接通過 cordis 掛載工具,配合簡單的配置即可讓 Agent 具備操作本地繪圖軟件的能力。
- GitHub 倉庫:https://github.com/Nana7mi0721/dsh-comfyui-agent
- 社區目錄:https://www.skillhub.cn/plugins/Nana7mi0721/dsh-comfyui-agent