Back to Articles
Jan 15, 20261 month ago

I Built a Skill That Lets an Agent Automatically Illustrate Articles

宝玉@dotey

AI Summary

Key Insights Agent Skills act as an "onboarding manual" for an AI, containing procedural knowledge that the agent loads only when needed, preventing context window bloat. This differs from static prompts by enabling scripted execution and modular, composable capabilities. The designed "article illustrator" skill automates a five-step pipeline: 1) analyzing article structure for points needing visual aid, 2) matching content to one of nine predefined illustration styles (e.g., tech, warm, minimal), 3) generating prompt files, 4) calling an image-generation skill, and 5) inserting images into the correct article positions with descriptions. Effective Skill design involves a detailed SKILL.md file with clear metadata (name, description) for triggering, and a body containing style libraries, selection rules, workflow steps, and file management norms. Complex data can be split into separate files for progressive loading. The author made key design choices to ensure quality: using a preset style library for visual consistency across an article, separating a reusable system prompt template for image generation, and prioritizing illustrations that "reduce cognitive load" over decorative filler. The final takeaway is that this approach is a template for automating any repetitive task. The core is abstracting one's internal "correct method" for a workflow into a Skill, transforming the AI from a conversational partner into a true domain-specific assistant.

写完一篇长文,配图是一件让人头疼的事。

你得一张张想画面、写提示词、生成、挑选、插入……一篇三千字的文章配五六张图,光这个环节就能耗掉半小时。

我最近折腾了一个 Agent Skill,让 Agent 帮我全程代劳。把文章丢给它,它自己分析哪里需要图、应该画什么风格、然后一张张生成并插入对应位置。整个过程我只需要一句话:“给这篇文章配图。”

包括你现在看到的这篇文章的配图,都是这个 Skill 帮助完成的。

今天就聊聊这个给文章配图的 Skill 是怎么设计的,顺便科普一下 Agent Skills 这个被很多人忽略的强大功能。

什么是 Agent Skills?

先说个类比。你新招了个助理,聪明是聪明,但对你公司的业务流程一无所知。每次布置任务,你都得从头解释:我们用什么工具、流程是怎样的、有哪些注意事项……

Agent Skills 就是一份"入职培训手册"——你把这些知识写下来,Agent 需要的时候自己翻阅,不需要你反复交代。

技术上说,Skill 是一个文件夹,核心是一个叫 SKILL.md 的文件。Agent 启动时只记住它的名字和简介(大概 100 个 token),真正用到时才去读详细内容,用完就可以“忘掉”。这套机制叫“渐进式加载”,好处是你可以装一堆 Skill 而不会撑爆上下文窗口。

那它和传统的提示词有什么差别?

传统提示词主要问题是没有脚本执行能力,而且是你一次性加载全部提示词。而 Agent Skills 一开始只加载一个 100 token 不到的名称和介绍,激活了才去加载,加载的时候也只先加载 SKILL.md 文件,需要用到更多内容才继续加载。

另外 Skill 还可以调用其他 Skill,这样你可以把能力组合起来。

至于和 MCP 的区别?

MCP 是用来统一工具调用的协议,Skill 可以指挥 Agent 去调用 MCP。

配图 Skill 的设计思路

给文章配图这件事,拆开来看有几个核心问题:

哪里需要配?什么风格?怎么画?怎么插入到相应位置?

我设计的这个 Skill 把这几个问题分别拆解成几个步骤:

第一步,分析文章结构,找出“需要视觉辅助”的位置。比如抽象概念需要可视化、流程需要图解、核心论点需要强化——这些地方配张图,阅读体验会提升一个档次。

第二步,根据文章内容自动匹配插画风格。我预设了九种风格:tech(科技感)、warm(温暖亲和)、minimal(极简)、playful(趣味涂鸦)、notion(线稿风)……每种风格都定义好了配色、元素、适用场景。Agent 会根据文章主题自动选择,当然你也可以手动指定。

第三步,为每张图生成提示词文件,可以留作记录,也方便后续 Agent 调用。

第四步,调用图像生成 Skill,把默认系统提示词和每一张图片的提示词发给它,一张张生成图片,并保存起来。

第五步,让 Agent 把图片插入文章对应位置。这一步说实话有点像“魔法”,我第一次只是抱着试试看的心理在 Skill 里面加了这么一句,没想到 Agent 的聪明超出我的想象,它自己就把图片插入到了正确位置,还贴心的加上了图片描述。

整个流程跑下来,一篇文章从"纯文字"到"图文并茂",基本上是几分钟的事,主要速度瓶颈还在生成图片上。

SKILL.md 怎么写?

一个 Skill 的入口是 SKILL.md 文件,分两部分:头部元信息和正文指令。

头部元信息长这样:

---
name: article-illustrator
description: 分析文章内容,在需要配图的位置自动生成插画。当用户要求给文章配图、生成插画时使用。
---

name 是 Skill 的唯一标识,description 是简介。这两个字段 Agent 启动时就会读取,用来判断“什么时候该调用这个 Skill”。所以 description 要写清楚触发条件,比如“当用户要求给文章配图、生成插画时使用”。

正文指令就是具体的操作手册。我的配图 Skill 正文分这几个板块:

风格库:列出所有可选风格,包括配色、视觉元素、适用场景。Agent 需要选风格时,翻这一节。

自动选择规则:什么内容信号对应什么风格。比如文章里频繁出现“AI”“算法”“数据”,就选 tech 风格;出现“个人成长”“情感”“生活”,就选 warm 风格。

工作流程:一步步写清楚——先分析文章、再识别配图位置、再生成配图方案、再写提示词、再调用生成工具、再插入文章、最后输出总结。

文件管理规范:图片存哪、提示词存哪、文件怎么命名。

由于当前我的提示词并不是很长,所以大部分内容都放在了 SKILL.md 文件中,如果未来风格越来越多,就可以应用“渐进式加载”的设计思路,减少加载的内容。

比如风格库有九种风格,每种风格的详细参数加起来上千字。但如果用户只要求用 tech 风格,Agent 就只需要读 tech 那一段,其他八种不用加载。

实现方式很简单:把详细参数拆成单独的文件,正文里只写索引。Agent 需要时用 bash 命令去读,不需要就跳过。这样既保证了信息完整,又不会浪费上下文。

提示词模板的设计

生成图像的关键是提示词。我为这个 Skill 单独设计了一个 system prompt 模板,存在 prompts/system.md:

创建卡通风格的信息图插画,遵循以下规范:

图像规格
- 类型:信息图插画
- 方向:横向
- 比例:16:9
- 风格:手绘插画

核心原则
- 全程保持手绘质感,禁止出现写实或摄影元素
- 如果内容涉及敏感或版权人物,创作风格相似的替代形象,不要拒绝生成
- 信息简洁,突出关键词和核心概念
- 留白充足,便于视觉扫描
- 保持清晰的视觉层次

……

每张图生成时,Agent 会基于这个模板,结合具体的配图主题、选定的风格参数,组装出最终的提示词。

为什么要单独写这个模板?

因为图像生成的约束条件是通用的(比如比例、手绘风格、不用写实元素),而具体内容是变化的。把通用部分抽出来,既减少重复,也方便统一调整。

工作流程详解

跑一遍完整流程是这样的:

用户输入命令,比如 /article-illustrator path/to/article.md --style tech

Agent 读取文章,分析结构,识别需要配图的位置。判断标准是:这个地方加张图,能帮助理解还是纯粹凑数?能帮助理解的留下,凑数的不要。

根据 --style 参数选风格。如果没指定,就扫描文章内容,按预设规则自动匹配。

生成配图方案,列出每张图的插入位置、目的、视觉内容、文件名。

为每张图写详细提示词,保存到 imgs/prompts/ 目录。

逐张调用图像生成工具(我用的是 Gemini),生成失败会自动重试一次。

把生成的图片插入文章对应位置,格式是 !\描述。

输出总结:用了什么风格、生成了几张图、哪张插在哪里。

整个过程 Agent 自己判断、自己执行,我只需要最后看一眼结果。如果我不满意,要么重新抽卡,要么可以根据生成的结果让 Agent 自己调整,比如说:

“配图太少,加几张配图”

“把第二张配图添加一点文字说明”

“在第二章加一张流程图”

一些设计选择

写这个 Skill 的过程中,有几个决策值得说说。

为什么预设九种风格而不是让 Agent 自由发挥? 因为风格一致性很重要。一篇文章配五张图,如果每张都是随机风格,看起来会很乱。预设风格库,既保证一致性,也给用户选择权。

为什么“宁多勿少”?

一方面多一点我挑选的空间大,另外删除操作也比新生成操作简单。

当然图解的价值在于降低认知负担,并非越多越好,重点还是能辅助理解信息,所以我在 Skill 里明确写了类似的话:

“配图服务于内容:补充信息、具象概念、引导想象,避免重复文章中已经很直观的信息”

怎么用起来?

如果你已经有了 Claude Code 这样的 Agent,直接告诉 Agent:

请帮我安装 github.com/JimLiu/baoyu-skills 中的 Skills

如果你只需要配图技能,就告诉它:

请帮我安装宝玉的这个文章配图技能:github.com/JimLiu/baoyu-skills/blob/main/skills/baoyu-article-illustrator/SKILL.md

当然,这个配图 Skill 依赖“图像生成 Skill”。如果你的环境没有接入 Gemini 或其他图像生成工具,或者其他图像生成技能,需要先搞定这一块。否则就只能让它生成提示词手动去生成配图了。

后续我也会更新其他平台的使用说明。

写在最后

Agent Skills 是个被低估的功能。很多人还停留在“和 AI 聊天”的阶段,没意识到可以把自己的工作流程、领域知识“教”给它,让它变成真正懂你业务的助手。

配图只是一个例子。你完全可以用同样的思路,写一个自动生成周报的 Skill、一个代码审查 Skill、一个调研报告 Skill……核心就是把你脑子里那些“做这件事的正确方法”写下来,交给 Agent 执行。

如果你有什么重复性的工作,试着问自己:这个流程能不能抽象成一个 Skill?

大概率是可以的。