openai-image-generation は何をしますか?
OpenAI の gpt-image-2 を使用して画像を生成する、インストール可能な AI エージェントスキルです。(Python CLI、--json モード、終了コード契約、4 段階の API キー検出に対応、テスト済み)
概要
このスキルは、OpenAI の gpt-image-2 モデルを利用して、与えられたプロンプトから画像を生成するための信頼性の高いコマンドラインツールを提供します。AI エージェント (Claude Code, Cursor, Codex など) やスクリプトからの利用を念頭に設計されており、出力の解析が容易な --json モードと、成功/失敗を明確に示す終了コード契約を採用しています。
インストール
# リポジトリをクローン
$ git clone https://github.com/chirag2653/openai-image-generation
$ cd openai-image-generation
# 依存関係をインストール (推奨: venv 内で)
$ python -m venv venv && source venv/bin/activate
$ pip install -r requirements.txt
API キーの設定
OpenAI API キーは、以下の 4 段階の優先順位で検出されます。
- コマンドライン引数
--api-key - 環境変数
OPENAI_API_KEY .envファイル (OPENAI_API_KEY=sk-...)- 設定ファイル (
~/.openai/config.json内のapi_keyフィールド)
使用方法
基本的な画像生成
python generate.py --prompt "A cute cat wearing a hat" --output cat_hat.png
JSON モードでの使用 (AI エージェント推奨)
python generate.py --prompt "A futuristic cityscape" --json
成功時の出力例:
{
"success": true,
"image_path": "/path/to/output/futuristic_cityscape.png",
"revision_prompt": null
}
エラー時の出力例:
{
"success": false,
"error": "OpenAI API error: 401 Authentication failed"
}
終了コード契約
- 0: 成功
- 1: 一般的なエラー (API エラー、ファイル書き込みエラーなど)
- 2: 引数エラー
利用可能なオプション
| オプション | 説明 | デフォルト |
|---|---|---|
--prompt | 画像生成のためのテキストプロンプト | 必須 |
--output | 出力画像ファイルのパス | 自動生成 |
--model | 使用する OpenAI モデル | gpt-image-2 |
--size | 出力画像サイズ (例: 1024x1024) | 1024x1024 |
--n | 生成する画像の数 | 1 |
--api-key | OpenAI API キー (直接指定) | - |
--json | JSON 形式で結果を出力するフラグ | False |
--quiet | エラーメッセージ以外の出力を抑制 | False |
テスト
pytest -v --cov=.
テストスイートは、モックされた API 呼び出し、終了コード、JSON 出力形式をカバーしています。
ライセンス
MIT