Providers

ComfyUI

OpenClaw 內建隨附 comfy Plugin,用於以工作流程驅動的 ComfyUI 執行。此 Plugin 完全以工作流程驅動,因此 OpenClaw 不會嘗試將通用的 sizeaspectRatioresolutiondurationSeconds 或 TTS 風格控制項對應到你的圖形。

屬性 詳細資訊
提供者 comfy
模型 comfy/workflow
共用介面 image_generate, video_generate, music_generate
驗證 本機 ComfyUI 不需要;Comfy Cloud 使用 COMFY_API_KEYCOMFY_CLOUD_API_KEY
API ComfyUI /prompt / /history / /view 和 Comfy Cloud /api/*

支援內容

  • 從工作流程 JSON 產生圖片
  • 使用 1 張已上傳參考圖片編輯圖片
  • 從工作流程 JSON 產生影片
  • 使用 1 張已上傳參考圖片產生影片
  • 透過共用的 music_generate 工具產生音樂或音訊
  • 從已設定的節點或所有相符的輸出節點下載輸出

開始使用

選擇在自己的機器上執行 ComfyUI,或使用 Comfy Cloud。

本機

最適合: 在你的機器或 LAN 上執行自己的 ComfyUI 執行個體。

  • 在本機啟動 ComfyUI

    確認你的本機 ComfyUI 執行個體正在執行(預設為 http://127.0.0.1:8188)。

  • 準備你的工作流程 JSON

    匯出或建立 ComfyUI 工作流程 JSON 檔案。記下提示輸入節點和你希望 OpenClaw 讀取的輸出節點的節點 ID。

  • 設定提供者

    設定 mode: "local" 並指向你的工作流程檔案。以下是最小圖片範例:

    {
      plugins: {
        entries: {
          comfy: {
            config: {
              mode: "local",
              baseUrl: "http://127.0.0.1:8188",
              image: {
                workflowPath: "./workflows/flux-api.json",
                promptNodeId: "6",
                outputNodeId: "9",
              },
            },
          },
        },
      },
    }
    
  • 設定預設模型

    將 OpenClaw 指向你已設定能力的 comfy/workflow 模型:

    {
      agents: {
        defaults: {
          imageGenerationModel: {
            primary: "comfy/workflow",
          },
        },
      },
    }
    
  • 驗證

    openclaw models list --provider comfy
    
  • Comfy Cloud

    最適合: 不管理本機 GPU 資源,直接在 Comfy Cloud 上執行工作流程。

  • 取得 API 金鑰

    comfy.org 註冊,並從你的帳戶儀表板產生 API 金鑰。

  • 設定 API 金鑰

    透過以下其中一種方法提供你的金鑰:

    # Environment variable (preferred)
    export COMFY_API_KEY="your-key"
    
    # Alternative environment variable
    export COMFY_CLOUD_API_KEY="your-key"
    
    # Or inline in config
    openclaw config set plugins.entries.comfy.config.apiKey "your-key"
    
  • 準備你的工作流程 JSON

    匯出或建立 ComfyUI 工作流程 JSON 檔案。記下提示輸入節點和輸出節點的節點 ID。

  • 設定提供者

    設定 mode: "cloud" 並指向你的工作流程檔案:

    {
      plugins: {
        entries: {
          comfy: {
            config: {
              mode: "cloud",
              image: {
                workflowPath: "./workflows/flux-api.json",
                promptNodeId: "6",
                outputNodeId: "9",
              },
            },
          },
        },
      },
    }
    
  • 設定預設模型

    {
      agents: {
        defaults: {
          imageGenerationModel: {
            primary: "comfy/workflow",
          },
        },
      },
    }
    
  • 驗證

    openclaw models list --provider comfy
    
  • 設定

    Comfy 支援共用頂層連線設定,以及依能力區分的工作流程區段(imagevideomusic):

    {
      plugins: {
        entries: {
          comfy: {
            config: {
              mode: "local",
              baseUrl: "http://127.0.0.1:8188",
              image: {
                workflowPath: "./workflows/flux-api.json",
                promptNodeId: "6",
                outputNodeId: "9",
              },
              video: {
                workflowPath: "./workflows/video-api.json",
                promptNodeId: "12",
                outputNodeId: "21",
              },
              music: {
                workflowPath: "./workflows/music-api.json",
                promptNodeId: "3",
                outputNodeId: "18",
              },
            },
          },
        },
      },
    }
    

    共用鍵

    類型 說明
    mode "local""cloud" 連線模式。
    baseUrl 字串 本機預設為 http://127.0.0.1:8188,雲端預設為 https://cloud.comfy.org
    apiKey 字串 選用的行內金鑰,可替代 COMFY_API_KEY / COMFY_CLOUD_API_KEY 環境變數。
    allowPrivateNetwork 布林值 允許在雲端模式中使用私人/LAN baseUrl

    各能力鍵

    這些鍵適用於 imagevideomusic 區段內:

    必填 預設 說明
    workflowworkflowPath -- ComfyUI 工作流程 JSON 檔案的路徑。
    promptNodeId -- 接收文字提示的節點 ID。
    promptInputName "text" 提示節點上的輸入名稱。
    outputNodeId -- 要讀取輸出的節點 ID。若省略,會使用所有相符的輸出節點。
    pollIntervalMs -- 作業完成的輪詢間隔,單位為毫秒。
    timeoutMs -- 工作流程執行的逾時時間,單位為毫秒。

    imagevideo 區段也支援:

    必填 預設 說明
    inputImageNodeId 是(傳入參考圖片時) -- 接收已上傳參考圖片的節點 ID。
    inputImageInputName "image" 圖片節點上的輸入名稱。

    工作流程詳細資訊

    圖片工作流程

    將預設圖片模型設定為 comfy/workflow

    {
      agents: {
        defaults: {
          imageGenerationModel: {
            primary: "comfy/workflow",
          },
        },
      },
    }
    

    參考圖片編輯範例:

    若要啟用使用已上傳參考圖片的圖片編輯,請將 inputImageNodeId 加入你的圖片設定:

    {
      plugins: {
        entries: {
          comfy: {
            config: {
              image: {
                workflowPath: "./workflows/edit-api.json",
                promptNodeId: "6",
                inputImageNodeId: "7",
                inputImageInputName: "image",
                outputNodeId: "9",
              },
            },
          },
        },
      },
    }
    
    影片工作流程

    將預設影片模型設定為 comfy/workflow

    {
      agents: {
        defaults: {
          videoGenerationModel: {
            primary: "comfy/workflow",
          },
        },
      },
    }
    

    Comfy 影片工作流程透過已設定的圖形支援文字轉影片和圖片轉影片。

    音樂工作流程

    內建 Plugin 會為工作流程定義的音訊或音樂輸出註冊音樂產生提供者,並透過共用的 music_generate 工具公開:

    /tool music_generate prompt="Warm ambient synth loop with soft tape texture"
    

    使用 music 設定區段指向你的音訊工作流程 JSON 和輸出節點。

    向後相容性

    現有的頂層圖片設定(沒有巢狀 image 區段)仍可使用:

    {
      plugins: {
        entries: {
          comfy: {
            config: {
              workflowPath: "./workflows/flux-api.json",
              promptNodeId: "6",
              outputNodeId: "9",
            },
          },
        },
      },
    }
    

    OpenClaw 會將該舊版形狀視為圖片工作流程設定。你不需要立即遷移,但建議新設定使用巢狀 image / video / music 區段。

    即時測試

    內建 Plugin 有選擇加入的即時覆蓋範圍:

    OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts
    

    除非已設定相符的 Comfy 工作流程區段,否則即時測試會略過個別圖片、影片或音樂案例。

    相關內容