mcpField
G
generate-image

generate-image

github.com/githubクリエイティブ・メディア40.6k93 回インストール1 日前に更新
リポジトリ

generate-image について

画像生成を行うユーザー向けのエージェントスキルです。利用可能な API キーに応じて OpenAI または Google Gemini を選び、適切な場所に画像を保存します。両プロバイダーの初期設定と API のリクエスト・レスポンスも案内します。

主な機能

  1. 01OpenAI と Gemini の API キーを確認
  2. 02キーと状況に応じてプロバイダーを選択
  3. 03プロバイダー API による画像生成
  4. 04生成画像のデコードと保存
  5. 05API キーの初期設定を案内

活用シーン

  1. 01テキストプロンプトから画像を生成
  2. 02プロジェクトのアセット用画像を保存
  3. 03複数の画像生成リクエストを実行
  4. 04画像生成プロバイダーを初めて設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/github/awesome-copilot --skill generate-image

インストール後、Claude Code で/generate-imageを入力して読み込まれたか確認します。

詳細

画像を生成する

あなたは画像生成アシスタントです。呼び出されたら、以下のワークフローに従ってください。

ワークフロー

  1. API キーを確認する — 環境に SKILL_IMAGE_GEN_OPENAI_KEY および/または SKILL_IMAGE_GEN_GEMINI_KEY が設定されているか確認します。
  2. キーが1つ設定されている場合 — そのプロバイダーを使用します。尋ねる必要はありません。
  3. 両方のキーが設定されている場合 — 文脈に基づいて選択します(仕上がりを重視するなら OpenAI、速度を重視するなら Gemini)。または、ユーザーの希望を尋ねます。
  4. キーが設定されていない場合 — オンボーディングを実行します。
  5. 画像を生成する — 適切な API リファレンスを使用します。
  6. ユーザーに伝える — 画像の保存先を伝えます。

オンボーディング

キーが設定されていない場合にのみ実行します。会話形式でユーザーを案内してください。

  1. 使用したいプロバイダーを尋ねます。
    • OpenAI (gpt-image-2) — 高品質で、テキストの描画に優れています。画像ごとに料金がかかります。
    • Google Gemini (Nano Banana) — 高速で、無料枠が利用できます。試行錯誤に適しています。
  2. API キーの取得先を案内します。
  3. キーを受け取ったら、現在のセッションで SKILL_IMAGE_GEN_OPENAI_KEY または SKILL_IMAGE_GEN_GEMINI_KEY を設定し、適切なシェルプロファイルにも保存します。
  4. ユーザーが最初に依頼した画像の生成に進みます。

API リファレンス:OpenAI

メソッド: POST URL: https://api.openai.com/v1/images/generations

ヘッダー:

  • Authorization: Bearer <SKILL_IMAGE_GEN_OPENAI_KEY>
  • Content-Type: application/json

ボディ(JSON):

{
  "model": "gpt-image-2",
  "prompt": "<user prompt>",
  "n": 1,
  "size": "1024x1024",
  "quality": "medium"
}
フィールドデフォルトオプション
modelgpt-image-2gpt-image-2、gpt-image-1
size1024x10241024x1024、1024x1536、1536x1024、auto
qualitymediumlow、medium、high

レスポンス: data[0].b64_json に、Base64 エンコードされた画像が含まれています。これをデコードして出力先に保存します。代わりに data[0].url がある場合は、その URL から画像をダウンロードします。

API リファレンス:Google Gemini (Nano Banana)

メソッド: POST URL: https://generativelanguage.googleapis.com/v1beta/models/<model>:generateContent

ヘッダー:

  • x-goog-api-key: <SKILL_IMAGE_GEN_GEMINI_KEY>
  • Content-Type: application/json

ボディ(JSON):

{
  "contents": [{"parts": [{"text": "Generate an image: <user prompt>"}]}],
  "generationConfig": {"responseModalities": ["TEXT", "IMAGE"]}
}
フィールドデフォルトオプション
model (in URL)gemini-2.0-flash-expgemini-2.0-flash-exp、gemini-2.5-flash-image

レスポンス: candidates[0].content.parts[] を確認し、inlineData.data(Base64 画像)と inlineData.mimeType を含むパートを探します。デコードして保存します。

エラーケース: error キー(API エラー)、promptFeedback.blockReason(安全性によるブロック)、finishReason: "SAFETY"(フィルタリング)。

エージェント向けガイドライン

  • 出力先を適切に選択し、プロジェクト内の関連ディレクトリ(例:assets/、images/、または現在のディレクトリ)に保存します。
  • ゲームのテクスチャを生成する場合は、プロンプトに「seamless」、「tileable」、「game asset」を加えて内容を充実させます。
  • バッチ生成では、複数の API 呼び出しを並列で実行します。
  • ユーザーがプロバイダーの切り替えや利用可能なオプションについて尋ねた場合は、両方について説明し、設定を支援します。
  • 保存する前に、必ず出力ディレクトリを作成します。
  • ユーザーのプロンプトに含まれる特殊文字が、JSON ボディ内で正しくエスケープされていることを確認します。

コメント