name: baoyu-image-gen description: 使用OpenAI、Google和DashScope API进行AI图像生成。支持文本到图像、参考图像、长宽比。默认顺序生成;根据请求可并行生成。当用户要求生成、创建或绘制图像时使用。
图像生成(AI SDK)
官方基于API的图像生成。支持OpenAI、Google和DashScope(阿里通义万象)提供商。
脚本目录
代理执行:
SKILL_DIR= 此SKILL.md文件所在目录- 脚本路径 =
${SKILL_DIR}/scripts/main.ts
偏好设置(EXTEND.md)
使用Bash检查EXTEND.md是否存在(优先级顺序):
# 首先检查项目级别
test -f .baoyu-skills/baoyu-image-gen/EXTEND.md && echo "project"
# 然后用户级别(跨平台:$HOME在macOS/Linux/WSL上有效)
test -f "$HOME/.baoyu-skills/baoyu-image-gen/EXTEND.md" && echo "user"
┌──────────────────────────────────────────────────┬───────────────────┐ │ 路径 │ 位置 │ ├──────────────────────────────────────────────────┼───────────────────┤ │ .baoyu-skills/baoyu-image-gen/EXTEND.md │ 项目目录 │ ├──────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.baoyu-skills/baoyu-image-gen/EXTEND.md │ 用户主目录 │ └──────────────────────────────────────────────────┴───────────────────┘
┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ 结果 │ 操作 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 找到 │ 读取、解析、应用设置 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 未找到 │ 使用默认值 │ └───────────┴───────────────────────────────────────────────────────────────────────────┘
EXTEND.md支持: 默认提供商 | 默认质量 | 默认长宽比 | 默认图像大小 | 默认模型
架构:references/config/preferences-schema.md
使用方式
# 基本用法
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只猫" --image cat.png
# 带长宽比
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一个风景" --image out.png --ar 16:9
# 高质量
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只猫" --image out.png --quality 2k
# 从提示文件
npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png
# 带参考图像(Google多模态或OpenAI编辑)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "变成蓝色" --image out.png --ref source.png
# 带参考图像(明确提供商/模型)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "变成蓝色" --image out.png --provider google --model gemini-3-pro-image-preview --ref source.png
# 特定提供商
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只猫" --image out.png --provider openai
# DashScope(阿里通义万象)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只可爱的猫" --image out.png --provider dashscope
选项
| 选项 | 描述 |
|---|---|
--prompt <文本>, -p |
提示文本 |
--promptfiles <文件...> |
从文件读取提示(连接) |
--image <路径> |
输出图像路径(必需) |
--provider google|openai|dashscope |
强制提供商(默认:google) |
--model <ID>, -m |
模型ID(--ref 与OpenAI需要GPT图像模型,例如 gpt-image-1.5) |
--ar <比例> |
长宽比(例如,16:9, 1:1, 4:3) |
--size <宽x高> |
大小(例如,1024x1024) |
--quality normal|2k |
质量预设(默认:2k) |
--imageSize 1K|2K|4K |
Google的图像大小(默认:来自质量) |
--ref <文件...> |
参考图像。支持Google多模态和OpenAI编辑(GPT图像模型)。如果省略提供商:先Google,然后OpenAI |
--n <数量> |
图像数量 |
--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参数 > EXTEND.md > 环境变量 > <cwd>/.baoyu-skills/.env > ~/.baoyu-skills/.env
提供商选择
--ref提供 + 无--provider→ 自动选择先Google,然后OpenAI--provider指定 → 使用它(如果--ref,必须是google或openai)- 仅有一个API密钥可用 → 使用该提供商
- 多个可用 → 默认Google
质量预设
| 预设 | Google imageSize | OpenAI大小 | 使用场景 |
|---|---|---|---|
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:映射到最接近的支持大小
生成模式
默认: 顺序生成(一次一个图像)。这确保稳定输出和更容易调试。
并行生成: 仅当用户明确请求并行/并发生成时使用。
| 模式 | 何时使用 |
|---|---|
| 顺序(默认) | 正常使用,单个图像,小批量 |
| 并行 | 用户明确请求,大批量(10+) |
并行设置(当请求时):
| 设置 | 值 |
|---|---|
| 推荐并发 | 4个子代理 |
| 最大并发 | 8个子代理 |
| 使用场景 | 用户请求并行时的大批量生成 |
代理实现(仅并行模式):
# 使用Task工具并行启动多个生成
# 每个Task作为后台子代理运行,run_in_background=true
# 通过TaskOutput在所有完成后收集结果
错误处理
- 缺少API密钥 → 错误并提供设置说明
- 生成失败 → 自动重试一次
- 无效长宽比 → 警告,继续使用默认值
- 参考图像与不支持提供商/模型 → 错误并提供修复提示(切换到Google多模态或OpenAI GPT图像编辑)
扩展支持
通过EXTEND.md自定义配置。参见偏好设置部分获取路径和支持选项。