cover-image

生成具有五个维度(类型、配色、渲染、文字、氛围)的文章封面图,可组合9种配色方案与6种渲染风格。支持电影宽银幕(2.35:1)、宽屏(16:9)和方形(1:1)长宽比。当用户请求“生成封面图”、“创建文章封面”或“制作封面”时使用。

安装

热度:21

下载并解压到你的 skills 目录

复制命令,发送给 OpenClaw 自动安装:

下载并安装这个技能 https://openskills.cc/api/download?slug=ginobefun-skills-cover-image&locale=zh&source=copy
name:cover-imagedescription: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", or "make cover".

Cover Image Generator

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

Usage

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

# Quick mode: skip confirmation
/cover-image article.md --quick

# Specify dimensions
/cover-image article.md --type conceptual --palette warm --rendering flat-vector

# Style presets (shorthand for palette + rendering)
/cover-image article.md --style blueprint

# With reference images
/cover-image article.md --ref style-ref.png

# Direct content input
/cover-image --palette mono --aspect 1:1 --quick
[paste content]

Options

OptionDescription
--type <name>hero, conceptual, typography, metaphor, scene, minimal
--palette <name>warm, elegant, cool, dark, earth, vivid, pastel, mono, retro
--rendering <name>flat-vector, hand-drawn, painterly, digital, pixel, chalk
--style <name>Preset shorthand (see Style Presets)
--text <level>none, title-only, title-subtitle, text-rich
--mood <level>subtle, balanced, bold
--font <name>clean, handwritten, serif, display
--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
--ref <files...>Reference images for style/composition guidance

Five Dimensions

DimensionValuesDefault
Typehero, conceptual, typography, metaphor, scene, minimalauto
Palettewarm, elegant, cool, dark, earth, vivid, pastel, mono, retroauto
Renderingflat-vector, hand-drawn, painterly, digital, pixel, chalkauto
Textnone, title-only, title-subtitle, text-richtitle-only
Moodsubtle, balanced, boldbalanced
Fontclean, handwritten, serif, displayclean

Auto-selection rules: references/auto-selection.md

Galleries

Types: hero, conceptual, typography, metaphor, scene, minimal
→ Details: references/types.md

Palettes: warm, elegant, cool, dark, earth, vivid, pastel, mono, retro
→ Details: references/palettes/

Renderings: flat-vector, hand-drawn, painterly, digital, pixel, chalk
→ Details: references/renderings/

Text Levels: none (pure visual) | title-only (default) | title-subtitle | text-rich (with tags)
→ Details: references/dimensions/text.md

Mood Levels: subtle (low contrast) | balanced (default) | bold (high contrast)
→ Details: references/dimensions/mood.md

Fonts: clean (sans-serif) | handwritten | serif | display (bold decorative)
→ Details: references/dimensions/font.md

File Structure

Output directory per default_output_dir preference:

  • same-dir: {article-dir}/

  • imgs-subdir: {article-dir}/imgs/

  • independent (default): cover-image/{topic-slug}/
  • <output-dir>/
    ├── source-{slug}.{ext}    # Source files
    ├── refs/                  # Reference images (if provided)
    │   ├── ref-01-{slug}.{ext}
    │   └── ref-01-{slug}.md   # Description file
    ├── prompts/cover.md       # Generation prompt
    └── cover.png              # Output image

    Slug: 2-4 words, kebab-case. Conflict: append -YYYYMMDD-HHMMSS

    Workflow

    Progress Checklist

    Cover Image Progress:
    - [ ] Step 0: Check preferences (EXTEND.md) ⛔ BLOCKING
    - [ ] Step 1: Analyze content + save refs + determine output dir
    - [ ] Step 2: Confirm options (6 dimensions) ⚠️ unless --quick
    - [ ] Step 3: Create prompt
    - [ ] Step 4: Generate image
    - [ ] Step 5: Completion report

    Flow

    Input → [Step 0: Preferences] ─┬─ Found → Continue
                                   └─ Not found → First-Time Setup ⛔ BLOCKING → Save EXTEND.md → Continue
            ↓
    Analyze + Save Refs → [Output Dir] → [Confirm: 6 Dimensions] → Prompt → Generate → Complete
                                                  ↓
                                         (skip if --quick or all specified)

    Step 0: Load Preferences ⛔ BLOCKING

    Check EXTEND.md existence (priority: project → user):

    # macOS, Linux, WSL, Git Bash
    test -f .gino-skills/cover-image/EXTEND.md && echo "project"
    test -f "$HOME/.gino-skills/cover-image/EXTEND.md" && echo "user"

    # PowerShell (Windows)
    if (Test-Path .gino-skills/cover-image/EXTEND.md) { "project" }
    if (Test-Path "$HOME/.gino-skills/cover-image/EXTEND.md") { "user" }

    ResultAction
    FoundLoad, display summary → Continue
    Not found⛔ Run first-time setup (references/config/first-time-setup.md) → Save → Continue

    CRITICAL: If not found, complete setup BEFORE any other steps or questions.

    Step 1: Analyze Content

  • Save reference images (if provided) → references/workflow/reference-images.md

  • Save source content (if pasted, save to source.md)

  • Analyze content: topic, tone, keywords, visual metaphors

  • Deep analyze references ⚠️: Extract specific, concrete elements (see reference-images.md)

  • Detect language: Compare source, user input, EXTEND.md preference

  • Determine output directory: Per File Structure rules
  • Step 2: Confirm Options ⚠️

    Full confirmation flow: references/workflow/confirm-options.md

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

    Step 3: Create Prompt

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

    CRITICAL - References in Frontmatter:

  • Files saved to refs/ → Add to frontmatter references list

  • Style extracted verbally (no file) → Omit references, describe in body

  • Before writing → Verify: test -f refs/ref-NN-{slug}.{ext}
  • Reference elements in body MUST be detailed, prefixed with "MUST"/"REQUIRED", with integration approach.

    Step 4: Generate Image

  • Backup existing cover.png if regenerating

  • Check image generation skills; if multiple, ask preference

  • Process references from prompt frontmatter:

  • - direct usage → pass via --ref (use ref-capable backend)
    - style/palette → extract traits, append to prompt
  • Generate: Call skill with prompt file, output path, aspect ratio

  • On failure: auto-retry once
  • Step 5: Completion Report

    Cover Generated!
    
    Topic: [topic]
    Type: [type] | Palette: [palette] | Rendering: [rendering]
    Text: [text] | Mood: [mood] | Font: [font] | Aspect: [ratio]
    Title: [title or "visual only"]
    Language: [lang] | Watermark: [enabled/disabled]
    References: [N images or "extracted style" or "none"]
    Location: [directory path]
    
    Files:
    ✓ source-{slug}.{ext}
    ✓ prompts/cover.md
    ✓ cover.png

    Image Modification

    ActionSteps
    RegenerateBackup → Update prompt file FIRST → Regenerate
    Change dimensionBackup → Confirm new value → Update prompt → Regenerate

    Composition Principles

  • Whitespace: 40-60% breathing room

  • Visual anchor: Main element centered or offset left

  • Characters: Simplified silhouettes; NO realistic humans

  • Title: Use exact title from user/source; never invent
  • Extension Support

    Custom configurations via EXTEND.md. See Step 0 for paths.

    Supports: Watermark | Preferred dimensions | Default aspect/output | Quick mode | Custom palettes | Language

    Schema: references/config/preferences-schema.md

    References

    Dimensions: text.md | mood.md | font.md
    Palettes: references/palettes/
    Renderings: references/renderings/
    Types: references/types.md
    Auto-Selection: references/auto-selection.md
    Style Presets: references/style-presets.md
    Compatibility: references/compatibility.md
    Visual Elements: references/visual-elements.md