关于 canghe-image-gen
通过 API 调用 OpenAI、Google、DashScope 或 Canghe 生成图像的技能,面向使用命令行或 Agent 执行图像生成任务的用户。支持提示词文件、参考图、尺寸与质量设置,并可通过 EXTEND.md 保存默认偏好。
主要功能
- 01支持四种图像生成提供方
- 02命令行配置模型与输出参数
- 03从文件读取提示词
- 04参考图输入
- 05配置尺寸、画幅与质量
- 06EXTEND.md 默认偏好
适用场景
- 01根据提示词生成插图或封面
- 02用参考图生成或编辑图像
- 03批量合并多个提示词文件
- 04设置项目级默认模型与画幅
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ freestylefly/ canghe-skills --skill canghe-image-gen安装后在 Claude Code 中输入/canghe-image-gen确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/config/preferences-schema.mdscripts/main.tstypes.tsscripts/providers/canghe.tsdashscope.tsgoogle.tsopenai.ts详细介绍
图像生成(AI SDK)
官方基于 API 的图像生成。支持 OpenAI、Google、DashScope(阿里通义万象)和 Canghe 提供商。
脚本目录
Agent 执行:
SKILL_DIR= 此 SKILL.md 文件所在目录- 脚本路径 =
${SKILL_DIR}/scripts/main.ts
偏好设置(EXTEND.md)
使用 Bash 按优先级顺序检查 EXTEND.md 是否存在:
# Check project-level first
test -f .canghe-skills/canghe-image-gen/EXTEND.md && echo "project"
# Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.canghe-skills/canghe-image-gen/EXTEND.md" && echo "user"
┌──────────────────────────────────────────────────┬───────────────────┐ │ 路径 │ 位置 │ ├──────────────────────────────────────────────────┼───────────────────┤ │ .canghe-skills/canghe-image-gen/EXTEND.md │ 项目目录 │ ├──────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.canghe-skills/canghe-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
# Canghe third-party gateway
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只可爱的猫" --image out.png --provider canghe
选项
| 选项 | 说明 |
|---|---|
--prompt <text>, -p | 提示词文本 |
--promptfiles <files...> | 从文件读取提示词(拼接) |
--image <path> | 输出图像路径(必填) |
--provider google|openai|dashscope|canghe | 强制指定提供商(默认:google) |
--model <id>, -m | 模型 ID(使用 OpenAI 时,--ref 要求 GPT Image 模型,例如 gpt-image-1.5) |
--ar <ratio> | 宽高比(例如:16:9、1:1、4:3) |
--size <WxH> | 尺寸(例如:1024x1024) |
--quality normal|2k | 质量预设(默认:2k) |
--imageSize 1K|2K|4K | Google 图像尺寸(默认:根据质量设置) |
--ref <files...> | 参考图像。Google 多模态、OpenAI 编辑(GPT Image 模型)和 Canghe(image_url)支持此选项。如果未指定提供商:优先使用 Google,然后是 OpenAI,最后是 Canghe |
--n <count> | 图像数量 |
--json | JSON 输出 |
环境变量
| 变量 | 说明 |
|---|---|
OPENAI_API_KEY | OpenAI API 密钥 |
GOOGLE_API_KEY | Google API 密钥 |
DASHSCOPE_API_KEY | DashScope API 密钥(阿里云) |
CANGHE_API_KEY | Canghe API 密钥 |
OPENAI_IMAGE_MODEL | OpenAI 模型覆盖项 |
GOOGLE_IMAGE_MODEL | Google 模型覆盖项 |
DASHSCOPE_IMAGE_MODEL | DashScope 模型覆盖项(默认:z-image-turbo) |
CANGHE_IMAGE_MODEL | Canghe 模型覆盖项(默认:gemini-3-pro-image-preview) |
OPENAI_BASE_URL | 自定义 OpenAI 端点 |
GOOGLE_BASE_URL | 自定义 Google 端点 |
DASHSCOPE_BASE_URL | 自定义 DashScope 端点 |
CANGHE_BASE_URL | 自定义 Canghe 端点(默认:https://api.canghe.ai/v1) |
加载优先级:CLI 参数 > EXTEND.md > 环境变量 > <cwd>/.canghe-skills/.env > ~/.canghe-skills/.env
提供商选择
- 提供了
--ref且未指定--provider→ 优先自动选择 Google,然后是 OpenAI,最后是 Canghe - 指定了
--provider→ 使用指定的提供商(如果提供了--ref,则必须是google、openai或canghe) - 只有一个可用的 API 密钥 → 使用对应的提供商
- 有多个可用密钥 → 默认使用 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 multimodal:使用
imageConfig.aspectRatio - Google Imagen:使用
aspectRatio参数 - OpenAI:映射到最接近的受支持尺寸
生成模式
默认:顺序生成(一次生成一张图片)。这可确保输出稳定,并便于调试。
并行生成:仅在用户明确要求并行/并发生成时使用。
| 模式 | 使用场景 |
|---|---|
| 顺序(默认) | 常规使用、单张图片、小批量 |
| 并行 | 用户明确要求、大批量(10 张以上) |
并行设置(用户要求时):
| 设置 | 值 |
|---|---|
| 建议并发数 | 4 个子 Agent |
| 最大并发数 | 8 个子 Agent |
| 用途 | 用户要求并行处理时进行大批量生成 |
Agent 实现(仅限并行模式):
# 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 密钥 → 报错并提供设置说明
- 生成失败 → 自动重试一次
- 无效的宽高比 → 发出警告,并使用默认值继续
- 参考图片与不受支持的提供商/模型搭配使用 → 报错并提供修复提示(切换到 Google multimodal 或 OpenAI GPT Image edits)
扩展支持
通过 EXTEND.md 使用自定义配置。路径和支持的选项请参阅 偏好设置 部分。