Codex CLIで画像生成する方法:OpenAI Image APIを使ったアイキャッチ作成ツールの作り方
Codex CLI 画像生成を試したい方に向けて、Codex CLI上でOpenAI Image APIを使うスクリプトを作り、ブログ用アイキャッチ画像を生成する手順を解説します。
Codex CLI 画像生成と聞くと、「Codex CLIだけで画像を直接作れるの?」と疑問に思うかもしれません。正確には、Codex CLIそのものが画像生成モデルになるわけではなく、Codex CLIを使ってOpenAI Image APIやResponses APIの画像生成ツールを呼び出すCLIスクリプトを作る、という考え方になります。
この方法を使うと、ブログ記事のアイキャッチ、SNS投稿用画像、アプリのモック画像、説明用イラストなどを、ターミナルからプロンプト一発で生成できます。さらにCodex CLIにスクリプト作成やファイル名整理まで任せれば、記事作成ワークフローに画像生成を組み込みやすくなります。
この記事でわかること
- Codex CLIで画像生成を扱う基本的な考え方
- OpenAI Image APIとResponses APIの違い
- Node.jsで画像生成CLIを作る方法
- Pythonで画像生成CLIを作る方法
- ブログ用アイキャッチ画像を1200×630で運用するコツ
- APIキー、料金、著作権まわりの注意点
Codex CLIで画像生成はできる?
まず整理しておきたいのは、Codex CLIは開発作業を支援するAIコーディングエージェントであり、画像生成専用ツールではないという点です。ただし、Codex CLIはローカルのコード編集、コマンド実行、ファイル作成が得意なので、画像生成APIを呼び出すCLIツールを作る用途と相性が良いです。
たとえば、次のような作業をCodex CLIに依頼できます。
- OpenAI APIを呼び出す画像生成スクリプトを作る
- プロンプトをコマンドライン引数で受け取れるようにする
- 生成結果のbase64データをPNGとして保存する
- ブログ記事のスラッグに合わせてファイル名を整える
- WordPress用に1200×630へリサイズする
- 複数の画像案をまとめて生成する
つまり、Codex CLIは「画像を描くAI」ではなく、画像生成ワークフローを作るAI開発アシスタントとして使うのが実用的です。
画像生成に使うOpenAI APIの選択肢
OpenAI APIで画像生成を行う方法は、大きく分けて2つあります。1つはImage API、もう1つはResponses APIの画像生成ツールです。
| 方法 | 特徴 | 向いている用途 |
|---|---|---|
| Image API | 画像生成、編集、モデルやサイズ指定を直接扱いやすい | 単発の画像生成CLI、アイキャッチ作成、自動保存 |
| Responses API + image_generation tool | 会話や複数ステップの中で画像生成を扱える | チャット型の画像編集、対話的な改善、アプリ組み込み |
ブログ用アイキャッチをCLIから生成するだけなら、まずはImage APIを使うのがわかりやすいです。一方で、「前回の画像を少し修正して」「この画像の構図を保ったまま色だけ変えて」のような対話的な編集体験を作りたい場合は、Responses APIの画像生成ツールも候補になります。
モデル名は最新情報を確認する
OpenAIの画像生成モデルや対応パラメータは更新されます。この記事では公式ドキュメントをもとに、GPT Image系モデルを使う前提で説明しますが、実装前にはOpenAI公式ドキュメントで最新の対応モデル、サイズ、料金、利用条件を確認してください。
Codex CLIで画像生成ツールを作る全体像
全体の流れはシンプルです。Codex CLIに、OpenAI APIを呼び出す小さなスクリプトを作らせます。あとは、そのスクリプトにプロンプトと保存ファイル名を渡せば、画像を生成してローカルに保存できます。
- OpenAI APIキーを用意する
- Node.jsまたはPythonのプロジェクトを作る
- OpenAI SDKをインストールする
- 画像生成用スクリプトを作る
- プロンプトを渡して画像を生成する
- PNGとして保存する
- 必要に応じて1200×630へリサイズする
Codex CLIに依頼するプロンプト例
OpenAI Image APIを使って、ブログ用アイキャッチ画像を生成するCLIツールを作ってください。
要件:
- Node.jsで実装
- プロンプトをコマンドライン引数で受け取る
- 出力ファイル名も引数で指定できる
- 生成結果をPNGとして保存
- .env の OPENAI_API_KEY を使う
- READMEに使い方を書く
- APIキーをGitに含めない
Codex CLIに依頼するときは、使用言語、入力方法、出力形式、保存先、セキュリティ要件まで書くのがポイントです。「画像生成ツール作って」だけだと、実装方針がぶれやすくなります。
事前準備:必要なもの
画像生成CLIを作る前に、次のものを用意します。
- Codex CLI
- Node.jsまたはPython
- OpenAI APIキー
- OpenAI SDK
- 画像の出力先フォルダ
- APIキーを管理する `.env` ファイル
.envの例
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
APIキーは絶対にGitHubへ公開しないでください。`.gitignore` に `.env` を追加し、チーム開発では環境変数やシークレット管理サービスを使うのが安全です。
# .gitignore
.env
node_modules/
generated-images/
Node.jsで画像生成CLIを作る方法
まずはNode.js版です。JavaScriptに慣れている人や、ブログ自動化ツールをNode.jsでまとめたい人に向いています。
パッケージをインストールする
npm init -y
npm install openai dotenv
generate-eyecatch.jsを作る
import "dotenv/config";
import OpenAI from "openai";
import fs from "fs";
import path from "path";
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
});
const prompt = process.argv[2];
const outputName = process.argv[3] || "eyecatch.png";
if (!prompt) {
console.error("使い方: node generate-eyecatch.js \"画像プロンプト\" output.png");
process.exit(1);
}
const outputDir = "generated-images";
fs.mkdirSync(outputDir, { recursive: true });
const result = await client.images.generate({
model: "gpt-image-1",
prompt,
size: "1536x1024",
});
const imageBase64 = result.data[0].b64_json;
const imageBuffer = Buffer.from(imageBase64, "base64");
const outputPath = path.join(outputDir, outputName);
fs.writeFileSync(outputPath, imageBuffer);
console.log(`画像を保存しました: ${outputPath}`);
上の例では、プロンプトをコマンドライン引数で受け取り、生成されたbase64画像をPNGとして保存しています。公式ドキュメントでは、画像生成の結果はbase64として受け取れるため、ファイルに保存するにはデコード処理が必要です。
実行例
node generate-eyecatch.js \
"OpenAI Codex CLIで画像生成する方法をテーマにしたフラットイラスト、青と白、テクノロジー、ノートPC、ターミナル、画像生成アイコン、テキストなし" \
codex-cli-image-generation-tool-eyecatch.png
ブログ用アイキャッチの場合、プロンプトには「テキストなし」を入れるのがおすすめです。画像生成AIは文字を入れると崩れることがあるため、記事タイトルはWordPress側のテキストで表示し、画像はビジュアルに集中させたほうが安定します。
Pythonで画像生成CLIを作る方法
Python版は、画像処理や自動化スクリプトと組み合わせやすいのがメリットです。Pillowを使えば、生成後にリサイズやトリミングも同じスクリプト内で処理できます。
パッケージをインストールする
python -m venv .venv
source .venv/bin/activate
pip install openai python-dotenv pillow
generate_eyecatch.pyを作る
import argparse
import base64
import os
from pathlib import Path
from dotenv import load_dotenv
from openai import OpenAI
from PIL import Image
load_dotenv()
client = OpenAI(api_key=os.environ["OPENAI_API_KEY"])
parser = argparse.ArgumentParser()
parser.add_argument("--prompt", required=True)
parser.add_argument("--out", default="eyecatch.png")
parser.add_argument("--resize", action="store_true")
args = parser.parse_args()
output_dir = Path("generated-images")
output_dir.mkdir(exist_ok=True)
output_path = output_dir / args.out
response = client.images.generate(
model="gpt-image-1",
prompt=args.prompt,
size="1536x1024",
)
image_base64 = response.data[0].b64_json
output_path.write_bytes(base64.b64decode(image_base64))
if args.resize:
image = Image.open(output_path)
image = image.resize((1200, 630))
image.save(output_path)
print(f"画像を保存しました: {output_path}")
実行例
python generate_eyecatch.py \
--prompt "Codex CLIとOpenAI Image APIでブログ用アイキャッチを生成する様子、青と白、フラットイラスト、テキストなし" \
--out codex-cli-image-generation-tool-eyecatch.png \
--resize
このPython版では、`–resize` を付けると1200×630に変換します。ただし、単純リサイズだと縦横比が変わる場合があります。見栄えを重視するなら、生成時点で16:9に近い構図を指定し、必要に応じて中央トリミングを追加するとよいです。
Responses APIで画像生成する方法
Responses APIでは、通常のテキスト応答の中で `image_generation` ツールを使って画像を生成できます。単発のCLIならImage APIのほうがシンプルですが、会話しながら画像を改善するアプリを作りたい場合はResponses APIが便利です。
Pythonの例
from openai import OpenAI
import base64
client = OpenAI()
response = client.responses.create(
model="gpt-5",
input="青と白のテクノロジーテーマで、Codex CLIによる画像生成を表すアイキャッチ画像を生成してください。テキストなし。",
tools=[{"type": "image_generation"}],
)
image_data = [
output.result
for output in response.output
if output.type == "image_generation_call"
]
if image_data:
with open("codex-image-tool.png", "wb") as f:
f.write(base64.b64decode(image_data[0]))
注意点として、Responses APIでは `model` にメインの会話モデルを指定し、画像生成はツールとして呼び出します。画像生成モデル名をそのまま `model` に入れる方式とは異なるため、公式ドキュメントのサンプルを確認しながら実装しましょう。
Codex CLIに依頼するときのプロンプト例
Codex CLIを使うなら、コードを自分で全部書くより、要件を整理してCodexに作らせるほうが効率的です。以下のように依頼すると、実用的なスクリプトになりやすくなります。
Node.js版を作らせるプロンプト
OpenAI Image APIを使って画像生成CLIを作ってください。
条件:
- Node.js
- ESM形式
- dotenvでOPENAI_API_KEYを読む
- promptとoutput filenameをコマンドライン引数で受け取る
- generated-imagesフォルダにPNG保存
- エラー時はわかりやすく表示
- READMEにセットアップ方法と実行例を書く
- .envは.gitignoreに追加
ブログ運用に合わせるプロンプト
この画像生成CLIをブログ運用向けに改良してください。
要件:
- slugを指定すると <slug>-eyecatch.png で保存
- 画像サイズは最終的に1200x630
- プロンプトテンプレートに「フラットイラスト、青と白、テクノロジーテーマ、テキストなし」を含める
- 出力前に保存先ファイルが存在する場合は上書き確認する
- 生成後にファイルサイズと画像サイズを表示する
このように、Codex CLIには「スクリプトを作る」だけでなく「自分の運用に合わせて改良する」ところまで任せられます。記事作成、画像生成、WordPress投稿をつなげたい場合は、この方針が便利です。
ブログ用アイキャッチ生成プロンプトの作り方
ブログ用アイキャッチでは、画像の中に文字を入れすぎないことが重要です。タイトル文字はWordPressやSNSの表示で補えるため、画像側は「記事内容が一目で伝わるビジュアル」に集中させます。
基本テンプレート
<記事テーマ>をテーマにしたフラットイラスト、
青と白のカラースキーム、
クリーンでモダンなテクノロジーテーマ、
中央にノートPCとターミナル画面、
周囲にAI、API、画像生成、ファイル保存を表す抽象アイコン、
明るい背景、テキストなし、1200×630ピクセル
今回の記事向けプロンプト例
Codex CLIでOpenAI Image APIを使って画像生成する方法をテーマにしたフラットイラスト、
青と白のカラースキーム、
中央にノートPCとターミナル画面、
ターミナルから画像ファイルが生成される様子、
周囲にAI、API、PNG保存、ブログアイキャッチ、1200×630を表す抽象アイコン、
クリーンでモダンなテクノロジーテーマ、
明るい背景、テキストなし、1200×630ピクセル
プロンプトでは「何を描くか」「どんな構図か」「どんな色か」「何を入れないか」を明確にします。特に「テキストなし」は毎回入れておくと、崩れた文字が入るリスクを減らせます。
WordPress投稿フローに組み込む方法
画像生成CLIを作ったら、WordPress投稿フローにも組み込めます。たとえば、記事スラッグを決めたら、そのスラッグを使って画像ファイル名を自動生成します。
node generate-eyecatch.js \
"Codex CLIで画像生成する方法をテーマにしたフラットイラスト、青と白、テキストなし、1200×630" \
codex-cli-image-generation-tool-eyecatch.png
その後、WordPress CLIでメディアライブラリへインポートし、投稿の `_thumbnail_id` に設定すれば、アイキャッチ画像として使えます。
wp media import /tmp/codex-cli-image-generation-tool-eyecatch.png \
--post_id=123 \
--title="Codex CLI画像生成ツール アイキャッチ画像" \
--alt="Codex CLIとOpenAI Image APIで画像生成する様子のイラスト" \
--porcelain
wp post meta update 123 _thumbnail_id <attachment_id>
このように、Codex CLI、画像生成API、WordPress CLIを組み合わせると、記事作成からアイキャッチ設定までの作業をかなり効率化できます。
注意点:API料金・著作権・秘密鍵管理
画像生成CLIを使うと便利ですが、運用上の注意点もあります。
API料金を確認する
画像生成はAPI利用量に応じて料金が発生します。モデル、画質、サイズ、生成枚数によってコストが変わるため、最初は少ない枚数で試すのがおすすめです。自動生成をバッチ化する場合は、意図せず大量実行しないように上限を設けましょう。
APIキーを公開しない
APIキーをGitHubにコミットすると、不正利用されるリスクがあります。`.env` を `.gitignore` に入れる、CI/CDではシークレット管理を使う、ログにAPIキーを出さない、という基本を守りましょう。
著作権とブランド表現に注意する
実在ブランドのロゴ、著名人、既存キャラクター、特定アーティスト風の画像を生成する場合は、利用規約や権利関係に注意が必要です。ブログ用アイキャッチでは、抽象的なアイコンやオリジナル構図に寄せると安全に運用しやすくなります。
生成画像は必ず確認する
画像生成AIは、細部が崩れたり、意図しない文字が入ったり、UIとして不自然な要素が混ざったりすることがあります。WordPressへ投稿する前に、画像の内容、サイズ、ファイル名、altテキストを確認しましょう。
まとめ:Codex CLIは画像生成ワークフロー自動化に向いている
Codex CLI自体が画像生成モデルになるわけではありませんが、OpenAI Image APIやResponses APIを呼び出すCLIツールを作ることで、ターミナルから画像生成を扱えるようになります。
ブログ運用では、記事スラッグに合わせたファイル名、1200×630への調整、WordPress CLIでのアイキャッチ設定まで自動化できます。Codex CLIを使えば、このようなスクリプト作成や改善も自然言語で依頼できるため、画像生成ワークフローを作る入口として非常に便利です。


