Skip to main content
このページでは、そのまま使える Agent Skill を提供します。生成に prompt をチェックし、不足している要素を補い、品質を下げる曖昧な表現を取り除いて、書き換え後のバージョンで生成します。全体は サードパーティ依存ゼロ の 2 ファイルで構成されています。
画像が期待外れだった場合、原因はたいていモデルでもチャネルでもなく、prompt にあります。この Skill は 高度な画像生成 の「リライト層」を、どんなコーディングエージェントにもそのまま組み込める形にします。

このスキルでできること

生成前の診断

被写体、環境、ライティング、レンズ、グレーディング、構図を1つずつ採点し、0〜100の評価を付け、リスクを列挙し、そのままコピーできる書き換え済みのpromptを返します。

生成後のレビュー

実際の画像を元のpromptと一緒に渡すと、モデルがそれを読み取り、promptのどの文が実行されなかったかと、モデルが独自に追加した内容を指摘し、それに応じて書き換えます。

対象モデル向けのアドバイス

-tでは、そのファミリー固有の注記として、参照画像の制限、マスク対応、解像度パラメータの名称を追加します。

被写体に応じたチェック

ポートレートでは肌とライティングのチェック、商品写真では背景と文字禁止のチェックが入り、イラストではフォトリアルさのチェック項目が自動的に低く評価されます。

最初から最後までの完全な診断

入力は、ユーザーが実際に入力する内容に、生成された画像を加えたものです:
カジュアルな prompt からのコーヒー画像: 木のテーブル、グラインダー、麻袋、その他の小物があり、カップには架空のブランド名が印字されている

The actual result produced by that casual prompt

診断結果(実際の実行からの抜粋):
その書き換えた prompt を、変更せずに同じモデル(gemini-3-pro-image)へ再度入力すると:
書き換えた prompt からのコーヒー画像: 温かみのある白い陶器のラテカップが、ニュートラルな薄いグレーの背景に置かれ、光の方向がはっきりしていて、影は右後方に落ち、どこにもテキストはなく、十分な余白がある

Regenerated from the rewritten prompt: a clean, usable e-commerce hero shot

小物はすべて消え、背景は制御しやすいニュートラルグレーになり、影には方向性が付き、ブランド名も作られず、コピーを載せる余白もあります。モデルは変わっていません。変わったのは prompt だけです。

診断を実行するタイミング

すべての生成にレビューが必要なわけではありません。どれだけ具体的にリクエストが書かれているかで判断してください。
このスキルはプロンプトを書き換えるだけで、画像は生成しませんNano Banana Pro スキル または GPT-Image-2 シリーズ スキル と組み合わせると、レビューから生成までの流れを完結できます。

どのエージェントで動作しますか

Skill は実際には単なる フォルダ です。つまり、エージェントにそれが何か(SKILL.md)を伝える 1 つのファイルと、実際の処理を行うスクリプトで構成されています。したがって、ローカルファイルを読み取り、コマンドを実行できるあらゆるコーディングエージェントが使用できます。Codex、OpenClaw、hermes-agent、Claude Code などです。必要条件は 1 つだけです。エージェントを実行するマシンに Python 3ネットワークアクセス があることです(スクリプトは api.apiyi.com と直接やり取りします)。この Skill は Python 標準ライブラリのみ を使用しており、pip install は不要です。

3ステップでインストール

1. フォルダを作成してファイルを貼り付ける

次の 2 つのファイルを含むスキルフォルダを作成します(完全な内容は下の 2 つのセクションにあります):
pip install は不要です。

2. その横にキーを追加する

あなたの APIYI の APIキーapi.apiyi.com コンソールで作成したもの)を image-prompt-doctor/.env に配置してください:
スクリプトはこの .env からキーを自動的に読み取ります — ほかの設定や環境変数は不要です
.env には秘密情報が入っています。このスキルをプロジェクトリポジトリ経由で共有する場合は、.env.gitignore に追加し、絶対にコミットしないでください

3. エージェントに渡す

  • スキルの自動検出に対応したエージェント(Claude Code など)の場合: image-prompt-doctor/ フォルダ全体を、その skills ディレクトリに入れてください。ユーザーレベルなら ~/.claude/skills/、プロジェクトレベルなら .claude/skills/(リポジトリ経由で共有されます)です。
  • それ以外のエージェント: そのエージェント独自の skill/plugin の規約に従って配置してください。あるいは、いちばん簡単なのは、エージェントに「このフォルダの SKILL.md を読んで、それに従ってください。」と伝えるだけです。
これでインストールは完了です。例については 使い方 をご覧ください。

SKILL.md

image-prompt-doctor/SKILL.mdを、以下の完全な内容で作成してください(descriptionには「何をするか + いつ使うか」と記載します。これはエージェントが自動トリガーするために使用します):

scripts/prompt_doctor.py

image-prompt-doctor/scripts/prompt_doctor.py を、以下の完全な内容で作成してください(Python 標準ライブラリのみを使用、追加インストール不要):

診断モデルの切り替え

デフォルトは gpt-5.6-luna です。安価で(100万 token あたり入力 $0.2 / 出力 $1.2)、画像入力に対応しており、レビューモードで必要になります。変更する方法は 2 つあります:
切り替える際に注意すべき点が 2 つあります。レビューモードには画像入力に対応したモデルが必要です(テキストのみのモデルでは、添付画像があるとエラーになります)— 一覧は ビジョン理解 を参照してください。また、スクリプトは response_format: {"type": "json_object"} を送信するため、JSON モードのないモデルでは代わりにフェンス付きテキストを返すことがあります(スクリプトは念のためフェンスを除去しますが、JSON モードをサポートするモデルを使うことを推奨します)。

なぜ1文だけで診断がトリガーされるのか

よくある疑問です。私はコマンドを一度も入力していないのに、なぜ「画像を描いて」と言っただけで prompt を先に確認しにいったのでしょうか? 仕組みはこうです。起動時にエージェントは各 skill の SKILL.md にある description読み取ります。これは、その skill が何をするのか、いつ適用されるのかを示す短いメタデータです。あなたの発話がその説明(「…を描いて」「この画像がなぜおかしくなったのか」「この prompt を改善して」など)と一致すると、エージェントは自分で skill を呼び出すことを判断し、完全な SKILL.md を読み込んでスクリプトを実行します。あなたがコマンドを覚える必要はありません。 SKILL.md には、すでに具体的なリクエストであればこの処理は不要だとも書かれているので、すべての prompt に対して介入するわけではありません。完全に制御したい場合は、下記の明示的な呼び出しを使ってください。

使い方

自然言語(暗黙のトリガー)

インストールしたら、エージェントにそのまま話しかけるだけです。

明示的な呼び出し(より細かく制御)

  • スラッシュコマンド付きのエージェント(Claude Code など):
  • 任意のエージェント / スクリプトを実行するよう伝えるだけ(最も汎用的):

診断の出力先

  • このスキルはファイルを書き込みません。結果はターミナルに表示され、エージェントがそれをあなたに中継します — スコア、6要素の評価、リスク、書き換え後のプロンプト、変更点、パラメータの提案です。
  • 結果を自分のプログラムに取り込むには、--json を追加してください。出力は、ファイルへリダイレクトできる構造化オブジェクト(score / elements / risks / optimized_prompt / changes / suggested_params)です。
  • 使用前に書き換え後のプロンプトを確認してください: 書き換えによって意図が変わることがあります(「coffee」が「a latte」になるなど)。また、SKILL.md には、まず確認するようエージェントに指示する内容がすでに記載されています。
  • レビューモードに渡された画像は変更も上書きもされません — 読み取り専用の入力です。

費用

1 回の診断には数千 tokens かかります。gpt-5.6-luna の定価ではそれは 1 セントの端数ですが、1 回の high の高品質生成はその数十倍の費用がかかります。生成する前に診断しておくと、やり直しを避けられる分だけ、費用以上の節約になります。 レビューモードでは画像をアップロードしますが、これは入力 tokens として課金されます。少し多くなりますが、それでも 1 回の生成よりはるかに少ないです。

関連ドキュメント