baoyu-image-gen について
baoyu-image-genは、複数のプロバイダーのAPIを使って画像を生成するエージェント向けスキルです。モデルや画像設定、参照画像を指定できます。
主な機能
- 01OpenAI、Google、DashScope、Replicate、xheaiに対応
- 02テキストまたはファイルからプロンプトを入力
- 03参照画像の入力
- 04アスペクト比、サイズ、品質の設定
- 05設定ファイルによるプロバイダーとモデルの指定
活用シーン
- 01テキストプロンプトからイラストを生成
- 02ファイル内の長いプロンプトから画像を生成
- 03参照画像を使った画像生成
- 04成果物に合わせたサイズと品質の選択
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ xy121718/ baoyu-skills --skill baoyu-image-genインストール後、Claude Code で/baoyu-image-genを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/config/first-time-setup.mdpreferences-schema.mdscripts/main.tstypes.tsscripts/providers/dashscope.tsgoogle.tsopenai.tsreplicate.tsxheai.ts詳細
画像生成(AI SDK)
API ベースの公式画像生成です。OpenAI、Google、DashScope(阿里通义万象)、Replicate、xheai(中継サービス)のプロバイダーに対応しています。
スクリプトディレクトリ
エージェントの実行:
SKILL_DIR= この SKILL.md ファイルがあるディレクトリ- スクリプトのパス =
${SKILL_DIR}/scripts/main.ts
ステップ 0:設定を読み込む ⛔ BLOCKING
重要:画像生成を始める前に、このステップを必ず完了してください。省略したり、後回しにしたりしないでください。
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
使い方
# ⚠️ 长prompt用 --promptfiles 或双引号包裹,避免换行解析错误
# 推荐: npx -y bun "${SKILL_DIR}/scripts/main.ts" -p "长prompt" --image out.png
# 或: npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles prompt.txt --image out.png
# 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
# xheai (中转站 - 兼容 OpenAI 格式)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider xheai
# xheai with nano-banana-2
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider xheai --model nano-banana-2
オプション
| オプション | 説明 |
|---|---|
--prompt <text>, -p | プロンプトのテキスト |
--promptfiles <files...> | ファイルからプロンプトを読み込みます(連結) |
--image <path> | 出力画像のパス(必須) |
--provider google|openai|dashscope|replicate|xheai | プロバイダーを指定します(デフォルト:自動検出) |
--model <id>, -m | モデル ID(Google:gemini-3-pro-image-preview、gemini-3.1-flash-image-preview;OpenAI:gpt-image-1.5;xheai:gemini-3.1-flash-image-preview、nano-banana-2) |
--ar <ratio> | アスペクト比(例:16:9、1:1、4:3) |
--size <WxH> | サイズ(例:1024x1024) |
--quality normal|2k | 品質のプリセット(デフォルト:2k) |
--imageSize 1K|2K|4K | Google の画像サイズ(デフォルト:品質設定に準拠) |
--ref <files...> | 参照画像。Google マルチモーダル(gemini-3-pro-image-preview、gemini-3-flash-preview、gemini-3.1-flash-image-preview)と OpenAI edits(GPT Image モデル)に対応しています。プロバイダーを省略した場合は、Google が優先され、次に OpenAI が使用されます |
--n <count> | 画像の枚数 |
--json | JSON 出力 |
環境変数
| 変数 | 説明 |
|---|---|
OPENAI_API_KEY | OpenAI API キー(OPENAI_BASE_URL が xheai.cc を指している場合、xheai にも使用されます) |
GOOGLE_API_KEY | Google API キー |
DASHSCOPE_API_KEY | DashScope API キー(阿里云) |
REPLICATE_API_TOKEN | Replicate API トークン |
OPENAI_IMAGE_MODEL | OpenAI/xheai のモデルを上書き |
GOOGLE_IMAGE_MODEL | Google のモデルを上書き |
DASHSCOPE_IMAGE_MODEL | DashScope のモデルを上書き(デフォルト:z-image-turbo) |
REPLICATE_IMAGE_MODEL | Replicate のモデルを上書き(デフォルト:google/nano-banana-pro) |
OPENAI_BASE_URL | OpenAI のカスタムエンドポイント(xheai を使用する場合は https://api.xheai.cc に設定) |
GOOGLE_BASE_URL | Google のカスタムエンドポイント |
DASHSCOPE_BASE_URL | DashScope のカスタムエンドポイント |
REPLICATE_BASE_URL | Replicate のカスタムエンドポイント |
DEBUG_ENV | 1 に設定すると、環境変数の読み込みとプロバイダー検出のデバッグ出力を有効にします |
読み込みの優先順位:CLI 引数 > EXTEND.md > 環境変数 > <cwd>/.baoyu-skills/.env > ~/.baoyu-skills/.env
クロスプラットフォームのパス:~/.baoyu-skills/.env は次のパスに自動的に解決されます。
- Windows:
C:\Users\<username>\.baoyu-skills\.env - macOS:
/Users/<username>/.baoyu-skills/.env - Linux:
/home/<username>/.baoyu-skills/.env
デバッグモード:DEBUG_ENV=1 に設定すると、読み込まれた .env ファイルと検出された API キーを確認できます:
DEBUG_ENV=1 npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image cat.png
モデルの解決
モデルの優先順位(高い順 → 低い順)。すべてのプロバイダーに適用されます。
- CLI フラグ:
--model <id> - EXTEND.md:
default_model.[provider] - 環境変数:
<PROVIDER>_IMAGE_MODEL(例:GOOGLE_IMAGE_MODEL) - 組み込みのデフォルト
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-proowner/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
プロバイダーの選択
--refが指定され、--providerが指定されていない → Google、次に OpenAI、次に Replicate の順に自動選択--providerが指定されている → 指定されたプロバイダーを使用(--refが指定されている場合は、google、openai、replicateのいずれかである必要があります)- API キーが1つだけ利用可能 → そのプロバイダーを使用
- 複数利用可能 → デフォルトで Google を使用
品質プリセット
| プリセット | Google imageSize | OpenAI Size | 用途 |
|---|---|---|---|
normal | 1K | 1024px | クイックプレビュー |
2k(デフォルト) | 2K | 2048px | カバー、イラスト、インフォグラフィック |
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 セクションを参照してください。