Generate elegant cover images for articles. Analyzes content and creates eye-catching hand-drawn style cover images with multiple style options. Use when user asks to "generate cover image", "create article cover", or "make a cover for article".
Installation
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
skills listSkill Instructions
name: baoyu-cover-image description: Generate elegant cover images for articles. Analyzes content and creates eye-catching hand-drawn style cover images with multiple style options. Use when user asks to "generate cover image", "create article cover", or "make a cover for article".
Cover Image Generator
Generate hand-drawn style cover images for articles with multiple style options.
Usage
# From markdown file (auto-select style based on content)
/baoyu-cover-image path/to/article.md
# Specify a style
/baoyu-cover-image path/to/article.md --style tech
/baoyu-cover-image path/to/article.md --style warm
/baoyu-cover-image path/to/article.md --style bold
# Without title text
/baoyu-cover-image path/to/article.md --no-title
# Combine options
/baoyu-cover-image path/to/article.md --style minimal --no-title
# From direct text input
/baoyu-cover-image
[paste content or describe the topic]
# Direct input with style
/baoyu-cover-image --style playful
[paste content]
Options
| Option | Description |
|---|---|
--style <name> | Specify cover style (see Style Gallery below) |
--aspect <ratio> | Aspect ratio: 2.35:1 (cinematic, default), 16:9 (widescreen), 1:1 (social) |
--lang <code> | Output language for title text (en, zh, ja, etc.) |
--no-title | Generate cover without title text (visual only) |
Style Gallery
| Style | Description |
|---|---|
elegant (Default) | Refined, sophisticated, understated |
tech | Modern, clean, futuristic |
warm | Friendly, approachable, human-centered |
bold | High contrast, attention-grabbing, energetic |
minimal | Ultra-clean, zen-like, focused |
playful | Fun, creative, whimsical |
nature | Organic, calm, earthy |
retro | Vintage, nostalgic, classic |
Detailed style definitions: references/styles/<style>.md
Auto Style Selection
When no --style is specified, the system analyzes content to select the best style:
| Content Signals | Selected Style |
|---|---|
| AI, coding, tech, digital, algorithm | tech |
| Personal story, emotion, growth, life | warm |
| Controversial, urgent, must-read, warning | bold |
| Simple, zen, focus, essential | minimal |
| Fun, easy, beginner, casual, tutorial | playful |
| Nature, eco, wellness, health, organic | nature |
| History, classic, vintage, old, traditional | retro |
| Business, professional, strategy, analysis | elegant |
File Management
With Article Path
Save to [source-name-no-ext]/cover-image/ subdirectory in the same folder as the article:
path/to/
├── article.md
└── article/
└── cover-image/
├── prompts/
│ └── cover.md
└── cover.png
Example: /posts/ai-future.md → /posts/ai-future/cover-image/
Without Article Path (Pasted Content)
Save to ./cover-image/[topic-slug]/:
cover-image/
└── ai-future/
├── source.md # Saved pasted content
├── prompts/
│ └── cover.md
└── cover.png
Directory Backup
If target directory exists, rename existing to <dirname>-backup-YYYYMMDD-HHMMSS
Workflow
Step 1: Analyze Content
-
Save source content (if not already a file):
- If user provides a file path: use as-is
- If user pastes content: save to
source.mdin target directory
-
Extract key information:
- Main topic: What is the article about?
- Core message: What's the key takeaway?
- Tone: Serious, playful, inspiring, educational?
- Keywords: Identify style-signaling words
-
Language detection:
- Detect source language from content
- Detect user language from conversation context
- Note if source_language ≠ user_language (will ask in Step 3)
Step 2: Determine Options
-
Style selection:
- If
--stylespecified, use that style - Otherwise, scan content for style signals and auto-select 3 candidates
- Default to
elegantif no clear signals
- If
-
Aspect ratio:
- If
--aspectspecified, use that ratio - Otherwise, prepare options: 2.35:1 (cinematic), 16:9 (widescreen), 1:1 (social)
- If
Step 3: Confirm Options
Purpose: Let user confirm all options in a single step before generation.
IMPORTANT: Present ALL options in a single confirmation step using AskUserQuestion. Do NOT interrupt workflow with multiple separate confirmations.
Determine which questions to ask:
| Question | When to Ask |
|---|---|
| Style | Always (required) |
| Aspect ratio | Always (offer common options) |
| Language | Only if source_language ≠ user_language |
Present options (use AskUserQuestion with all applicable questions):
Question 1 (Style) - always:
- Style A (recommended): [style name] - [brief description]
- Style B: [style name] - [brief description]
- Style C: [style name] - [brief description]
- Custom: Provide custom style reference
Question 2 (Aspect) - always:
- 2.35:1 Cinematic (Recommended) - ultra-wide, dramatic
- 16:9 Widescreen - standard video/presentation
- 1:1 Square - social media optimized
Question 3 (Language) - only if source ≠ user language:
- [Source language] (matches content)
- [User language] (your preference)
Language handling:
- If source language = user language: Just inform user (e.g., "Title will be in Chinese")
- If different: Ask which language to use for title text
Step 4: Generate Cover Concept
Create a cover image concept based on selected style:
Title (if included, max 8 characters):
- Distill the core message into a punchy headline
- Use hooks: numbers, questions, contrasts, pain points
- Skip if
--no-titleflag is used
Visual Elements:
- Style-appropriate imagery and icons
- 1-2 symbolic elements representing the topic
- Metaphors or analogies that fit the style
Step 5: Create Prompt File
Save prompt to prompts/cover.md with confirmed options.
All prompts are written in the user's confirmed language preference.
Prompt Format:
Cover theme: [topic in 2-3 words]
Style: [selected style name]
Aspect ratio: [confirmed aspect ratio]
[If title included:]
Title text: [8 characters or less, in confirmed language]
Subtitle: [optional, in confirmed language]
Visual composition:
- Main visual: [description matching style]
- Layout: [positioning based on title inclusion and aspect ratio]
- Decorative elements: [style-appropriate elements]
Color scheme:
- Primary: [style primary color]
- Background: [style background color]
- Accent: [style accent color]
Style notes: [specific style characteristics to emphasize]
[If no title:]
Note: No title text, pure visual illustration only.
Step 6: Generate Image
Image Generation Skill Selection:
- Check available image generation skills
- If multiple skills available, ask user to choose
Generation: Call selected image generation skill with prompt file, output path, and confirmed aspect ratio.
Step 7: Output Summary
Cover Image Generated!
Topic: [topic]
Style: [style name]
Aspect: [aspect ratio]
Title: [cover title] (or "No title - visual only")
Language: [confirmed language]
Location: [output path]
Preview the image to verify it matches your expectations.
Notes
- Cover should be instantly understandable at small preview sizes
- Title (if included) must be readable and impactful
- Visual metaphors work better than literal representations
- Maintain style consistency throughout the cover
- Image generation typically takes 10-30 seconds
- Title text uses user's confirmed language preference
- Aspect ratio: 2.35:1 for cinematic/dramatic, 16:9 for widescreen, 1:1 for social media
Extension Support
Custom styles and configurations via EXTEND.md.
Check paths (priority order):
.baoyu-skills/baoyu-cover-image/EXTEND.md(project)~/.baoyu-skills/baoyu-cover-image/EXTEND.md(user)
If found, load before Step 1. Extension content overrides defaults.
More by JimLiu
View allGenerate professional slide deck images from content. Creates comprehensive outlines with style instructions, then generates individual slide images. Use when user asks to "create slides", "make a presentation", "generate deck", or "slide deck".
Xiaohongshu (Little Red Book) infographic series generator with multiple style options. Breaks down content into 1-10 cartoon-style infographics. Use when user asks to create "小红书图片", "XHS images", or "RedNote infographics".
Post content and articles to X (Twitter). Supports regular posts with images and X Articles (long-form Markdown). Uses real Chrome with CDP to bypass anti-automation.
Post content to WeChat Official Account (微信公众号). Supports both article posting (文章) and image-text posting (图文).
