baoyu-xhs-images by jimliu/baoyu-skills
npx skills add https://github.com/jimliu/baoyu-skills --skill baoyu-xhs-images将复杂内容分解为吸引眼球的小红书信息图系列,提供多种风格选项。
# 根据内容自动选择风格和布局
/baoyu-xhs-images posts/ai-future/article.md
# 指定风格
/baoyu-xhs-images posts/ai-future/article.md --style notion
# 指定布局
/baoyu-xhs-images posts/ai-future/article.md --layout dense
# 组合风格和布局
/baoyu-xhs-images posts/ai-future/article.md --style notion --layout list
# 使用预设(风格 + 布局简写)
/baoyu-xhs-images posts/ai-future/article.md --preset knowledge-card
# 预设并覆盖
/baoyu-xhs-images posts/ai-future/article.md --preset poster --layout quadrant
# 直接输入内容
/baoyu-xhs-images
[粘贴内容]
# 直接输入并指定选项
/baoyu-xhs-images --style bold --layout comparison
[粘贴内容]
| 选项 | 描述 |
|---|---|
--style <名称> | 视觉风格(参见风格图库) |
--layout <名称> |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 信息布局(参见布局图库) |
--preset <名称> | 风格 + 布局简写(参见风格预设) |
| 维度 | 控制内容 | 选项 |
|---|---|---|
| 风格 | 视觉美学:颜色、线条、装饰 | cute, fresh, warm, bold, minimal, retro, pop, notion, chalkboard, study-notes, screen-print |
| 布局 | 信息结构:密度、排列 | sparse, balanced, dense, list, comparison, flow, mindmap, quadrant |
风格 × 布局可以自由组合。例如:--style notion --layout dense 创建具有高信息密度的知识感知识卡片。
或使用预设:--preset knowledge-card → 一个标志包含风格 + 布局。参见风格预设。
| 风格 | 描述 |
|---|---|
cute (默认) | 甜美、可爱、少女风 - 经典小红书美学 |
fresh | 干净、清新、自然 |
warm | 温馨、友好、平易近人 |
bold | 高冲击力、吸引注意力 |
minimal | 极简、精致 |
retro | 复古、怀旧、潮流 |
pop | 充满活力、能量、吸睛 |
notion | 极简手绘线条艺术,知性 |
chalkboard | 黑板上的彩色粉笔,教育感 |
study-notes | 逼真手写照片风格,蓝笔 + 红批注 + 黄荧光笔 |
screen-print | 大胆海报艺术,半色调纹理,有限颜色,象征性叙事 |
详细风格定义:references/presets/<style>.md
按内容场景快速启动的预设。使用 --preset <名称> 或在步骤 2 中推荐。
知识与学习:
| 预设 | 风格 | 布局 | 最适合 |
|---|---|---|---|
knowledge-card | notion | dense | 干货知识卡、概念科普 |
checklist | notion | list | 清单、排行榜、必备清单 |
concept-map | notion | mindmap | 概念图、知识脉络 |
swot | notion | quadrant | SWOT分析、四象限分类 |
tutorial | chalkboard | flow | 教程步骤、操作流程 |
classroom | chalkboard | balanced | 课堂笔记、知识讲解 |
study-guide | study-notes | dense | 学习笔记、考试重点 |
生活方式与分享:
| 预设 | 风格 | 布局 | 最适合 |
|---|---|---|---|
cute-share | cute | balanced | 少女风分享、日常种草 |
girly | cute | sparse | 甜美封面、氛围感 |
cozy-story | warm | balanced | 生活故事、情感分享 |
product-review | fresh | comparison | 产品对比、测评 |
nature-flow | fresh | flow | 健康流程、自然主题 |
影响力与观点:
| 预设 | 风格 | 布局 | 最适合 |
|---|---|---|---|
warning | bold | list | 避坑指南、重要提醒 |
versus | bold | comparison | 正反对比、强烈对照 |
clean-quote | minimal | sparse | 金句、极简封面 |
pro-summary | minimal | balanced | 专业总结、商务内容 |
潮流与娱乐:
| 预设 | 风格 | 布局 | 最适合 |
|---|---|---|---|
retro-ranking | retro | list | 复古排行、经典盘点 |
throwback | retro | balanced | 怀旧分享、老物件 |
pop-facts | pop | list | 趣味冷知识、好玩的事 |
hype | pop | sparse | 炸裂封面、惊叹分享 |
海报与社论:
| 预设 | 风格 | 布局 | 最适合 |
|---|---|---|---|
poster | screen-print | sparse | 海报风封面、影评书评 |
editorial | screen-print | balanced | 观点文章、文化评论 |
cinematic | screen-print | comparison | 电影对比、戏剧张力 |
完整预设定义:references/style-presets.md
| 布局 | 描述 |
|---|---|
sparse (默认) | 最少信息,最大冲击力(1-2 个要点) |
balanced | 标准内容布局(3-4 个要点) |
dense | 高信息密度,知识卡片风格(5-8 个要点) |
list | 枚举和排名格式(4-7 个项目) |
comparison | 并排对比布局 |
flow | 流程和时间线布局(3-6 个步骤) |
mindmap | 中心放射状思维导图布局(4-8 个分支) |
quadrant | 四象限 / 圆形分区布局 |
详细布局定义:references/elements/canvas.md
| 内容信号 | 风格 | 布局 | 推荐预设 |
|---|---|---|---|
| 美妆、时尚、可爱、女孩、粉色 | cute | sparse/balanced | cute-share, girly |
| 健康、自然、干净、清新、有机 | fresh | balanced/flow | product-review, nature-flow |
| 生活、故事、情感、感受、温暖 | warm | balanced | cozy-story |
| 警告、重要、必须、关键 | bold | list/comparison | warning, versus |
| 专业、商务、优雅、简单 | minimal | sparse/balanced | clean-quote, pro-summary |
| 经典、复古、老旧、传统 | retro | balanced | throwback, retro-ranking |
| 有趣、兴奋、哇、惊人 | pop | sparse/list | hype, pop-facts |
| 知识、概念、生产力、SaaS | notion | dense/list | knowledge-card, checklist |
| 教育、教程、学习、教学、课堂 | chalkboard | balanced/dense | tutorial, classroom |
| 笔记、手写、学习指南、知识、逼真、照片 | study-notes | dense/list/mindmap | study-guide |
| 电影、专辑、音乐会、海报、观点、社论、戏剧性、电影感 | screen-print | sparse/comparison | poster, editorial, cinematic |
针对不同内容目标的三种差异化大纲策略:
| 方面 | 描述 |
|---|---|
| 概念 | 以个人经历为主线,情感共鸣优先 |
| 特点 | 从痛点出发,展示前后变化,真实感强 |
| 最适合 | 测评、个人分享、蜕变故事 |
| 结构 | 钩子 → 问题 → 发现 → 体验 → 结论 |
| 方面 | 描述 |
|---|---|
| 概念 | 价值优先,高效传递信息 |
| 特点 | 结构清晰,要点明确,专业可信 |
| 最适合 | 教程、对比、产品测评、清单 |
| 结构 | 核心结论 → 信息卡片 → 优缺点 → 推荐 |
| 方面 | 描述 |
|---|---|
| 概念 | 以视觉冲击为核心,文字极简 |
| 特点 | 大图、氛围感、瞬间吸引 |
| 最适合 | 高审美产品、生活方式、情绪内容 |
| 结构 | 主图 → 细节图 → 生活场景 → 行动号召 |
每个会话创建一个以内容 slug 命名的独立目录:
xhs-images/{topic-slug}/
├── source-{slug}.{ext} # 源文件(文本、图片等)
├── analysis.md # 深度分析 + 提出的问题
├── outline-strategy-a.md # 策略 A:故事驱动型
├── outline-strategy-b.md # 策略 B:信息密集型
├── outline-strategy-c.md # 策略 C:视觉优先型
├── outline.md # 最终选定/合并的大纲
├── prompts/
│ ├── 01-cover-[slug].md
│ ├── 02-content-[slug].md
│ └── ...
├── 01-cover-[slug].png
├── 02-content-[slug].png
└── NN-ending-[slug].png
Slug 生成:
ai-tools-recommend冲突解决:如果 xhs-images/{topic-slug}/ 已存在:
{topic-slug}-YYYYMMDD-HHMMSSai-tools 存在 → ai-tools-20260118-143052源文件:将所有源文件复制并命名为 source-{slug}.{ext}:
source-article.md, source-photo.jpg 等。复制并跟踪进度:
XHS 信息图进度:
- [ ] 步骤 0:检查偏好设置 (EXTEND.md) ⛔ 阻塞
- [ ] 找到 → 加载偏好设置 → 继续
- [ ] 未找到 → 运行首次设置 → 必须在步骤 1 前完成
- [ ] 步骤 1:分析内容 → analysis.md
- [ ] 步骤 2:智能确认 ⚠️ 必需
- [ ] 路径 A:快速确认 → 生成推荐大纲
- [ ] 路径 B:自定义 → 调整后生成大纲
- [ ] 路径 C:详细模式 → 3 个大纲 → 二次确认 → 生成大纲
- [ ] 步骤 3:生成图片(顺序)
- [ ] 步骤 4:完成报告
输入 → [步骤 0:偏好设置] ─┬─ 找到 → 继续
│
└─ 未找到 → 首次设置 ⛔ 阻塞
│
└─ 完成设置 → 保存 EXTEND.md → 继续
│
┌───────────────────────────────────────────────────────────────────────────┘
↓
分析 → [智能确认] ─┬─ 快速:确认推荐 → outline.md → 生成 → 完成
│
├─ 自定义:调整选项 → outline.md → 生成 → 完成
│
└─ 详细模式:3 个大纲 → [确认 2] → outline.md → 生成 → 完成
目的:加载用户偏好设置或运行首次设置。
关键:如果未找到 EXTEND.md,必须在任何其他问题或步骤之前完成首次设置。不要继续内容分析,不要询问风格,不要询问布局 — 只先完成偏好设置。
检查 EXTEND.md 是否存在(优先级顺序):
# macOS, Linux, WSL, Git Bash
test -f .baoyu-skills/baoyu-xhs-images/EXTEND.md && echo "project"
test -f "${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-xhs-images/EXTEND.md" && echo "xdg"
test -f "$HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md" && echo "user"
# PowerShell (Windows)
if (Test-Path .baoyu-skills/baoyu-xhs-images/EXTEND.md) { "project" }
$xdg = if ($env:XDG_CONFIG_HOME) { $env:XDG_CONFIG_HOME } else { "$HOME/.config" }
if (Test-Path "$xdg/baoyu-skills/baoyu-xhs-images/EXTEND.md") { "xdg" }
if (Test-Path "$HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md") { "user" }
┌────────────────────────────────────────────────────┬───────────────────┐ │ 路径 │ 位置 │ ├────────────────────────────────────────────────────┼───────────────────┤ │ .baoyu-skills/baoyu-xhs-images/EXTEND.md │ 项目目录 │ ├────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md │ 用户主目录 │ └────────────────────────────────────────────────────┴───────────────────┘
┌───────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ 结果 │ 操作 │ ├───────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ 找到 │ 读取、解析、显示摘要 → 继续到步骤 1 │ ├───────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ 未找到 │ ⛔ 阻塞:仅运行首次设置(见下文)→ 完成并保存 EXTEND.md → 然后步骤 1 │ └───────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────┘
首次设置(当未找到 EXTEND.md 时):
语言:使用用户的输入语言或保存的语言偏好。
使用 AskUserQuestion 一次性提出所有问题。有关问题详情,请参见 references/config/first-time-setup.md。
EXTEND.md 支持:水印 | 首选风格/布局 | 自定义风格定义 | 语言偏好
架构:references/config/preferences-schema.md
analysis.md读取源内容,如有需要则保存,并进行深度分析。
操作:
source.mdsource.md 存在,重命名为 source-backup-YYYYMMDD-HHMMSS.mdreferences/workflows/analysis-framework.md:
analysis.md目的:呈现自动推荐方案,让用户确认或调整。不要跳过。
自动推荐逻辑:
显示(分析摘要 + 推荐方案):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📋 内容分析
主题:[topic] | 类型:[content_type]
要点:[key points summary]
受众:[target audience]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎨 推荐方案(自动匹配)
策略:[A/B/C] [strategy name]([reason])
风格:[style] · 布局:[layout] · 预设:[preset]
图片:[N]张(封面+[N-2]内容+结尾)
元素:[background] / [decorations] / [emphasis]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
使用 AskUserQuestion 提出单个问题:
| 选项 | 描述 |
|---|---|
| 1. ✅ 确认,直接生成(推荐) | 信任自动推荐,立即继续 |
| 2. 🎛️ 自定义调整 | 一步修改策略/风格/布局/数量 |
| 3. 📋 详细模式 | 生成 3 个大纲,然后选择(两次确认) |
使用推荐的策略 + 风格生成单个大纲 → 保存到 outline.md → 步骤 3。
使用 AskUserQuestion 提供可调整的选项(留空 = 保持推荐):
响应后:使用用户的选择生成单个大纲 → 保存到 outline.md → 步骤 3。
用于最大控制权的完整两次确认流程:
步骤 2a:内容理解
使用 AskUserQuestion 询问:
响应后:更新 analysis.md。
步骤 2b:生成 3 个大纲变体
| 策略 | 文件名 | 大纲 | 推荐风格 |
|---|---|---|---|
| A | outline-strategy-a.md | 故事驱动型:情感化,前后对比 | warm, cute, fresh |
| B | outline-strategy-b.md | 信息密集型:结构化,事实性 | notion, minimal, chalkboard |
| C | outline-strategy-c.md | 视觉优先型:氛围感,文字极简 | bold, pop, retro, screen-print |
大纲格式(YAML 前言 + 内容):
---
strategy: a # a, b, 或 c
name: Story-Driven
style: warm # 此策略的推荐风格
style_reason: "Warm tones enhance emotional storytelling and personal connection"
elements: # 来自风格预设,可自定义
background: solid-pastel
decorations: [clouds, stars-sparkles]
emphasis: star-burst
typography: highlight
layout: balanced # 主要布局
image_count: 5
---
## P1 Cover
**Type**: cover
**Hook**: "入冬后脸不干了🥹终于找到对的面霜"
**Visual**: Product hero shot with cozy winter atmosphere
**Layout**: sparse
## P2 Problem
**Type**: pain-point
**Message**: Previous struggles with dry skin
**Visual**: Before state, relatable scenario
**Layout**: balanced
...
差异化要求:
style_reason,解释为何此风格适合该策略参考:references/workflows/outline-template.md
步骤 2c:大纲与风格选择
使用 AskUserQuestion 提出三个问题:
Q1:大纲策略:A / B / C / 组合(指定每个策略的页面)
Q2:视觉风格:使用推荐 | 选择预设 | 选择风格 | 自定义描述
Q3:视觉元素:使用默认(推荐)| 调整背景 | 调整装饰 | 自定义
响应后:将选定/合并的大纲保存到 outline.md,并确认风格和元素 → 步骤 3。
使用已确认的大纲 + 风格 + 布局:
视觉一致性 — 参考图片链:为确保系列中所有图片的角色/风格一致性:
--ref--ref
--ref <path-to-image-01.png> 添加到每个后续生成中这对于使用重复角色、吉祥物或插图元素的风格至关重要。图片 1 成为整个系列的视觉锚点。
对于每张图片(封面 + 内容 + 结尾):
prompts/NN-{type}-[slug].md(使用用户首选语言)
prompts/NN-{type}-[slug]-backup-YYYYMMDD-HHMMSS.md--ref(这建立了视觉锚点)--ref <image-01-path> 以确保一致性NN-{type}-[slug]-backup-YYYYMMDD-HHMMSS.png水印应用(如果在偏好设置中启用):添加到每个图片生成提示中:
Include a subtle watermark "[content]" positioned at [position].
The watermark should be legible but not distracting from the main content.
参考:references/config/watermark-guide.md
图片生成技能选择:
会话管理:如果图片生成技能支持 --sessionId:
xhs-{topic-slug}-{timestamp}小红书信息图系列完成!
主题:[topic]
模式:[Quick / Custom / Detailed]
策略:[A/B/C/Combined]
风格:[style name]
布局:[layout name or "varies"]
位置:[directory path]
图片:N 张
✓ analysis.md
✓ outline.md
✓ outline-strategy-a/b/c.md (仅详细模式)
文件:
- 01-cover-[slug].png ✓ 封面 (sparse)
- 02-content-[slug].png ✓ 内容 (balanced)
- 03-content-[slug].png ✓ 内容 (dense)
- 04-ending-[slug].png ✓ 结尾 (sparse)
| 操作 | 步骤 |
|---|---|
| 编辑 | 先更新提示文件 → 使用相同会话 ID 重新生成 |
| 添加 | 指定位置 → 创建提示 → 生成 → 重命名后续文件(NN+1)→ 更新大纲 |
| 删除 | 删除文件 → 重命名后续文件(NN-1)→ 更新大纲 |
重要:更新图片时,始终先更新提示文件 (prompts/NN-{type}-[slug].md),然后再重新生成。这确保更改被记录且可复现。
sparse 布局balanced/dense/list/comparison/flowsparse 或 balanced风格 × 布局矩阵(✓✓ = 强烈推荐,✓ = 效果良好):
| sparse | balanced | dense | list | comparison | flow | mindmap | quadrant
---|---|---|---|---|---|---|---|---
cute | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓ | ✓ | ✓ | ✓
fresh | ✓✓ | ✓✓ | ✓ | ✓ | ✓ | ✓✓ | ✓ | ✓
warm | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓ | ✓ | ✓ | ✓
bold | ✓✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓
minimal | ✓✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓ | ✓ | ✓
retro | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓ | ✓ | ✓ | ✓
pop | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓
notion | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓
chalkboard | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✓
study-notes | ✗ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓ | ✓
screen-print | ✓✓ | ✓✓ | ✗ | ✓ | ✓✓ | ✓ | ✗ | ✓✓
references/ 目录中的详细模板:
元素(视觉构建块):
elements/canvas.md - 宽高比、安全区、网格布局elements/image-effects.md - 剪裁、描边、滤镜elements/typography.md - 装饰文字(花字)、标签、文字方向elements/decorations.md - 强调标记、背景、涂鸦、边框预设(风格预设):
presets/<name>.md - 元素组合定义(cute, notion, warm...)style-presets.md - 预设简写(风格 + 布局组合)工作流程(流程指南):
workflows/analysis-framework.md - 内容分析框架workflows/outline-template.md - 带布局指南的大纲模板workflows/prompt-assembly.md - 提示组装指南配置(设置):
config/preferences-schema.md - EXTEND.md 架构config/first-time-setup.md - 首次设置流程config/watermark-guide.md - 水印配置通过 EXTEND.md 进行自定义配置。有关路径和支持的选项,请参见步骤 0。
每周安装
13.0K
仓库
GitHub Stars
11.6K
首次出现
Jan 19, 2026
安全审计
安装于
opencode11.8K
gemini-cli11.5K
codex11.2K
cursor10.9K
github-copilot10.4K
amp10.1K
Break down complex content into eye-catching infographic series for Xiaohongshu with multiple style options.
# Auto-select style and layout based on content
/baoyu-xhs-images posts/ai-future/article.md
# Specify style
/baoyu-xhs-images posts/ai-future/article.md --style notion
# Specify layout
/baoyu-xhs-images posts/ai-future/article.md --layout dense
# Combine style and layout
/baoyu-xhs-images posts/ai-future/article.md --style notion --layout list
# Use preset (style + layout shorthand)
/baoyu-xhs-images posts/ai-future/article.md --preset knowledge-card
# Preset with override
/baoyu-xhs-images posts/ai-future/article.md --preset poster --layout quadrant
# Direct content input
/baoyu-xhs-images
[paste content]
# Direct input with options
/baoyu-xhs-images --style bold --layout comparison
[paste content]
| Option | Description |
|---|---|
--style <name> | Visual style (see Style Gallery) |
--layout <name> | Information layout (see Layout Gallery) |
--preset <name> | Style + layout shorthand (see Style Presets) |
| Dimension | Controls | Options |
|---|---|---|
| Style | Visual aesthetics: colors, lines, decorations | cute, fresh, warm, bold, minimal, retro, pop, notion, chalkboard, study-notes, screen-print |
| Layout | Information structure: density, arrangement | sparse, balanced, dense, list, comparison, flow, mindmap, quadrant |
Style × Layout can be freely combined. Example: --style notion --layout dense creates an intellectual-looking knowledge card with high information density.
Or use presets: --preset knowledge-card → style + layout in one flag. See Style Presets.
| Style | Description |
|---|---|
cute (Default) | Sweet, adorable, girly - classic Xiaohongshu aesthetic |
fresh | Clean, refreshing, natural |
warm | Cozy, friendly, approachable |
bold | High impact, attention-grabbing |
minimal | Ultra-clean, sophisticated |
retro | Vintage, nostalgic, trendy |
Detailed style definitions: references/presets/<style>.md
Quick-start presets by content scenario. Use --preset <name> or recommend during Step 2.
Knowledge & Learning:
| Preset | Style | Layout | Best For |
|---|---|---|---|
knowledge-card | notion | dense | 干货知识卡、概念科普 |
checklist | notion | list | 清单、排行榜、必备清单 |
concept-map | notion | mindmap | 概念图、知识脉络 |
swot | notion | quadrant | SWOT分析、四象限分类 |
tutorial |
Lifestyle & Sharing:
| Preset | Style | Layout | Best For |
|---|---|---|---|
cute-share | cute | balanced | 少女风分享、日常种草 |
girly | cute | sparse | 甜美封面、氛围感 |
cozy-story | warm | balanced | 生活故事、情感分享 |
product-review | fresh | comparison | 产品对比、测评 |
nature-flow |
Impact & Opinion:
| Preset | Style | Layout | Best For |
|---|---|---|---|
warning | bold | list | 避坑指南、重要提醒 |
versus | bold | comparison | 正反对比、强烈对照 |
clean-quote | minimal | sparse | 金句、极简封面 |
pro-summary | minimal | balanced | 专业总结、商务内容 |
Trend & Entertainment:
| Preset | Style | Layout | Best For |
|---|---|---|---|
retro-ranking | retro | list | 复古排行、经典盘点 |
throwback | retro | balanced | 怀旧分享、老物件 |
pop-facts | pop | list | 趣味冷知识、好玩的事 |
hype | pop | sparse | 炸裂封面、惊叹分享 |
Poster & Editorial:
| Preset | Style | Layout | Best For |
|---|---|---|---|
poster | screen-print | sparse | 海报风封面、影评书评 |
editorial | screen-print | balanced | 观点文章、文化评论 |
cinematic | screen-print | comparison | 电影对比、戏剧张力 |
Full preset definitions: references/style-presets.md
| Layout | Description |
|---|---|
sparse (Default) | Minimal information, maximum impact (1-2 points) |
balanced | Standard content layout (3-4 points) |
dense | High information density, knowledge card style (5-8 points) |
list | Enumeration and ranking format (4-7 items) |
comparison | Side-by-side contrast layout |
flow | Process and timeline layout (3-6 steps) |
Detailed layout definitions: references/elements/canvas.md
| Content Signals | Style | Layout | Recommended Preset |
|---|---|---|---|
| Beauty, fashion, cute, girl, pink | cute | sparse/balanced | cute-share, girly |
| Health, nature, clean, fresh, organic | fresh | balanced/flow | product-review, nature-flow |
| Life, story, emotion, feeling, warm |
Three differentiated outline strategies for different content goals:
| Aspect | Description |
|---|---|
| Concept | Personal experience as main thread, emotional resonance first |
| Features | Start from pain point, show before/after change, strong authenticity |
| Best for | Reviews, personal shares, transformation stories |
| Structure | Hook → Problem → Discovery → Experience → Conclusion |
| Aspect | Description |
|---|---|
| Concept | Value-first, efficient information delivery |
| Features | Clear structure, explicit points, professional credibility |
| Best for | Tutorials, comparisons, product reviews, checklists |
| Structure | Core conclusion → Info card → Pros/Cons → Recommendation |
| Aspect | Description |
|---|---|
| Concept | Visual impact as core, minimal text |
| Features | Large images, atmospheric, instant appeal |
| Best for | High-aesthetic products, lifestyle, mood-based content |
| Structure | Hero image → Detail shots → Lifestyle scene → CTA |
Each session creates an independent directory named by content slug:
xhs-images/{topic-slug}/
├── source-{slug}.{ext} # Source files (text, images, etc.)
├── analysis.md # Deep analysis + questions asked
├── outline-strategy-a.md # Strategy A: Story-driven
├── outline-strategy-b.md # Strategy B: Information-dense
├── outline-strategy-c.md # Strategy C: Visual-first
├── outline.md # Final selected/merged outline
├── prompts/
│ ├── 01-cover-[slug].md
│ ├── 02-content-[slug].md
│ └── ...
├── 01-cover-[slug].png
├── 02-content-[slug].png
└── NN-ending-[slug].png
Slug Generation :
ai-tools-recommendConflict Resolution : If xhs-images/{topic-slug}/ already exists:
{topic-slug}-YYYYMMDD-HHMMSSai-tools exists → ai-tools-20260118-143052Source Files : Copy all sources with naming source-{slug}.{ext}:
source-article.md, source-photo.jpg, etc.Copy and track progress:
XHS Infographic Progress:
- [ ] Step 0: Check preferences (EXTEND.md) ⛔ BLOCKING
- [ ] Found → load preferences → continue
- [ ] Not found → run first-time setup → MUST complete before Step 1
- [ ] Step 1: Analyze content → analysis.md
- [ ] Step 2: Smart Confirm ⚠️ REQUIRED
- [ ] Path A: Quick confirm → generate recommended outline
- [ ] Path B: Customize → adjust then generate outline
- [ ] Path C: Detailed → 3 outlines → second confirm → generate outline
- [ ] Step 3: Generate images (sequential)
- [ ] Step 4: Completion report
Input → [Step 0: Preferences] ─┬─ Found → Continue
│
└─ Not found → First-Time Setup ⛔ BLOCKING
│
└─ Complete setup → Save EXTEND.md → Continue
│
┌───────────────────────────────────────────────────────────────────────────┘
↓
Analyze → [Smart Confirm] ─┬─ Quick: confirm recommended → outline.md → Generate → Complete
│
├─ Customize: adjust options → outline.md → Generate → Complete
│
└─ Detailed: 3 outlines → [Confirm 2] → outline.md → Generate → Complete
Purpose : Load user preferences or run first-time setup.
CRITICAL : If EXTEND.md not found, MUST complete first-time setup before ANY other questions or steps. Do NOT proceed to content analysis, do NOT ask about style, do NOT ask about layout — ONLY complete the preferences setup first.
Check EXTEND.md existence (priority order):
# macOS, Linux, WSL, Git Bash
test -f .baoyu-skills/baoyu-xhs-images/EXTEND.md && echo "project"
test -f "${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-xhs-images/EXTEND.md" && echo "xdg"
test -f "$HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md" && echo "user"
# PowerShell (Windows)
if (Test-Path .baoyu-skills/baoyu-xhs-images/EXTEND.md) { "project" }
$xdg = if ($env:XDG_CONFIG_HOME) { $env:XDG_CONFIG_HOME } else { "$HOME/.config" }
if (Test-Path "$xdg/baoyu-skills/baoyu-xhs-images/EXTEND.md") { "xdg" }
if (Test-Path "$HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md") { "user" }
┌────────────────────────────────────────────────────┬───────────────────┐ │ Path │ Location │ ├────────────────────────────────────────────────────┼───────────────────┤ │ .baoyu-skills/baoyu-xhs-images/EXTEND.md │ Project directory │ ├────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md │ User home │ └────────────────────────────────────────────────────┴───────────────────┘
┌───────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ Result │ Action │ ├───────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Found │ Read, parse, display summary → Continue to Step 1 │ ├───────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Not found │ ⛔ BLOCKING: Run first-time setup ONLY (see below) → Complete and save EXTEND.md → Then Step 1 │ └───────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────┘
First-Time Setup (when EXTEND.md not found):
Language : Use user's input language or saved language preference.
Use AskUserQuestion with ALL questions in ONE call. See references/config/first-time-setup.md for question details.
EXTEND.md Supports : Watermark | Preferred style/layout | Custom style definitions | Language preference
Schema: references/config/preferences-schema.md
analysis.mdRead source content, save it if needed, and perform deep analysis.
Actions :
source.md in target directorysource.md exists, rename to source-backup-YYYYMMDD-HHMMSS.mdreferences/workflows/analysis-framework.md:
analysis.mdPurpose : Present auto-recommended plan, let user confirm or adjust. Do NOT skip.
Auto-Recommendation Logic :
Display (analysis summary + recommended plan):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📋 内容分析
主题:[topic] | 类型:[content_type]
要点:[key points summary]
受众:[target audience]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎨 推荐方案(自动匹配)
策略:[A/B/C] [strategy name]([reason])
风格:[style] · 布局:[layout] · 预设:[preset]
图片:[N]张(封面+[N-2]内容+结尾)
元素:[background] / [decorations] / [emphasis]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Use AskUserQuestion with single question:
| Option | Description |
|---|---|
| 1. ✅ 确认,直接生成(推荐) | Trust auto-recommendation, proceed immediately |
| 2. 🎛️ 自定义调整 | Modify strategy/style/layout/count in one step |
| 3. 📋 详细模式 | Generate 3 outlines, then choose (two confirmations) |
Generate single outline using recommended strategy + style → save to outline.md → Step 3.
Use AskUserQuestion with adjustable options (leave blank = keep recommended):
After response : Generate single outline with user's choices → save to outline.md → Step 3.
Full two-confirmation flow for maximum control:
Step 2a: Content Understanding
Use AskUserQuestion for:
After response : Update analysis.md.
Step 2b: Generate 3 Outline Variants
| Strategy | Filename | Outline | Recommended Style |
|---|---|---|---|
| A | outline-strategy-a.md | Story-driven: emotional, before/after | warm, cute, fresh |
| B | outline-strategy-b.md | Information-dense: structured, factual | notion, minimal, chalkboard |
| C | outline-strategy-c.md | Visual-first: atmospheric, minimal text | bold, pop, retro, screen-print |
Outline format (YAML front matter + content):
---
strategy: a # a, b, or c
name: Story-Driven
style: warm # recommended style for this strategy
style_reason: "Warm tones enhance emotional storytelling and personal connection"
elements: # from style preset, can be customized
background: solid-pastel
decorations: [clouds, stars-sparkles]
emphasis: star-burst
typography: highlight
layout: balanced # primary layout
image_count: 5
---
## P1 Cover
**Type**: cover
**Hook**: "入冬后脸不干了🥹终于找到对的面霜"
**Visual**: Product hero shot with cozy winter atmosphere
**Layout**: sparse
## P2 Problem
**Type**: pain-point
**Message**: Previous struggles with dry skin
**Visual**: Before state, relatable scenario
**Layout**: balanced
...
Differentiation requirements :
style_reason explaining why this style fits the strategyReference: references/workflows/outline-template.md
Step 2c: Outline & Style Selection
Use AskUserQuestion with three questions:
Q1: Outline Strategy : A / B / C / Combine (specify pages from each)
Q2: Visual Style : Use recommended | Select preset | Select style | Custom description
Q3: Visual Elements : Use defaults (Recommended) | Adjust background | Adjust decorations | Custom
After response : Save selected/merged outline to outline.md with confirmed style and elements → Step 3.
With confirmed outline + style + layout:
Visual Consistency — Reference Image Chain : To ensure character/style consistency across all images in a series:
--ref--ref for ALL remaining images (2, 3, ..., N)
--ref <path-to-image-01.png> added to every subsequent generationThis is critical for styles that use recurring characters, mascots, or illustration elements. Image 1 becomes the visual anchor for the entire series.
For each image (cover + content + ending) :
prompts/NN-{type}-[slug].md (in user's preferred language)
prompts/NN-{type}-[slug]-backup-YYYYMMDD-HHMMSS.md--ref (this establishes the visual anchor)--ref <image-01-path> for consistencyNN-{type}-[slug]-backup-YYYYMMDD-HHMMSS.pngWatermark Application (if enabled in preferences): Add to each image generation prompt:
Include a subtle watermark "[content]" positioned at [position].
The watermark should be legible but not distracting from the main content.
Reference: references/config/watermark-guide.md
Image Generation Skill Selection :
Session Management : If image generation skill supports --sessionId:
xhs-{topic-slug}-{timestamp}Xiaohongshu Infographic Series Complete!
Topic: [topic]
Mode: [Quick / Custom / Detailed]
Strategy: [A/B/C/Combined]
Style: [style name]
Layout: [layout name or "varies"]
Location: [directory path]
Images: N total
✓ analysis.md
✓ outline.md
✓ outline-strategy-a/b/c.md (detailed mode only)
Files:
- 01-cover-[slug].png ✓ Cover (sparse)
- 02-content-[slug].png ✓ Content (balanced)
- 03-content-[slug].png ✓ Content (dense)
- 04-ending-[slug].png ✓ Ending (sparse)
| Action | Steps |
|---|---|
| Edit | Update prompt file FIRST → Regenerate with same session ID |
| Add | Specify position → Create prompt → Generate → Renumber subsequent files (NN+1) → Update outline |
| Delete | Remove files → Renumber subsequent (NN-1) → Update outline |
IMPORTANT : When updating images, ALWAYS update the prompt file (prompts/NN-{type}-[slug].md) FIRST before regenerating. This ensures changes are documented and reproducible.
sparse layoutbalanced/dense/list/comparison/flowsparse or balancedStyle × Layout Matrix (✓✓ = highly recommended, ✓ = works well):
| sparse | balanced | dense | list | comparison | flow | mindmap | quadrant
---|---|---|---|---|---|---|---|---
cute | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓ | ✓ | ✓ | ✓
fresh | ✓✓ | ✓✓ | ✓ | ✓ | ✓ | ✓✓ | ✓ | ✓
warm | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓ | ✓ | ✓ | ✓
bold | ✓✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓
minimal | ✓✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓ | ✓ | ✓
retro | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓ | ✓ | ✓ | ✓
pop | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓
notion | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓✓
chalkboard | ✓✓ | ✓✓ | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✓
study-notes | ✗ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓ | ✓
screen-print | ✓✓ | ✓✓ | ✗ | ✓ | ✓✓ | ✓ | ✗ | ✓✓
Detailed templates in references/ directory:
Elements (Visual building blocks):
elements/canvas.md - Aspect ratios, safe zones, grid layoutselements/image-effects.md - Cutout, stroke, filterselements/typography.md - Decorated text (花字), tags, text directionelements/decorations.md - Emphasis marks, backgrounds, doodles, framesPresets (Style presets):
presets/<name>.md - Element combination definitions (cute, notion, warm...)style-presets.md - Preset shortcuts (style + layout combos)Workflows (Process guides):
workflows/analysis-framework.md - Content analysis frameworkworkflows/outline-template.md - Outline template with layout guideworkflows/prompt-assembly.md - Prompt assembly guideConfig (Settings):
config/preferences-schema.md - EXTEND.md schemaconfig/first-time-setup.md - First-time setup flowconfig/watermark-guide.md - Watermark configurationCustom configurations via EXTEND.md. See Step 0 for paths and supported options.
Weekly Installs
13.0K
Repository
GitHub Stars
11.6K
First Seen
Jan 19, 2026
Security Audits
Gen Agent Trust HubWarnSocketPassSnykPass
Installed on
opencode11.8K
gemini-cli11.5K
codex11.2K
cursor10.9K
github-copilot10.4K
amp10.1K
专业SEO审计工具:全面网站诊断、技术SEO优化与页面分析指南
56,300 周安装
AI智能体长期记忆系统 - 精英级架构,融合6种方法,永不丢失上下文
1,200 周安装
AI新闻播客制作技能:实时新闻转对话式播客脚本与音频生成
1,200 周安装
Word文档处理器:DOCX创建、编辑、分析与修订痕迹处理全指南 | 自动化办公解决方案
1,200 周安装
React Router 框架模式指南:全栈开发、文件路由、数据加载与渲染策略
1,200 周安装
Nano Banana AI 图像生成工具:使用 Gemini 3 Pro 生成与编辑高分辨率图像
1,200 周安装
SVG Logo Designer - AI 驱动的专业矢量标识设计工具,生成可缩放品牌标识
1,200 周安装
pop | Vibrant, energetic, eye-catching |
notion | Minimalist hand-drawn line art, intellectual |
chalkboard | Colorful chalk on black board, educational |
study-notes | Realistic handwritten photo style, blue pen + red annotations + yellow highlighter |
screen-print | Bold poster art, halftone textures, limited colors, symbolic storytelling |
| chalkboard |
| flow |
| 教程步骤、操作流程 |
classroom | chalkboard | balanced | 课堂笔记、知识讲解 |
study-guide | study-notes | dense | 学习笔记、考试重点 |
| fresh |
| flow |
| 健康流程、自然主题 |
mindmap | Center radial mind map layout (4-8 branches) |
quadrant | Four-quadrant / circular section layout |
warm| balanced |
cozy-story |
| Warning, important, must, critical | bold | list/comparison | warning, versus |
| Professional, business, elegant, simple | minimal | sparse/balanced | clean-quote, pro-summary |
| Classic, vintage, old, traditional | retro | balanced | throwback, retro-ranking |
| Fun, exciting, wow, amazing | pop | sparse/list | hype, pop-facts |
| Knowledge, concept, productivity, SaaS | notion | dense/list | knowledge-card, checklist |
| Education, tutorial, learning, teaching, classroom | chalkboard | balanced/dense | tutorial, classroom |
| Notes, handwritten, study guide, knowledge, realistic, photo | study-notes | dense/list/mindmap | study-guide |
| Movie, album, concert, poster, opinion, editorial, dramatic, cinematic | screen-print | sparse/comparison | poster, editorial, cinematic |