メインコンテンツへスキップ

概要

comfy-cli は、Comfy のインストールと管理を効率化し、ローカルまたはクラウド上で ComfyUI エコシステム全体にスクリプト可能な単一コマンドでアクセスできるコマンドラインツールです。 主な機能は3つです。
  1. ローカルの ComfyUI インストールを管理 — ComfyUI とカスタムノードのインストール、起動、更新、スナップショット、bisect を行います。
  2. ホスト型パートナーノードにアクセス — Seedance、Nano Banana(Gemini)、Grok、Flux、Ideogram、DALL·E、Recraft、Stability、Kling、Luma、Runway、Pika、Vidu、Hailuo、Moonvalley などのプロバイダーから画像、動画、音声、3D を単一コマンドで生成します。
  3. Comfy Cloud で完全なワークフローを実行 — ワークフローグラフの送信、厳選されたテンプレートギャラリーのブラウズ、スロット編集によるワークフローの編集、ジョブの完了までの監視を、ローカル GPU なしで行います。
2つのサーフェス、1つのCLI。 すべてのコマンドは自動的に実行場所を検出します。Comfy Cloud にサインインしている場合、コマンドは クラウド にルーティングされます。それ以外の場合は、ローカル サーバーに対して実行されます。コールごとに --where local|cloudCOMFY_WHERE 環境変数で上書きするか、comfy set-default --where cloud で永続化できます。

CLIのインストール

pip install comfy-cli
シェルの自動補完を有効にするには、以下のコマンドを実行します:
comfy --install-completion

クイックセットアップ(推奨)

最新バージョンでの新機能: ルーティング、認証、エージェントスキルを1つのステップで処理する対話型ウィザードが追加されました。
comfy setup
このウィザードでは、ルーティング先(ローカルまたはクラウド)の選択、ブラウザ経由のサインイン(OAuth)、プロジェクトディレクトリの選択、そしてオプションでエージェントスキルのインストールを順に行います。推奨される方法です。ブラウザのサインインを自動で開くため、キーをコピーする必要はありません。
comfy setup --where cloud
非対話型(CIのみ)。 ブラウザOAuthには対話型セッションが必要です。CI、devcontainers、スクリプト化されたインストールなどブラウザが利用できない環境では、代わりにAPIキーを渡してください:
comfy setup --where cloud --api-key comfyui-... --non-interactive
フラグ目的
--where local|cloudルーティング先。プロンプトをスキップ
--project-dirワークフロー、入力、出力用のディレクトリ
--api-key(オプション) ヘッドレス/CI用のComfy Cloud APIキー。--where cloud を暗黙的に指定
-y, --non-interactiveプロンプトなし。すべての設定をフラグで指定
--skip-skillsエージェントスキルをインストールしない
--skip-verify接続確認をスキップ

ComfyUI(ローカル)のインストール

Python 3.9 よりも新しい任意のバージョンを使用して仮想環境を作成します。
conda create -n comfy-env python=3.11
conda activate comfy-env
ComfyUI のインストール
comfy install
GPU に応じて、CUDA または ROCm のインストールが必要です。

ComfyUIを実行する(ローカル)

comfy launch
バックグラウンドで実行し、後で停止する:
comfy launch --background
comfy stop
どのワークスペースが選択済みで、何がインストール済みかを確認する:
comfy which
comfy env

Comfy Cloud

Run workflows and partner nodes on Comfy’s hosted GPUs. No local install required.
comfy cloud login          # browser OAuth + PKCE
comfy cloud whoami         # show sign-in status, auth method, base URL
comfy cloud logout         # clear the local session
Once signed in, commands auto-route to cloud. Browser OAuth is the recommended path. No keys to manage, and the CLI handles token refresh for you. To point at a custom environment (for example a PR preview) before signing in:
comfy cloud set-base-url https://my-preview.comfy.org
API key is optional. You only need an API key for headless or CI use where a browser sign-in is not possible. It is a fallback, not the default:
export COMFY_API_KEY=comfyui-...   # or pass --api-key per call
Session lifetime. Cloud session tokens are short-lived (~1h). The CLI auto-refreshes them on demand. If a command reports cloud_unauthorized, run comfy cloud login again.

パートナーノードで生成

comfy generate はベータ版です。 フラグ名、モデルエイリアス、出力形式が変更される可能性があります。基礎となるパートナーエンドポイントは安定しています。フィードバックは comfy-cli GitHub リポジトリ にお寄せください。
ターミナルまたはスクリプトから Comfy のパートナーノードを呼び出す最も高速な方法です。ComfyUI ワークフローと同じホストされたエンドポイントを使用しますが、単一の CLI 呼び出しとして実行します。完全な ComfyUI グラフが不要なバッチジョブ、クイック実験、自動化に最適です。

前提条件

初めての生成

comfy generate flux-pro \
    --prompt "a cat on the moon, cinematic lighting" \
    --width 1024 --height 1024 \
    --download cat.png
CLIはローカルファイルをアップロードし、ジョブを送信し、完了をポーリングし、結果を保存します。
モデルの実際のパラメータを事前に確認しましょう。フラグ名はモデルごとに異なります(例:flux-ultra--width/--heightseedance--ratio/--resolution/--duration)。スクリプト化する前に必ず確認してください:
comfy generate schema flux-ultra

よく使われるモデル

Nano Banana(Google Gemini):テキストから画像へと編集:
comfy generate nano-banana \
    --prompt "a watercolor of a sleeping fox" \
    --download fox.png

# 画像編集:
comfy generate nano-banana \
    --prompt "add a top hat" \
    --image ./cat.png \
    --download edited.png

# モデルバリアントの指定:
comfy generate nano-banana \
    --prompt "neon city skyline" \
    --model gemini-3-pro-image-preview \
    --download city.png
Flux 1.1 Pro Ultra:高解像度テキストから画像へ:
comfy generate flux-ultra \
    --prompt "a purple Victorian house in San Francisco, golden hour" \
    --width 896 --height 1152 --seed 11 \
    --download house.png
Seedance(ByteDance):テキストから動画へと画像から動画へ、最大1080p / 12秒:
# テキストから動画へ:
comfy generate seedance \
    --prompt "a hummingbird hovering over a flower" \
    --resolution 1080p --duration 5 \
    --download hummingbird.mp4

# 画像から動画へ(ローカル画像をアニメーション化、自動アップロード):
comfy generate seedance \
    --model seedance-1-0-pro-250528 \
    --image ./painting.png \
    --ratio 3:4 --resolution 1080p --duration 5 \
    --prompt "the painting gently comes alive, a soft breeze stirs the trees" \
    --download animated.mp4
Grok(xAI):画像とビデオ:
comfy generate grok --prompt "a cyberpunk street market at night" --download street.png
comfy generate grok-edit --prompt "swap the umbrella for a parasol" --image ./photo.jpg --download out.png
comfy generate grok-video --prompt "a paper plane gliding through a cathedral" --download flight.mp4

モデルを見つける

comfy generate list                            # すべてのモデル
comfy generate list --category text-to-video   # カテゴリでフィルタ
comfy generate list --partner kling            # パートナーでフィルタ
comfy generate schema flux-kontext             # モデルのパラメータを表示

参照画像を使った画像編集

ローカルファイルパスを渡します。CLIは、Comfyのストレージエンドポイントを介してアップロードするか、必要に応じてbase64エンコードします。
comfy generate nano-banana \
    --prompt "add a top hat" \
    --image ./cat.png \
    --download edited.png

comfy generate flux-kontext \
    --prompt "add a top hat and a monocle" \
    --input_image ./photo.jpg \
    --download out.png

comfy generate ideogram-edit \
    --image cat.png --mask mask.png \
    --prompt "add sunglasses" \
    --rendering_speed TURBO \
    --download edited.png
1回アップロードして、複数の呼び出しで再利用するには:
comfy generate upload ./photo.jpg     # prints a signed URL
アップロードされた参照アセットは24時間後に自動削除されます。これらは署名付きURLを使用してComfy管理のGCSに保存されます。長時間実行されるパイプラインの場合は、各ジョブの前に再アップロードしてください。詳細についてはリファレンスを参照してください。

動画生成(非同期ジョブ)

ビデオジョブは非同期です。CLIはデフォルトでブロッキングしてポーリングします:
comfy generate seedance \
    --prompt "a hummingbird hovering over a flower" \
    --resolution 1080p --duration 5 \
    --download hummingbird.mp4

comfy generate kling \
    --prompt "a paper boat drifting on a river at dusk" \
    --duration 5 \
    --download boat.mp4
--async で即座に戻り、後で再開します:
comfy generate luma --prompt "neon koi swimming through clouds" --aspect_ratio 16:9 --async
# ジョブIDが表示されます。後で再開:
comfy generate resume luma <job_id> --download out.mp4

スクリプト用のJSON出力

パイプライン統合用に生の API レスポンスを出力:
comfy generate dalle --prompt "a watercolor whale" --json | jq '.data[0].url'
コマンド、フラグ、モデルエイリアスの全リストについてはリファレンスを参照してください。

ワークフローの実行(comfy run

単独のパートナー呼び出しを超えて、comfy run は完全な ComfyUI ワークフローグラフを送信します。API形式とエクスポートされたUI形式の両方のJSON(UIワークフローはクライアント側でAPI形式に変換されます)を受け付け、他のコマンドと同様にローカルまたはクラウドにルーティングします。デフォルトでは非同期で動作します。バックグラウンドのウォッチャーが進捗を追跡しつつ、ミリ秒単位で prompt_id を返します。ブロックして待機するには --wait を指定します。
# 送信:即座に prompt_id を返す
RES=$(comfy --json run --workflow my_workflow.json)
PROMPT_ID=$(echo "$RES" | jq -r .data.prompt_id)

# ターミナル状態になるまで監視し、出力を収集
comfy --json jobs watch "$PROMPT_ID" | comfy download
単一のブロッキング呼び出しを希望しますか? --wait を使用します:
comfy run --workflow my_workflow.json --wait | comfy download
ジョブの追跡と管理:
comfy jobs ls                 # ローカルの非同期送信 + サーバーのキュー/履歴
comfy jobs status <prompt_id> # 1つのジョブ
comfy jobs wait <id1> <id2>   # 全てがターミナル状態に達するまでブロック
comfy jobs cancel <prompt_id> # べき等
送信前に検証しましょう。不明なノード、不足しているモデル、誤った配線を、クラウド計算を消��する前に発見します:
comfy validate --workflow my_workflow.json

テンプレートから始める

厳選された Comfy-Org/workflow_templates ギャラリーは、特定のタスクに対して既知の優れたワークフローを入手する最速の方法です。ゼロから構築する必要はありません。
comfy templates ls --type image --tag "Text to Image"   # ブラウズ
comfy templates show <name>                              # 完全なメタデータ
comfy templates fetch <name> --out my.json               # ワークフローJSONを取得
ダウンロードされたJSONはフロントエンド形式です。comfy run --where cloud は送信時に自動的にAPI形式に変換します。

ワークフローのその場編集

comfy workflow は、フロントエンド形式のワークフロー内でエージェントが調整可能なスロットを公開し、それらを上書きできるようにします。手動の JSON 編集は不要です。
comfy workflow slots my.json                 # アドレス可能なスロットを一覧表示
comfy workflow set-slot my.json 6.text="a fox in the snow"
comfy workflow vary my.json \
    --slot positive.text='["a cat","a dog","a fox"]' \
    --out-dir ./variants                     # N個のバリエーションを生成
Comfy Cloud に保存されたワークフロー:
comfy workflow list                          # 保存されたワークフローの一覧
comfy workflow get <id> --out my.json
comfy workflow save my.json --name "My Flow"
comfy workflow delete <id>
複雑なマルチステップパイプラインでは、小さな再利用可能な断片を組み合わせて1つのグラフにします:
comfy workflow compose blueprints/my_pipeline.yaml -o workflows/my_pipeline.json
comfy workflow decompose my.json             # 逆: ワークフローを断片に分解

ノードとモデルを発見する

解決済みのバックエンドで利用可能なすべてを詳細に確認します。 ノード:
comfy nodes search "checkpoint"              # あいまい検索
comfy nodes show KSampler                    # 完全なスキーマ:入力、出力、デフォルト値
comfy nodes ls --produces IMAGE --limit 10   # 出力タイプでフィルタ
comfy nodes ls --api-only                    # パートナーAPIノードのみ
モデル:
comfy models list-folders                    # すべてのモデルフォルダー
comfy models search --text "wan2.2" --type lora
comfy models show wan2.2_vae.safetensors     # 完全なメタデータ

ファイルのアップロードとダウンロード

comfy upload photo.png video.mp4             # → サーバー入力ディレクトリ
comfy download <prompt_id>                   # → ./outputs/
慣用的なパイプ:
comfy run --workflow flux.json --wait | comfy download
comfy download は、パイプされた標準入力から prompt_id と出力URLを自動的に読み取ります。手動でキーを抽出したり、jq を使う必要はありません。

カスタムノードの管理

comfy node install <NODE_NAME>
このツールはカスタムノードのインストールに cm-cli を使用します。詳細は ComfyUI Manager cm-cli ドキュメント を参照してください。

モデルの管理(ローカル)

モデルを簡単にダウンロード:
comfy model download --url <url> --relative-path models/checkpoints

スクリプトとエージェント向けのJSON出力

すべてのコマンドは --json を受け付け、同一のエンベロープ形状を出力します。これにより、CLIは完全にスクリプト可能でエージェントフレンドリーになります。
{
  "ok": true,
  "command": "...",
  "version": "1.11.1",
  "where": "local | cloud | null",
  "data": { },
  "error": null
}
error が存在する場合は、hint を読み、それに従って行動します。
comfy --json run --workflow my.json | jq '.error.hint'
エージェント向けのインターフェースは完全に自己記述的です。コマンドツリー全体、出力スキーマ、エラーコードをダンプします。
comfy --json discover

エージェントスキル

インストール済みのComfyエージェントスキルをClaude Code、Cursor、およびAGENTS.md対応ツールにインストールすると、コーディングエージェントがCLIを直接操作できるようになります:
comfy skills install
comfy skills list      # comfy, comfy-fragments, comfy-debug, comfy-relay, comfy-director
comfy skills status    # what's installed where
これらは comfy skills install でインストールされるバンドル済みCLIスキルです。Comfy Skills リポジトリ(Comfy Cloud MCP 用の comfy-cloud Claude Codeプラグインをホスト)とは別のものです。

コントリビューション

コントリビューションを歓迎します。comfy-cli GitHub リポジトリでイシューを開くか、プルリクエストを送信してください。詳細は開発ガイドを参照してください。

分析

使用状況の追跡はCLIの改善に役立ちます。以下のコマンドで無効にします:
comfy tracking disable
追跡を再度有効にする:
comfy tracking enable
また、DO_NOT_TRACK または COMFY_NO_TELEMETRY 環境変数を設定して、完全にオプトアウトすることもできます。