Cover Image Generator
Generate elegant cover images for articles with 5-dimensional customization.
Usage
CODEBLOCK0
Options
| Option | Description |
|---|
| INLINECODE0 | hero, conceptual, typography, metaphor, scene, minimal |
| INLINECODE1 |
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-title | Alias for
--text none |
|
--quick | Skip confirmation, use auto-selection |
|
--ref <files...> | Reference images for style/composition guidance |
Five Dimensions
| Dimension | Values | Default |
|---|
| Type | hero, conceptual, typography, metaphor, scene, minimal | auto |
| Palette |
warm, elegant, cool, dark, earth, vivid, pastel, mono, retro | auto |
|
Rendering | flat-vector, hand-drawn, painterly, digital, pixel, chalk | auto |
|
Text | none, title-only, title-subtitle, text-rich | title-only |
|
Mood | subtle, balanced, bold | balanced |
|
Font | clean, handwritten, serif, display | clean |
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: INLINECODE15 - INLINECODE16 : INLINECODE17
- INLINECODE18 (default): INLINECODE19
CODEBLOCK1
Slug: 2-4 words, kebab-case. Conflict: append INLINECODE20
Workflow
Progress Checklist
CODEBLOCK2
Flow
CODEBLOCK3
Step 0: Load Preferences ⛔ BLOCKING
Check EXTEND.md existence (priority: project → user):
test -f .tuzi-skills/tuzi-cover-image/EXTEND.md && echo "project"
test -f "$HOME/.tuzi-skills/tuzi-cover-image/EXTEND.md" && echo "user"
| Result | Action |
|---|
| Found | Load, 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
- 1. 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
| Condition | Skipped | Still Asked |
|---|
| INLINECODE22 or INLINECODE23 | 6 dimensions | Aspect ratio (unless --aspect) |
All 6 + --aspect specified |
All | None |
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: INLINECODE30
Reference elements in body MUST be detailed, prefixed with "MUST"/"REQUIRED", with integration approach.
Step 4: Generate Image
- 1. 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
- 4. Generate: Call skill with prompt file, output path, aspect ratio
- On failure: auto-retry once
Step 5: Completion Report
CODEBLOCK5
Image Modification
| Action | Steps |
|---|
| Regenerate | Backup → Update prompt file FIRST → Regenerate |
| Change dimension |
Backup → 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
Workflow: confirm-options.md | prompt-template.md | reference-images.md
Config: preferences-schema.md | first-time-setup.md | watermark-guide.md
封面图片生成器
为文章生成优雅的封面图片,支持5维自定义。
使用方法
bash
根据内容自动选择尺寸
/tuzi-cover-image path/to/article.md
快速模式:跳过确认
/tuzi-cover-image article.md --quick
指定尺寸
/tuzi-cover-image article.md --type conceptual --palette warm --rendering flat-vector
样式预设(调色板+渲染的简写)
/tuzi-cover-image article.md --style blueprint
带参考图片
/tuzi-cover-image article.md --ref style-ref.png
直接输入内容
/tuzi-cover-image --palette mono --aspect 1:1 --quick
[粘贴内容]
选项
| 选项 | 描述 |
|---|
| --type <名称> | hero、conceptual、typography、metaphor、scene、minimal |
| --palette <名称> |
warm、elegant、cool、dark、earth、vivid、pastel、mono、retro |
| --rendering <名称> | flat-vector、hand-drawn、painterly、digital、pixel、chalk |
| --style <名称> | 预设简写(参见
样式预设) |
| --text <级别> | none、title-only、title-subtitle、text-rich |
| --mood <级别> | subtle、balanced、bold |
| --font <名称> | clean、handwritten、serif、display |
| --aspect <比例> | 16:9(默认)、2.35:1、4:3、3:2、1:1、3:4 |
| --lang <代码> | 标题语言(en、zh、ja等) |
| --no-title | --text none的别名 |
| --quick | 跳过确认,使用自动选择 |
| --ref <文件...> | 用于样式/构图指导的参考图片 |
五维参数
| 维度 | 可选值 | 默认值 |
|---|
| 类型 | hero、conceptual、typography、metaphor、scene、minimal | auto |
| 调色板 |
warm、elegant、cool、dark、earth、vivid、pastel、mono、retro | auto |
|
渲染 | flat-vector、hand-drawn、painterly、digital、pixel、chalk | auto |
|
文字 | none、title-only、title-subtitle、text-rich | title-only |
|
氛围 | subtle、balanced、bold | balanced |
|
字体 | clean、handwritten、serif、display | clean |
自动选择规则:references/auto-selection.md
图库
类型:hero、conceptual、typography、metaphor、scene、minimal
→ 详情:references/types.md
调色板:warm、elegant、cool、dark、earth、vivid、pastel、mono、retro
→ 详情:references/palettes/
渲染:flat-vector、hand-drawn、painterly、digital、pixel、chalk
→ 详情:references/renderings/
文字级别:none(纯视觉)| title-only(默认)| title-subtitle | text-rich(带标签)
→ 详情:references/dimensions/text.md
氛围级别:subtle(低对比度)| balanced(默认)| bold(高对比度)
→ 详情:references/dimensions/mood.md
字体:clean(无衬线)| handwritten | serif | display(粗体装饰)
→ 详情:references/dimensions/font.md
文件结构
根据defaultoutputdir偏好设置的输出目录:
- - same-dir:{article-dir}/
- imgs-subdir:{article-dir}/imgs/
- independent(默认):cover-image/{topic-slug}/
<输出目录>/
├── source-{slug}.{ext} # 源文件
├── refs/ # 参考图片(如有提供)
│ ├── ref-01-{slug}.{ext}
│ └── ref-01-{slug}.md # 描述文件
├── prompts/cover.md # 生成提示词
└── cover.png # 输出图片
Slug:2-4个单词,短横线命名。冲突时:追加-YYYYMMDD-HHMMSS
工作流程
进度清单
封面图片进度:
- - [ ] 步骤0:检查偏好设置(EXTEND.md)⛔ 阻塞项
- [ ] 步骤1:分析内容 + 保存参考文件 + 确定输出目录
- [ ] 步骤2:确认选项(6个维度)⚠️ 除非使用--quick
- [ ] 步骤3:创建提示词
- [ ] 步骤4:生成图片
- [ ] 步骤5:完成报告
流程
输入 → [步骤0:偏好设置] ─┬─ 找到 → 继续
└─ 未找到 → 首次设置 ⛔ 阻塞项 → 保存EXTEND.md → 继续
↓
分析 + 保存参考文件 → [输出目录] → [确认:6个维度] → 提示词 → 生成 → 完成
↓
(如果使用--quick或全部指定则跳过)
步骤0:加载偏好设置 ⛔ 阻塞项
检查EXTEND.md是否存在(优先级:项目 → 用户):
bash
test -f .tuzi-skills/tuzi-cover-image/EXTEND.md && echo 项目
test -f $HOME/.tuzi-skills/tuzi-cover-image/EXTEND.md && echo 用户
⛔ 运行首次设置(
references/config/first-time-setup.md)→ 保存 → 继续 |
关键:如果未找到,在任何其他步骤或问题之前完成设置。
步骤1:分析内容
- 1. 保存参考图片(如有提供)→ references/workflow/reference-images.md
- 保存源内容(如果粘贴,保存到source.md)
- 分析内容:主题、语气、关键词、视觉隐喻
- 深度分析参考文件 ⚠️:提取具体、明确的元素(参见reference-images.md)
- 检测语言:比较源文件、用户输入、EXTEND.md偏好设置
- 确定输出目录:根据文件结构规则
步骤2:确认选项 ⚠️
完整确认流程:references/workflow/confirm-options.md
| 条件 | 跳过项 | 仍需询问项 |
|---|
| --quick或quick_mode: true | 6个维度 | 宽高比(除非使用--aspect) |
| 全部6个 + --aspect已指定 |
全部 | 无 |
步骤3:创建提示词
保存到prompts/cover.md。模板:references/workflow/prompt-template.md
关键 - 前置元数据中的参考文件:
- - 文件保存到refs/ → 添加到前置元数据references列表
- 口头提取的样式(无文件)→ 省略references,在正文中描述
- 写入前 → 验证:test -f refs/ref-NN-{slug}.{ext}
正文中的参考元素必须详细,前缀为MUST/REQUIRED,并说明整合方法。
步骤4:生成图片
- 1. 备份现有cover.png(如果重新生成)
- 检查图片生成技能;如果有多个,询问偏好
- 处理提示词前置元数据中的参考文件:
- 直接使用 → 通过--ref传递(使用支持参考文件的后端)
- 样式/调色板 → 提取特征,追加到提示词
- 4. 生成:使用提示词文件、输出路径、宽高比调用技能
- 失败时:自动重试一次
步骤5:完成报告
封面已生成!
主题:[主题]
类型:[类型] | 调色板:[调色板] | 渲染:[渲染]
文字:[文字] | 氛围:[氛围] |