image-generation

image-generation

为文章和文档生成插图,采用 Codex 优先工作流,OpenAI API 作为备用,Gemini 作为最后备用。

0Star
0Fork
更新于 2026/7/22
SKILL.md
readonly只读
name
image-generation
description

为文章和文档生成插图,采用 Codex 优先工作流,OpenAI API 作为备用,Gemini 作为最后备用。

图像生成技能

为博客文章、文档和技术文章生成插图。工作流根据提供商自动选择:

  1. 优先使用 Codex 内置路径 — 当当前代理是 Codex 且内置 image_gen 工具可用时,直接使用。此路径不需要 OPENAI_API_KEY
  2. OpenAI API 备用 — 在 Codex 之外,或内置工具不可用时,使用本地脚本并配置 OPENAI_API_KEY(如果存在)。
  3. Gemini 备用 — 如果 OpenAI API 生成不可用或失败,使用同一脚本并配置 GEMINI_API_KEY 和现有的 Gemini 图像模型。

仅在需要时加载特定提供商的参考文件:

  • Codex 内置路径:references/codex-built-in.md
  • OpenAI API 备用:references/openai-api.md
  • Gemini 备用:references/gemini-api.md

何时使用

  • 用户要求生成插图、图表、概念图、文章配图或文档配图
  • 用户正在撰写文章,需要概念或工作流的可视化解释
  • 用户明确要求生成光栅图像

步骤 1:确定图像需求

在生成之前,仅明确必要的信息:

  1. 要说明的内容 — 概念、架构、流程或场景
  2. 语言 — 默认使用英语作为提示词和图像中的文字。仅当用户明确要求时才使用其他语言
  3. 保存位置 — 参见“输出路径”
  4. 风格/颜色偏好 — 如果用户有特定需求,则使用;否则使用默认风格

步骤 2:选择提供商路径

路径 A:Codex 内置

在以下情况下使用此路径:

  • 当前代理是 Codex
  • 内置 image_gen 工具可用
  • 用户未明确要求 API/CLI 执行

阅读 references/codex-built-in.md,使用内置工具生成,然后将最终图像移动/复制到工作区(如果与项目相关)。

路径 B:脚本自动备用

在以下情况下使用此路径:

  • 当前代理不是 Codex
  • 内置工具不可用
  • 用户明确要求 API/CLI 执行

运行:

python <skill-root>/scripts/generate_image.py \
  --prompt "你的提示词" \
  --output "/path/to/save/image.png"

脚本默认使用 --provider auto

  1. 当设置了 OPENAI_API_KEY 时,尝试 OpenAI API
  2. 如果 OpenAI API 失败或未配置,当设置了 GEMINI_API_KEY 时,尝试 Gemini
  3. 如果两个凭据都不可用,报告缺失的环境变量

步骤 3:编写提示词

默认风格前缀

除非使用了 --style-prefix--no-style,否则脚本会自动添加以下风格前缀:

使用干净、现代的色彩调色板,色调柔和。极简扁平插画风格,具有清晰的视觉层次。适合技术博客文章的专业精致外观。无照片级渲染。无过度渐变或阴影。

对于 Codex 内置路径,除非用户要求不同风格,否则直接在提示词中包含相同的风格指导。

提示词编写指南

  • 具体描述视觉元素、关系和布局
  • 对于技术概念:描述组件及其连接方式
  • 对于架构图:列出层/组件和数据流方向
  • 对于流程图:描述步骤和流程方向
  • 如果图像中需要文字标签,明确拼写出来并保持简短
  • 默认语言为英语;仅在要求时使用其他语言

示例提示词

架构图:

一个系统架构图,显示:用户向 API 网关发送查询,
网关路由到标记为“Milvus”的向量数据库和生成服务。
向量数据库返回相关文档,这些文档与原始查询结合,
发送到生成服务以生成最终响应。
箭头显示数据流方向。每个组件是一个带图标和标签的圆角矩形。

概念插图:

关键词搜索与语义搜索的视觉对比。左侧显示关键词搜索,
精确匹配单词并高亮显示匹配词。右侧显示语义搜索,
有一个大脑图标理解含义,并用虚线连接相关概念。
一条分隔线将两种方法分开。

步骤 4:参数

默认参数

参数 默认值 说明
提供商 脚本中为 auto;Codex 内置可用时优先 优先 Codex 内置,然后 OpenAI API,最后 Gemini
OpenAI 模型 gpt-image-2 脚本备用时使用
Gemini 模型 gemini-3.1-flash-image-preview 脚本备用时使用
宽高比 3:2 横向,适合文章插图
图像大小 1K 质量和成本的良好平衡
风格 极简、干净、柔和色调 脚本自动添加
语言 英语 提示词和图像内文字

脚本选项

--provider          auto, openai, gemini
--model             所选提供商的模型 ID
--openai-model      OpenAI 模型 ID,默认为 gpt-image-2
--gemini-model      Gemini 模型 ID,默认为 gemini-3.1-flash-image-preview
--aspect-ratio      1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 9:16, 16:9, 21:9 等
--image-size        512, 1K, 2K, 4K
--openai-quality    low, medium, high, auto
--style-prefix      自定义风格前缀
--no-style          跳过默认风格前缀

何时更改默认值

场景 更改
更高质量的最终素材 --image-size 2K--openai-quality high
社交媒体横幅 --aspect-ratio 16:9
纵向/垂直图像 --aspect-ratio 3:4--aspect-ratio 9:16
方形图像 --aspect-ratio 1:1
用户有自己的风格 --style-prefix "your style"--no-style
非英文内容 用目标语言编写提示词

步骤 5:确定输出路径

按以下优先级顺序:

优先级 1:当前对话上下文

如果用户正在处理特定的 markdown 文件或文章:

  1. 通过检查 .md 文件中的图像引用,查找该文章中现有图像的存储位置
  2. 将新图像保存在与现有图像相同的目录中
  3. 使用符合现有命名约定的描述性文件名

例如:如果文章中有 ![](images/architecture-overview.png),则保存到相同的 images/ 目录。

优先级 2:项目图像目录

如果没有特定的文章上下文,但在项目内工作:

  1. 查找现有的图像目录:images/assets/static/img/figures/
  2. 保存在最合适的现有目录中
  3. 如果不存在,在项目根目录或相关内容目录下创建 images/ 目录

优先级 3:备用

如果没有明确的项目上下文:

  1. 保存到当前工作目录
  2. 使用描述性文件名:concept-name-illustration.png

步骤 6:验证结果

生成后:

  1. 读取图像文件以直观验证其是否符合用户要求
  2. 如果结果不满意,优化提示词并针对性地重新生成一次
  3. 如果图像将插入 markdown 文件,建议使用 markdown 语法:![alt text](relative/path/to/image.png)
  4. 报告使用了哪个提供商路径以及最终文件保存的位置