gpt-image2 について
gpt-image2は、OpenAI互換の画像エンドポイントで画像を生成・編集する軽量なNode.jsコマンドラインツールです。APIチャンネルの設定、再利用可能なプロンプトテンプレート、編集用参照画像の複数の指定方法に対応します。
主な機能
- 01テキストプロンプトから画像を生成
- 02プロンプトで既存画像を編集
- 03APIチャンネルとモデルを設定
- 04再利用可能なプロンプトテンプレート
- 05対応する出力サイズを一覧表示
- 06ImgBB経由でローカル画像を編集用にアップロード
活用シーン
- 01直接のプロンプトから画像を作成
- 02プロンプトテンプレートを試用
- 03ローカルまたはホスト済み画像を参照して編集
- 04API呼び出し前にリクエスト内容を確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ liuhuapiaoyuan/ gpt-image2-skill --skill gpt-image2インストール後、Claude Code で/gpt-image2を入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdREADME.zh-CN.md.gitignorepackage.jsonagents/openai.yamlreferences/prompts.jsonscripts/gpt-image2.mjsimgbb-upload.mjs詳細
GPT Image 2
付属の Node.js CLI を使用して、軽量な画像生成と編集を行います。npm 依存関係はなく、OpenAI 互換の画像エンドポイントをサポートしています。
クイックスタート
このスキルフォルダーからコマンドを実行します。
node scripts/gpt-image2.mjs --help
node scripts/imgbb-upload.mjs --help
API チャネルを設定します。
node scripts/gpt-image2.mjs config set openai --api-key "$OPENAI_API_KEY" --base-url "https://ai-api.qzsyzn.com/v1" --model "gpt-image-2" --edit-transport generations
node scripts/gpt-image2.mjs config use openai
公式の OpenAI 形式の POST /images/edits マルチパートフローを使うには、--edit-transport multipart を指定します(省略した場合のデフォルトです)。
統合 JSON 編集(generations)では、巨大な base64 ペイロードに頼らないでください。HTTPS URL を優先してください。
- デフォルト: ローカルの参照ファイルは自動的に ImgBB にアップロードされます(組み込み API キーを使用し、
scripts/imgbb-upload.mjsに暗号化して保存されます)。独自のキーを使う場合を除き、IMGBB_API_KEYの設定は不要です。独自のキーを使う場合は、IMGBB_API_KEYまたは--imgbb-keyを使用してください(ImgBB API を参照)。 - または、先にアップロードしてから URL のみを使って編集します。
node scripts/imgbb-upload.mjs ./test/image.png
node scripts/gpt-image2.mjs edit --edit-transport generations --image "https://i.ibb.co/..." --prompt "Your edit instruction" --output outputs/edited.png
npm link の後にグローバルインストールすると、imgbb-upload ./photo.png は 1 行に 1 つの URL を出力します。
データ URL を意図的に使う場合(オフラインでのデバッグなど)に限り、--embed-local-base64 を使用してください。
プロンプトテンプレートを試します。
node scripts/gpt-image2.mjs templates list
node scripts/gpt-image2.mjs try encyclopedia-card --var topic="coffee brewing" --output outputs/coffee.png
サポートされている解像度を確認します。
node scripts/gpt-image2.mjs sizes list
node scripts/gpt-image2.mjs sizes list --orientation portrait
直接プロンプトで生成します。
node scripts/gpt-image2.mjs generate --prompt "A clean product hero image of a ceramic desk lamp" --size 1024x1024 --output outputs/lamp.png
既存の画像を編集します(generations トランスポートでは、デフォルトで ImgBB 経由でローカルファイルをアップロードします)。
node scripts/gpt-image2.mjs edit --image input.png --prompt "Keep the object unchanged, replace the background with a warm studio setup" --output outputs/edited.png --edit-transport generations
任意:組み込みのデフォルトではなく独自の ImgBB キーを使用するには、export IMGBB_API_KEY="..." または --imgbb-key ... を指定します。
API を呼び出す代わりに、curl コマンドを出力します。
node scripts/gpt-image2.mjs generate --template city-poster --var city="Chengdu" --curl
ワークフロー
- プロンプトを一から作成する前に、
templates list、templates search <query>、templates show <id>を使用します。 - 手早く試すには、
try <template-id> --var key=valueを優先して使用します。 - プロバイダー固有の API キー、ベース URL、モデル名を設定するには、
config set <channel>を使用します。デフォルトではアクティブなチャネルが使用されます。 - OpenAI 互換の API キーは、チェックインするファイルではなく、設定または環境変数に保存してください。ImgBB では、
IMGBB_API_KEYまたは--imgbb-keyで上書きしない限り、組み込みのデフォルトが使用されます。 --sizeを選択する前、特に正方形、縦長、横長の出力を切り替える場合は、sizes listを実行します。- 最終ペイロードを確認するには
--dry-runを使用し、ユーザーがシェルネイティブの呼び出しを希望する場合は--curlを使用します(ImgBB が有効な場合、ドライランでも ImgBB に接続するため、JSON 内の URL は実行時と一致します)。 - API 呼び出しに一度失敗した場合は、HTTP ステータスとレスポンス本文を報告します。プロンプト、サイズ、チャネル、タイムアウトを変更せずに、むやみに再試行しないでください。
設定
認証情報の優先順位:
- CLI フラグ:
--api-key、--base-url、--model、--edit-transport、--imgbb-key - 設定ファイルのアクティブなチャネル
- 環境変数:
GPT_IMAGE_API_KEY、OPENAI_API_KEY、API_KEY;GPT_IMAGE_BASE_URL、OPENAI_BASE_URL、BASE_URL;GPT_IMAGE2_EDIT_TRANSPORT(multipartまたはgenerations);IMGBB_API_KEY(任意。generations編集でローカルファイルをアップロードする際、組み込みの ImgBB キーを上書きします)
設定ファイルのデフォルトは ~/.gpt-image2/config.json です。GPT_IMAGE2_CONFIG で上書きできます。
便利なコマンド:
node scripts/gpt-image2.mjs config list
node scripts/gpt-image2.mjs config show
node scripts/gpt-image2.mjs config use <channel>
node scripts/gpt-image2.mjs config set <channel> --api-key "..." --base-url "..." --model "..." [--edit-transport multipart|generations]
プロンプトテンプレート
テンプレートは references/prompts.json にあります。テンプレートは再利用できるようにしてください。
- ユーザー固有の詳細には、
{{variable}}プレースホルダーを使用します。 - ユーザーが適切な権利と文脈を明示的に提示しない限り、実在する私人の名前や容姿を使用しないでください。
- 主題、場面、構図、照明、スタイル、詳細、出力用途を含む、完全な視覚仕様を優先します。
- 新しいテンプレートは、コミュニティの長いプロンプトをそのままコピーするのではなく、簡潔なパターンにしてください。
API に関する注意事項
CLI は次のエンドポイントを呼び出します。
- テキストから画像を生成する場合は
POST /images/generations(JSON)。 - 編集モード(デフォルト):
POST /images/edits(マルチパートフォームデータ、--edit-transport multipart)。 - 統合ゲートウェイ:
image文字列配列を含む同じ JSON のPOST /images/generations。HTTPS URL を推奨します。デフォルトでは、ローカルファイルは ImgBB(組み込みキー)経由でアップロードされ、JSON で送信されるのは URL のみです。代わりにデータ URL を強制するには、--embed-local-base64を使用します。省略可能なIMGBB_API_KEY/--imgbb-keyでデフォルトの ImgBB キーを上書きできます。単独でアップロードする場合はscripts/imgbb-upload.mjsを使用します。参照画像は最大 5 枚です。このモードでは--maskはサポートされていません。
b64_json の画像データがあれば保存し、URL を使用する OpenAI 互換ゲートウェイから url が返された場合は、その URL から画像をダウンロードすることもできます。