baoyu-cover-image
Install this skill
npx skills add jimliu/baoyu-skillsWorks across Claude Code, Cursor, Codex, Copilot & Antigravity
The baoyu-cover-image skill automates the creation of thematic header visuals for written content. It processes markdown files or raw text inputs to synthesize imagery that matches the specific mood of your writing. Instead of requiring manual design software, the tool analyzes keywords and document structure to select an appropriate visual styleβranging from hand-drawn sketches and technical blueprints to cinematic dark-mode aesthetics. It generates files within structured local directories, appending timestamps to prevent overwrites, and handles bilingual title rendering. By bridging the gap between content analysis and graphic output, it ensures your documents possess a consistent, professional, and visually relevant appearance without leaving your command-line workflow or agent interface.
When to Use This Skill
- β’Generating blog post banners directly from markdown source files
- β’Creating branded social media images for technical tutorials
- β’Visualizing system design documents with architectural blueprint styles
- β’Producing consistent headers for educational slide decks or handouts
How to Invoke This Skill
Example prompts that trigger this skill in Claude Code, Cursor, or Antigravity:
- βGenerate a cover image for my article at path/to/file.md
- βCreate a blueprint style header for this text
- βMake a 16:9 cover image for the markdown file about system design
- βRun cover generation for the following draft content
- βCreate a minimal visual for my productivity article
Pro Tips
- π‘Experiment with `--style` options: Don't stick to the default; try `blueprint`, `warm`, `dark-atmospheric`, or `minimal` to see which best matches your article's mood and topic.
- π‘Leverage `--aspect` ratios: Use `2.35:1` for a cinematic feel on a landing page, `1:1` for optimal social media presentation, or `16:9` for general widescreen use to maximize visual impact.
- π‘For maximum control, provide clear, concise descriptions of your desired image if using direct text input, or ensure your markdown article has a well-defined title and introduction for best auto-style selection.
What this skill does
- β’Automatic style selection based on semantic content analysis
- β’Support for 20 distinct visual styles including pixel-art, chalkboard, and blueprint
- β’Configurable aspect ratios including 2.35:1, 16:9, and 1:1
- β’Multi-language title text support for global content
- β’Local file management with auto-generated slug-based directories
When not to use it
- βWhen you require complex, custom branding or specific corporate logo placement
- βFor projects demanding photographic realism or high-fidelity human portraiture
Example workflow
- Specify the target markdown file path in the command
- Allow the tool to analyze text topics and keywords
- Override the automatic style if a specific look like 'retro' or 'minimal' is preferred
- Set the desired aspect ratio for the target platform
- Review the generated png file inside the newly created cover-image directory
Prerequisites
- βA local markdown file or prepared text content
- βWrite permissions in the current directory
Pitfalls & limitations
- !Overwriting existing files if the slug-based directory already exists without unique naming
- !The system might misinterpret ambiguous topics, requiring manual style overrides
- !Source file naming convention is strict and requires following the tool's pattern
FAQ
How it compares
Unlike generic image generators that require iterative prompting, this tool automates style selection and directory management, making it optimized for developer documentation and article workflows.
π Full skill instructions β original source: jimliu/baoyu-skills
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 blueprint
/baoyu-cover-image path/to/article.md --style warm
/baoyu-cover-image path/to/article.md --style dark-atmospheric
# 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 ||
flat-doodle | Bold outlines, pastel colors, cute rounded shapes ||
blueprint | Technical schematics, engineering precision ||
bold-editorial | Magazine cover impact, dramatic typography ||
chalkboard | Black chalkboard, colorful chalk drawings ||
dark-atmospheric | Cinematic dark mode, glowing accents ||
editorial-infographic | Magazine explainer, visual storytelling ||
fantasy-animation | Ghibli/Disney inspired, whimsical charm ||
intuition-machine | Technical briefing, bilingual labels ||
minimal | Ultra-clean, zen-like, focused ||
nature | Organic, calm, earthy ||
notion | Clean SaaS dashboard, productivity styling ||
pixel-art | Retro 8-bit, nostalgic gaming aesthetic ||
playful | Fun, creative, whimsical ||
retro | Halftone dots, vintage badges, classic ||
sketch-notes | Hand-drawn, educational, warm ||
vector-illustration | Flat vector, black outlines, retro colors ||
vintage | Aged paper, historical, expedition style ||
warm | Friendly, approachable, human-centered ||
watercolor | Soft hand-painted, natural warmth |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 |
|----------------|----------------|
| Architecture, system design, engineering |
blueprint || Product launch, keynote, marketing, brand |
bold-editorial || Education, classroom, tutorial, teaching |
chalkboard || Entertainment, creative, premium, cinematic |
dark-atmospheric || Technology explainer, science, research |
editorial-infographic || Storytelling, children, fantasy, magical |
fantasy-animation || Technical docs, academic, bilingual |
intuition-machine || Personal story, emotion, growth, life |
warm || Simple, zen, focus, essential |
minimal || Fun, easy, beginner, casual |
playful || Nature, eco, wellness, health, organic |
nature || Pop culture, 80s/90s nostalgia, badges |
retro || Product, SaaS, dashboard, productivity |
notion || Productivity, workflow, app, tools, cute |
flat-doodle || Gaming, retro tech, developer, 8-bit |
pixel-art || Educational, tutorial, knowledge sharing |
sketch-notes || Creative proposals, brand, toy-like |
vector-illustration || History, exploration, heritage, biography |
vintage || Lifestyle, travel, food, personal |
watercolor || Business, professional, strategy, analysis |
elegant |## File Management
### Output Directory
Each session creates an independent directory named by content slug:
cover-image/{topic-slug}/
βββ source-{slug}.{ext} # Source files (text, images, etc.)
βββ prompts/
β βββ cover.md
βββ cover.png**Slug Generation**:
1. Extract main topic from content (2-4 words, kebab-case)
2. Example: "The Future of AI" β
future-of-ai### Conflict Resolution
If
cover-image/{topic-slug}/ already exists:- Append timestamp:
{topic-slug}-YYYYMMDD-HHMMSS- Example:
ai-future exists β ai-future-20260118-143052### Source Files
Copy all sources with naming
source-{slug}.{ext}:-
source-article.md (main text content)-
source-logo.png (image from conversation)Multiple sources supported: text, images, files from conversation.
## Workflow
### Step 1: Analyze Content
1. **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 directory2. **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
3. **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
1. **Style selection**:
- If
--style specified, use that style- Otherwise, scan content for style signals and auto-select 3 candidates
- Default to
elegant if no clear signals2. **Aspect ratio**:
- If
--aspect specified, use that ratio- Otherwise, prepare options: 2.35:1 (cinematic), 16:9 (widescreen), 1:1 (social)
### 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-title flag 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**:
1. Check available image generation skills
2. 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):
1.
.baoyu-skills/baoyu-cover-image/EXTEND.md (project)2.
~/.baoyu-skills/baoyu-cover-image/EXTEND.md (user)If found, load before Step 1. Extension content overrides defaults.
How to Use This Skill Unit
Option A: Project-Specific (Recommended)
- Click "Download" above
- In your project, create the directory:
.agent/skills/baoyu-cover-image/ - Save the file as
SKILL.md - The agent will automatically discover the skill based on its description.
Option B: Global Installation (All Agents)
Save the file to these locations to make it available across all projects:
- Claude Code:
~/.claude/skills/jimliu/baoyu-skills/baoyu-cover-image/SKILL.md - Cursor:
~/.cursor/skills/jimliu/baoyu-skills/baoyu-cover-image/SKILL.md - Antigravity:
~/.gemini/antigravity/skills/jimliu/baoyu-skills/baoyu-cover-image/SKILL.md
π Install with CLI:npx skills add jimliu/baoyu-skills