or run

tessl search
Log in

baoyu-cover-image

tessl install github:jimliu/baoyu-skills --skill baoyu-cover-image

github.com/jimliu/baoyu-skills

Generates article cover images with 5 dimensions (type, palette, rendering, text, mood) combining 9 color palettes and 6 rendering styles. Supports cinematic (2.35:1), widescreen (16:9), and square (1:1) aspects. Use when user asks to "generate cover image", "create article cover", "make cover", or mentions "封面图".

Review Score

92%

Validation Score

14/16

Implementation Score

85%

Activation Score

100%

Cover Image Generator

Generate elegant cover images for articles with 5-dimensional customization.

Usage

# Auto-select all dimensions based on content
/baoyu-cover-image path/to/article.md

# Quick mode: skip confirmation, use auto-selection
/baoyu-cover-image article.md --quick

# Specify dimensions (new 5D system)
/baoyu-cover-image article.md --type conceptual --palette warm --rendering flat-vector
/baoyu-cover-image article.md --text title-subtitle --mood bold

# Style presets (backward-compatible shorthand for palette + rendering)
/baoyu-cover-image article.md --style blueprint
/baoyu-cover-image article.md --style blueprint --rendering hand-drawn  # override rendering

# Visual only (no title text)
/baoyu-cover-image article.md --no-title

# Direct content input
/baoyu-cover-image
[paste content]

# Direct input with options
/baoyu-cover-image --palette mono --rendering digital --aspect 1:1 --quick
[paste content]

Options

OptionDescription
--type <name>Cover type: hero, conceptual, typography, metaphor, scene, minimal
--palette <name>Color palette: warm, elegant, cool, dark, earth, vivid, pastel, mono, retro
--rendering <name>Rendering style: flat-vector, hand-drawn, painterly, digital, pixel, chalk
--style <name>Preset shorthand (expands to palette + rendering, see Style Presets)
--text <level>Text density: none, title-only, title-subtitle, text-rich
--mood <level>Emotional intensity: subtle, balanced, bold
--aspect <ratio>16:9 (default), 2.35:1, 4:3, 3:2, 1:1, 3:4
--lang <code>Title language (en, zh, ja, etc.)
--no-titleAlias for --text none
--quickSkip confirmation, use auto-selection for missing dimensions

Five Dimensions

DimensionControlsValuesDefault
TypeVisual composition, information structurehero, conceptual, typography, metaphor, scene, minimalauto
PaletteColors, color scheme, decorative hintswarm, elegant, cool, dark, earth, vivid, pastel, mono, retroauto
RenderingLine quality, texture, depth, element styleflat-vector, hand-drawn, painterly, digital, pixel, chalkauto
TextText density, information hierarchynone, title-only, title-subtitle, text-richtitle-only
MoodEmotional intensity, visual weightsubtle, balanced, boldbalanced

Dimensions can be freely combined. Auto-selection rules: references/auto-selection.md

Type Gallery

TypeDescriptionBest For
heroLarge visual impact, title overlayProduct launch, brand promotion, major announcements
conceptualConcept visualization, abstract core ideasTechnical articles, methodology, architecture design
typographyText-focused layout, prominent titleOpinion pieces, quotes, insights
metaphorVisual metaphor, concrete expressing abstractPhilosophy, growth, personal development
sceneAtmospheric scene, narrative feelStories, travel, lifestyle
minimalMinimalist composition, generous whitespaceZen, focus, core concepts

Type composition details: references/types.md

Palette Gallery

PaletteVibePrimary Colors
warmFriendly, approachableOrange, golden yellow, terracotta
elegantSophisticated, refinedSoft coral, muted teal, dusty rose
coolTechnical, professionalEngineering blue, navy, cyan
darkCinematic, premiumElectric purple, cyan, magenta
earthNatural, organicForest green, sage, earth brown
vividEnergetic, boldBright red, neon green, electric blue
pastelGentle, whimsicalSoft pink, mint, lavender
monoClean, focusedBlack, near-black, white
retroNostalgic, vintageMuted orange, dusty pink, maroon

Palette definitions: references/palettes/

Rendering Gallery

RenderingDescriptionKey Characteristics
flat-vectorClean modern vectorUniform outlines, flat fills, geometric icons
hand-drawnSketchy organic illustrationImperfect strokes, paper texture, doodles
painterlySoft watercolor/paintBrush strokes, color bleeds, soft edges
digitalPolished modern digitalPrecise edges, subtle gradients, UI components
pixelRetro 8-bit pixel artPixel grid, dithering, chunky shapes
chalkChalk on blackboardChalk strokes, dust effects, board texture

Rendering definitions: references/renderings/

Text & Mood

Text LevelTitleSubtitleTagsUse Case
none---Pure visual, no text
title-only✓ (≤8 字)--Simple headline (default)
title-subtitle✓ (≤15 字)-Title + supporting context
text-rich✓ (2-4)Information-dense
MoodContrastSaturationWeightUse Case
subtleLowMutedLightCorporate, thought leadership
balancedMediumNormalMediumGeneral articles (default)
boldHighVividHeavyAnnouncements, promotions

Full guides: references/dimensions/text.md | references/dimensions/mood.md

Style Presets & Compatibility

  • Style Presets: --style X expands to palette + rendering. See references/style-presets.md
  • Compatibility Matrices: Palette×Rendering, Type×Rendering, Type×Text, Type×Mood. See references/compatibility.md
    • ✓✓ = highly recommended | ✓ = compatible | ✗ = not recommended

File Structure

Output directory depends on default_output_dir preference:

PreferenceOutput Path
same-dir{article-dir}/
imgs-subdir{article-dir}/imgs/
independent (default)cover-image/{topic-slug}/
Pasted contentcover-image/{topic-slug}/ (always)
<output-dir>/
├── source-{slug}.{ext}    # Source files (text, images, etc.)
├── prompts/cover.md       # Generation prompt
└── cover.png              # Output image

Slug: Extract main topic (2-4 words, kebab-case). Example: "The Future of AI" → future-of-ai Conflict: If directory exists, append timestamp: {topic-slug}-YYYYMMDD-HHMMSS Source Files: Copy all sources with naming source-{slug}.{ext} (multiple supported)

Workflow

Progress Checklist

Cover Image Progress:
- [ ] Step 0: Check preferences (EXTEND.md) ⚠️ REQUIRED if not found
- [ ] Step 1: Analyze content + determine output directory ⚠️ MUST ask if not configured
- [ ] Step 2: Confirm options (5 dimensions) ⚠️ REQUIRED unless --quick or all specified
- [ ] Step 3: Create prompt
- [ ] Step 4: Generate image
- [ ] Step 5: Completion report

Flow

Input → [Step 0: Preferences/Setup] → Analyze → [Output Dir ⚠️] → [Confirm: 5 Dimensions] → Prompt → Generate → Complete
                                                                          ↓
                                                                  (skip if --quick or all specified)

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-cover-image/EXTEND.md && echo "project"

# Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.baoyu-skills/baoyu-cover-image/EXTEND.md" && echo "user"
ResultAction
FoundRead, parse, display preferences summary → Continue to Step 1
Not found⚠️ MUST run first-time setup (references/config/first-time-setup.md) → Then continue to Step 1

Preferences Summary (when found):

Preferences loaded from [project/user]:
• Watermark: [enabled/disabled] [content if enabled]
• Type/Palette/Rendering: [value or "auto"]
• Text: [value or "title-only"] | Mood: [value or "balanced"]
• Aspect: [default_aspect] | Output: [dir or "not set — will ask in Step 1.5"]
• Quick mode: [enabled/disabled] | Language: [value or "auto"]

EXTEND.md Supports: Watermark | Preferred type | Preferred palette | Preferred rendering | Preferred text | Preferred mood | Default aspect ratio | Default output directory | Quick mode | Custom palette definitions | Language preference

Schema: references/config/preferences-schema.md

Step 1: Analyze Content

  1. Save source content (if pasted, save to source.md in target directory; if file path, use as-is)
  2. Content analysis: Extract topic, core message, tone, keywords; identify visual metaphors; detect content type
  3. Language detection: Detect source language, note user's input language, compare with EXTEND.md preference
  4. Determine output directory per File Structure rules. If no default_output_dir preference + file path input, include in Step 2 Q4

Step 2: Confirm Options ⚠️

Validate all 5 dimensions + aspect ratio. Full confirmation flow: references/workflow/confirm-options.md

Skip Conditions:

ConditionSkippedStill Asked
--quick or quick_mode: true5 dimensionsAspect ratio (unless --aspect)
All 5 + --aspect specifiedAllNone

Step 3: Create Prompt

Save to prompts/cover.md. Full template: references/workflow/prompt-template.md

Step 4: Generate Image

  1. Backup existing cover.pngcover-backup-YYYYMMDD-HHMMSS.png (if regenerating)
  2. Check available image generation skills; if multiple, ask user preference
  3. Call selected skill with prompt file path, output path (cover.png), aspect ratio
  4. On failure: auto-retry once before reporting error

Step 5: Completion Report

Cover Generated!

Topic: [topic]
Type: [type] | Palette: [palette] | Rendering: [rendering]
Text: [text] | Mood: [mood] | Aspect: [ratio]
Title: [title text or "visual only"]
Language: [lang] | Watermark: [enabled/disabled]
Location: [directory path]

Files:
✓ source-{slug}.{ext}
✓ prompts/cover.md
✓ cover.png
[✓ cover-backup-{timestamp}.png (if regenerated)]

Image Modification

ActionSteps
RegenerateBackup existing → Update prompt file FIRST → Regenerate with same settings
Change dimensionBackup existing → Confirm new value → Update prompt file FIRST → Regenerate

IMPORTANT: When regenerating, ALWAYS update the prompt file (prompts/cover.md) FIRST before regenerating. This ensures changes are documented and reproducible.

All modifications automatically backup existing cover.png before regenerating.

Notes

  • Cover must be readable at small preview sizes
  • Visual metaphors > literal representations
  • Title: max 8 chars, readable, impactful
  • Two confirmation points: Step 0 (first-time setup) + Step 2 (options) - skip Step 2 with --quick
  • Use confirmed language for title text
  • Maintain watermark consistency if enabled
  • Check compatibility matrices when selecting combinations
  • --no-title is alias for --text none
  • --style presets are backward-compatible; explicit --palette/--rendering override preset values

References

Dimensions: text.md | mood.md Palettes: references/palettes/ Renderings: references/renderings/ Auto-Selection: references/auto-selection.md Style Presets: references/style-presets.md Compatibility: references/compatibility.md Types: references/types.md Workflow: confirm-options.md | prompt-template.md Config: preferences-schema.md | first-time-setup.md | watermark-guide.md