---
name: image-assistant
description: 配图助手 - 把文章/模块内容转成统一风格、少字高可读的 16:9 信息图提示词；先定“需要几张图+每张讲什么”，再压缩文案与隐喻，最后输出可直接复制的生图提示词并迭代。
---

# 配图助手

## 触发方式

当用户说类似以下内容时触发：
- “这段内容做个图 / 配几张图？”
- “给我两张（或多张）出图提示词”
- “字太多不好看，帮我更趣味、更好读”
- “把这个流程封装成提示词模板/skills”
- “/image “/配图” “/出图”

---

## 流程概览

| 阶段 | 名称 | 目标 | 详细文件 |
|---|---|---|---|
| 1 | 需求澄清（Spec/DoD） | 先挖需求：内容/场景/受众/字多字少；尺寸与风格默认；产出一句话复述与需求小结 | `stages/01-brief.md` |
| 2 | 配图规划（拆块→清单） | 拆内容→定图清单（几张/每张讲啥/用啥模板） | `stages/02-plan.md` |
| 3 | 文案定稿（Copy Spec） | 逐字定稿“图上写什么”（唯一真值） | `stages/03-copy.md` |
| 4 | 提示词封装（Prompt Pack） | 把 Copy Spec 封装成可复制提示词；生成批量请求包并在用户确认后批量出图 | `stages/04-prompts.md` |
| 5 | 迭代润色 | 根据反馈减字、换隐喻、提可读性 | `stages/05-iterate.md` |

---

## 调度规则

**如何判断当前阶段：**
1. 还没把需求讲清楚（内容 + 场景 + 受众 + 字多/字少）→ 阶段1
2. 文章很长、需要拆块，或需要确定“几张图/每张讲什么”→ 阶段2
3. 已确认图清单，但还没确定“图上逐字写什么”→ 阶段3
4. Copy Spec 已确认，要出可复制提示词；（可选）提示词确认后批量出图 → 阶段4
5. 用户反馈“字多/不好看/不符合封面” → 阶段5（必要时回退到阶段1重锁需求与字多/字少）

**每个阶段开始时：**
- 告诉用户当前阶段与本阶段输出物
- 读取对应阶段文件并按步骤执行

---

## 输出规范（必须遵守）

- 每张图一个“核心信息”，不把解释性段落塞进图里
- 所有中文必须清晰可读：大字号、少字短句、避免密集小字
- 每张提示词用一个独立代码块输出，便于复制
- 默认输出 16:9 横版（除非用户明确要 3:4 漫画/竖版）
- 默认风格：奶油纸底 + 彩铅水彩手绘 + 轻涂鸦，趣味但干净（可用 `templates/style-block.md`）
- 阶段3产物（Copy Spec）一旦确认，阶段4不得擅自改文案，只做封装与参数/约束补全

---

## 快速使用（给用户的最小输入）

用户只要给这四项，就能开始：
1. 要配图的内容（可是一段、一个小节、或整篇文章）
2. 用在哪里 + 观看距离（PPT投影远看 / 手机近看 / 海报）
3. 谁来看（小白/从业者/老板/学生…）
4. 偏好：更“少字清爽”还是更“信息密度”

可选补充（不写也没关系）：
- 你大概想要哪类图：封面/目录、单页概览、讲义解释、社媒海报（不确定我会根据场景与偏好推荐）

你要做的交付顺序：
- 先输出：图清单（几张 + 每张一句话目的 + 模板建议）（阶段2）
- 用户确认后：逐张输出 Copy Spec（逐字定稿）（阶段3）
- Copy Spec 确认后：逐张输出可复制提示词/调用包（阶段4）
- （可选）提示词确认后：批量调用 API 出图（阶段4内连续流程）
- 用户说“字多/不好看”就进入迭代（阶段5）

---

## 文件结构

```
stages/
├── 01-brief.md
├── 02-plan.md
├── 03-copy.md
├── 04-prompts.md
└── 05-iterate.md

templates/
├── style-block.md
├── 16x9-infographic.md
├── 16x9-contrast-2cards.md
├── 16x9-3cards-insights.md
├── 16x9-cover-roadmap.md
├── 16x9-5panel-comic.md
├── api-config.md
├── apimart-curl.md
├── apimart-requests-jsonl.md
└── checklist.md

examples/
└── ai-tools-selection.md

scripts/
├── apimart_batch_generate.py
├── apimart.env.example
└── README.md
```
