制作ツール

Claude CodeからCodexで画像生成。codex execで猫の別ポーズを頼んだら、1回目は別の猫になった

公開 約3分で読めます

TL;DRこの記事の要点

  • codex execで、Claude CodeからCodexの画像生成を呼べた
  • 参照画像だけでは別の猫、守る特徴を列挙したら同じ猫になった
  • 保存先が空になる、-iが後ろの引数を飲み込む、の2点に詰まった
目次5項目
  1. Codexには、画像生成の機能が入っている
  2. Claude Codeからcodex execで画像生成する方法
  3. 猫の別ポーズは、1回目で別の猫になった
  4. 実行時に詰まった2点
  5. 試すときの確認ポイント

Xで「Claude CodeからCodexを操作して、画像生成ができる」という投稿を見かけて、試しました。
頼んだのは、動画用の猫のキャラクターの、別ポーズです。
自分がClaude Codeに頼み、Claude Codeがcodex execでCodexを呼び、Codexが画像を作りました。

🎥 この記事の内容は動画でも解説しています。

先に結論です。
codex execで、Claude Codeから画像生成はできました。
ただ、今回は、参照画像を渡すだけでは同じ猫にならず、守る特徴を言葉で列挙したら、同じ猫になりました。

Codexには、画像生成の機能が入っている

Codexの公式ドキュメントによると、Codexの組み込みの画像生成は、gpt-image-2というモデルを使います。
画像の内容を文章で書くか、プロンプトに$imagegenを入れて呼び出します。
CLIでは、-iか--imageで既存の画像を渡して、仕上がりの参考にできます。

使用量についても書かれています。
画像生成は、Codexの通常の使用量に含まれていて、通常のターンより3〜5倍速く使用量を消費するそうです。
大量に作る場合は、OPENAI_API_KEYを設定して、APIの料金にする方法も案内されています。

Claude Codeからcodex execで画像生成する方法

OpenAIのcodex-plugin-ccは、Claude Codeの中からCodexを使うためのプラグインです。
READMEに載っているのは、コードのレビュー、タスクの委任、ジョブの管理で、画像生成の記述はありませんでした。
なので入れず、代わりにcodex execを使いました。

codex execは、対話画面を開かずにCodexを実行するコマンドで、プロンプトを引数として渡せます。
--skip-git-repo-checkも付けています。Gitリポジトリの外でも実行するための指定です。
Claude Codeが実行したコマンドは、こうです。

codex exec --skip-git-repo-check "画像生成ツールで、白い背景に肉球のアイコンを作って。保存先のパスだけ報告して" < /dev/null

末尾の< /dev/nullは、標準入力を空にするためのもので、付けたら入力待ちで止まりませんでした。
肉球のような単純な図形は、1回で生成できました。
かかったのは約2分で、Codex側の使用は約1.6万トークンです。

猫の別ポーズは、1回目で別の猫になった

本題は、猫の別ポーズです。
頼んだのは挨拶のポーズで、参照画像には、キャラクターの設定資料と、猫を正面から描いた背景透過の素材の2枚を渡しました。
1回目のプロンプトは、「同じ猫で、挨拶のポーズ」とだけです。

出てきたのは、長毛で顔の細い、別の猫でした。
参照画像を渡しても、「同じ猫」という指示だけでは足りなかったようです。

2回目は、プロンプトに次の3点を加えました。

  • 「素材を編集する意識で」と、作業の性質を伝える
  • 守る特徴を、5つ列挙する:短毛、太い濃茶の輪郭線、丸顔、半目、尻尾は前に丸める
  • 変えるのはポーズだけ、と書く

この3点を入れた指示の要点は、たとえばこうです。

素材を編集する意識で、同じ猫のまま、ポーズだけ挨拶に変えて。
守る特徴:短毛、太い濃茶の輪郭線、丸顔、半目、尻尾は前に丸める。
背景は透過。

2回目は、Claude Codeに再実行を頼んで、自分には同じ猫に見える仕上がりになりました。
透過PNG(1143×1376)で、かかったのは約2分、Codex側の使用は約3万トークンです。
ただ、腕のつなぎ目が少し離れて見えたので、動画に使う前に直す必要があります。

実行時に詰まった2点

保存先のファイルが空になった

指定した保存先のファイルが、0バイトの空でした。
画像そのものは~/.codex/generated_images/の下に残っていたので、生成時刻と画像の内容を確かめてから、そのファイルをコピーして使いました。

-iがあとの引数を、画像として飲み込む

参照画像を-iで渡すとき、-iのあとに書いたものが画像として扱われて、プロンプトが空になりました。
プロンプトを先に書いて、-iを後ろに置くと動きました。

codex exec --skip-git-repo-check "素材を編集する意識で、…" -i 設定資料.png -i 正面.png < /dev/null

試すときの確認ポイント

  1. キャラクターは、参照画像に加えて、守る特徴を列挙し、変えるのはポーズだけと書く
  2. 参照画像を-iで渡すときは、プロンプトを先に書く
  3. 保存先のファイルが空になっていないか、画像を開いて確認する
  4. 猫のようなキャラクターは、腕などのつなぎ目まで見て、動画に使う前に直す

この記事が参考になったら、応援クリックをお願いします

Cat's Handこの記事を書いた人

Web制作歴10年以上。WordPressのテーマカスタマイズやコーディングを中心に、副業・本業ともにweb制作に携わっています。このブログでは、実際に手を動かして分かったことを書いています。