gpt-image-edit
RunComfy上でOpenAI GPT Image 2の画像編集機能(ChatGPT Images 2.0の`/edit`エンドポイント)を利用し、モデルのプロンプトパターンを活用することで、より高品質な画像編集を実現するSkill。
📜 元の英語説明(参考)
Edit images with OpenAI GPT Image 2 (the `/edit` endpoint of ChatGPT Images 2.0) on RunComfy — bundled with the model's documented prompting patterns so the skill gets sharper output than naive prompting against the same model. Documents GPT Image Edit's strengths (preservation language, multilingual in-image text editing, multi-reference up to 10 images, layout / typography precision), the schema, and when to route to Nano Banana Edit / Flux Kontext / GPT Image 2 t2i instead. Calls `runcomfy run openai/gpt-image-2/edit` through the local RunComfy CLI. Triggers on "gpt image edit", "gpt-image-edit", "chatgpt image edit", "edit with gpt image 2", or any explicit ask to edit with this model.
🇯🇵 日本人クリエイター向け解説
RunComfy上でOpenAI GPT Image 2の画像編集機能(ChatGPT Images 2.0の`/edit`エンドポイント)を利用し、モデルのプロンプトパターンを活用することで、より高品質な画像編集を実現するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o gpt-image-edit.zip https://jpskill.com/download/10364.zip && unzip -o gpt-image-edit.zip && rm gpt-image-edit.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/10364.zip -OutFile "$d\gpt-image-edit.zip"; Expand-Archive "$d\gpt-image-edit.zip" -DestinationPath $d -Force; ri "$d\gpt-image-edit.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
gpt-image-edit.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
gpt-image-editフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
GPT Image Edit — RunComfy の Pro Pack
runcomfy.com · Edit endpoint · Text-to-image sibling · GitHub
OpenAI GPT Image 2 — /edit endpoint (ChatGPT Images 2.0 image-to-image) は、RunComfy Model API 上で動作します。ターゲットを絞った編集と、あらゆるスクリプト(ラテン文字、かな、CJK、キリル文字、アラビア文字)で埋め込まれたテキストの書き換えを通じて、アイデンティティを維持する能力において、同クラスで最も強力です。
npx skills add agentspace-so/runcomfy-skills --skill gpt-image-edit -g
このモデルを選ぶべき時 (他のモデルとの比較)
| 必要なこと | 使用するモデル |
|---|---|
| 画像内の多言語/埋め込みテキストの編集 | GPT Image Edit |
| 翻訳された見出しのバリエーションによるアイデンティティの維持 | GPT Image Edit |
| レイアウトを正確に編集 (見出しの移動、CTA の交換など) | GPT Image Edit |
| 最大 10 個の参照画像 | GPT Image Edit |
| 最大 20 枚の画像を安定してバッチ処理 | Nano Banana Edit |
| シングルショットで正確なローカル編集、ソースの忠実性を最優先 | Flux Kontext |
| GPT Image 2 でゼロから生成 | 兄弟モデルの gpt-image-2 skill |
| 安定したアイデンティティで SKU ギャラリーをバッチ処理 | Nano Banana Edit |
前提条件
- RunComfy CLI —
npm i -g @runcomfy/cli - RunComfy アカウント —
runcomfy loginを実行すると、ブラウザでデバイスコードフローが開きます。 - CI / コンテナ —
runcomfy loginの代わりにRUNCOMFY_TOKEN=<token>を設定します。
エンドポイント + 入力スキーマ
openai/gpt-image-2/edit
| フィールド | 型 | 必須 | デフォルト | 注 |
|---|---|---|---|---|
prompt |
string | yes | — | 編集指示。維持したいことから始め、変更点を最後に記述します。 |
images |
string[] | yes | — | 最大 10 個 の公開されている HTTPS URL。最初がプライマリ、残りは補助。 |
size |
enum | no | auto |
auto (入力維持), 1024_1024 (1:1), 1024_1536 (2:3 ポートレート), 1536_1024 (3:2 ランドスケープ). |
size=auto は入力の比率を維持します — 編集が明示的にフレーミングを変更しない限り、強く推奨されます。
呼び出し方法
シングルリファレンスによる維持編集:
runcomfy run openai/gpt-image-2/edit \
--input '{
"prompt": "人物の顔、ポーズ、ブランドマークは変更しないでください。背景を柔らかい暖色のグレーのスタジオスイープと穏やかな床の影に置き換えてください。",
"images": ["https://.../portrait.jpg"]
}' \
--output-dir <absolute/path>
多言語テキストの書き換え (見出し以外はすべて維持):
runcomfy run openai/gpt-image-2/edit \
--input '{
"prompt": "写真、レイアウト、ブランドマークは入力とまったく同じにしてください。画像内の見出しのみを置き換えてください。新しい見出しは、太字の日本語かなで「今日のおすすめ」と表示され、以前と同じ位置とフォントウェイトになります。",
"images": ["https://.../poster-en.jpg"]
}' \
--output-dir <absolute/path>
マルチリファレンス構成:
runcomfy run openai/gpt-image-2/edit \
--input '{
"prompt": "画像 1 の被写体を画像 2 の部屋に合成します。画像 2 の照明とカラーパレットに合わせてください。画像 1 の被写体のアイデンティティ(顔、ポーズ、服装)は変更しないでください。",
"images": ["https://.../subject.jpg", "https://.../room.jpg"]
}' \
--output-dir <absolute/path>
プロンプト — 実際に効果があること
維持目標から始めます。 常に: "Keep [face / pose / clothing / brand / framing] unchanged." 次に変更点を記述します。モデルは最初に述べられたことを尊重します。
多言語テキスト — 文字を引用し、スクリプト名を指定します。 "the headline reads \"コーヒー\" in bold Japanese kana", "the label says \"АРОМА\" in Cyrillic, white on black", "the right-margin caption reads \"تخفيض\" in Arabic right-to-left". 言い換えるのではなく、引用してください。
空間編集のための方向性のある言語。 具体的な空間範囲が有効です: "move the headline from top-right to bottom-center", "remove the leftmost object only", "replace the watermark in the bottom-right corner".
マルチリファレンスの番号付け。 複数の images を渡す場合は、番号で参照します: "subject from image 1, lighting from image 2, color palette from image 3". モデルはキューを正しくルーティングします。
size: "auto" を使用して入力比率を維持します。 編集が明示的にフレーミングを変更する場合 (例: 16:9 を 1:1 にトリミング) にのみオーバーライドします。
アンチパターン:
- 長い複合編集指示 ("change A and B and C and D") → スコープを追加するごとにドリフトが増加します。
- 維持目標の欠落 → モデルが顔/ブランド/フレーミングを微妙に書き換えます。
- 画像内のテキストを引用する代わりに言い換える → テキストが異なる結果になります。
- 3 つの固定値 +
auto以外のsizeを要求する → 422 エラー。
強みを発揮する場所
| ユースケース | GPT Image Edit を選ぶ理由 |
|---|---|
| 多言語広告のローカリゼーション | 1 つのソースアセット → 同じ見出しの多くの言語バリアント |
| ブランドセーフな見出し/CTA の交換 | レイアウトの精度 + 維持言語により、残りの部分が安定 |
| マルチリファレンス構成 (1 つから被写体、もう 1 つからシーン) | 番号付きの参照がキューを正しくルーティング |
| レイアウトを正確に再配置 | 方向性のある言語 ("top-right to bottom-center") が尊重される |
| サイネージ編集におけるアイデンティティの維持 | ターゲットを絞った編集による顔/ブランドの維持においてクラス最強 |
サンプルプロンプト (強力な結果を生み出すことが確認済み)
完全な維持による背景の交換 (ページ例):
背景を明るいミニマルな白からソフトグレーのスタジオスイープに変え、
穏やかな床の影を追加します。太字のクリーンなサンセリフで、高コントラストで、
中央に配置された「OPEN STUDIO」という大きな見出しを画像内に追加します。
メインの人物または製品、ポーズ、および顔のアイデンティティは変更しないでください。
多言語バリアント:
写真、レイアウト、照明、ブランドマークは入力とまったく同じにしてください。置き換えます
(原文がここで切り詰められています) 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
GPT Image Edit — Pro Pack on RunComfy
runcomfy.com · Edit endpoint · Text-to-image sibling · GitHub
OpenAI GPT Image 2 — /edit endpoint (ChatGPT Images 2.0 image-to-image) on the RunComfy Model API. Strongest in its class at preserving identity through targeted edits and rewriting embedded text in any script (Latin, kana, CJK, Cyrillic, Arabic).
npx skills add agentspace-so/runcomfy-skills --skill gpt-image-edit -g
When to pick this model (vs siblings)
| You want | Use |
|---|---|
| Edit multilingual / embedded text in image | GPT Image Edit |
| Identity preservation through translated headline variants | GPT Image Edit |
| Layout-precise edit (move headline, swap CTA, etc.) | GPT Image Edit |
| Up to 10 reference images | GPT Image Edit |
| Batch up to 20 images consistently | Nano Banana Edit |
| Single-shot precise local edit, source-fidelity-first | Flux Kontext |
| Generate from scratch with GPT Image 2 | sibling gpt-image-2 skill |
| Batch SKU galleries with stable identity | Nano Banana Edit |
Prerequisites
- RunComfy CLI —
npm i -g @runcomfy/cli - RunComfy account —
runcomfy loginopens a browser device-code flow. - CI / containers — set
RUNCOMFY_TOKEN=<token>instead ofruncomfy login.
Endpoints + input schema
openai/gpt-image-2/edit
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt |
string | yes | — | Edit instruction. Lead with preservation, end with the change. |
images |
string[] | yes | — | Up to 10 publicly-fetchable HTTPS URLs. First is primary; rest are auxiliary. |
size |
enum | no | auto |
auto (preserve input), 1024_1024 (1:1), 1024_1536 (2:3 portrait), 1536_1024 (3:2 landscape). |
size=auto preserves the input ratio — strongly recommended unless the edit explicitly changes framing.
How to invoke
Single-ref preservation edit:
runcomfy run openai/gpt-image-2/edit \
--input '{
"prompt": "Keep the person'\''s face, pose, and brand mark unchanged. Replace the background with a soft warm-grey studio sweep and a gentle floor shadow.",
"images": ["https://.../portrait.jpg"]
}' \
--output-dir <absolute/path>
Multilingual text rewrite (preserve everything except the headline):
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 as before.",
"images": ["https://.../poster-en.jpg"]
}' \
--output-dir <absolute/path>
Multi-ref composition:
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 (face, pose, clothing) unchanged.",
"images": ["https://.../subject.jpg", "https://.../room.jpg"]
}' \
--output-dir <absolute/path>
Prompting — what actually works
Lead with preservation goals. Always: "Keep [face / pose / clothing / brand / framing] unchanged." Then state the change. The model honors what's stated up front.
Multilingual text — quote the characters, name the script. "the headline reads \"コーヒー\" in bold Japanese kana", "the label says \"АРОМА\" in Cyrillic, white on black", "the right-margin caption reads \"تخفيض\" in Arabic right-to-left". Don't paraphrase — quote.
Directional language for spatial edits. Concrete spatial scopes work: "move the headline from top-right to bottom-center", "remove the leftmost object only", "replace the watermark in the bottom-right corner".
Multi-ref numbering. When passing multiple images, refer to them by number: "subject from image 1, lighting from image 2, color palette from image 3". The model routes cues correctly.
Use size: "auto" to preserve input ratio. Only override when the edit explicitly changes framing (e.g. cropping a 16:9 to 1:1).
Anti-patterns:
- Long compound edit instructions ("change A and B and C and D") → drift increases per added scope.
- Missing preservation goals → model subtly rewrites the face / brand / framing.
- Paraphrasing in-image text instead of quoting it → text comes out different.
- Asking for
sizeoutside the 3 fixed values +auto→ 422.
Where it shines
| Use case | Why GPT Image Edit |
|---|---|
| Multilingual ad localization | One source asset → many language variants of the same headline |
| Brand-safe headline / CTA swaps | Layout precision + preservation language hold the rest stable |
| Multi-ref composition (subject from one, scene from another) | Numbered refs route cues correctly |
| Layout-precise repositioning | Directional language ("top-right to bottom-center") honored |
| Identity preservation across signage edits | Strongest in class for face / brand preservation through targeted edits |
Sample prompts (verified to produce strong results)
Background swap with full preservation (page example):
Turn the background into a bright minimal white-to-soft-gray studio
sweep with gentle floor shadow; add a large headline in-image that
reads "OPEN STUDIO" in a bold clean sans-serif, high contrast, centered;
keep the main person or product, pose, and face identity unchanged
Multilingual variant:
Keep the photograph, layout, lighting, 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 as before.
Multi-ref composition:
Compose subject from image 1 into the kitchen from image 2.
Match the warm window light and color palette of image 2.
Keep subject identity (face, pose, clothing) from image 1 unchanged.
Limitations
size: 3 fixed values +auto— anything else 422s.images: up to 10 — first is primary, rest are auxiliary cues.- Long compound prompts drift — split into multiple passes when needed.
- For batch consistency across many SKU images, Nano Banana Edit (up to 20) is better.
- Photorealism on portraits — Nano Banana Pro wins head-to-head.
Exit codes
| code | meaning |
|---|---|
| 0 | success |
| 64 | bad CLI args |
| 65 | bad input JSON / schema mismatch |
| 69 | upstream 5xx |
| 75 | retryable: timeout / 429 |
| 77 | not signed in or token rejected |
Full reference: docs.runcomfy.com/cli/troubleshooting.
How it works
The skill invokes runcomfy run openai/gpt-image-2/edit with a JSON body matching the schema. The CLI POSTs to https://model-api.runcomfy.net/v1/models/openai/gpt-image-2/edit, polls the request, fetches the result, and downloads any .runcomfy.net/.runcomfy.com URL into --output-dir. Ctrl-C cancels the remote request before exit.
Security & Privacy
- Token storage:
runcomfy loginwrites the API token to~/.config/runcomfy/token.jsonwith mode 0600 (owner-only read/write). SetRUNCOMFY_TOKENenv var to bypass the file entirely in CI / containers. - Input boundary: the user prompt is passed as a JSON string to the CLI via
--input. The CLI does NOT shell-expand the prompt; it transmits the JSON body directly to the Model API over HTTPS. No shell injection surface from prompt content. - Third-party content: image / mask / video URLs you pass are fetched by the RunComfy model server, not by the CLI on your machine. Treat external URLs as untrusted; image-based prompt injection is a known risk for any image-edit / video-edit model.
- Outbound endpoints: only
model-api.runcomfy.net(request submission) and*.runcomfy.net/*.runcomfy.com(download whitelist for generated outputs). No telemetry, no callbacks. - Generated-file size cap: the CLI aborts any single download > 2 GiB to prevent disk-fill from a malicious or runaway model output.