| name | article-illustrator |
| description | 为文章生成配图。分析文章结构,判断哪些位置需要什么类型的插图(infographic/flowchart/comparison/framework/timeline/scene),生成 prompt 并调用 image-gen 生成图片,最后插入文章。当用户说"配图"、"给文章加插图"、"生成文章插图"、"illustrate this article"时触发。即使用户只说"帮这篇文章配个图"也应该触发。 |
Article Illustrator
分析文章内容,智能匹配插图类型和位置,生成配图并插入文章。
视觉风格
风格不预设,由你(调用 skill 的 AI)根据文章内容自主选择最匹配的视觉风格,然后在 prompt 中具体、明确地描述给图片生成模型。图片生成模型只负责执行你的 prompt,不做风格判断。
你的职责:读完文章后,判断这篇文章适合什么视觉风格(配色、渲染方式、氛围),在 prompt 里写清楚。不同文章可以用完全不同的风格。
底线要求(用户偏好,从参考图中提取):
| 维度 | 底线 |
|---|
| 背景 | 干净,白色或浅色为主,不要花哨纹理 |
| 布局 | 卡片/面板式容器组织信息,区域划分清晰 |
| 图形 | 扁平矢量或简化图标,不要写实照片风格 |
| 连接 | 箭头连接模块,流向一目了然 |
| 文字 | 大粗标题醒目,数据指标突出,标签简短 |
| 色彩 | 主色不超过 2-3 个,和谐不杂乱 |
| 整体 | 信息优先,专业但亲切 |
在这些底线之上,你自由选择具体风格。比如:
- AI/技术文章 → 蓝紫科技感、深色面板+亮色数据
- 对比类内容 → 左右分色对比(如蓝vs橙)
- 教程/流程 → 卡片步骤+编号圆圈+弧形箭头
- 叙事/个人向 → 暖色调、插画感更强
选好后在 prompt 里写明配色方案、渲染风格、氛围,让图片生成模型精准执行。
用法
/article-illustrator path/to/article.md
/article-illustrator path/to/article.md --type infographic
/article-illustrator path/to/article.md --density rich
| 选项 | 说明 |
|---|
--type <name> | 指定类型:infographic / flowchart / comparison / framework / timeline / scene / mixed |
--density <level> | 密度:minimal(1-2) / balanced(3-5) / per-section / rich(6+) |
工作流程
1. 分析文章 → 2. 确认设置 → 3. 生成大纲 → 4. 写 prompt → 5. 生成图片 → 6. 插入文章
Step 1:分析文章
读完文章后做四项分析:
| 分析项 | 说明 |
|---|
| 内容类型 | Technical / Tutorial / Methodology / Narrative |
| 配图目的 | 信息传达 / 概念可视化 / 氛围想象 |
| 核心论点 | 提取 2-5 个需要可视化的要点 |
| 配图位置 | 哪些段落加图能帮助理解 |
提取核心论点时关注:主论点、关键概念、对比/对照、框架/模型。
关键:比喻要可视化底层概念,不要画字面意思。比如文章说"书桌满了纸掉下去",配图应该画"上下文窗口"的概念,不是画一张真的书桌。
Step 2:确认设置
用 AskUserQuestion 确认,最多 3 个问题:
Q1:插图类型(必问)
根据分析推荐,选项包含推荐项 + 其他可选类型。
Q2:配图密度(必问)
| 密度 | 数量 | 场景 |
|---|
| minimal | 1-2 张 | 短文,核心概念 |
| balanced | 3-5 张 | 中等长度 |
| per-section | 每章节 1 张 | 长文(推荐) |
| rich | 6+ 张 | 全面覆盖 |
Q3:输出目录(如果从参数或上下文无法推断)
常见选项:{article-dir}/imgs/{slug}/、{article-dir}/、独立 illustrations/ 目录。
Step 3:生成大纲
为每张图写一个条目,保存为 outline.md:
---
type: mixed
density: per-section
image_count: 5
---
**Position**: [章节/段落]
**Purpose**: [为什么需要这张图]
**Type**: [infographic/flowchart/comparison/framework/timeline/scene]
**Visual Content**: [画什么]
**Filename**: 01-{type}-{slug}.png
Step 4:写 Prompt
为每张图创建 prompt 文件 prompts/NN-{type}-{slug}.md,使用对应类型的结构模板。
6 种类型模板
Infographic(数据、指标、概念解释):
[标题]
Layout: [grid/radial/hierarchical]
ZONES:
- Zone 1: [具体数据点和数值]
- Zone 2: [对比和指标]
LABELS: [文章中的实际数字、术语]
ASPECT: 16:9
Flowchart(步骤、流程、操作):
[标题]
Layout: [left-right/top-down/circular]
STEPS:
1. [步骤名] - [简述]
2. [步骤名] - [简述]
CONNECTIONS: [箭头、决策节点]
ASPECT: 16:9
Comparison(vs、优劣、方案对比):
[标题]
LEFT SIDE - [选项A]:
- [要点]
RIGHT SIDE - [选项B]:
- [要点]
DIVIDER: [视觉分隔]
ASPECT: 16:9
Framework(架构、模型、原理):
[标题]
STRUCTURE: [hierarchical/network/matrix]
NODES:
- [概念1] - [角色]
- [概念2] - [角色]
RELATIONSHIPS: [连接关系]
ASPECT: 16:9
Timeline(历史、演变、进展):
[标题]
DIRECTION: [horizontal/vertical]
EVENTS:
- [时间点1]: [里程碑]
- [时间点2]: [里程碑]
MARKERS: [视觉标记]
ASPECT: 16:9
Scene(故事、情感、氛围):
[标题]
FOCAL POINT: [主体]
ATMOSPHERE: [光线、氛围]
MOOD: [情绪]
ASPECT: 16:9
Prompt 质量要求
每个 prompt 必须做到:
- 先写布局:构图、区域划分、方向
- 用文章原文数据:实际数字、术语、指标,不用占位符
- 描述元素关系:怎么连接、怎么对比
- 语义化颜色:颜色有含义(红=问题、绿=好的),但不锁定具体色号
- 注明宽高比
不要:模糊描述、画比喻字面意思、缺少标注、泛泛的装饰。
图中文字要大且醒目,只放关键词。默认使用中文标注,包括标题、标签、说明文字全部用中文。只有专有名词(品牌名、产品名如 Claude Code)可保留英文。
如果图中有人物,用简化的风格化剪影或卡通图标,不要写实人像。
每个 prompt 必须包含明确的风格描述:在 Step 1 分析完文章后,你应该已经决定了这组配图的视觉风格。在每个 prompt 中写清楚具体的配色方案(如 "deep indigo #3F3D9E as primary, soft lavender #B8B5E8 as secondary")、渲染方式(如 "clean flat vector with card-based panels")和氛围(如 "professional tech dashboard feel")。图片生成模型不会自己选风格,你的 prompt 写什么它就画什么。
Step 5:生成图片
用 image-gen skill 逐张生成:
npx -y bun <image-gen-skill-path>/scripts/main.ts \
--prompt "<prompt内容>" \
--image "<输出路径>/NN-{type}-{slug}.png" \
--ar 16:9
image-gen skill 路径:先检查项目级 .claude/skills/image-gen/,再检查全局 ~/.claude/skills/baoyu-image-gen/。
封面图:除了文章内插图外,默认额外生成一张封面图(cover.png),使用 --ar 2.35:1 比例(公众号封面尺寸)。封面图插入文章 frontmatter 之后、正文之前。
每张生成后报告进度:"Generated X/N"。失败则重试一次,仍失败则跳过并记录。
Step 6:插入文章
在对应段落后插入:

alt text 用简洁的中文描述,与文章语言一致。
完成后输出摘要:
配图完成!