⚠️ Core principle: propose first, generate after
Never skip the design proposal and go straight to image generation. Correct process:
理解内容 → 设计提案(2-3个方向)→ 用户选择 → 生成 → 预览确认 → 上传
Huashu Design Aesthetic Profile
Likes
- Texture and warmth — organic elements such as paper creases, handwritten strokes, stamps, tape, etc.
- Hand-drawn/calligraphic fonts — especially suitable for note-style and personal sharing scenarios
- Text filling the frame — Xiaohongshu is mobile vertical screen, so text must be large enough to read at a glance
- Reinforce core elements — make key numbers/keywords the visual hero (enlarge 3x, change color, add decoration)
- Clear structure — main title > subtitle > list, with distinct hierarchy
- Warm color tones — cream, warm orange, and warm gold perform well
Dislikes
- HTML screenshots — too flat, like a PPT template, soulless (only as a fallback for precise data tables)
- Cyber neon/deep blue background — deep blue backgrounds such as #0D1117 are an aesthetic no-go zone
- Signature/watermark — "Peanut", "Huashu", or "@Peanut" must not appear on cover images
- Excessive whitespace — better to be a bit fuller than empty
Verified good styles
| Style | Presentation | Applicable |
|---|---|---|
| Hand-drawn notes (warm-colored paper + calligraphic text + hand-drawn icons) | ⭐⭐⭐⭐⭐ | Tutorials, practical tips, personal sharing |
| Dark gold poster (dark background + large gold text) | ⭐⭐⭐⭐ | Product launches, impactful titles (needs to pair with good content) |
| Minimalist infographic (light background + large numbers + concise hierarchy) | ⭐⭐⭐⭐ | Data-driven, comparison |
Core parameters
| Parameter | Value |
|---|---|
| Standard size | 1080 x 1440 px (3:4) |
| AI generation resolution | --resolution 2K |
| AI Prompt aspect ratio declaration | 3:4 portrait aspect ratio, 1080x1440 pixels |
| HTML viewport (for fallback use) | --viewport-size=1080,1440 |
Step 1: Understand the content
Read the content provided by the user and quickly distill:
- Theme: What is this about?
- Core keywords: Which words/numbers need to be the visual hero?
- Emotion/tone: Suspense? Practical tips? Warmth? Impact?
- Number and type of images: Single cover / carousel set / infographic?
No need to show the analysis results to the user; go directly to Step 2.
Step 2: Design proposal ✅ Must wait for user selection
This is the most critical step in the entire process. Skipping is prohibited.
Proposal format
Show the user 2-3 design directions, each direction includes:
### 方向A:[风格名]
- 视觉风格:[一句话描述画面感,如"暖色笔记本纸张+毛笔书法大字+手绘小图标"]
- 色彩:[底色 + 主色 + 强调色]
- 文案布局:[哪些文字放大做hero、哪些做副标题、整体排列方式]
- 情绪:[用户看到后的第一感受]
Proposal principles
- Each direction must be clearly differentiated(at least one of style, emotion, or color must be completely different)
- Mark recommendations(Explain based on content characteristics why a certain direction is recommended)
- Copy should be specific(Not "make the title bigger", but "make '28' a 200px hero element, with orange emphasis")
- Do not exceed 3 directions(Too many choices make it harder to choose)
Proposal examples
Direction A: Hand-drawn notes style (recommended)
- Visual style: cream-colored grid paper background + brush calligraphy large title + hand-drawn tech small icons
- Colors: background #FDF6EC + primary color #D97706 (warm orange) + emphasis circle lines
- Copy layout: "Alibaba Building C4" and "A bunch of Guangdong people came" fill the upper half as the hero, "AI open-source champion" highlighted in orange as the visual anchor, "Qianwen APP" stamp in the lower right corner
- Emotion: friendly, authentic, like a friend sharing insider information
Direction B: Dark gold exposé style
- Visual style: dark frosted background + large gold text + badge decorations
- Colors: background #1A1A1A + primary color #E2B714 (gold) + white as auxiliary
- Copy layout: "Global AI open-source champion" in huge gold text fills the frame, "Big tech insider" gold badge above, white subtitle below
- Emotion: striking, insider, with a sense of weight
Only enter Step 3 after the user makes a choice. The user may:
- Directly choose one → proceed to generation
- Request a mix/adjustment → modify the direction and then confirm
- Not satisfied with any → ask about preferences and then propose again
Step 3: Generate images
Build the Prompt
Based on the direction chosen by the user, build a complete prompt.
Prompt template:
Create a [style] cover for a Xiaohongshu post. 3:4 portrait aspect ratio, 1080x1440 pixels, high quality rendering.
VISUAL STYLE: [从提案中的视觉风格描述展开]
COLOR PALETTE: [具体色彩描述]
TYPOGRAPHY: text fills most of the canvas, oversized bold typography, clear visual hierarchy.
TEXT TO RENDER:
- [主标题 — hero元素,视觉dominant]
- [副标题]
- [其他文字元素]
The word/number "[核心关键词]" is visually dominant, 3x larger than other text, with decorative emphasis.
IMPORTANT: Do NOT include any personal signature, watermark, or author name like "花生" or "花叔".
[1-2句画面情绪描述]
Huashu's preferred Prompt keywords (add as needed):
- Large text →
text fills most of the canvas, oversized bold typography - Core reinforcement →
the word/number "XX" is visually dominant, 3x larger than other text, with decorative emphasis - Handwritten style →
handwritten style Chinese text / brush calligraphy lettering - Paper texture →
warm cream paper texture with subtle grid lines, notebook page feel - Clear structure →
clear visual hierarchy with distinct heading, subheading, and list levels - No signature →
Do NOT include any personal signature, watermark, or author name
Two generation paths (output both every time)
| Path | Tool | Advantages | Disadvantages | Cost |
|---|---|---|---|---|
| AI generation | Gemini nano-banana-pro | Good texture, warm feel, visually rich | Chinese text may render incorrectly | Has API costs |
| HTML screenshot | Playwright | 100% accurate text, zero cost, batchable | More flat, lacks texture | Free |
Output both paths every time, making it easy for users to compare and choose. HTML is zero-cost, so you can produce several variants for each direction (color scheme/layout), giving users more room to choose. For the AI path, one image per direction is enough.
File organization standards (must be followed)
When generating multiple versions, place all related files (png + html source files) inthe same subfolder:
文章所在目录/
├── 文章.md
└── [文章简称]-小红书配图/ ← 子文件夹
├── A-笔记风-AI.png
├── A1-笔记风-HTML-暖色.png
├── A1-笔记风-HTML-暖色.html
├── B-报纸风-AI.png
└── ...
Naming rules:[方向字母][变体序号]-[风格中文名]-[路径AI/HTML]-[变体描述].png
- Direction letter: A/B/C (corresponding to the direction of the design proposal)
- AI path has no sequence number:
A-笔记风-AI.png - HTML variants have sequence numbers:
A1-笔记风-HTML-暖色.png、A2-笔记风-HTML-绿色.png - Use article keywords for the folder name:
[关键词]-小红书配图/
AI generation command
export $(grep GEMINI_API_KEY ~/.claude/.env) && \
uv run /Users/alchain/Documents/写作/.claude/skills/xhs-image/scripts/generate_image.py \
--prompt "[完整prompt]" \
--filename "[方向]-[风格]-AI.png" \
--resolution 2K
After generation, move them into the illustration subfolder. Sets of images can be generated in parallel (run_in_background=true)。
Step 4: Preview and confirm
Browser preview (required)
After generation is complete, use open Command to open all images for easy side-by-side comparison by the user:
open "[图片路径1]" "[图片路径2]" "[图片路径3]"
Inline Preview
Also use the Read tool to display the generated results in the terminal.
Basic Checks:
- Is the Chinese text rendered correctly?
- Is the ratio 3:4 portrait?
- Does the style match the selected direction?
- Is there no signature/watermark?
Design Review (Required)
Score each image on two dimensions (out of 10) and provide optimization directions:
| Dimension | Judging Criteria |
|---|---|
| Design Score | Visual hierarchy, layout, color scheme, texture, creativity |
| Xiaohongshu Appeal | Whether it stands out in the feed, whether the text is large enough, information density, emotional delivery, whether it sparks curiosity |
Review Output Format:
- For each image: overall score + 1 sentence of core feedback + 1 optimization direction
- Finally provide a summary ranking table with recommendations marked
- The user can decide on their own whether to adopt the optimization suggestions
User Feedback Handling:
- Satisfied → Step 5 Upload
- Text has errors → Use HTML fallback rendering for that image
- Wrong style → Adjust the prompt and regenerate
- Major direction change → Return to Step 2 and re-propose
Step 5: Upload to Image Hosting
python3 /Users/alchain/Documents/写作/tools/upload_image.py "[图片路径]"
Return the ImgBB permanent link.
HTML Screenshot Path (used when AI text rendering fails, for precise data tables, or when the user requests comparison)
npx playwright screenshot "file:///path/to/card.html" output.png \
--viewport-size=1080,1440 --wait-for-timeout=1000
HTML Template Requirements:
- Canvas:
width: 1080px; height: 1440px - Font:
font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif - Safe area: 80px top and bottom, 60px left and right
Quick Reference
Chinese Text Rendering Limits (AI Path)
- Main title ≤ 7 characters
- Subtitle ≤ 15 characters
- Body text ≤ 20 characters per line
- Must be verified image by image
Huashu Tech Account Color Scheme
| Scheme Name | Background Color | Primary Color | Accent Color | Use Case |
|---|---|---|---|---|
| Warm Gray Professional | #F5F0EB | #D97706 | #4A90D9 | AI tools, sharing |
| Minimalist Professional | #F5F5F5 | #4A90D9 | #FF6B35 | Tutorials, comparisons |
| Dark Night Gold | #1A1A2E | #E2B714 | #FFFFFF | Product launches |
| Terminal Green | #1A1A1A | #00FF41 | #888888 | Programming-related |
Golden Rules
- Title large, bold, eye-catching (occupies 30-50% of the image)
- Core numbers/keywords visually emphasized (enlarged, color-changed, decorated)
- Cover has high information density → sparks curiosity
- Consistent style across the image set
- Portrait 3:4, fully utilizing screen space
- No signature/watermark
Related Skills
| Skill | Purpose |
|---|---|
wechat-image |
WeChat Official Account images (sister skill) |
image-to-slides |
PPT images (style library source) |
Reference Files
references/style-gallery.md— Complete style library and prompt templatesreferences/design-guidelines.md— Xiaohongshu platform design specifications
Produced by Huashu | AI Native Coder · Indie Developer WeChat Official Account "Huashu" | 300K+ followers | AI tools and productivity enhancement Representative works: Kitten Fill Light (AppStore Paid Chart Top 1) · "One Book to Master DeepSeek"