我写了个 Skill,让 Agent 自动给文章配图
TL;DR
本文介绍了一个Agent Skill,用于自动为文章配图,通过分析文章结构、选择风格、生成图片并插入,简化了配图流程。Skill采用渐进式加载机制,避免上下文窗口过载,并详细说明了SKILL.md文件的设计和工作流程。
Key Takeaways
- •Agent Skill通过渐进式加载机制,在需要时读取详细内容,避免上下文窗口过载,提高效率。
- •配图Skill设计包括分析文章结构、自动匹配风格、生成提示词、调用图像生成工具和插入图片等步骤。
- •SKILL.md文件分为头部元信息和正文指令,用于定义Skill的触发条件和具体操作流程。
- •预设风格库确保配图风格一致性,同时提供用户选择权,提升阅读体验。
- •Agent Skills可将重复性工作流程抽象化,使AI助手更懂业务,适用于多种场景如周报生成或代码审查。

写完一篇长文,配图是一件让人头疼的事。
你得一张张想画面、写提示词、生成、挑选、插入……一篇三千字的文章配五六张图,光这个环节就能耗掉半小时。
我最近折腾了一个 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),生成失败会自动重试一次。
- 把生成的图片插入文章对应位置,格式是
!\[描述](imgs/xxx.png)。 - 输出总结:用了什么风格、生成了几张图、哪张插在哪里。
整个过程 Agent 自己判断、自己执行,我只需要最后看一眼结果。如果我不满意,要么重新抽卡,要么可以根据生成的结果让 Agent 自己调整,比如说:
- “配图太少,加几张配图”
- “把第二张配图添加一点文字说明”
- “在第二章加一张流程图”
一些设计选择
写这个 Skill 的过程中,有几个决策值得说说。
为什么预设九种风格而不是让 Agent 自由发挥? 因为风格一致性很重要。一篇文章配五张图,如果每张都是随机风格,看起来会很乱。预设风格库,既保证一致性,也给用户选择权。
为什么“宁多勿少”?
一方面多一点我挑选的空间大,另外删除操作也比新生成操作简单。
当然图解的价值在于降低认知负担,并非越多越好,重点还是能辅助理解信息,所以我在 Skill 里明确写了类似的话:
“配图服务于内容:补充信息、具象概念、引导想象,避免重复文章中已经很直观的信息”
怎么用起来?
如果你已经有了 Claude Code 这样的 Agent,直接告诉 Agent:
请帮我安装 github.com/JimLiu/baoyu-skills 中的 Skills
如果你只需要配图技能,就告诉它:
请帮我安装宝玉的这个文章配图技能:github.com/JimLiu/baoyu-skills/blob/main/skills/article-illustrator/SKILL.md
当然,这个配图 Skill 依赖“图像生成 Skill”。如果你的环境没有接入 Gemini 或其他图像生成工具,或者其他图像生成技能,需要先搞定这一块。否则就只能让它生成提示词手动去生成配图了。
后续我也会更新其他平台的使用说明。
写在最后
Agent Skills 是个被低估的功能。很多人还停留在“和 AI 聊天”的阶段,没意识到可以把自己的工作流程、领域知识“教”给它,让它变成真正懂你业务的助手。
配图只是一个例子。你完全可以用同样的思路,写一个自动生成周报的 Skill、一个代码审查 Skill、一个调研报告 Skill……核心就是把你脑子里那些“做这件事的正确方法”写下来,交给 Agent 执行。
如果你有什么重复性的工作,试着问自己:这个流程能不能抽象成一个 Skill?
大概率是可以的。