| name | max-xhs-design-skill |
| description | 中文社交图文排版 skill(小红书/ins)。做「八卦图文/AI 快讯」时用内置 Zine 小报生成器出整期图组;其他长图文走固定框架 + 排版品味规则手排;给参考图或要现成版式时用模板库 + 量化复刻;也可用于审查现有图文版式。用户要做图文、长图、轮播、封面、照参考图做同款,或让你点评版式时使用。 |
| compatibility | macOS(依赖 /Applications 下的 Google Chrome 做无头渲染与 sips 读图),Python 3(量化闭环需 Pillow);字体已随仓库自带则无需联网,若 fonts/ 下没有字体文件先运行 bash fonts/download.sh 联网补齐 |
| metadata | {"author":"Maximax","version":"1.1.0"} |
max-xhs-design-skill:中文社交图文排版
一个 skill,四条车道。先路由,再动手;任何一条车道交付前都必须跑 references/taste.md 第 7 节的出厂检查表,逐项打钩,不许凭记忆默认自己合规。
首次使用:若 fonts/ 下没有 ttf/otf 字体文件(SkillHub 等平台不允许上传二进制字体),先运行 bash fonts/download.sh 从 GitHub 补齐全部开源字体。完整仓库:https://github.com/MaxGzLi/max-xhs-design-skill
路由表
| 用户需求长这样 | 车道 |
|---|
| 「八卦图文」「做一期」/ 推文截图 + 本人观点 / 按期发行的快讯吃瓜体 | A:Zine 生成器 |
| 其他长图文:干货清单、金句卡、教程轮播、盘点、生活记录…… | B:通用框架 |
| 「看看这张图哪里不对」「帮我审下版式」 | C:审查模式 |
| 「照这张参考图做一张」/「要 XX 风格的版式」/ 想直接套一套成熟版式 | D:模板库 + 量化复刻 |
拿不准就问用户一句,只问一个问题。路由优先级:专用生成器 > 模板 > 手排——有生成器不用、手排模仿它,是毁品牌一致性的头号错误;有闭环过的模板不用、白手重排,是第二号。
车道 A:八卦图文(Zine 小报生成器)
用户只提供两样东西:截图 + 观点,其余全部由流程和生成器决定。版式是定稿的品牌资产(黄油体/得意黑/文楷、纸色油墨、四种页型),不改字体、不改配色、不加装饰;觉得版式有问题直接告诉用户,不擅自改样式。
快速流程(完整字段文档与所有实测规则见 references/zine.md,动手前先读它):
- 收素材:每条新闻的截图(一般自带翻译)+ 用户本人的观点。缺观点就问,不代写立场
- 建期目录
issue-NNN/,截图进 assets/;裁切用 PIL 顶部锚定 crop((0, 0, w, h)),不用 sips --cropOffset(会静默居中裁)
- 写 issue.json:四种页型按内容选——对话用
duel、金句用 quote、图强话少用 hero、其余 take;同一期至少 2–3 种页型;评论钩子(hook)与引流条(promo)只出现在尾页
- 生成:
python3 ~/.claude/skills/max-xhs-design-skill/build.py path/to/issue-NNN/issue.json
- 目检:每张 PNG 用 Read 看一遍——无溢出、无单字孤行、反白高亮没有难看的断行、封面页码对得上、英文数字没用中文字体裸奔(易混字形包
<span class="en">)
- 过检查表(taste.md 第 7 节)→ 修到全过 → 交付本地 PNG 路径,不发 Artifact
车道 B:通用框架(没有专用生成器的长图文)
第 0 步:读 references/taste.md,之后每一步照它的规则做。
- 版式判读:输出 taste 0.B 那一行(内容类型 / 素材 / 平台画幅 / 版式家族 / 字体组合 / 三旋钮),歧义只问一个问题
- 定结构:文字列出分页骨架(几页、每页放什么、视觉主角、收藏点和评论钩在哪页),给用户确认后再动手
- 手排 HTML:一页一个文件;字体只从 taste 3.A 可商用池选,字体文件在本 skill
fonts/ 下(@font-face + file:// 绝对路径);画幅默认 1080×1440(3:4)或 1080×1800
- 渲染:
python3 ~/.claude/skills/max-xhs-design-skill/render.py page.html 1080 1440 page.png
- 目检 + 检查表:每张 PNG 用 Read 看;跑 taste 第 7 节检查表,逐项打钩贴给用户
- 交付:本地 PNG 路径 + 每页一句说明,不发 Artifact
排完若用户会复用这个版式,主动提议固化成新的生成器(issue.json 式输入 + build.py 式确定性渲染),并在路由表登记。
车道 C:审查模式
读 references/taste.md,把用户给的图逐条对照第 3–6 节规则和第 7 节检查表,按「问题 → 违反哪条 → 怎么改」输出。无渲染依赖,任何平台可用。
车道 D:模板库 + 量化复刻
第 0 步:读 references/replicate.md(判命路由 + 六步 SOP + 教训清单);templates/README.md 是 7 套模板的规格摘要与预览。
D1 套模板(用户要现成版式,或参考图与某套模板同命):
- 按
templates/README.md 选声部,复制模板 HTML 到工作目录,把 @font-face 的 ../fonts/ 改成本 skill fonts/ 的绝对 file:// 路径
- 换内容不换关系:只改文字节点;文字长度变了调字号/字距,不挪块;换字体等于换内容
- 渲染(一次一张,timeout 给足)→ 目检 →
python3 measure.py 成图.png 对照该模板规格(覆盖率/边距 ±5%)→ taste 第 7 节检查表
D2 全量复刻(用户给了新参考图):
- 先判命:命在几何+字体 → 走六步 SOP;命在手工笔墨/插画/摄影/实物材质 → 明确说做不到八成以上,给转译方案(从模板库挑可达声部),不硬做七成品
- 按 replicate.md 六步:全尺寸精读 → 量化(有变形/投影文字必须量笔画轴向)→ 写规格(命 + 数字 + 负清单)→ 照建 → 闭环 diff ±5% → 换内容不换关系
- 收敛且可复用的新版式写进
templates/ 并在其 README 登记规格
边界
不做网页 / 落地页 / PPT / 视频封面。观点类内容缺用户立场时必须问,不代写。池外字体一律先查商用授权。真实素材不足不准造假截图。复刻判命够不到的参考(书法/插画/摄影/材质命)直接说明天花板,不交七成品。