Xiaohongshu Infographic Series Generator
Break down complex content into eye-catching infographic series for Xiaohongshu with multiple style options.
Usage
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
Direct content input
/baoyu-xhs-images [paste content]
Direct input with options
/baoyu-xhs-images --style bold --layout comparison [paste content]
Options
Option Description
--style <name>
Visual style (see Style Gallery)
--layout <name>
Information layout (see Layout Gallery)
Two Dimensions
Dimension Controls Options
Style Visual aesthetics: colors, lines, decorations cute, fresh, warm, bold, minimal, retro, pop, notion, chalkboard
Layout Information structure: density, arrangement sparse, balanced, dense, list, comparison, flow
Style × Layout can be freely combined. Example: --style notion --layout dense creates an intellectual-looking knowledge card with high information density.
Style Gallery
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
pop
Vibrant, energetic, eye-catching
notion
Minimalist hand-drawn line art, intellectual
chalkboard
Colorful chalk on black board, educational
Detailed style definitions: references/presets/<style>.md
Layout Gallery
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
Auto Selection
Content Signals Style Layout
Beauty, fashion, cute, girl, pink cute
sparse/balanced
Health, nature, clean, fresh, organic fresh
balanced/flow
Life, story, emotion, feeling, warm warm
balanced
Warning, important, must, critical bold
list/comparison
Professional, business, elegant, simple minimal
sparse/balanced
Classic, vintage, old, traditional retro
balanced
Fun, exciting, wow, amazing pop
sparse/list
Knowledge, concept, productivity, SaaS notion
dense/list
Education, tutorial, learning, teaching, classroom chalkboard
balanced/dense
Outline Strategies
Three differentiated outline strategies for different content goals:
Strategy A: Story-Driven (故事驱动型)
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
Strategy B: Information-Dense (信息密集型)
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
Strategy C: Visual-First (视觉优先型)
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
File Structure
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:
-
Extract main topic from content (2-4 words, kebab-case)
-
Example: "AI工具推荐" → ai-tools-recommend
Conflict Resolution: If xhs-images/{topic-slug}/ already exists:
-
Append timestamp: {topic-slug}-YYYYMMDD-HHMMSS
-
Example: ai-tools exists → ai-tools-20260118-143052
Source Files: Copy all sources with naming source-{slug}.{ext} :
-
source-article.md , source-photo.jpg , etc.
-
Multiple sources supported: text, images, files from conversation
Workflow
Progress Checklist
Copy and track progress:
XHS Infographic Progress:
- Step 0: Check preferences (EXTEND.md) ⚠️ REQUIRED if not found
- Step 1: Analyze content → analysis.md
- Step 2: Confirmation 1 - Content understanding ⚠️ REQUIRED
- Step 3: Generate 3 outline + style variants
- Step 4: Confirmation 2 - Outline & style & elements selection ⚠️ REQUIRED
- Step 5: Generate images (sequential)
- Step 6: Completion report
Flow
Input → Analyze → [Confirm 1] → 3 Outlines → [Confirm 2: Outline + Style + Elements] → Generate → Complete
Step 0: Load Preferences (EXTEND.md) ⚠️
Purpose: Load user preferences or run first-time setup. Do NOT skip setup if EXTEND.md not found.
Use Bash to check EXTEND.md existence (priority order):
Check project-level first
test -f .baoyu-skills/baoyu-xhs-images/EXTEND.md && echo "project"
Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.baoyu-skills/baoyu-xhs-images/EXTEND.md" && echo "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 │ ⚠️ MUST run first-time setup (see below) → Then continue to 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
Step 1: Analyze Content → analysis.md
Read source content, save it if needed, and perform deep analysis.
Actions:
-
Save source content (if not already a file):
-
If user provides a file path: use as-is
-
If user pastes content: save to source.md in target directory
-
Read source content
-
Deep analysis following references/workflows/analysis-framework.md :
-
Content type classification (种草/干货/测评/教程/避坑...)
-
Hook analysis (爆款标题潜力)
-
Target audience identification
-
Engagement potential (收藏/分享/评论)
-
Visual opportunity mapping
-
Swipe flow design
-
Detect source language
-
Determine recommended image count (2-10)
-
Generate clarifying questions (see Step 2)
-
Save to analysis.md
Step 2: Confirmation 1 - Content Understanding ⚠️
Purpose: Validate understanding + collect missing info. Do NOT skip.
Display summary:
-
Content type + topic identified
-
Key points extracted
-
Tone detected
-
Source images count
Use AskUserQuestion for:
-
Core selling point (multiSelect: true)
-
Target audience
-
Style preference: Authentic sharing / Professional review / Aesthetic mood / Auto
-
Additional context (optional)
After response: Update analysis.md → Step 3
Step 3: Generate 3 Outline + Style Variants
Based on analysis + user context, create three distinct strategy variants. Each variant includes both outline structure and visual style recommendation.
For each strategy:
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
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 in Step 4 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:
-
Each strategy MUST have different outline structure AND different recommended style
-
Adapt page count: A typically 4-6, B typically 3-5, C typically 3-4
-
Include style_reason explaining why this style fits the strategy
-
Consider user's style preference from Step 2
Reference: references/workflows/outline-template.md
Step 4: Confirmation 2 - Outline & Style & Elements Selection ⚠️
Purpose: User chooses outline strategy, confirms visual style, and customizes elements. Do NOT skip.
Display each strategy:
-
Strategy name + page count + recommended style
-
Page-by-page summary (P1 → P2 → P3...)
Use AskUserQuestion with three questions:
Question 1: Outline Strategy
-
Strategy A (Recommended if "authentic sharing")
-
Strategy B (Recommended if "professional review")
-
Strategy C (Recommended if "aesthetic mood")
-
Combine: specify pages from each
Question 2: Visual Style
-
Use strategy's recommended style (show which style)
-
Or select from: cute / fresh / warm / bold / minimal / retro / pop / notion / chalkboard
-
Or type custom style description
Question 3: Visual Elements (show after style selection) Display the selected style's default elements from preset, then ask:
-
Use style defaults (Recommended) - show preview: background, decorations, emphasis
-
Adjust background - options: solid-pastel / solid-saturated / gradient-linear / gradient-radial / paper-texture / grid
-
Adjust decorations - options: hearts / stars-sparkles / flowers / clouds / leaves / confetti
-
Type custom element preferences
After response:
-
Single strategy → copy to outline.md with confirmed style
-
Combination → merge specified pages with confirmed style
-
Custom request → regenerate based on feedback
-
Style defaults → use preset's Element Combination as-is
-
Background adjustment → update elements.background with user choice
-
Decorations adjustment → update elements.decorations with user choice
-
Custom elements → parse user's preferences into elements fields
-
Update outline.md frontmatter with final style and elements
Step 5: Generate Images
With confirmed outline + style + layout:
For each image (cover + content + ending):
-
Save prompt to prompts/NN-{type}-[slug].md (in user's preferred language)
-
Generate image using confirmed style and layout
-
Report progress after each generation
Watermark Application (if enabled in preferences): Add to each image generation prompt:
Include a subtle watermark "[content]" positioned at [position] with approximately [opacity*100]% visibility. The watermark should be legible but not distracting from the main content.
Reference: references/config/watermark-guide.md
Image Generation Skill Selection:
-
Check available image generation skills
-
If multiple skills available, ask user preference
Session Management: If image generation skill supports --sessionId :
-
Generate unique session ID: xhs-{topic-slug}-{timestamp}
-
Use same session ID for all images
-
Ensures visual consistency across generated images
Step 6: Completion Report
Xiaohongshu Infographic Series Complete!
Topic: [topic] Strategy: [A/B/C/Combined] Style: [style name] Layout: [layout name or "varies"] Location: [directory path] Images: N total
✓ analysis.md ✓ outline-strategy-a.md ✓ outline-strategy-b.md ✓ outline-strategy-c.md ✓ outline.md (selected: [strategy])
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)
Image Modification
Action Steps
Edit Update prompt → 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
Content Breakdown Principles
-
Cover (Image 1): Hook + visual impact → sparse layout
-
Content (Middle): Core value per image → balanced /dense /list /comparison /flow
-
Ending (Last): CTA / summary → sparse or balanced
Style × Layout Matrix (✓✓ = highly recommended, ✓ = works well):
sparse balanced dense list comparison flow
cute ✓✓ ✓✓ ✓ ✓✓ ✓ ✓
fresh ✓✓ ✓✓ ✓ ✓ ✓ ✓✓
warm ✓✓ ✓✓ ✓ ✓ ✓✓ ✓
bold ✓✓ ✓ ✓ ✓✓ ✓✓ ✓
minimal ✓✓ ✓✓ ✓✓ ✓ ✓ ✓
retro ✓✓ ✓✓ ✓ ✓✓ ✓ ✓
pop ✓✓ ✓✓ ✓ ✓✓ ✓✓ ✓
notion ✓✓ ✓✓ ✓✓ ✓✓ ✓✓ ✓✓
chalkboard ✓✓ ✓✓ ✓✓ ✓✓ ✓ ✓✓
References
Detailed templates in references/ directory:
Elements (Visual building blocks):
-
elements/canvas.md
-
Aspect ratios, safe zones, grid layouts
-
elements/image-effects.md
-
Cutout, stroke, filters
-
elements/typography.md
-
Decorated text (花字), tags, text direction
-
elements/decorations.md
-
Emphasis marks, backgrounds, doodles, frames
Presets (Style presets):
- presets/<name>.md
- Element combination definitions (cute, notion, warm...)
Workflows (Process guides):
-
workflows/analysis-framework.md
-
Content analysis framework
-
workflows/outline-template.md
-
Outline template with layout guide
-
workflows/prompt-assembly.md
-
Prompt assembly guide
Config (Settings):
-
config/preferences-schema.md
-
EXTEND.md schema
-
config/first-time-setup.md
-
First-time setup flow
-
config/watermark-guide.md
-
Watermark configuration
Notes
-
Auto-retry once on failure | Cartoon alternatives for sensitive figures
-
Use confirmed language preference | Maintain style consistency
-
Two confirmation points required (Steps 2 & 4) - do not skip
Extension Support
Custom configurations via EXTEND.md. See Step 0 for paths and supported options.