Baoyu Article Illustrator(宝玉文章配图)
文章配图:类型 × 风格 × 调色板一致性。
技能元数据
| 来源 | 可选 — 使用 hermes skills install official/creative/baoyu-article-illustrator 安装 |
| 路径 | optional-skills/creative/baoyu-article-illustrator |
| 版本 | 1.57.0 |
| 作者 | 宝玉 (JimLiu) |
| 许可证 | MIT |
| 平台 | linux, macos, windows |
| 标签 | article-illustration, creative, image-generation |
参考:完整 SKILL.md
以下是 Hermes 在触发此技能时加载的完整技能定义。这是技能激活时代理看到的指令。
Article Illustrator(文章配图)
改编自 baoyu-article-illustrator,适用于 Hermes Agent 的工具生态系统。
分析文章,识别插图位置,生成具有 类型 × 风格 × 调色板 一致性的图像。
何时使用
当用户要求为文章配图、向文章添加图片、为内容生成插图,或使用“为文章配图”、“illustrate article”或“add images”等短语时,触发此技能。用户提供一篇文章(文件路径或粘贴的内容),并可选择指定类型、风格、调色板或密度。
三个维度
| 维度 | 控制内容 | 示例 |
|---|---|---|
| 类型 | 信息结构 | infographic(信息图), scene(场景), flowchart(流程图), comparison(对比), framework(框架), timeline(时间线) |
| 风格 | 渲染方式 | notion, warm(温暖), minimal(极简), blueprint(蓝图), watercolor(水彩), elegant(优雅) |
| 调色板 | 配色方案(可选) | macaron(马卡龙), warm(温暖), neon(霓虹)— 覆盖风格的默认颜色 |
自由组合:type=infographic, style=vector-illustration, palette=macaron。
或使用预设:edu-visual → 一次性包含类型 + 风格 + 调色板。参见 style-presets.md。
类型
| 类型 | 最佳适用场景 |
|---|---|
infographic | 数据、指标、技术内容 |
scene | 叙事、情感内容 |
flowchart | 流程、工作流 |
comparison | 并列对比、选项 |
framework | 模型、架构 |
timeline | 历史、演变 |
风格
参见 references/styles.md 了解核心风格、完整图库以及类型 × 风格的兼容性。
输出结构
{output-dir}/
├── source-{slug}.{ext} # Only for pasted content
├── outline.md
├── prompts/
│ └── NN-{type}-{slug}.md
└── NN-{type}-{slug}.png
默认输出目录:
| 输入 | 输出目录 | Markdown 插入路径 |
|---|---|---|
| 文章文件路径 | {article-dir}/imgs/ | imgs/NN-{type}-{slug}.png |
| 粘贴的内容 | illustrations/{topic-slug}/(当前工作目录) | illustrations/{topic-slug}/NN-{type}-{slug}.png |
如果用户要求不同的布局(例如,图片与文章并排,或使用 illustrations/ 子目录),请遵从该要求。
Slug:2-4 个单词,kebab-case(短横线分隔)。冲突处理:追加 -YYYYMMDD-HHMMSS。
核心原则
- 可视化概念,而非隐喻 — 如果文章使用隐喻(例如,“电锯切西瓜”),请阐述 underlying concept(基础概念),而非字面图像。
- 标签使用文章数据 — 使用文章中的实际数字、术语和引用,而非通用占位符。
- 提示词文件是可复现性记录 — 在生成任何图像之前,必须在
prompts/下保存每个插图的提示词文件。 - 清除机密信息 — 在将任何内容写入磁盘之前,扫描源内容中是否包含 API 密钥、令牌或凭证。
工作流
- [ ] Step 1: Detect reference images (if provided)
- [ ] Step 2: Analyze content
- [ ] Step 3: Confirm settings (clarify tool, one question at a time)
- [ ] Step 4: Generate outline
- [ ] Step 5: Generate prompts
- [ ] Step 6: Generate images (image_generate)
- [ ] Step 7: Finalize
步骤 1:检测参考图像
如果用户提供参考图像(内联粘贴的路径、附件或 URL):
- 对于每个参考,调用
vision_analyze,传入路径/URL 以及询问风格、调色板、构图和主体的问题。通过write_file将返回的描述记录在{output-dir}/references/NN-ref-{slug}.md中。 - 不要 尝试通过
write_file/read_file复制二进制文件 — 这些仅支持文本。如果你想要本地副本以备记录,请使用terminal(cp "$src" "{output-dir}/references/NN-ref-{slug}.{ext}")。技能本身无需读取二进制文件;它基于视觉描述进行操作。 - 由于
image_generate不接受图像输入,视觉描述将在步骤 5 中嵌入到提示词中。
完整流程:references/workflow.md。
步骤 2:分析
| 分析项 | 输出 |
|---|---|
| 内容类型 | Technical(技术)/ Tutorial(教程)/ Methodology(方法论)/ Narrative(叙事) |
| 目的 | information(信息)/ visualization(可视化)/ imagination(想象) |
| 核心论点 | 2-5 个主要观点 |
| 位置 | 插图能增加价值的地方 |
读取源内容(文件路径 → read_file,或粘贴的文本),并使用 write_file 将分析写入 {output-dir}/analysis.md。
完整流程:references/workflow.md。
步骤 3:确认设置
使用 clarify 工具。由于 clarify 一次只处理一个问题,请先询问最重要的问题。跳过用户请求中已包含答案的任何问题。
| 顺序 | 问题 | 选项 |
|---|---|---|
| Q1 | 预设或类型 | [推荐预设]、[备选预设],或手动:信息图 (infographic)、场景 (scene)、流程图 (flowchart)、对比 (comparison)、框架 (framework)、时间线 (timeline)、混合 (mixed) |
| Q2 | 密度 | 极简 (minimal, 1-2)、平衡 (balanced, 3-5)、每节一张 (per-section, 推荐)、丰富 (rich, 6+) |
| Q3 | 风格 (如果在 Q1 中选择了预设则跳过) | [推荐]、极简扁平 (minimal-flat)、科幻 (sci-fi)、手绘 (hand-drawn)、编辑风 (editorial)、场景 (scene)、海报 (poster) |
| Q4 | 调色板 (可选) | 默认 (风格颜色)、马卡龙 (macaron)、暖色 (warm)、霓虹 (neon) |
| Q5 | 语言 (仅在文章语言不明确时) | 文章语言 / 用户语言 |
不要连续提出超过 2-3 个 clarify 问题。如果用户已在请求中指定了这些内容,请完全跳过。
完整流程:references/workflow.md。
步骤 4:生成大纲 → outline.md
使用 write_file 保存 {output-dir}/outline.md,包含 frontmatter(type, density, style, palette, image_count)以及每个插图的一个条目:
## Illustration 1
**Position**: [section/paragraph]
**Purpose**: [why]
**Visual Content**: [what to show]
**Filename**: 01-infographic-concept-name.png
完整模板:references/workflow.md。
步骤 5:生成提示词
阻塞条件:在生成任何图像之前,每个插图必须有一个已保存的提示词文件——提示词文件是可复现性记录。
对于每个插图:
- 根据 references/prompt-construction.md 创建提示词文件。
- 使用
write_file将其保存到{output-dir}/prompts/NN-{type}-{slug}.md,并包含 YAML frontmatter。 - 提示词必须使用特定类型的模板,并包含结构化部分(ZONES / LABELS / COLORS / STYLE / ASPECT)。
- LABELS 必须包含文章特定数据:实际数字、术语、指标、引文。
- 根据提示词 frontmatter 处理参考资料(
direct/style/palette)——对于direct用法,请在提示词中嵌入参考资料的文本描述(因为image_generate不接受参考图像输入)。
步骤 6:生成图像
对于每个提示词文件:
- 调用
image_generate(prompt=..., aspect_ratio=...)。image_generate返回包含图像 URL 的 JSON 结果;它不写入磁盘,也不接受输出路径。 - 将提示词的
ASPECT映射到image_generate的枚举值:16:9→landscape,9:16→portrait,1:1→square。自定义比例 → 最接近的命名比例。 - 通过
terminal将返回的 URL 下载到{output-dir}/NN-{type}-{slug}.png(例如:curl -sSL -o "{output-dir}/NN-{type}-{slug}.png" "{url}")。 - 如果生成失败,自动重试一次。
注意:底层图像生成后端由用户配置(默认:FAL FLUX 2 Klein 9B),且不能通过 image_generate 由代理选择。不要在提示词中写入模型名称以期望它们进行路由。
步骤 7:收尾
在相应段落之后插入 。Alt 文本:使用文章语言的简洁描述。
报告:
Article Illustration Complete!
Article: [path] | Type: [type] | Density: [level] | Style: [style] | Palette: [palette or default]
Images: X/N generated
修改
| 操作 | 步骤 |
|---|---|
| 编辑 | 更新提示词 → 重新生成 → 更新引用 |
| 添加 | 确定位置 → 编写提示词 → 生成 → 更新大纲 → 插入 |
| 删除 | 删除文件 → 移除引用 → 更新大纲 |
参考资料
| 文件 | 内容 |
|---|---|
| references/workflow.md | 详细流程 |
| references/usage.md | 调用示例 |
| references/styles.md | 风格画廊 + 调色板画廊 |
| references/style-presets.md | 预设快捷方式(类型 + 风格 + 调色板) |
| references/prompt-construction.md | 提示词模板 |
常见陷阱
- 数据完整性至关重要 — 切勿总结、转述或更改源统计数据。“73% increase” 保持为 “73% increase”。
- 清除机密信息 — 在将任何内容包含到输出文件之前,扫描源内容中是否含有 API 密钥、令牌或凭证。
- 不要字面化地呈现隐喻 — 可视化其底层概念。
- 提示词文件是必需的 — 没有保存的提示词文件,不得生成图像。该文件使您能够在以后重新生成或切换后端。
image_generate纵横比 — 该工具支持landscape(横向)、portrait(纵向)和square(方形)。自定义纵横比会映射到最接近的选项。image_generate返回的是 URL,而非本地文件 — 在将本地图片路径插入文章之前,务必通过terminal(curl)下载。- 代理不选择后端 —
image_generate使用用户配置的任何模型(默认:FAL FLUX 2 Klein 9B)。不要在提示词中写入"use <model> to generate this"以期望其进行路由。