mcpField
B
baoyu-image-gen

baoyu-image-gen

github.com/ideaccoクリエイティブ・メディア1435 回インストール34 週間前に更新
リポジトリ

baoyu-image-gen について

baoyu-image-genは、OpenAI、Google、DashScope、ReplicateのモデルをAPI経由で利用する画像生成スキルです。プロバイダーやモデル、出力サイズ、品質、参照画像を設定できます。

主な機能

  1. 014つのAPIプロバイダー
  2. 02プロバイダーとモデルの選択
  3. 03アスペクト比と画像サイズの指定
  4. 04参照画像の入力
  5. 05設定ファイルによる環境設定

活用シーン

  1. 01テキストプロンプトから画像を生成
  2. 02指定したアスペクト比で画像を生成
  3. 03参照画像を使って画像を生成
  4. 04既定のプロバイダーとモデルを設定

インストール

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

$npx skills add https://github.com/ideacco/baoyu-skills-openclaw --skill baoyu-image-gen

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/config/
first-time-setup.md
preferences-schema.md
scripts/
main.ts
types.ts
scripts/providers/
dashscope.ts
google.ts
openai.ts
replicate.ts

詳細

画像生成(AI SDK)

公式 API ベースの画像生成です。OpenAI、Google、DashScope(阿里通义万象)、Replicate プロバイダーに対応しています。

スクリプトディレクトリ

エージェントの実行:

  1. SKILL_DIR = この SKILL.md ファイルのディレクトリ
  2. スクリプトのパス = ${SKILL_DIR}/scripts/main.ts

ステップ 0:設定の読み込み ⛔ ブロッキング

重要:画像を生成する前に、このステップを必ず完了してください。省略したり、後回しにしたりしないでください。

EXTEND.md が存在するか確認します(優先順位:プロジェクト → ユーザー):

test -f .baoyu-skills/baoyu-image-gen/EXTEND.md && echo "project"
test -f "$HOME/.baoyu-skills/baoyu-image-gen/EXTEND.md" && echo "user"
結果アクション
見つかった読み込み、解析して、設定を適用します。default_model.[provider] が null の場合は、モデルのみを確認します(フロー 2)
見つからない⛔ 初回セットアップを実行します(references/config/first-time-setup.md)→ EXTEND.md を保存 → 続行

重要:見つからない場合は、画像を生成する前に AskUserQuestion を使って、プロバイダー、モデル、品質、保存先を含む初回セットアップをすべて完了してください。EXTEND.md が作成されるまで、生成はブロックされます。

パス場所
.baoyu-skills/baoyu-image-gen/EXTEND.mdプロジェクトディレクトリ
$HOME/.baoyu-skills/baoyu-image-gen/EXTEND.mdユーザーのホームディレクトリ

EXTEND.md で設定できる項目:デフォルトのプロバイダー | デフォルトの品質 | デフォルトのアスペクト比 | デフォルトの画像サイズ | デフォルトのモデル

スキーマ:references/config/preferences-schema.md

使用方法

# Basic
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image cat.png

# With aspect ratio
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A landscape" --image out.png --ar 16:9

# High quality
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --quality 2k

# From prompt files
npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png

# With reference images (Google multimodal or OpenAI edits)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --ref source.png

# With reference images (explicit provider/model)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --provider google --model gemini-3-pro-image-preview --ref source.png

# Specific provider
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider openai

# DashScope (阿里通义万象)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只可爱的猫" --image out.png --provider dashscope

# Replicate (google/nano-banana-pro)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate

# Replicate with specific model
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate --model google/nano-banana

オプション

オプション説明
--prompt <text>, -pプロンプトのテキスト
--promptfiles <files...>ファイルからプロンプトを読み込みます(連結)
--image <path>出力画像のパス(必須)
--provider google|openai|dashscope|replicateプロバイダーを指定します(デフォルト:google)
--model <id>, -mモデル ID(Google:gemini-3-pro-image-preview、gemini-3.1-flash-image-preview、OpenAI:gpt-image-1.5)
--ar <ratio>アスペクト比(例:16:9、1:1、4:3)
--size <WxH>サイズ(例:1024x1024)
--quality normal|2k品質プリセット(デフォルト:2k)
--imageSize 1K|2K|4KGoogle の画像サイズ(デフォルト:品質設定に基づく)
--ref <files...>参照画像。Google マルチモーダル(gemini-3-pro-image-preview、gemini-3-flash-preview、gemini-3.1-flash-image-preview)および OpenAI の編集(GPT Image モデル)で対応しています。プロバイダーが省略された場合は、Google、次に OpenAI の順で使用します
--n <count>画像の枚数
--jsonJSON 出力

環境変数

変数説明
OPENAI_API_KEYOpenAI API キー
GOOGLE_API_KEYGoogle API キー
DASHSCOPE_API_KEYDashScope API キー(阿里云)
REPLICATE_API_TOKENReplicate API トークン
OPENAI_IMAGE_MODELOpenAI モデルの上書き設定
GOOGLE_IMAGE_MODELGoogle モデルの上書き設定
DASHSCOPE_IMAGE_MODELDashScope モデルの上書き設定(デフォルト:z-image-turbo)
REPLICATE_IMAGE_MODELReplicate モデルの上書き設定(デフォルト:google/nano-banana-pro)
OPENAI_BASE_URLOpenAI のカスタムエンドポイント
GOOGLE_BASE_URLGoogle のカスタムエンドポイント
DASHSCOPE_BASE_URLDashScope のカスタムエンドポイント
REPLICATE_BASE_URLReplicate のカスタムエンドポイント

読み込みの優先順位:CLI 引数 > EXTEND.md > 環境変数 > <cwd>/.baoyu-skills/.env > ~/.baoyu-skills/.env

モデルの解決

モデルの優先順位(高い順)。すべてのプロバイダーに適用されます。

  1. CLI フラグ:--model <id>
  2. EXTEND.md:default_model.[provider]
  3. 環境変数:<PROVIDER>_IMAGE_MODEL(例:GOOGLE_IMAGE_MODEL)
  4. 組み込みのデフォルト

EXTEND.md は環境変数を上書きします。EXTEND.md の default_model.google: "gemini-3-pro-image-preview" と環境変数 GOOGLE_IMAGE_MODEL=gemini-3.1-flash-image-preview が両方存在する場合は、EXTEND.md が優先されます。

エージェントは生成のたびに、モデル情報を表示する必要があります:

  • 表示:Using [provider] / [model]
  • 切り替え方法を表示:Switch model: --model <id> | EXTEND.md default_model.[provider] | env <PROVIDER>_IMAGE_MODEL
Replicate モデル

対応するモデル形式:

  • owner/name(公式モデルに推奨)、例:google/nano-banana-pro
  • owner/name:version(バージョン指定のコミュニティモデル)、例:stability-ai/sdxl:<version>

例:

# Use Replicate default model
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate

# Override model explicitly
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate --model google/nano-banana

プロバイダーの選択

  1. --ref が指定されていて --provider がない場合 → Google、OpenAI、Replicate の順に自動選択します
  2. --provider が指定されている場合 → それを使用します(--ref がある場合は、google、openai、replicate のいずれかである必要があります)
  3. 利用可能な API キーが 1 つだけの場合 → そのプロバイダーを使用します
  4. 複数利用可能な場合 → デフォルトで Google を使用します

品質プリセット

プリセットGoogle imageSizeOpenAI Size用途
normal1K1024pxクイックプレビュー
2k(デフォルト)2K2048pxカバー、イラスト、インフォグラフィック

Google imageSize:--imageSize 1K|2K|4K で上書きできます

アスペクト比

対応:1:1、16:9、9:16、4:3、3:4、2.35:1

  • Google マルチモーダル:imageConfig.aspectRatio を使用します
  • Google Imagen:aspectRatio パラメーターを使用します
  • OpenAI:最も近い対応サイズに割り当てます

生成モード

デフォルト:順次生成(一度に 1 枚の画像)。これにより、安定した出力が得られ、デバッグも容易になります。

並列生成:ユーザーが並列/同時生成を明示的に要求した場合にのみ使用します。

モード使用する場面
順次(デフォルト)通常の使用、単一画像、少量のバッチ
並列ユーザーからの明示的な要求、大量のバッチ(10 枚以上)

並列設定(要求された場合):

設定値
推奨同時実行数4 サブエージェント
最大同時実行数8 サブエージェント
用途ユーザーが並列生成を要求した場合の大量バッチ生成

エージェントの実装(並列モードのみ):

# Launch multiple generations in parallel using Task tool
# Each Task runs as background subagent with run_in_background=true
# Collect results via TaskOutput when all complete

エラー処理

  • API キーがない場合 → セットアップ手順を含むエラーを返します
  • 生成に失敗した場合 → 自動的に 1 回再試行します
  • 無効なアスペクト比の場合 → 警告を表示し、デフォルト値で続行します
  • 対応していないプロバイダー/モデルの参照画像の場合 → 修正方法のヒントを含むエラーを返します(Google マルチモーダル:gemini-3-pro-image-preview、gemini-3.1-flash-image-preview に切り替えるか、OpenAI GPT Image edits を使用してください)

拡張機能のサポート

EXTEND.md でカスタム設定が可能です。パスと対応オプションについては、Preferences セクションを参照してください。

OpenClaw の移行に関する注意事項

  • 移行モード:OpenClaw ネイティブを優先
  • 保持されるディレクトリ:
    • scripts:はい
    • references:はい
    • prompts:いいえ
  • 外部依存関係:bun、external-ai-api
  • リスクレベル:中
  • (検出された)環境変数:API、DASHSCOPE_API_KEY、DASHSCOPE_BASE_URL、GOOGLE_API_KEY、GOOGLE_BASE_URL、HOME、OPENAI_API_KEY、OPENAI_BASE_URL、REPLICATE_API_TOKEN、REPLICATE_BASE_URL
  • 設定の互換性:元の .baoyu-skills/<skill>/EXTEND.md の動作を維持し、必要に応じてランタイムラッパーに OpenClaw 互換のパスを追加します。

OpenClaw の事前確認

  • スクリプトの例で npx -y bun ... を使用している場合は、bun が利用可能であることを確認します。
  • 実行前に、必要な API 認証情報が環境変数としてエクスポートされていることを確認します。

検出された環境変数:API、DASHSCOPE_API_KEY、DASHSCOPE_BASE_URL、GOOGLE_API_KEY、GOOGLE_BASE_URL、HOME、OPENAI_API_KEY、OPENAI_BASE_URL、REPLICATE_API_TOKEN、REPLICATE_BASE_URL

OpenClaw の障害時フォールバック

  • ランタイム依存関係が不足している場合は、実行を停止し、正確なインストール/セットアップコマンドを返します。
  • API 呼び出しに失敗した場合は、プロバイダー/モデルのフラグを明示して再試行するよう提案し、キーのスコープを検証します。

コメント