最近在折腾一件事:怎么让写出来的长文不只是发布后就结束。公众号内容推送后,除了进入推荐池,基本只有已有读者在看,很难实现跨平台破圈。不少人会考虑把内容同步到小红书,但直接发纯文字没人看,必须做成知识卡片。为了制作卡片,刷了一圈参考模板,结果发现一个尴尬的问题:小红书上十张知识卡片里,有八张长得几乎一样——模板同质化严重。
问题的根源其实不难理解:卡片同质化的根本原因是大家都在使用同一套通用模板,缺乏自己的特色元素。所以我后来干脆做了一个 Skill,把 IP 形象封进卡片里,每次生成的卡片都带有专属角色,发多了自然就有了品牌记忆点。
这个 Skill 还顺手解决了另一个痛点:同一篇长文,生成的卡片可以直接发小红书,公众号那边也能用这套卡片做贴图——也就是大家常说的“小绿书”。一套内容覆盖两个平台,无需重复排版。
1. 前言
做这个 Skill,核心想解决的不只是“生成卡片”这件事。现在市面上能生成知识卡片的工具不少,但大多数都只提供固定模板,所有人用出来的效果千篇一律。理想的状态是:卡片里融入自己的元素,有一个固定的 IP 角色,让看过内容的人,刷到卡片就能认出是谁发的。
2. 为什么要做 IP 卡片,而不是普通模板
测试过普通模板卡片,效果确实好看,但问题在于和别人的太像了。如今自媒体创作者那么多,如果你的卡片和别人的雷同,用户刷到根本不会停留,更不会记住出处。但如果每张卡片都有一个固定的 IP 角色,时间长了用户就会形成认知:这个风格是某某某的专属。
这就是为什么要把 IP 形象封进 Skill 的原因。IP 设定来源于头像,头像是我找插画师按照形象绘制的:
- 浅灰偏金发色,发尾带薄荷绿渐变,配有发夹
- 穿亮橙色卫衣
- 身边有一只白色猫咪陪伴
配色以浅蓝、橙色、白色为主,整体偏暖,很符合小红书的调性。每次生成的卡片都会带着这个角色,发多就是在给自己的 IP 做持续曝光。
3. skill 设计与实现
3.1. xfc-knowledge-card 结构设计
话不多说,先看一下这个 Skill 现在的目录结构:
xfc-knowledge-card/
├── SKILL.md
├── config.json
├── scripts/
│ └── generate.py
└── output/
整个 Skill 的逻辑全部收敛在一个核心脚本 generate.py 里,没有多余文件。SKILL.md 是调用入口,config.json 管理密钥,output 目录存放每次生成的结果。
SKILL.md 的设计思路很清晰:定义好输入协议(支持直接传文章文本或文件路径)、执行步骤(拆卡→生成 Prompt→出图→归档)、以及输出格式。OpenClaw 读到这份说明书,就知道该如何调用这个 Skill。
3.2 generate.py 编写实现
generate.py 的整体思路分为四步:读文章、拆卡、生成 Prompt、出图归档。读进来的文章先做清洗,再按字数切分成若干卡片块;每块调用大模型生成贴合语义的图片 Prompt,最后批量出图、按时间戳归档到独立目录,避免互相覆盖。
Prompt 生成完之后,调用 request_image() 发送给生图接口。主接口用的是香蕉模型,如果主接口挂掉,会自动切换到豆包备选接口,不会直接报错中断。
图片下载到本地后,每次运行都会在 output/run_时间戳/ 下建一个独立目录,里面存放:
card_01_prompt.txt、card_02_prompt.txt…… 每张卡片的 Prompt 文件card_01.png、card_02.png…… 对应的图片manifest.json:记录本次运行的卡片数量、标题、比例、文件路径等元信息
这样每次生成的结果都有独立存档,不会互相覆盖。
3.3. skill 集成至 Hermes 或 openclaw
Skill 编写完成后即可集成使用。这两个工具我都在用,Skill 可以集成到 OpenClaw 的多 Agent 中,也可以集成到 Hermes 里,下面将依次演示。
3.3.1. skill 集成至 Openclaw 多 agent
将编写完成的 xfc-knowledge-card 使用 FTP 工具上传至 OpenClaw 所在服务器的 /root/.openclaw/workspace/skills/ 目录。
接下来开始集成到多 Agent 中的生图 Agent 中。进入 /root/.openclaw/workspace/agents/imager/ 目录,修改 soul.md,将 IP 卡片生成逻辑添加进去。
回到飞书会话页面,基于会话直接触发,输入的是基于文章链接生成 IP 卡片。
3.3.2 skill 集成至 Hermes
Hermes 的安装请参考 Hermes Agent 喂饭级教程。依然使用 FTP 工具将 Skill 文件上传至 Hermes 所在服务器的 /root/.hermes/skills/media/ 目录下。
在飞书会话中二次确认 Skill 存在。发布同样的命令后,生成了三张卡片,下图展示了其中两张。
