mcpField
I
image-edit

image-edit

github.com/prime-skillsクリエイティブ・メディア61438.6k 回インストール24 週間前に更新
リポジトリ

image-edit について

RunComfy の画像編集スキルで、依頼に応じて Nano Banana Edit、GPT Image 2 Edit、Flux Kontext Pro、Z-Image Turbo Inpaint を選びます。バッチ編集、多言語テキストの変更、単画像の精密編集、マスク領域の置換を行うエージェント向けです。

主な機能

  1. 01意図に応じた画像モデル選択
  2. 02複数画像の一括編集
  3. 03多言語テキストと複数参照画像の合成
  4. 04単画像の精密な部分編集
  5. 05マスクによる領域置換

活用シーン

  1. 01商品画像の一括編集で見た目を統一
  2. 02画像内テキストを複数の文字体系で変更
  3. 03別々の参照画像から被写体と背景を合成
  4. 04マスク領域の除去または置換

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/prime-skills/runcomfy-agent-skills --skill image-edit

インストール後、Claude Code で/image-editを入力して読み込まれたか確認します。

詳細

Image Edit — RunComfy の Pro Pack

runcomfy.com · Nano Banana Edit · GPT Image 2 Edit · Flux Kontext · Z-Image Inpaint · GitHub

意図に応じた画像編集。 このスキルでは、1つのモデルに固定されません。ユーザーが実際に求めている内容に基づいて、RunComfy カタログから適切な編集モデルを選択します。たとえば、アイデンティティを維持した一括編集、多言語テキストの書き換え、1回で完了する精密な編集、マスクを使った領域の置き換えなどです。

npx skills add agentspace-so/runcomfy-skills --skill image-edit -g

ユーザーの意図に合ったモデルを選ぶ

ユーザーの意図モデル理由
1~20枚の画像を一貫性を保って一括編集する(SKU ギャラリー、A/B バリエーション)Nano Banana Edit1回の呼び出しで最大20枚の入力画像に対応。シリーズ全体でアスペクト比と解像度を固定できます
背景を入れ替え、被写体のアイデンティティを維持するNano Banana Edit「X は変更しない」というプロンプトで、アイデンティティを強く維持します
空間表現(「左側のオブジェクト」「右上隅」)を使った、局所的なオブジェクトの削除/追加Nano Banana Edit方向を示す空間的な範囲を忠実に反映します
画像内テキストの多言語/非ラテン文字による書き換え(日本語のかな、キリル文字、アラビア語)GPT Image 2 Edit多言語タイポグラフィでクラス最高の性能を発揮します
複数の参照画像を使った構成(画像1の被写体、画像2のシーン、画像3の配色)GPT Image 2 Edit番号付きの参照画像から手がかりを正しく反映します
レイアウトを正確に保った位置変更(「見出しを右上から下中央に移動」)GPT Image 2 Editレイアウトレベルで方向の指示を忠実に反映します
翻訳した見出しのバリエーション間でアイデンティティを維持するGPT Image 2 Edit同じソース素材から多数の言語バリエーションを作成しても、アイデンティティが保たれます
1回で完了する正確な局所編集(「彼女がオレンジ色の傘を持っている」)Flux Kontext Pro1つの参照画像と1つの指示で、高い忠実度を維持します
マスクを使ったオブジェクトの削除(ケーブル、透かし、不要なもの)Z-Image Turbo Inpaintマスクが必須で、強度を調整でき、エッジの一貫性を保ちます
マスクを使った領域の置き換え(マスクによる背景全体の差し替え)Z-Image Turbo Inpaint強度を高くし、マスクをきれいにすれば、きれいに置き換えられます
指定がない場合のデフォルトNano Banana Edit最も柔軟で、単一画像にも一括処理にも対応します

エージェントはこの表を読み、ユーザーの意図を分類して、以下の該当するセクションを選びます。

前提条件

  1. RunComfy CLI — npm i -g @runcomfy/cli
  2. RunComfy アカウント — runcomfy login。
  3. CI/コンテナ — RUNCOMFY_TOKEN=<token> を設定します。

ルート1:Nano Banana Edit — 一般的な編集と一括処理のデフォルト

モデル:google/nano-banana-2/edit

スキーマ
フィールド型必須デフォルト備考
promptstringはい—維持したい要素を最初に示し、変更内容を最後に記述します。
image_urlsarrayはい—公開取得可能な HTTPS URL を1~20個指定します。
number_of_imagesintいいえ11回の呼び出しにつき1~4枚を出力します。
aspect_ratioenumいいえautoauto は入力に合わせます。一括処理で一貫性を保つには固定します。
resolutionenumいいえ1K0.5K / 1K / 2K / 4K。
output_formatenumいいえpngpng / jpeg / webp。
seedintいいえ—再現性を確保します。
enable_web_searchboolいいえfalseウェブ情報に基づく編集(追加の遅延が発生します)。
呼び出し
runcomfy run google/nano-banana-2/edit \
  --input '{
    "prompt": "Keep the subject identity, pose, and clothing unchanged. Convert the background into a rainy neon cyberpunk street.",
    "image_urls": ["https://.../portrait.jpg"]
  }' \
  --output-dir <absolute/path>

一括処理(アスペクト比と解像度を固定):

runcomfy run google/nano-banana-2/edit \
  --input '{
    "prompt": "Replace the watermark in the bottom-right with the text \"AURA\" in clean white sans-serif. Keep everything else exactly as in the input.",
    "image_urls": ["https://.../sku-1.jpg", "https://.../sku-2.jpg", "https://.../sku-3.jpg"],
    "aspect_ratio": "1:1",
    "resolution": "1K"
  }' \
  --output-dir <absolute/path>
プロンプトのヒント
  • まず保持を指示する:「[identity / pose / brand / framing] を変更しないでください。」と指定してから、変更内容を述べます。
  • 空間的な範囲:「背景のみ」「左側のオブジェクト」「右上の領域」など、場所を具体的に示すと反映されます。
  • バッチの一貫性:バッチ全体で aspect_ratio と resolution を固定します。
  • 小さく反復する:複合的な編集は、複数回の短い処理に分けます。

ルート 2:GPT Image 2 Edit — 多言語テキスト+複数参照画像の合成

モデル:openai/gpt-image-2/edit

スキーマ
フィールド型必須デフォルト備考
promptstringはい—編集指示。保持する内容を最初に指定します。
imagesstring[]はい—HTTPS URL を最大 10 件指定します。最初の画像がメイン、残りが補助画像です。
sizeenumいいえautoauto、1024_1024、1024_1536、1536_1024。これらのみです。
実行

多言語テキストの書き換え:

runcomfy run openai/gpt-image-2/edit \
  --input '{
    "prompt": "Keep the photograph, layout, and brand mark exactly as in the input. Replace only the in-image headline. The new headline reads \"今日のおすすめ\" in bold Japanese kana, same position and font weight.",
    "images": ["https://.../poster-en.jpg"]
  }' \
  --output-dir <absolute/path>

複数参照画像の合成:

runcomfy run openai/gpt-image-2/edit \
  --input '{
    "prompt": "Compose subject from image 1 into the room from image 2. Match the lighting and color palette of image 2. Keep image 1 subject identity unchanged.",
    "images": ["https://.../subject.jpg", "https://.../room.jpg"]
  }' \
  --output-dir <absolute/path>
プロンプトのヒント
  • 画像内のテキストは正確に引用します。 ラテン文字以外の文字については、「Japanese kana」「Cyrillic」「Arabic right-to-left」のように文字体系を指定します。
  • 複数の参照画像には番号を付けます:「画像 1 の被写体、画像 2 のライティング」。
  • 方向を示すレイアウト表現を使います:「見出しを右上から下中央に移動する」「右下の透かしを置き換える」。
  • size: "auto" は入力画像の比率を維持します。編集でフレーミングを変更する場合を除き、推奨されます。

ルート 3:Flux Kontext Pro — 1 回で行う正確な局所編集

モデル:blackforestlabs/flux-1-kontext/pro/edit

スキーマ(最小構成)
フィールド型必須備考
promptstringはい宣言的な編集指示を 1 つ指定します。
imagestringはい単一の元画像 URL。
aspect_ratioenumいいえ対応する W:H 値から選択します。
seedintいいえ再現性を確保します。

画像は 1 枚のみです。配列は指定できません。複数画像を使う場合は、ルート 1(Nano Banana Edit)を使用してください。

実行
runcomfy run blackforestlabs/flux-1-kontext/pro/edit \
  --input '{
    "prompt": "Keep the person'\''s face, pose, and clothing unchanged. Add an orange umbrella in her left hand and a slight smile.",
    "image": "https://.../portrait.jpg"
  }' \
  --output-dir <absolute/path>
プロンプトのヒント
  • 宣言的な指示を 1 つにする。 「彼女はオレンジ色の傘を持って笑っています」のように、変更を 1 つに絞って指示します。
  • まず保持を指示する。 「[unchanged elements] を変更しないでください。」と最初に指定してから、変更内容を述べます。
  • 小さく反復する。 1 回の処理で複合的な編集を行うと内容がずれるため、順次処理に分けます。

ルート 4:Z-Image Turbo Inpaint — マスクを使った正確な領域編集

モデル:tongyi-mai/z-image/turbo/inpainting

スキーマ
フィールド型必須備考
promptstringはい塗りつぶし/置き換えの内容と、マスクされていない周囲を保持するための制約を指定します。
imagestringはい元画像 URL。
mask_imagestringはいグレースケールのマスク URL(白=インペイント、黒=保持)。
strengthfloatいいえレタッチには 0.3~0.6、完全な置き換えには 0.7~1.0 を指定します。
control_scalefloatいいえ一般的な値は 0.6~0.9 です。
aspect_ratioenumいいえ出力比率 W:H。
seedintいいえ再現性を確保します。
実行

オブジェクトの削除(低い強度):

runcomfy run tongyi-mai/z-image/turbo/inpainting \
  --input '{
    "prompt": "Remove overhead cables; preserve rooflines and sky gradient; thin clean sky.",
    "image": "https://.../street.jpg",
    "mask_image": "https://.../cables-mask.png",
    "strength": 0.5,
    "control_scale": 0.8
  }' \
  --output-dir <absolute/path>

領域の置き換え(高い強度):

runcomfy run tongyi-mai/z-image/turbo/inpainting \
  --input '{
    "prompt": "Replace busy backdrop with smooth light gray studio paper; mask background only.",
    "image": "https://.../product.jpg",
    "mask_image": "https://.../bg-mask.png",
    "strength": 0.9
  }' \
  --output-dir <absolute/path>
プロンプトのヒント
  • マスク URL が必要です。グレースケールで、白がインペイントする領域、黒が保持する領域です。マスクの端を少しぼかす(1~3 px)と、二値のくっきりした端より自然になじみます。
  • 目的に応じて強度を設定します:レタッチ/修正には 0.3–0.5、スタイルを合わせたオブジェクトの置き換えには 0.6–0.7、領域全体の置き換えには 0.8–1.0 を使います。
  • マスク外で保持する内容をプロンプトに明記します:「屋根の輪郭と空のグラデーションを保持する」「レンガの模様と目地の色調を合わせる」。
  • マスクで領域を定義していても、空間的なラベルが役立ちます:「左側の棚」「右上の領域」などを指定します。

制限事項

  • 各ルートはモデルの制限を引き継ぎます。 Nano Banana:入力1~20件、出力1~4件。GPT Image 2 Edit:参照画像は最大10件、サイズは4種類固定。Flux Kontext:参照画像は1件。Z-Image Inpaint:マスクが必要です。
  • 複数ルートを組み合わせることはできません。 このスキルでは、呼び出しごとに1つのモデルを選択します。
  • ブランド固有のオーバーライド — ユーザーが特定のモデルを指定した場合は、より詳しく対応するため、該当するブランドのスキル(gpt-image-edit、flux-kontext、nano-banana-edit)にルーティングします。

終了コード

codemeaning
0成功
64CLI 引数が不正
65入力 JSON が不正/スキーマが一致しない
69上流の 5xx エラー
75再試行可能:タイムアウト/429
77サインインしていない、またはトークンが拒否された

詳しくは、docs.runcomfy.com/cli/troubleshooting を参照してください。

仕組み

このスキルは、ユーザーの意図に基づいて Nano Banana Edit/GPT Image 2 Edit/Flux Kontext Pro/Z-Image Turbo Inpaint のいずれかを選択し、対応する JSON ボディを使用して runcomfy run <model_id> を実行します。CLI は Model API に POST リクエストを送信し、リクエストをポーリングして結果を取得し、.runcomfy.net/.runcomfy.com の URL があれば --output-dir にダウンロードします。Ctrl-C を押すと、終了前にリモートリクエストをキャンセルします。

セキュリティとプライバシー

  • トークンの保存:runcomfy login は、API トークンをモード 0600(所有者のみ読み取り/書き込み可能)で ~/.config/runcomfy/token.json に書き込みます。CI/コンテナでファイルを完全に使わないようにするには、RUNCOMFY_TOKEN 環境変数を設定してください。
  • 入力境界:ユーザープロンプトは、--input を介して JSON 文字列として CLI に渡されます。CLI はプロンプトをシェル展開せず、JSON ボディを HTTPS 経由で Model API に直接送信します。プロンプトの内容によるシェルインジェクションの攻撃対象領域はありません。
  • サードパーティのコンテンツ:指定した画像/マスク/動画の URL は、手元のマシン上の CLI ではなく、RunComfy モデルサーバーによって取得されます。外部 URL は信頼できないものとして扱ってください。画像ベースのプロンプトインジェクションは、あらゆる画像編集/動画編集モデルで知られているリスクです。
  • 外部接続先:model-api.runcomfy.net(リクエストの送信先)と、生成された出力のダウンロード許可リストである *.runcomfy.net/*.runcomfy.com のみです。テレメトリーやコールバックはありません。
  • 生成ファイルのサイズ上限:悪意のある、または制御不能なモデル出力によるディスクの枯渇を防ぐため、CLI は 2 GiB を超える単一のダウンロードを中止します。

コメント