Community画像github.com

zsio/gpt-image

GPT Image CLIを使用して、OpenAIのGPT画像生成・編集機能をローカルで操作します。画像生成、編集、マスク、透明カット、生成画像のディスク保存に対応。CLI操作を実行するスキルであり、画像生成アプリケーションを実装するためのものではありません。

gpt-image とは?

このスキルは、`gpt-image` CLI(Node.js 22+ 対応)を介してOpenAIのGPT画像APIを利用し、ユーザーのリクエストに基づいて画像を生成・編集するためのツールです。デフォルトモデルは`gpt-image-2.6-flare`、品質はAPI標準の`auto`が設定されており、ユーザーが明示的に変更しない限りこれらのデフォルトを維持します。画像の新規生成、参照画像を用いた編集、マスク・マークアップ、透明カットアウト(ステッカー風)、出力形式や品質の指定など、多彩な操作が可能です。CLIは`npx`を使えばインストール不要で実行でき、設定は`OPENAI_API_KEY`を必須とし、環境変数または設定ファイルで管理します。APIキーが未設定の場合は`config init`で設定ファイルを作成するように促しますが、キーをチャットに貼らせたり引数に含めたりすることは避けます。出力はデフォルトで一意のフォルダ名が付与され、`--name`でファイル名を指定、`--json`で結果を構造化データとして取得できます。エラー時はリトライせず、タイムアウト時も自動再送信は行いません。このスキルは主にClaude Code, Cursor, CodexなどのAIエージェント上でCLI操作として利用することを想定しており、ユーザーが画像関連のリクエストをした際に適切なコマンドを生成・実行するのに役立ちます。

対応~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/zsio/openai-image-cli/tree/HEAD/skills/gpt-image

Installed? Explore more 画像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

GPT Image CLI

gpt-image CLIを使用して、ユーザーがリクエストした画像を生成し、そのローカルパスを返します。Node.js 22+ が必要です。デフォルトモデルは gpt-image-2.6-flare、品質はAPIの auto にデフォルト設定されています。ユーザーが別の設定を選択しない限り、これらのデフォルトを維持してください。

CLI と設定の確認

利用可能な場合は、インストール済みの gpt-image コマンドを使用します。 それ以外の場合は、npmを使用して公開リポジトリから直接CLIを実行します。

npx --yes --package=github:zsio/openai-image-cli#v1.0.0 gpt-image --help

以降の例でも gpt-image の代わりに同じプレフィックスを使用します。 これは、スキルが別途CLIがインストールされていないマシンにインストールされている場合でも機能します。 チェックアウトやマシン固有のパスは必要ありません。

設定は gpt-image config show で確認します。 OPENAI_API_KEY のみが必須です。 サイズ、モデル、品質、フォーマット、出力場所にはすべてデフォルト値があります。 CLIは最初に環境変数を読み取り、次にユーザー設定ファイル ${XDG_CONFIG_HOME:-$HOME/.config}/gpt-image/.env を読み取ります。 gpt-image config path は解決されたパスを表示します。 明示的に選択された --config または GPT_IMAGE_CONFIG を優先してください。

キーが設定されていない場合は、必要に応じて gpt-image config init を実行し、そのローカルファイルに OPENAI_API_KEY を入力するようユーザーに伝えてください。 キーはソースリポジトリやスキルファイルの外部に保管し、チャットに貼り付けたり、表示したり、コマンド引数に含めたりしないでください。 設定ファイルを表示せずに、config show を使用して存在を確認してください。 設定を確認するためだけにサンプル画像を生成しないでください。リクエストのプレビューには --dry-run を使用してください。

生成または編集

新しい画像の場合は、プロンプトを単一の引数として渡します。 長いプロンプトや複数行のプロンプトの場合は、UTF-8 プロンプトファイルを作成し、--prompt-file を使用します。

gpt-image generate "赤いマフラーをした水彩画の子猫" --name kitten --json

gpt-image generate --prompt-file ./prompt.txt --out-dir ./assets --name cover --json

編集や参照ベースの生成には edit を使用し、複数の参照画像がある場合は --image を繰り返します。 入力の順序が重要です。最初の画像がマスクやマークアップレイヤーのプライマリ画像になります。

gpt-image edit "背景を雪山に変更。人物の顔と服装はそのまま維持" \
  --image ./portrait.png --name snowy-portrait --json

gpt-image edit "両方の製品を白背景の製品写真に配置" \
  --image ./product-a.png --image ./product-b.jpg --name product-pair --json

gpt-image edit "透明なマスク領域を青い花瓶に置き換え" \
  --image ./room.png --mask ./mask.png --name blue-vase --json

透明なカットアウトやステッカーには --background transparent --format png を使用します。 既存の透明アセットを編集する場合は、リクエストにその一部が含まれている場合、透明度を維持します。 --mask と --markup は PNG ファイルを受け取り、組み合わせることはできません。これらの寸法は最初の画像と一致する必要があります。 ローカルの PNG/JPEG/WebP、画像 URL、OpenAI ファイル ID を含む、最大 16 個の参照画像がサポートされています。

プロンプトは、ユーザーの主題、要求された正確なテキスト、スタイル、制約を維持する必要があります。 編集の場合は、目的の変更と維持する詳細の両方を記載します。 要求された画像数、モデル、品質を黙って変更しないでください。 CLI 呼び出しごとに 1 つの最終画像が生成されます。 リトライは無効になっているため、別の課金リクエストが必要かどうかを判断する前に、失敗を検査してください。

出力と便利なオプション

  • デフォルトの出力は、システムの一時ディレクトリにある一意の name-YYYYMMDD-HHmmss-SSS-suffix フォルダです。 便利な短いファイル名には --name を使用します。
  • 正確なファイルパスには --output FILE を、出力先ディレクトリには --out-dir DIR --name NAME を使用します。 これらの代替方法は組み合わせることができません。 既存の出力ファイルは保持されます。
  • --json を使用して、image_path、metadata_path、prompt_path、request_id、API使用量を読み取ります。 進行状況は stderr に出力されます。 実際に保存された画像パスを返します。 必要に応じて、利用可能なローカル画像ビューアで画像をプレビューします。
  • --size WIDTHxHEIGHT、--quality auto|low|medium|high|xhigh|max、--background auto|opaque|transparent、--format png|jpeg|webp|gif|svg はAPI設定にマッピングされます。 モデル/プロジェクトのサポートは引き続き適用されます。
  • ユーザーが詳細なビジュアルワークを目的としたブランチを選択した場合は、--model gpt-image-2.6-sunburst を使用します。 モデル指定がない通常のリクエストには、Flare を維持します。
  • --stream --partial-images 1 はプレビューと最終画像を保存します。 完了した画像のみが最終結果です。
  • --params '{"complexity":"medium"}' または --params @params.json は追加の API フィールドを渡します。 n は 1 に固定されたままです。 一般的でないオプションを使用する前に、gpt-image --help を読んでください。
  • --timeout SECONDS はリクエスト全体をカバーします。 タイムアウト/キャンセル時、サービスはすでにリクエストを受け入れている可能性があります。 自動的に再送信しないでください。

CLI と API の詳細: https://github.com/zsio/openai-image-cli

関連スキル