baoyu-slide-deck

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Slide Deck Generator

Slide Deck 生成器

Transform content into professional slide deck images.
将内容转换为专业的Slide Deck图片。

Usage

使用方法

bash
/baoyu-slide-deck path/to/content.md
/baoyu-slide-deck path/to/content.md --style sketch-notes
/baoyu-slide-deck path/to/content.md --audience executives
/baoyu-slide-deck path/to/content.md --lang zh
/baoyu-slide-deck path/to/content.md --slides 10
/baoyu-slide-deck path/to/content.md --outline-only
/baoyu-slide-deck  # Then paste content
bash
/baoyu-slide-deck path/to/content.md
/baoyu-slide-deck path/to/content.md --style sketch-notes
/baoyu-slide-deck path/to/content.md --audience executives
/baoyu-slide-deck path/to/content.md --lang zh
/baoyu-slide-deck path/to/content.md --slides 10
/baoyu-slide-deck path/to/content.md --outline-only
/baoyu-slide-deck  # 然后粘贴内容

Script Directory

脚本目录

Agent Execution Instructions:
  1. Determine this SKILL.md file's directory path as
    SKILL_DIR
  2. Script path =
    ${SKILL_DIR}/scripts/<script-name>.ts
ScriptPurpose
scripts/merge-to-pptx.ts
Merge slides into PowerPoint
scripts/merge-to-pdf.ts
Merge slides into PDF
Agent执行说明:
  1. 确定此SKILL.md文件的目录路径为
    SKILL_DIR
  2. 脚本路径 =
    ${SKILL_DIR}/scripts/<script-name>.ts
脚本用途
scripts/merge-to-pptx.ts
将幻灯片合并为PowerPoint文件
scripts/merge-to-pdf.ts
将幻灯片合并为PDF文件

Options

选项

OptionDescription
--style <name>
Visual style: preset name,
custom
, or custom style name
--audience <type>
Target: beginners, intermediate, experts, executives, general
--lang <code>
Output language (en, zh, ja, etc.)
--slides <number>
Target slide count (8-25 recommended, max 30)
--outline-only
Generate outline only, skip image generation
--prompts-only
Generate outline + prompts, skip images
--images-only
Generate images from existing prompts directory
--regenerate <N>
Regenerate specific slide(s):
--regenerate 3
or
--regenerate 2,5,8
Slide Count by Content Length:
ContentSlides
< 1000 words5-10
1000-3000 words10-18
3000-5000 words15-25
> 5000 words20-30 (consider splitting)
选项描述
--style <name>
视觉样式:预设名称、
custom
或自定义样式名称
--audience <type>
目标受众:beginners(初学者)、intermediate(中级用户)、experts(专家)、executives(高管)、general(普通用户)
--lang <code>
输出语言(en、zh、ja等)
--slides <number>
目标幻灯片数量(推荐8-25张,最多30张)
--outline-only
仅生成大纲,跳过图片生成
--prompts-only
生成大纲和提示词,跳过图片生成
--images-only
根据现有提示词目录生成图片
--regenerate <N>
重新生成特定幻灯片:
--regenerate 3
--regenerate 2,5,8
根据内容长度推荐幻灯片数量:
内容幻灯片数量
少于1000词5-10张
1000-3000词10-18张
3000-5000词15-25张
超过5000词20-30张(建议拆分内容)

Style System

样式系统

Presets

预设样式

PresetDimensionsBest For
blueprint
(Default)
grid + cool + technical + balancedArchitecture, system design
chalkboard
organic + warm + handwritten + balancedEducation, tutorials
corporate
clean + professional + geometric + balancedInvestor decks, proposals
minimal
clean + neutral + geometric + minimalExecutive briefings
sketch-notes
organic + warm + handwritten + balancedEducational, tutorials
watercolor
organic + warm + humanist + minimalLifestyle, wellness
dark-atmospheric
clean + dark + editorial + balancedEntertainment, gaming
notion
clean + neutral + geometric + denseProduct demos, SaaS
bold-editorial
clean + vibrant + editorial + balancedProduct launches, keynotes
editorial-infographic
clean + cool + editorial + denseTech explainers, research
fantasy-animation
organic + vibrant + handwritten + minimalEducational storytelling
intuition-machine
clean + cool + technical + denseTechnical docs, academic
pixel-art
pixel + vibrant + technical + balancedGaming, developer talks
scientific
clean + cool + technical + denseBiology, chemistry, medical
vector-illustration
clean + vibrant + humanist + balancedCreative, children's content
vintage
paper + warm + editorial + balancedHistorical, heritage
预设特点适用场景
blueprint
(默认)
网格+冷色调+技术感+平衡架构设计、系统设计
chalkboard
有机风格+暖色调+手写体+平衡教育、教程
corporate
简洁+专业+几何风格+平衡投资者演示文档、提案
minimal
简洁+中性色调+几何风格+极简高管简报
sketch-notes
有机风格+暖色调+手写体+平衡教育、教程
watercolor
有机风格+暖色调+人文风格+极简生活方式、健康养生
dark-atmospheric
简洁+深色+社论风格+平衡娱乐、游戏
notion
简洁+中性色调+几何风格+信息密集产品演示、SaaS
bold-editorial
简洁+鲜艳色调+社论风格+平衡产品发布、主题演讲
editorial-infographic
简洁+冷色调+社论风格+信息密集技术讲解、研究报告
fantasy-animation
有机风格+鲜艳色调+手写体+极简教育类故事内容
intuition-machine
简洁+冷色调+技术感+信息密集技术文档、学术内容
pixel-art
像素风格+鲜艳色调+技术感+平衡游戏、开发者演讲
scientific
简洁+冷色调+技术感+信息密集生物学、化学、医学
vector-illustration
简洁+鲜艳色调+人文风格+平衡创意内容、儿童内容
vintage
纸张质感+暖色调+社论风格+平衡历史、文化遗产

Style Dimensions

样式维度

DimensionOptionsDescription
Textureclean, grid, organic, pixel, paperVisual texture and background treatment
Moodprofessional, warm, cool, vibrant, dark, neutralColor temperature and palette style
Typographygeometric, humanist, handwritten, editorial, technicalHeadline and body text styling
Densityminimal, balanced, denseInformation density per slide
Full specs:
references/dimensions/*.md
维度选项描述
纹理(Texture)clean, grid, organic, pixel, paper视觉纹理和背景处理
色调(Mood)professional, warm, cool, vibrant, dark, neutral色温与调色板风格
排版(Typography)geometric, humanist, handwritten, editorial, technical标题和正文字体样式
信息密度(Density)minimal, balanced, dense单张幻灯片的信息密度
完整规格:
references/dimensions/*.md

Auto Style Selection

自动样式选择

Content SignalsPreset
tutorial, learn, education, guide, beginner
sketch-notes
classroom, teaching, school, chalkboard
chalkboard
architecture, system, data, analysis, technical
blueprint
creative, children, kids, cute
vector-illustration
briefing, academic, research, bilingual
intuition-machine
executive, minimal, clean, simple
minimal
saas, product, dashboard, metrics
notion
investor, quarterly, business, corporate
corporate
launch, marketing, keynote, magazine
bold-editorial
entertainment, music, gaming, atmospheric
dark-atmospheric
explainer, journalism, science communication
editorial-infographic
story, fantasy, animation, magical
fantasy-animation
gaming, retro, pixel, developer
pixel-art
biology, chemistry, medical, scientific
scientific
history, heritage, vintage, expedition
vintage
lifestyle, wellness, travel, artistic
watercolor
Default
blueprint
内容信号预设样式
tutorial, learn, education, guide, beginner
sketch-notes
classroom, teaching, school, chalkboard
chalkboard
architecture, system, data, analysis, technical
blueprint
creative, children, kids, cute
vector-illustration
briefing, academic, research, bilingual
intuition-machine
executive, minimal, clean, simple
minimal
saas, product, dashboard, metrics
notion
investor, quarterly, business, corporate
corporate
launch, marketing, keynote, magazine
bold-editorial
entertainment, music, gaming, atmospheric
dark-atmospheric
explainer, journalism, science communication
editorial-infographic
story, fantasy, animation, magical
fantasy-animation
gaming, retro, pixel, developer
pixel-art
biology, chemistry, medical, scientific
scientific
history, heritage, vintage, expedition
vintage
lifestyle, wellness, travel, artistic
watercolor
默认
blueprint

Design Philosophy

设计理念

Decks designed for reading and sharing, not live presentation:
  • Each slide self-explanatory without verbal commentary
  • Logical flow when scrolling
  • All necessary context within each slide
  • Optimized for social media sharing
See
references/design-guidelines.md
for:
  • Audience-specific principles
  • Visual hierarchy
  • Content density guidelines
  • Color and typography selection
  • Font recommendations
See
references/layouts.md
for layout options.
演示文档专为阅读与分享设计,而非现场演示:
  • 每张幻灯片无需口头讲解即可独立理解
  • 滚动浏览时逻辑连贯
  • 所有必要上下文均包含在单张幻灯片内
  • 针对社交媒体分享优化
查看
references/design-guidelines.md
了解:
  • 针对不同受众的设计原则
  • 视觉层级
  • 内容密度指南
  • 颜色与排版选择
  • 字体推荐
查看
references/layouts.md
了解布局选项。

File Management

文件管理

Output Directory

输出目录

slide-deck/{topic-slug}/
├── source-{slug}.{ext}
├── outline.md
├── prompts/
│   └── 01-slide-cover.md, 02-slide-{slug}.md, ...
├── 01-slide-cover.png, 02-slide-{slug}.png, ...
├── {topic-slug}.pptx
└── {topic-slug}.pdf
Slug: Extract topic (2-4 words, kebab-case). Example: "Introduction to Machine Learning" →
intro-machine-learning
Conflict Handling: See Step 1.3 for existing content detection and user options.
slide-deck/{topic-slug}/
├── source-{slug}.{ext}
├── outline.md
├── prompts/
│   └── 01-slide-cover.md, 02-slide-{slug}.md, ...
├── 01-slide-cover.png, 02-slide-{slug}.png, ...
├── {topic-slug}.pptx
└── {topic-slug}.pdf
Slug:提取主题(2-4个词,短横线分隔格式)。示例:"Introduction to Machine Learning" →
intro-machine-learning
冲突处理:查看步骤1.3了解现有内容检测和用户选项。

Language Handling

语言处理

Detection Priority:
  1. --lang
    flag (explicit)
  2. EXTEND.md
    language
    setting
  3. User's conversation language (input language)
  4. Source content language
Rule: ALL responses use user's preferred language:
  • Questions and confirmations
  • Progress reports
  • Error messages
  • Completion summaries
Technical terms (style names, file paths, code) remain in English.
检测优先级:
  1. --lang
    参数(显式指定)
  2. EXTEND.md中的
    language
    设置
  3. 用户对话语言(输入语言)
  4. 源内容语言
规则:所有回复使用用户偏好的语言:
  • 问题与确认信息
  • 进度报告
  • 错误信息
  • 完成总结
技术术语(样式名称、文件路径、代码)保留英文。

Workflow

工作流程

Copy this checklist and check off items as you complete them:
Slide Deck Progress:
- [ ] Step 1: Setup & Analyze
  - [ ] 1.1 Load preferences
  - [ ] 1.2 Analyze content
  - [ ] 1.3 Check existing ⚠️ REQUIRED
- [ ] Step 2: Confirmation ⚠️ REQUIRED (Round 1, optional Round 2)
- [ ] Step 3: Generate outline
- [ ] Step 4: Review outline (conditional)
- [ ] Step 5: Generate prompts
- [ ] Step 6: Review prompts (conditional)
- [ ] Step 7: Generate images
- [ ] Step 8: Merge to PPTX/PDF
- [ ] Step 9: Output summary
复制此清单并在完成各项时勾选:
Slide Deck 进度:
- [ ] 步骤1:设置与分析
  - [ ] 1.1 加载偏好设置
  - [ ] 1.2 分析内容
  - [ ] 1.3 检查现有内容 ⚠️ 必须执行
- [ ] 步骤2:确认 ⚠️ 必须执行(第一轮必填,第二轮可选)
- [ ] 步骤3:生成大纲
- [ ] 步骤4:审核大纲(可选)
- [ ] 步骤5:生成提示词
- [ ] 步骤6:审核提示词(可选)
- [ ] 步骤7:生成图片
- [ ] 步骤8:合并为PPTX/PDF
- [ ] 步骤9:输出总结

Flow

流程

Input → Preferences → Analyze → [Check Existing?] → Confirm (1-2 rounds) → Outline → [Review Outline?] → Prompts → [Review Prompts?] → Images → Merge → Complete
输入 → 偏好设置 → 分析 → [检查现有内容?] → 确认(1-2轮) → 大纲 → [审核大纲?] → 提示词 → [审核提示词?] → 图片 → 合并 → 完成

Step 1: Setup & Analyze

步骤1:设置与分析

1.1 Load Preferences (EXTEND.md)
Use Bash to check EXTEND.md existence (priority order):
bash
undefined
1.1 加载偏好设置(EXTEND.md)
使用Bash检查EXTEND.md是否存在(优先级顺序):
bash
undefined

Check project-level first

优先检查项目级目录

test -f .baoyu-skills/baoyu-slide-deck/EXTEND.md && echo "project"
test -f .baoyu-skills/baoyu-slide-deck/EXTEND.md && echo "project"

Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)

然后检查用户级目录(跨平台:$HOME适用于macOS/Linux/WSL)

test -f "$HOME/.baoyu-skills/baoyu-slide-deck/EXTEND.md" && echo "user"

┌──────────────────────────────────────────────────┬───────────────────┐
│                       Path                       │     Location      │
├──────────────────────────────────────────────────┼───────────────────┤
│ .baoyu-skills/baoyu-slide-deck/EXTEND.md         │ Project directory │
├──────────────────────────────────────────────────┼───────────────────┤
│ $HOME/.baoyu-skills/baoyu-slide-deck/EXTEND.md   │ User home         │
└──────────────────────────────────────────────────┴───────────────────┘

**When EXTEND.md Found** → Read, parse, **output summary to user**:
📋 Loaded preferences from [full path] ├─ Style: [preset/custom name] ├─ Audience: [audience or "auto-detect"] ├─ Language: [language or "auto-detect"] └─ Review: [enabled/disabled]

**When EXTEND.md Not Found** → First-time setup using AskUserQuestion or proceed with defaults.

**EXTEND.md Supports**: Preferred style | Custom dimensions | Default audience | Language preference | Review preference

Schema: `references/config/preferences-schema.md`

**1.2 Analyze Content**

1. Save source content (if pasted, save as `source.md`)
   - **Backup rule**: If `source.md` exists, rename to `source-backup-YYYYMMDD-HHMMSS.md`
2. Follow `references/analysis-framework.md` for content analysis
3. Analyze content signals for style recommendations
4. Detect source language
5. Determine recommended slide count
6. Generate topic slug from content

**1.3 Check Existing Content** ⚠️ REQUIRED

**MUST execute before proceeding to Step 2.**

Use Bash to check if output directory exists:

```bash
test -d "slide-deck/{topic-slug}" && echo "exists"
If directory exists, use AskUserQuestion:
header: "Existing"
question: "Existing content found. How to proceed?"
options:
  - label: "Regenerate outline"
    description: "Keep images, regenerate outline only"
  - label: "Regenerate images"
    description: "Keep outline, regenerate images only"
  - label: "Backup and regenerate"
    description: "Backup to {slug}-backup-{timestamp}, then regenerate all"
  - label: "Exit"
    description: "Cancel, keep existing content unchanged"
Save to
analysis.md
with:
  • Topic, audience, content signals
  • Recommended style (based on Auto Style Selection)
  • Recommended slide count
  • Language detection
test -f "$HOME/.baoyu-skills/baoyu-slide-deck/EXTEND.md" && echo "user"

┌──────────────────────────────────────────────────┬───────────────────┐
│                       路径                       │     位置      │
├──────────────────────────────────────────────────┼───────────────────┤
│ .baoyu-skills/baoyu-slide-deck/EXTEND.md         │ 项目目录 │
├──────────────────────────────────────────────────┼───────────────────┤
│ $HOME/.baoyu-skills/baoyu-slide-deck/EXTEND.md   │ 用户主目录         │
└──────────────────────────────────────────────────┴───────────────────┘

**找到EXTEND.md时** → 读取、解析,**向用户输出摘要**:
📋 从[完整路径]加载偏好设置 ├─ 样式: [预设/自定义名称] ├─ 受众: [受众类型或“自动检测”] ├─ 语言: [语言或“自动检测”] └─ 审核: [启用/禁用]

**未找到EXTEND.md时** → 使用AskUserQuestion进行首次设置,或使用默认值继续。

**EXTEND.md支持**:偏好样式 | 自定义维度 | 默认受众 | 语言偏好 | 审核偏好

Schema:`references/config/preferences-schema.md`

**1.2 分析内容**

1. 保存源内容(如果是粘贴的内容,保存为`source.md`)
   - **备份规则**:如果`source.md`已存在,重命名为`source-backup-YYYYMMDD-HHMMSS.md`
2. 按照`references/analysis-framework.md`进行内容分析
3. 分析内容信号以推荐样式
4. 检测源内容语言
5. 确定推荐的幻灯片数量
6. 从内容中生成主题Slug

**1.3 检查现有内容 ⚠️ 必须执行**

**在进入步骤2之前必须执行此操作。**

使用Bash检查输出目录是否存在:

```bash
test -d "slide-deck/{topic-slug}" && echo "exists"
如果目录已存在,使用AskUserQuestion:
header: "现有内容"
question: "检测到现有内容。请选择处理方式?"
options:
  - label: "重新生成大纲"
    description: "保留图片,仅重新生成大纲"
  - label: "重新生成图片"
    description: "保留大纲,仅重新生成图片"
  - label: "备份后重新生成"
    description: "备份到{slug}-backup-{timestamp},然后重新生成全部内容"
  - label: "退出"
    description: "取消操作,保留现有内容不变"
保存到
analysis.md
,包含:
  • 主题、受众、内容信号
  • 推荐样式(基于自动样式选择)
  • 推荐幻灯片数量
  • 语言检测结果

Step 2: Confirmation ⚠️ REQUIRED

步骤2:确认 ⚠️ 必须执行

Two-round confirmation: Round 1 always, Round 2 only if "Custom dimensions" selected.
Language: Use user's input language or saved language preference.
Display summary:
  • Content type + topic identified
  • Language: [from EXTEND.md or detected]
  • Recommended style: [preset] (based on content signals)
  • Recommended slides: [N] (based on content length)
两轮确认:第一轮必须执行,第二轮仅在选择“自定义维度”时执行。
语言:使用用户输入语言或保存的语言偏好。
显示摘要
  • 识别出的内容类型+主题
  • 语言:[来自EXTEND.md或检测结果]
  • 推荐样式:[预设样式](基于内容信号)
  • 推荐幻灯片数量:[N](基于内容长度)

Round 1 (Always)

第一轮(必须执行)

Use AskUserQuestion for all 5 questions:
Question 1: Style
header: "Style"
question: "Which visual style for this deck?"
options:
  - label: "{recommended_preset} (Recommended)"
    description: "Best match based on content analysis"
  - label: "{alternative_preset}"
    description: "[alternative style description]"
  - label: "Custom dimensions"
    description: "Choose texture, mood, typography, density separately"
Question 2: Audience
header: "Audience"
question: "Who is the primary reader?"
options:
  - label: "General readers (Recommended)"
    description: "Broad appeal, accessible content"
  - label: "Beginners/learners"
    description: "Educational focus, clear explanations"
  - label: "Experts/professionals"
    description: "Technical depth, domain knowledge"
  - label: "Executives"
    description: "High-level insights, minimal detail"
Question 3: Slide Count
header: "Slides"
question: "How many slides?"
options:
  - label: "{N} slides (Recommended)"
    description: "Based on content length"
  - label: "Fewer ({N-3} slides)"
    description: "More condensed, less detail"
  - label: "More ({N+3} slides)"
    description: "More detailed breakdown"
Question 4: Review Outline
header: "Outline"
question: "Review outline before generating prompts?"
options:
  - label: "Yes, review outline (Recommended)"
    description: "Review slide titles and structure"
  - label: "No, skip outline review"
    description: "Proceed directly to prompt generation"
Question 5: Review Prompts
header: "Prompts"
question: "Review prompts before generating images?"
options:
  - label: "Yes, review prompts (Recommended)"
    description: "Review image generation prompts"
  - label: "No, skip prompt review"
    description: "Proceed directly to image generation"
使用AskUserQuestion提出以下5个问题:
问题1:样式
header: "样式选择"
question: "为演示文档选择哪种视觉样式?"
options:
  - label: "{recommended_preset}(推荐)"
    description: "根据内容分析的最佳匹配样式"
  - label: "{alternative_preset}"
    description: "[替代样式描述]"
  - label: "自定义维度"
    description: "分别选择纹理、色调、排版、信息密度"
问题2:受众
header: "目标受众"
question: "主要读者群体是?"
options:
  - label: "普通读者(推荐)"
    description: "受众广泛,内容易于理解"
  - label: "初学者/学习者"
    description: "侧重教育,讲解清晰"
  - label: "专家/专业人士"
    description: "技术深度,领域知识导向"
  - label: "高管"
    description: "高层视角,精简细节"
问题3:幻灯片数量
header: "幻灯片数量"
question: "需要多少张幻灯片?"
options:
  - label: "{N}张(推荐)"
    description: "基于内容长度的推荐数量"
  - label: "更少({N-3}张)"
    description: "内容更凝练,细节更少"
  - label: "更多({N+3}张)"
    description: "内容更详细,拆分更细"
问题4:审核大纲
header: "大纲审核"
question: "生成提示词前是否需要审核大纲?"
options:
  - label: "是,审核大纲(推荐)"
    description: "审核幻灯片标题和结构"
  - label: "否,跳过大纲审核"
    description: "直接进入提示词生成环节"
问题5:审核提示词
header: "提示词审核"
question: "生成图片前是否需要审核提示词?"
options:
  - label: "是,审核提示词(推荐)"
    description: "审核图片生成提示词"
  - label: "否,跳过提示词审核"
    description: "直接进入图片生成环节"

Round 2 (Only if "Custom dimensions" selected)

第二轮(仅当选择“自定义维度”时执行)

Use AskUserQuestion for all 4 dimensions:
Question 1: Texture
header: "Texture"
question: "Which visual texture?"
options:
  - label: "clean"
    description: "Pure solid color, no texture"
  - label: "grid"
    description: "Subtle grid overlay, technical"
  - label: "organic"
    description: "Soft textures, hand-drawn feel"
  - label: "pixel"
    description: "Chunky pixels, 8-bit aesthetic"
(Note: "paper" available via Other)
Question 2: Mood
header: "Mood"
question: "Which color mood?"
options:
  - label: "professional"
    description: "Cool-neutral, navy/gold"
  - label: "warm"
    description: "Earth tones, friendly"
  - label: "cool"
    description: "Blues, grays, analytical"
  - label: "vibrant"
    description: "High saturation, bold"
(Note: "dark", "neutral" available via Other)
Question 3: Typography
header: "Typography"
question: "Which typography style?"
options:
  - label: "geometric"
    description: "Modern sans-serif, clean"
  - label: "humanist"
    description: "Friendly, readable"
  - label: "handwritten"
    description: "Marker/brush, organic"
  - label: "editorial"
    description: "Magazine style, dramatic"
(Note: "technical" available via Other)
Question 4: Density
header: "Density"
question: "Information density?"
options:
  - label: "balanced (Recommended)"
    description: "2-3 key points per slide"
  - label: "minimal"
    description: "One focus point, maximum whitespace"
  - label: "dense"
    description: "Multiple data points, compact"
After Round 2: Store custom dimensions as the style configuration.
After Confirmation:
  1. Update
    analysis.md
    with confirmed preferences
  2. Store
    skip_outline_review
    flag from Question 4
  3. Store
    skip_prompt_review
    flag from Question 5
  4. → Step 3
使用AskUserQuestion提出以下4个维度的问题:
问题1:纹理
header: "纹理选择"
question: "选择哪种视觉纹理?"
options:
  - label: "clean"
    description: "纯纯色背景,无纹理"
  - label: "grid"
    description: "细微网格覆盖,技术感"
  - label: "organic"
    description: "柔和纹理,手绘质感"
  - label: "pixel"
    description: "块状像素,8位复古风格"
(注:“paper”可通过“其他”选项选择)
问题2:色调
header: "色调选择"
question: "选择哪种颜色色调?"
options:
  - label: "professional"
    description: "冷中性色调,深蓝/金色系"
  - label: "warm"
    description: "大地色系,友好感"
  - label: "cool"
    description: "蓝色、灰色系,分析感"
  - label: "vibrant"
    description: "高饱和度,大胆醒目"
(注:“dark”、“neutral”可通过“其他”选项选择)
问题3:排版
header: "排版选择"
question: "选择哪种排版风格?"
options:
  - label: "geometric"
    description: "现代无衬线字体,简洁"
  - label: "humanist"
    description: "友好易读"
  - label: "handwritten"
    description: "马克笔/毛笔字体,有机风格"
  - label: "editorial"
    description: "杂志风格,富有冲击力"
(注:“technical”可通过“其他”选项选择)
问题4:信息密度
header: "信息密度"
question: "选择哪种信息密度?"
options:
  - label: "平衡(推荐)"
    description: "每张幻灯片2-3个关键点"
  - label: "极简"
    description: "单个焦点,最大留白"
  - label: "密集"
    description: "多个数据点,紧凑布局"
第二轮之后:将自定义维度保存为样式配置。
确认完成后
  1. 使用确认后的偏好更新
    analysis.md
  2. 存储问题4中的
    skip_outline_review
    标志
  3. 存储问题5中的
    skip_prompt_review
    标志
  4. → 步骤3

Step 3: Generate Outline

步骤3:生成大纲

Create outline using the confirmed style from Step 2.
Style Resolution:
  • If preset selected → Read
    references/styles/{preset}.md
  • If custom dimensions → Read dimension files from
    references/dimensions/
    and combine
Generate:
  1. Follow
    references/outline-template.md
    for structure
  2. Build STYLE_INSTRUCTIONS from style or dimensions
  3. Apply confirmed audience, language, slide count
  4. Save as
    outline.md
After generation:
  • If
    --outline-only
    , stop here
  • If
    skip_outline_review
    is true → Skip Step 4, go to Step 5
  • If
    skip_outline_review
    is false → Continue to Step 4
使用步骤2中确认的样式创建大纲。
样式解析:
  • 如果选择预设样式 → 读取
    references/styles/{preset}.md
  • 如果选择自定义维度 → 读取
    references/dimensions/
    中的维度文件并组合
生成步骤:
  1. 按照
    references/outline-template.md
    的结构创建
  2. 从样式或维度构建STYLE_INSTRUCTIONS
  3. 应用确认的受众、语言、幻灯片数量
  4. 保存为
    outline.md
生成完成后:
  • 如果使用
    --outline-only
    ,在此处停止
  • 如果
    skip_outline_review
    为true → 跳过步骤4,进入步骤5
  • 如果
    skip_outline_review
    为false → 继续步骤4

Step 4: Review Outline (Conditional)

步骤4:审核大纲(可选)

Skip this step if user selected "No, skip outline review" in Step 2.
Purpose: Review outline structure before prompt generation.
Language: Use user's input language or saved language preference.
Display:
  • Total slides: N
  • Style: [preset name or "custom: texture+mood+typography+density"]
  • Slide-by-slide summary table:
| # | Title | Type | Layout |
|---|-------|------|--------|
| 1 | [title] | Cover | title-hero |
| 2 | [title] | Content | [layout] |
| 3 | [title] | Content | [layout] |
| ... | ... | ... | ... |
Use AskUserQuestion:
header: "Confirm"
question: "Ready to generate prompts?"
options:
  - label: "Yes, proceed (Recommended)"
    description: "Generate image prompts"
  - label: "Edit outline first"
    description: "I'll modify outline.md before continuing"
  - label: "Regenerate outline"
    description: "Create new outline with different approach"
After response:
  1. If "Edit outline first" → Inform user to edit
    outline.md
    , ask again when ready
  2. If "Regenerate outline" → Back to Step 3
  3. If "Yes, proceed" → Continue to Step 5
如果用户在步骤2中选择“否,跳过大纲审核”,则跳过此步骤。
目的:在生成提示词前审核大纲结构。
语言:使用用户输入语言或保存的语言偏好。
显示内容:
  • 总幻灯片数:N
  • 样式:[预设名称或“自定义:纹理+色调+排版+信息密度”]
  • 逐张幻灯片摘要表格:
| 序号 | 标题 | 类型 | 布局 |
|---|-------|------|--------|
| 1 | [标题] | 封面 | title-hero |
| 2 | [标题] | 内容 | [布局] |
| 3 | [标题] | 内容 | [布局] |
| ... | ... | ... | ... |
使用AskUserQuestion:
header: "确认"
question: "是否准备好生成提示词?"
options:
  - label: "是,继续(推荐)"
    description: "生成图片提示词"
  - label: "先编辑大纲"
    description: "我将先修改outline.md再继续"
  - label: "重新生成大纲"
    description: "用不同方式创建新大纲"
回复处理:
  1. 如果选择“先编辑大纲” → 告知用户编辑
    outline.md
    ,准备好后再次询问
  2. 如果选择“重新生成大纲” → 返回步骤3
  3. 如果选择“是,继续” → 继续步骤5

Step 5: Generate Prompts

步骤5:生成提示词

  1. Read
    references/base-prompt.md
  2. For each slide in outline:
    • Extract STYLE_INSTRUCTIONS from outline (not from style file again)
    • Add slide-specific content
    • If
      Layout:
      specified, include layout guidance from
      references/layouts.md
  3. Save to
    prompts/
    directory
    • Backup rule: If prompt file exists, rename to
      prompts/NN-slide-{slug}-backup-YYYYMMDD-HHMMSS.md
After generation:
  • If
    --prompts-only
    , stop here and output prompt summary
  • If
    skip_prompt_review
    is true → Skip Step 6, go to Step 7
  • If
    skip_prompt_review
    is false → Continue to Step 6
  1. 读取
    references/base-prompt.md
  2. 对大纲中的每张幻灯片:
    • 从大纲中提取STYLE_INSTRUCTIONS(不再从样式文件读取)
    • 添加幻灯片特定内容
    • 如果指定了
      Layout:
      ,包含
      references/layouts.md
      中的布局指导
  3. 保存到
    prompts/
    目录
    • 备份规则:如果提示词文件已存在,重命名为
      prompts/NN-slide-{slug}-backup-YYYYMMDD-HHMMSS.md
生成完成后:
  • 如果使用
    --prompts-only
    ,在此处停止并输出提示词摘要
  • 如果
    skip_prompt_review
    为true → 跳过步骤6,进入步骤7
  • 如果
    skip_prompt_review
    为false → 继续步骤6

Step 6: Review Prompts (Conditional)

步骤6:审核提示词(可选)

Skip this step if user selected "No, skip prompt review" in Step 2.
Purpose: Review prompts before image generation.
Language: Use user's input language or saved language preference.
Display:
  • Total prompts: N
  • Style: [preset name or custom dimensions]
  • Prompt list:
| # | Filename | Slide Title |
|---|----------|-------------|
| 1 | 01-slide-cover.md | [title] |
| 2 | 02-slide-xxx.md | [title] |
| ... | ... | ... |
  • Path to prompts directory:
    prompts/
Use AskUserQuestion:
header: "Confirm"
question: "Ready to generate slide images?"
options:
  - label: "Yes, proceed (Recommended)"
    description: "Generate all slide images"
  - label: "Edit prompts first"
    description: "I'll modify prompts before continuing"
  - label: "Regenerate prompts"
    description: "Create new prompts with different approach"
After response:
  1. If "Edit prompts first" → Inform user to edit prompts, ask again when ready
  2. If "Regenerate prompts" → Back to Step 5
  3. If "Yes, proceed" → Continue to Step 7
如果用户在步骤2中选择“否,跳过提示词审核”,则跳过此步骤。
目的:在生成图片前审核提示词。
语言:使用用户输入语言或保存的语言偏好。
显示内容:
  • 总提示词数:N
  • 样式:[预设名称或自定义维度]
  • 提示词列表:
| 序号 | 文件名 | 幻灯片标题 |
|---|----------|-------------|
| 1 | 01-slide-cover.md | [标题] |
| 2 | 02-slide-xxx.md | [标题] |
| ... | ... | ... |
  • 提示词目录路径:
    prompts/
使用AskUserQuestion:
header: "确认"
question: "是否准备好生成幻灯片图片?"
options:
  - label: "是,继续(推荐)"
    description: "生成所有幻灯片图片"
  - label: "先编辑提示词"
    description: "我将先修改提示词再继续"
  - label: "重新生成提示词"
    description: "用不同方式创建新提示词"
回复处理:
  1. 如果选择“先编辑提示词” → 告知用户编辑提示词,准备好后再次询问
  2. 如果选择“重新生成提示词” → 返回步骤5
  3. 如果选择“是,继续” → 继续步骤7

Step 7: Generate Images

步骤7:生成图片

For
--images-only
: Start here with existing prompts.
For
--regenerate N
: Only regenerate specified slide(s).
Standard flow:
  1. Select available image generation skill
  2. Generate session ID:
    slides-{topic-slug}-{timestamp}
  3. For each slide:
    • Backup rule: If image file exists, rename to
      NN-slide-{slug}-backup-YYYYMMDD-HHMMSS.png
    • Generate image sequentially with same session ID
  4. Report progress: "Generated X/N" (in user's language)
  5. Auto-retry once on failure before reporting error
对于
--images-only
:从此步骤开始(需要现有提示词)。
对于
--regenerate N
:仅重新生成指定幻灯片。
标准流程:
  1. 选择可用的图片生成技能
  2. 生成会话ID:
    slides-{topic-slug}-{timestamp}
  3. 对每张幻灯片:
    • 备份规则:如果图片文件已存在,重命名为
      NN-slide-{slug}-backup-YYYYMMDD-HHMMSS.png
    • 使用相同会话ID依次生成图片
  4. 报告进度:“已生成X/N张”(使用用户语言)
  5. 生成失败时自动重试一次,再报告错误

Step 8: Merge to PPTX and PDF

步骤8:合并为PPTX和PDF

bash
npx -y bun ${SKILL_DIR}/scripts/merge-to-pptx.ts <slide-deck-dir>
npx -y bun ${SKILL_DIR}/scripts/merge-to-pdf.ts <slide-deck-dir>
bash
npx -y bun ${SKILL_DIR}/scripts/merge-to-pptx.ts <slide-deck-dir>
npx -y bun ${SKILL_DIR}/scripts/merge-to-pdf.ts <slide-deck-dir>

Step 9: Output Summary

步骤9:输出总结

Language: Use user's input language or saved language preference.
Slide Deck Complete!

Topic: [topic]
Style: [preset name or custom dimensions]
Location: [directory path]
Slides: N total

- 01-slide-cover.png - Cover
- 02-slide-intro.png - Content
- ...
- {NN}-slide-back-cover.png - Back Cover

Outline: outline.md
PPTX: {topic-slug}.pptx
PDF: {topic-slug}.pdf
语言:使用用户输入语言或保存的语言偏好。
Slide Deck 生成完成!

主题:[主题]
样式:[预设名称或自定义维度]
位置:[目录路径]
总幻灯片数:N张

- 01-slide-cover.png - 封面
- 02-slide-intro.png - 内容页
- ...
- {NN}-slide-back-cover.png - 封底

大纲文件:outline.md
PPTX文件:{topic-slug}.pptx
PDF文件:{topic-slug}.pdf

Partial Workflows

部分工作流程

OptionWorkflow
--outline-only
Steps 1-3 only (stop after outline)
--prompts-only
Steps 1-5 (generate prompts, skip images)
--images-only
Skip to Step 7 (requires existing prompts/)
--regenerate N
Regenerate specific slide(s) only
选项工作流程
--outline-only
仅执行步骤1-3(生成大纲后停止)
--prompts-only
执行步骤1-5(生成提示词,跳过图片)
--images-only
跳至步骤7(需要现有prompts/目录)
--regenerate N
仅重新生成指定幻灯片

Using
--prompts-only

使用
--prompts-only

Generate outline and prompts without images:
bash
/baoyu-slide-deck content.md --prompts-only
Output:
outline.md
+
prompts/*.md
ready for review/editing.
生成大纲和提示词,不生成图片:
bash
/baoyu-slide-deck content.md --prompts-only
输出:
outline.md
+
prompts/*.md
可用于审核/编辑。

Using
--images-only

使用
--images-only

Generate images from existing prompts (starts at Step 7):
bash
/baoyu-slide-deck slide-deck/topic-slug/ --images-only
Prerequisites:
  • prompts/
    directory with slide prompt files
  • outline.md
    with style information
根据现有提示词生成图片(从步骤7开始):
bash
/baoyu-slide-deck slide-deck/topic-slug/ --images-only
前提条件:
  • 存在
    prompts/
    目录及幻灯片提示词文件
  • 存在包含样式信息的
    outline.md

Using
--regenerate

使用
--regenerate

Regenerate specific slides:
bash
undefined
重新生成特定幻灯片:
bash
undefined

Single slide

单张幻灯片

/baoyu-slide-deck slide-deck/topic-slug/ --regenerate 3
/baoyu-slide-deck slide-deck/topic-slug/ --regenerate 3

Multiple slides

多张幻灯片

/baoyu-slide-deck slide-deck/topic-slug/ --regenerate 2,5,8

Flow:
1. Read existing prompts for specified slides
2. Regenerate images only for those slides
3. Regenerate PPTX/PDF
/baoyu-slide-deck slide-deck/topic-slug/ --regenerate 2,5,8

流程:
1. 读取指定幻灯片的现有提示词
2. 仅重新生成这些幻灯片的图片
3. 重新生成PPTX/PDF文件

Slide Modification

幻灯片修改

Quick Reference

快速参考

ActionCommandManual Steps
Edit
--regenerate N
Update prompt file FIRST → Regenerate image → Regenerate PDF
AddManualCreate prompt → Generate image → Renumber subsequent → Update outline → Regenerate PDF
DeleteManualRemove files → Renumber subsequent → Update outline → Regenerate PDF
操作命令手动步骤
编辑
--regenerate N
先更新提示词文件 → 重新生成图片 → 重新生成PDF
添加手动创建提示词 → 生成图片 → 重命名后续文件 → 更新大纲 → 重新生成PDF
删除手动删除文件 → 重命名后续文件 → 更新大纲 → 重新生成PDF

Edit Single Slide

编辑单张幻灯片

  1. Update prompt file FIRST in
    prompts/NN-slide-{slug}.md
  2. Run:
    /baoyu-slide-deck <dir> --regenerate N
  3. Or manually regenerate image + PDF
IMPORTANT: When updating slides, ALWAYS update the prompt file (
prompts/NN-slide-{slug}.md
) FIRST before regenerating. This ensures changes are documented and reproducible.
  1. 先更新
    prompts/NN-slide-{slug}.md
    中的提示词文件
  2. 运行:
    /baoyu-slide-deck <dir> --regenerate N
  3. 或手动重新生成图片+PDF
重要提示:更新幻灯片时,必须先更新提示词文件(
prompts/NN-slide-{slug}.md
,再重新生成。这样可确保更改被记录且可重复生成。

Add New Slide

添加新幻灯片

  1. Create prompt at position:
    prompts/NN-slide-{new-slug}.md
  2. Generate image using same session ID
  3. Renumber: Subsequent files NN+1 (slugs unchanged)
  4. Update
    outline.md
  5. Regenerate PPTX/PDF
  1. 在指定位置创建提示词:
    prompts/NN-slide-{new-slug}.md
  2. 使用相同会话ID生成图片
  3. 重命名:后续文件序号+1(Slug保持不变)
  4. 更新
    outline.md
  5. 重新生成PPTX/PDF

Delete Slide

删除幻灯片

  1. Remove
    NN-slide-{slug}.png
    and
    prompts/NN-slide-{slug}.md
  2. Renumber: Subsequent files NN-1 (slugs unchanged)
  3. Update
    outline.md
  4. Regenerate PPTX/PDF
  1. 删除
    NN-slide-{slug}.png
    prompts/NN-slide-{slug}.md
  2. 重命名:后续文件序号-1(Slug保持不变)
  3. 更新
    outline.md
  4. 重新生成PPTX/PDF

File Naming

文件命名规则

Format:
NN-slide-[slug].png
  • NN
    : Two-digit sequence (01, 02, ...)
  • slug
    : Kebab-case from content (2-5 words, unique)
Renumbering Rule: Only NN changes, slugs remain unchanged.
See
references/modification-guide.md
for complete details.
格式:
NN-slide-[slug].png
  • NN
    :两位数字序号(01, 02, ...)
  • slug
    :内容提取的短横线分隔格式(2-5个词,唯一)
重命名规则:仅序号NN变化,Slug保持不变。
查看
references/modification-guide.md
获取完整详细说明。

References

参考文件

FileContent
references/analysis-framework.md
Content analysis for presentations
references/outline-template.md
Outline structure and format
references/modification-guide.md
Edit, add, delete slide workflows
references/content-rules.md
Content and style guidelines
references/design-guidelines.md
Audience, typography, colors, visual elements
references/layouts.md
Layout options and selection tips
references/base-prompt.md
Base prompt for image generation
references/dimensions/*.md
Dimension specifications (texture, mood, typography, density)
references/dimensions/presets.md
Preset → dimension mapping
references/styles/<style>.md
Full style specifications (legacy)
references/config/preferences-schema.md
EXTEND.md structure
文件内容
references/analysis-framework.md
演示文稿内容分析框架
references/outline-template.md
大纲结构与格式
references/modification-guide.md
编辑、添加、删除幻灯片工作流程
references/content-rules.md
内容与样式指南
references/design-guidelines.md
受众、排版、颜色、视觉元素指南
references/layouts.md
布局选项与选择技巧
references/base-prompt.md
图片生成基础提示词
references/dimensions/*.md
维度规格(纹理、色调、排版、信息密度)
references/dimensions/presets.md
预设样式→维度映射
references/styles/<style>.md
完整样式规格(旧版)
references/config/preferences-schema.md
EXTEND.md结构

Notes

注意事项

  • Image generation: 10-30 seconds per slide
  • Auto-retry once on generation failure
  • Use stylized alternatives for sensitive public figures
  • Maintain style consistency via session ID
  • Step 2 confirmation required - do not skip (style, audience, slides, outline review, prompt review)
  • Step 4 conditional - only if user requested outline review in Step 2
  • Step 6 conditional - only if user requested prompt review in Step 2
  • 图片生成:每张幻灯片10-30秒
  • 生成失败时自动重试一次
  • 对敏感公众人物使用风格化替代形象
  • 通过会话ID保持样式一致性
  • 必须执行步骤2确认 - 不可跳过(样式、受众、幻灯片数量、大纲审核、提示词审核)
  • 步骤4为可选 - 仅当用户在步骤2中要求审核大纲时执行
  • 步骤6为可选 - 仅当用户在步骤2中要求审核提示词时执行

Extension Support

扩展支持

Custom configurations via EXTEND.md. See Step 1.1 for paths and supported options.
通过EXTEND.md进行自定义配置。查看步骤1.1了解路径和支持的选项。