用途
baoyu-image-gen 是一个基于官方 API 的 AI 图像生成技能(Image Generation, AI SDK),用于通过命令行脚本调用 OpenAI、Google 和 DashScope(阿里通义万象)三家提供商的图像生成能力。
主要能力
- 支持文生图,可通过 --prompt 或 --promptfiles 提供提示词。
- 支持参考图(仅 Google 多模态),通过 --ref 指定。
- 支持宽高比设置,可选 1:1、16:9、9:16、4:3、3:4、2.35:1。
- 支持尺寸(--size,如 1024x1024)与质量预设(--quality normal|2k,默认 2k)。
- 支持指定提供商(--provider google|openai|dashscope,默认 google)、模型 ID(--model)、生成数量(--n)以及 JSON 输出(--json)。
- 默认按顺序逐张生成,保证输出稳定、便于调试;仅在用户明确要求并行/并发时使用并行生成。
使用方式
脚本路径为 ${SKILL_DIR}/scripts/main.ts,其中 SKILL_DIR 为 SKILL.md 文件所在目录。基本调用示例:
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image cat.png
带宽高比:
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A landscape" --image out.png --ar 16:9
高质量:
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --quality 2k
从提示词文件读取:
npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png
带参考图(仅 Google 多模态):
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --ref source.png
指定提供商:
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
选项
- --prompt <text>, -p:提示词文本。
- --promptfiles <files...>:从文件读取提示词(拼接)。
- --image <path>:输出图像路径(必填)。
- --provider google|openai|dashscope:强制指定提供商(默认 google)。
- --model <id>, -m:模型 ID。
- --ar <ratio>:宽高比(如 16:9、1:1、4:3)。
- --size <WxH>:尺寸(如 1024x1024)。
- --quality normal|2k:质量预设(默认 2k)。
- --imageSize 1K|2K|4K:Google 图像尺寸(默认由 quality 决定)。
- --ref <files...>:参考图(仅 Google 多模态)。
- --n <count>:图像数量。
- --json:JSON 输出。
环境变量
- OPENAI_API_KEY:OpenAI API 密钥。
- GOOGLE_API_KEY:Google API 密钥。
- DASHSCOPE_API_KEY:DashScope API 密钥(阿里云)。
- OPENAI_IMAGE_MODEL:OpenAI 模型覆盖。
- GOOGLE_IMAGE_MODEL:Google 模型覆盖。
- DASHSCOPE_IMAGE_MODEL:DashScope 模型覆盖(默认 z-image-turbo)。
- OPENAI_BASE_URL:自定义 OpenAI 端点。
- GOOGLE_BASE_URL:自定义 Google 端点。
- DASHSCOPE_BASE_URL:自定义 DashScope 端点。
加载优先级:CLI 参数 > 环境变量 > <cwd>/.baoyu-skills/.env > ~/.baoyu-skills/.env。
提供商选择
- 指定 --provider → 使用该提供商。
- 仅有一个可用 API 密钥 → 使用该提供商。
- 多个可用 → 默认 Google。
质量预设
- normal:Google imageSize 1K,OpenAI Size 1024px,用于快速预览。
- 2k(默认):Google imageSize 2K,OpenAI Size 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 映射到最接近的受支持尺寸。
生成模式
默认顺序生成(一次一张),确保输出稳定、便于调试。并行生成仅在用户明确要求并行/并发时使用。并行设置:推荐并发 4 个子代理,最大并发 8 个子代理,适用于用户要求并行的大批量生成。并行模式通过 Task 工具启动多个生成任务,每个 Task 作为后台子代理运行(run_in_background=true),全部完成后通过 TaskOutput 收集结果。
偏好配置(EXTEND.md)
使用 Bash 检查 EXTEND.md 是否存在,优先级顺序:先项目级 .baoyu-skills/baoyu-image-gen/EXTEND.md,再用户级 $HOME/.baoyu-skills/baoyu-image-gen/EXTEND.md。找到则读取、解析并应用设置;未找到则使用默认值。EXTEND.md 支持:默认提供商、默认质量、默认宽高比。
错误处理
- 缺少 API 密钥 → 报错并给出设置说明。
- 生成失败 → 自动重试一次。
- 无效宽高比 → 警告,使用默认值继续。
- 参考图与非多模态模型 → 警告,忽略参考图。
适用场景
适用于需要通过命令行脚本调用 OpenAI、Google 或 DashScope 官方 API 生成图像的场景,包括单张图像生成、小批量生成、封面/插画/信息图制作,以及在用户明确要求时的大批量并行生成。
限制
- 参考图功能仅支持 Google 多模态模型。
- 并行生成仅在用户明确要求时使用。
- 需要相应的 API 密钥(OPENAI_API_KEY、GOOGLE_API_KEY 或 DASHSCOPE_API_KEY)。
- 关于收费、价格、具体平台效果等信息,资料暂未提供。