CommunityArt et designgithub.com

potofo/gpt-image

A Claude Code Agent Skill that generates images from text via Azure gpt-image-2 — validated CLI params, .env-configurable defaults, and keyless Entra ID / API-key auth. Built with Kiro-style spec-driven development.

Compatible avecClaude CodeCodex CLI~Cursor
npx skills add potofo/gpt-image

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

gpt-image-2 画像生成スキル

Azure AI Foundry にデプロイした gpt-image-2 を呼び出し、テキストプロンプトから画像を生成してローカルに保存します。 API 呼び出し・検証・保存はすべて scripts/generate_image.py に閉じ込められています。API を手書きせず、必ずこのスクリプトを呼び出してください。

前提条件

  1. Azure OpenAI(Foundry)リソースに gpt-image-2 がデプロイ済みであること(gpt-image 系は limited access 登録が必要)。
  2. 以下の環境変数が設定されていること(値はここに書かず、必ず環境変数または .env で渡す):
    • AZURE_OPENAI_ENDPOINT … 例: https://<resource>.openai.azure.com(必須)
    • AZURE_OPENAI_DEPLOYMENT … gpt-image-2 のデプロイ名(必須)
    • AZURE_OPENAI_API_KEY … API キー認証を使う場合のみ(任意)
    • AZURE_OPENAI_API_VERSION … 既定 2025-04-01-preview(任意)
  3. .env 対応: プロジェクトフォルダ直下に .env を置くと自動で読み込まれます(カレントディレクトリから上位へ探索)。.env.example をコピーして使ってください。OS 環境変数が優先され、.env は未設定分のみ補完します。
  4. 認証は Entra ID(キーレス)を優先します。az login 済みなら自動でトークンを使用し、未構成なら AZURE_OPENAI_API_KEY にフォールバックします。
  5. Python 3.10+ と依存ライブラリ(pip install -r requirements.txtrequests, azure-identity)。

使い方

必須引数は --prompt のみ。その他は省略可で、推奨デフォルトが適用されます。差分だけ指定してください。

python scripts/generate_image.py --prompt "夕暮れの東京タワー、水彩画風"

成功すると、保存したファイルの絶対パスが標準出力に1行ずつ表示されます。これをユーザーに提示してください。

保存先とファイル名:

  • --output 未指定時は、カレントディレクトリ直下の ./images フォルダに保存します(無ければ自動作成)。
  • ファイル名はプロンプトから導出したタイトルを使い、<タイトル>_<タイムスタンプ>_<連番>.<拡張子> 形式で一意になります(例: 夕暮れの東京タワー、水彩画風_20260620T055249_0.png)。

パラメータ

デフォルト値の優先順位: CLI 引数 > .env(環境変数) > 組み込み既定。よく使う設定は .env に下表の環境変数で書いておけば、毎回 CLI で渡す必要がありません。

引数環境変数取り得る値既定備考
--prompt(なし)任意のテキスト(必須)生成内容の指示
--sizeGPT_IMAGE_SIZEWxH(任意解像度)1024x1024推奨: 1024x1024(正方・最速), 1536x1024(横長), 1024x1536(縦長)
--qualityGPT_IMAGE_QUALITYlow / medium / highhighlow は低遅延向け
--formatGPT_IMAGE_FORMATpng / jpegpngWEBP は Azure 非対応
--backgroundGPT_IMAGE_BACKGROUNDauto / transparentautotransparent--format png 必須
--compressionGPT_IMAGE_COMPRESSION0100100JPEG 出力時のみ有効
--nGPT_IMAGE_N1101生成枚数
--userGPT_IMAGE_USER任意文字列(任意)利用状況トラッキング用 ID
--outputGPT_IMAGE_OUTPUT_DIRディレクトリパス./images保存先(無ければ作成)

--size の制約(gpt-image-2)

次をすべて満たす必要があります(違反は API 呼び出し前にエラー):

  • 両辺がそれぞれ 16px の倍数
  • 長辺が 3840px 以下
  • アスペクト比が 3:1 以下
  • 総ピクセル数が 655,360〜8,294,400

コマンド例

正方形・デフォルト:

python scripts/generate_image.py --prompt "桜並木の通学路、アニメ風"

透過 PNG(ロゴ・アイコン向け):

python scripts/generate_image.py --prompt "ミニマルな山のロゴ" --background transparent --format png

JPEG 圧縮・横長:

python scripts/generate_image.py --prompt "海岸沿いの道路、写真風" --size 1536x1024 --format jpeg --compression 80

複数枚・保存先指定:

python scripts/generate_image.py --prompt "猫のキャラクター案" --n 4 --output ./out

注意事項

  • 認証情報・エンドポイント値をプロンプトやコマンドに直書きしないでください。 すべて環境変数から読み取られます。
  • エラー時は終了コードが非ゼロになり、原因が標準エラー出力に表示されます(キー・トークンは出力されません)。
  • コンテンツモデレーションで拒否された場合は、その旨のメッセージが表示されます。プロンプトを見直してください。
  • --background / --compression の挙動は使用する api-version に依存する場合があります。想定どおりに動かない場合は AZURE_OPENAI_API_VERSION を確認してください。

Skills associés