用途
该技能面向 Markdown 文章批量配图场景。它会分析文章结构,为每个段落或小节生成配图提示词,调用图像生成 API 批量生成图片,并自动插入文档。当用户说“批量配图”“给文章配图”“生成文章插图”“为这篇文章配图”时触发。
主要能力
- 分析文章结构:按 H2/H3 标题拆分段落,忽略 frontmatter、纯引用、脚注等辅助内容,提取每个段落的标题、核心观点(1 句话)和关键概念(3-5 个词)。
- 生成全局风格指令:在所有提示词之前生成 STYLE INSTRUCTIONS 块,读取 references/style-guide.md 获取风格模板。
- 生成逐段提示词:为每个段落创建图片提示词大纲,包含风格前缀、图表类型(概念图/流程图/对比图/层次图/关系图)、内容描述、中文标签、中文为主指令和排除项。
- 批量生成图片:调用 scripts/generate_image.py 逐个生成图片。
- 保存与插入:图片存入 obsidian/09image/MMDD-主题名称/ 目录,并在每个段落标题后插入 ![[图片路径]] 引用。
使用方式
工作流程分为两个阶段。
Phase 1:分析文章 → 生成提示词
- 读取文章:获取用户提供的文章内容(当前打开文件或指定路径)。
- 结构分析:按 H2/H3 标题拆分段落,提取核心思想。
- 生成风格指令:根据文章主题生成全局 STYLE INSTRUCTIONS 代码块。
- 生成提示词:为每个段落创建图片提示词大纲。
- 展示并确认:以列表形式展示所有提示词,等待用户确认或修改。
Phase 2:生成图片 → 插入文档
- 批量生成:调用 scripts/generate_image.py 逐个生成图片。
- 保存图片:存入 obsidian/09image/MMDD-主题名称/ 目录。
- 插入文档:在每个段落标题后插入 ![[图片路径]] 引用。
调用示例:
python3 scripts/generate_image.py
--prompt "提示词内容"
--output "/Users/ugreen/Documents/obsidian/09image/MMDD-主题名/01-段落名.png"
--provider labnana
--aspect-ratio "16:9"
--resolution "2K"
Gemini API 备用调用示例:
python3 scripts/generate_image.py
--prompt "提示词内容"
--output "/path/to/output.png"
--provider gemini
--api-key "GEMINI_API_KEY"
--aspect-ratio "16:9"
--resolution "2K"
风格选择
- 风格 1(默认):简约手绘,黑色线条,白底。适用通用、概念解释、流程说明。
- 风格 2:建筑蓝图/技术期刊,精致极简。适用系统架构、技术分析、专业内容。
用户可在确认阶段选择全局风格,也可为单个图指定不同风格。
API 配置
LabNana API(默认 - gpt-image-2):
- API URL:https://api.labnana.com
- API Key:存储在 .labnana.env 文件
- Model:gpt-image-2
- Provider:openai
- 默认比例:16:9
- 默认分辨率:2K
Gemini API(备用):
- API URL:https://generativelanguage.googleapis.com
- API Key:REMOVED_GEMINI_KEY
- Model:gemini-3-pro-image-preview
- 默认比例:16:9
- 默认分辨率:2K
适用场景
- 为 Markdown 文章批量生成逻辑图、流程图、概念图等配图。
- 在 Obsidian 中管理文章配图并自动插入文档。
- 需要统一视觉风格(简约手绘或建筑蓝图)的文章配图任务。
限制
- 提示词主体用英文编写,图片中文字以简体中文为主,专业术语/缩写可保留英文。
- 图片间需间隔 2-3 秒,避免 API 限流。
- 若某张图失败,记录并继续下一张,最后汇报失败项。
- 保存路径规范为 /Users/ugreen/Documents/obsidian/09image/MMDD-主题简称/,图片编号两位数字(01, 02, 03...)。
- 其他未在资料中说明的限制暂未提供。