mcpField
I
image-generation

image-generation

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

image-generation について

設定済みの AI 画像 API を使って画像を生成・編集するスキルです。利用可能なバックエンドを自動選択し、結果をワークスペースに保存します。

主な機能

  1. 01バックエンドの自動選択
  2. 02テキストからの画像生成
  3. 03画像編集と複数画像の合成
  4. 04品質・サイズ・アスペクト比の設定

活用シーン

  1. 01テキストの説明から画像を作成
  2. 02既存画像を編集
  3. 03複数の入力画像を合成

インストール

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

$npx skills add https://github.com/zhayujie/cowagent --skill image-generation

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

同梱ファイルscripts/generate.py

詳細

画像生成

AI モデルを使用して画像を生成および編集します。スクリプトは、設定されている API キーに基づいてバックエンドを自動的に選択します — ユーザーが明示的にモデル名を指定しない限り、モデルを指定する必要はありません。model を推測したり捏造したりしないでください。ユーザーがモデル名を指定しない場合は、model を完全に省略して、設定済みのデフォルト/プロバイダーが使用されるようにします。

サポートされているモデル(ユーザーが特定のモデルを要求した場合にのみ model で渡します):

  • OpenAI — gpt-image-2.5-flare(推奨デフォルト:品質とレイテンシのバランスが最良)、gpt-image-2.5-sunburst(編集精度が最高)、gpt-image-2、gpt-image-1
  • Gemini Nano Banana — nano-banana-2、nano-banana-pro、nano-banana
  • Seedream(Volcengine Ark) — seedream-5.0-lite、seedream-4.5
  • Qwen(DashScope) — qwen-image-2.0、qwen-image-2.0-pro
  • MiniMax — image-01

使用方法

scripts/generate.py を JSON 引数付きで実行します。絶対パス <base_dir> を使用してください — スキルディレクトリに cd しないでください。これはビルトインスキルであり、再起動時にリセットされるためです(そこに書き込まれたものは失われます)。

python <base_dir>/scripts/generate.py '<json_args>'

画像はワークスペース(または開いているプロジェクトディレクトリ)の images/ 以下に保存されるため、永続化され、クライアントから引き続きアクセスできます。

bash のタイムアウトを少なくとも 600 秒に設定してください。画像生成はプロバイダーごとに 30~200 秒かかることがあり、スクリプトが複数のプロバイダーを順番に試す場合があるためです。同期的に呼び出し(バックグラウンドで実行しないでください)、同じターン内でその出力を待ってください。

パラメータ
パラメータ型必須デフォルト説明
promptstringはい—画像の説明
image_urlstring / listいいえnull編集用の入力画像:ローカルファイルパスまたは URL。複数画像の融合がサポートされています(リストを渡します)
qualitystringいいえautolow / medium / high(一部のバックエンドのみがこれを尊重します)
sizestringいいえauto512 / 1K / 2K / 3K / 4K、またはピクセル値(1024x1024)
aspect_ratiostringいいえnull1:1 / 3:2 / 2:3 / 16:9 / 9:16 / 21:9(一部のバックエンドは 1:4 / 8:1 のような極端なアスペクト比もサポートしています)

quality を高くし、size を大きくすると、コストが増え、実行が遅くなります。 通常のケースでは、ユーザーが明示的に指定しない限り、low または medium で十分です。ユーザーが要求した場合にのみ high を使用してください。

例 — 生成
python <base_dir>/scripts/generate.py '{"prompt": "A corgi astronaut floating in space"}'

アスペクト比を指定する場合:

python <base_dir>/scripts/generate.py '{"prompt": "Isometric miniature city of Shanghai at sunset", "size": "2K", "aspect_ratio": "16:9"}'
重要:編集と生成の違い

ユーザーが既存の画像を編集、変更、または改善するように求めた場合は、元の画像を image_url で渡してください。ローカルファイルパスを直接使用することを推奨します — スクリプトが内部的にファイルの読み取りを処理します。image_url がない場合、スクリプトは編集ではなく、まったく新しい画像を生成します。

例 — 編集(image-to-image)
python <base_dir>/scripts/generate.py '{"prompt": "Add a Santa hat to the dog", "image_url": "/path/to/dog.png"}'

複数画像の融合 — リストを渡します:

python <base_dir>/scripts/generate.py '{"prompt": "Combine these characters into a group photo", "image_url": ["/path/a.png", "/path/b.png"]}'
出力

stdout に JSON を出力します:

{
  "model": "doubao-seedream-5-0-260128",
  "images": [
    {"url": "/path/to/output.png"}
  ]
}

成功したら、ユーザーに画像を表示します。markdown に埋め込む(![説明](/path/to/output.png))か、send ツールを使用できます。

エラーの場合:

{
  "error": "error message"
}
セットアップ

スクリプトには、これらの API キーのうち少なくとも 1 つが必要です(env_config または config.json で設定):

OPENAI_API_KEY / GEMINI_API_KEY / ARK_API_KEY / DASHSCOPE_API_KEY / MINIMAX_API_KEY / LINKAI_API_KEY

それぞれにカスタムエンドポイント用のオプションの *_API_BASE もあります。スクリプトは設定されている最初のバックエンドを自動的に選択し、失敗した場合は次のバックエンドにフォールバックします — モデルを指定する必要はありません。

エラーハンドリング

設定されているすべてのバックエンドを試した後にスクリプトがエラーを返した場合、同じパラメータで再試行しないでください — 失敗はほとんどの場合、設定の問題(誤った API キー、サポートされていない API ベース)です。ユーザーに env_config で修正するよう伝えてから、再試行してください。

注意事項
  • HTTP タイムアウトは 300 秒です — 高解像度の生成には 200 秒以上かかることがあります。
  • quality / size を省略すると、モデルが自動的に選択します(auto)。
  • 編集用の入力画像は、4MB 以下 / 最長辺 4096px 以下に自動圧縮されます。

コメント