lov-document-illustrator

Featured

为文档原地插入 AI 配图。读取文档后全局规划插入点,并行生成所有图片, 异步插回原文。支持封面图、自定义比例和三种风格。 Use when: 用户要求为文档/文章/笔记生成配图、插图。 Also trigger when user mentions: 配图、插图、illustration、 generate images、document images、为文章加图。

Data & Documents 64 stars 16 forks Updated today MIT

Install

View on GitHub

Quality Score: 89/100

Stars 20%
60
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Document Illustrator Skill 基于 AI 智能分析的文档配图生成工具。全局规划、并行生成、异步插入,高效为文档添加配图。 ## 核心流程(5 步) ``` 备份 → 全局规划插入点 → 并行生成图片 → 异步插入原文 → 清理备份 ``` ### Step 0: 备份原文件 在修改前先创建备份,确保安全回滚: ```python import shutil backup_path = f"{doc_path}.illustrator-backup" shutil.copy2(doc_path, backup_path) ``` 所有后续操作直接在原文件上进行。 ### Step 1: 全局确定所有插入位置 读取完整文档,一次性规划所有图片的插入位置: 1. 使用 Read 工具读取完整文档 2. AI 分析内容结构,识别核心主题 3. 为每个主题确定**精确的插入锚点**(行号 + 上下文文本) 4. 输出一份插入计划表: ``` 插入计划: [1] 行 15 后 | 锚点: "## Rules 的诞生" | 主题: Rules 演化历程 [2] 行 42 后 | 锚点: "## Commands 打包" | 主题: 工作流打包 [3] 行 78 后 | 锚点: "## MCP 动态能力" | 主题: 第三方集成 ... [cover] 行 1 前 | 封面图 | 主题: 全文概要 ``` **关键**:插入锚点使用上下文文本(而非纯行号),这样即使前面的插入导致行号偏移,后续插入仍可通过锚点定位。 ### Step 2: 并行生成所有图片 用 Agent 工具并行启动所有图片生成子任务: ``` 对每个插入计划项,同时启动一个 Agent: Agent 1: generate_single_image.py --title "..." --content "..." --output images/illustration-01.png Agent 2: generate_single_image.py --title "..." --content "..." --output images/illustration-02.png Agent 3: generate_single_image.py --title "..." --content "..." --output images/illustration-03.png ... ``` - 所有 Agent 并发执行,不互相等待 - 每个 Agent 完成后返回图片路径或错误信息 - 预期总耗时 = 单张耗时(10-20s),而非 N * 单张耗时 ### Step 3: 异步插入原文 每个 Agent 完成后立即插入,不等待其他 Agent: 1. Agent 完成 → 获得图片路径 2. 在原文档中**通过锚点文本**定位插入位置(不依赖行号) 3. 使用 Edit 工具在锚点后插入 Markdown 图片引用: ```markdown ![主题描述](images/illustration-01.png) ``` 4. 插入使用锚点文本匹配,所以前面的插入不影响后面的定位 **位置偏移处理**: - 每次插入会增加文档行数 - 使用锚点文本(如 `## Rules 的诞生`)而非行号来定位 - 从文档末尾向开头方向插入也可避免偏移问题 ### Step 4:...

Details

Author
lovstudio
Repository
lovstudio/skills
Created
4 months ago
Last Updated
today
Language
Python
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category