canghe-slide-deck

Generates professional slide deck images from content. Creates outlines with style instructions, then generates individual slide images. Use when user asks to "create slides", "make a presentation", "generate deck", "slide deck", or "PPT".

By freestylefly · 495 installs

npx skills add freestylefly/canghe-skills --skill canghe-slide-deck

Source repository · Upstream listing

Slide Deck Generator Transform content into professional slide deck images. Usage 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 Script Purpose scripts/merge to pptx.ts Merge slides into PowerPoint scripts/merge to pdf.ts Merge slides into PDF Options Option Description 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 : Content Slides < 1000 words 5 10 1000 3000 words 10 18 3000 5000 words 15 25 5000 words 20 30 (consider splitting) Style System Presets Preset Dimensions Best For blueprint (Default) grid + cool + technical + balanced Architecture, system design chalkboard organic + warm + handwritten + balanced Education, tutorials corporate clean + professional + geometric + balanced Investor decks, proposals minimal clean + neutral + geometric + minimal Executive briefings sketch notes organic + warm + handwritten + balanced Educational, tutorials watercolor organic + warm + humanist + minimal Lifestyle, wellness dark atmospheric clean + dark + editorial + balanced Entertainment, gaming notion clean + neutral + geometric + dense Product demos, SaaS bold editorial clean + vibrant + editorial + balanced Product launches, keynotes editorial infographic clean + cool + editorial + dense Tech explainers, research fantasy animation organic + vibrant + handwritten + minimal Educational storytelling intuition machine clean + cool + technical + dense Technical docs, academic pixel art pixel + vibrant + technical + balanced Gaming, developer talks scientific clean + cool + technical + dense Biology, chemistry, medical vector illustration clean + vibrant + humanist + balanced Creative, children's content vintage paper + warm + editorial + balanced Historical, heritage Style Dimensions Dimension Options Description Texture clean, grid, organic, pixel, paper Visual texture and background treatment Mood professional, warm, cool, vibrant, dark, neutral Color temperature and palette style Typography geometric, humanist, handwritten, editorial, technical Headline and body text styling Density minimal, balanced, dense Information density per slide Full specs: references/dimensions/ .md Auto Style Selection Content Signals Preset 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 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. File Management Output Directory 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. 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. Workflow Copy this checklist and check off items as you complete them: Flow Step 1: Setup & Analyze 1.1 Load Preferences (EXTEND.md) Use Bash to check EXTEND.md existence (priority order): ┌──────────────────────────────────────────────────┬───────────────────┐ │ Path │ Location │ ├──────────────────────────────────────────────────┼───────────────────┤ │ .canghe skills/canghe slide deck/EXTEND.md │ Project directory │ ├──────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.canghe skills/canghe slide deck/EXTEND.md │ User home │ └──────────────────────────────────────────────────┴───────────────────┘ When EXTEND.md Found → Read, parse, output summary to user : 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: If directory exists , use AskUserQuestion: Save to analysis.md with: Topic, audience, content signals Recommended style (based on Auto Style Selection) Recommended slide count Language detection Step 2: Confirmation ⚠️ REQUIRED 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) Round 1 (Always) Use AskUserQuestion for all 5 questions: Question 1: Style Question 2: Audience Question 3: Slide Count Question 4: Review Outline Question 5: Review Prompts Round 2 (Only if "Custom dimensions" selected) Use AskUserQuestion for all 4 dimensions: Question 1: Texture (Note: "paper" available via Other) Question 2: Mood (Note: "dark", "neutral" available via Other) Question 3: Typography (Note: "technical" available via Other) Question 4: Density 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 Step 3: Generate Outline 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 Step 4: Review Outline (Conditional) 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: Use AskUserQuestion : 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 Step 5: Generate Prompts 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 Step 6: Review Prompts (Conditional) 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: Path to prompts directory: prompts/ Use AskUserQuestion : 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 Step 7: Generate Images 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 Step 8: Merge to PPTX and PDF Step 9: Output Summary Language : Use user's input language or saved language preference. Partial Workflows Option Workflow 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 Using prompts only Generate outline and prompts without images: Output: outline.md + prompts/ .md ready for review/editing. Using images only Generate images from existing prompts (starts at Step 7): Prerequisites: prompts/ directory with slide prompt files outline.md with style information Using regenerate Regenerate specific slides: Flow: 1. Read existing