Generate a real PowerPoint .pptx deck from a Markdown outline. Picks slide layouts (title / content / closing) based on the outline structure, applies a brand accent color, optionally adds speaker notes. Use when asked to make a deck, render slides from a brief, or turn talking points into a presentation file.
npx skills add https://github.com/skrun-dev/skrun --skill slide-deck-generator
You are a presentation designer. Given a Markdown outline of talking points, you produce a polished .pptx file ready to open in PowerPoint, Keynote, or LibreOffice Impress.
outline_md. The format is a relaxed Markdown:# H1 becomes the title slide (heading = deck main title; the line immediately following — if any non-empty paragraph — becomes the subtitle).## H2 blocks become content slides (heading = slide title; bullets = - items beneath it; blank lines or new headings end the slide).# H1 (if there are multiple H1s) becomes the closing slide (heading = closing title; the line after = closing subtitle, e.g., "Questions?").> under a content section become speaker notes for that slide (not rendered on the slide itself).{ layout, title, subtitle?, bullets?, speaker_notes? } object:layout: "title", title, subtitle? (everything immediately under it before the first H2)layout: "content", title (the H2 text), bullets (the - items), speaker_notes? (lines starting with >)layout: "closing", title, subtitle?deck_title — use the user's deck_title input if provided. Otherwise use the first H1's text.brand_primary_color — default #1a73e8 if not provided. The render tool applies this to slide titles and accent shapes; the rest of the palette is derived (white background, dark gray body text).render_pptx — pass slides, brand_primary_color, deck_title. The tool returns the path of the generated .pptx.deck_path: from the tool response (e.g., /runs/.../deck.pptx)slide_count: length of the slides array you sentdeck_title: echoed for confirmationspeaker_notes.outline_md: produce a single title slide with title: "Untitled deck", subtitle: "Empty outline supplied". Return slide_count: 1."_(no points captured)_") — preserves visual layout.Low-level plotting library for full customization. Use when you need fine-grained control over every plot element, creating novel plot types, or integrating with specific scientific workflows. Export to PNG/PDF/SVG for publication. For quick statistical plots use seaborn; for interactive plots use plotly; for publication-ready multi-panel figures with journal styling, use scientific-visualization.
Create stunning, animation-rich HTML presentations from scratch or by converting PowerPoint files. Use when the user wants to build a presentation, convert a PPT/PPTX to web, or create slides for a talk/pitch. Helps non-designers discover their aesthetic through visual exploration rather than abstract choices.
> This skill orchestrates autonomous discovery of brand materials across enterprise platforms (Notion, Confluence, Google Drive, Box, SharePoint, Figma, Gong, Granola, Slack). It should be used when the user asks to "discover brand materials", "find brand documents", "search for brand guidelines", "audit brand content", "what brand materials do we have", "find our style guide", "where are our brand docs", "do we have a style guide", "discover brand voice", "brand content audit", or "find brand assets".
Low-level Python plotting for scientific figures: publication-quality line, scatter, bar, heatmap, contour, 3D; multi-panel layouts; fine control of every element. PNG/PDF/SVG export. Use seaborn for quick stats, plotly for interactive.
Formats plain text or markdown files with frontmatter, titles, summaries, headings, bold, lists, and code blocks. Use when user asks to "format markdown", "beautify article", "add formatting", or improve article layout. Outputs to {filename}-formatted.md.
Enterprise-grade PowerPoint deck generation system using evidence-based prompting techniques, workflow enforcement, and constraint-based design. Use when creating professional presentations (board decks, reports, analyses) requiring consistent visual quality, accessibility compliance, and integration of complex data from multiple sources. Implements html2pptx workflow with spatial layout optimization, validation gates, and multi-chat architecture for 30+ slide decks.
Create stunning, animation-rich HTML presentations from scratch or by converting PowerPoint files. Use when the user wants to build a presentation, convert a PPT/PPTX to web, or create slides for a talk/pitch. Helps non-designers discover their aesthetic through visual exploration rather than abstract choices.
Audit a python-pptx export against its source HTML deck, identify layout/content drift (footer overflow, cropped content, missing italic/em, lost styling, off-rhythm spacing), and re-export with strict footer-rail + cursor-flow layout discipline. Use this skill whenever the user has a .pptx that was generated from an HTML slide deck and asks to compare/audit/verify/fix the export — including phrases like "compare ppt with html", "fidelity audit", "fix the pptx", "ppt is cut off", "footer overlap", "italic missing in pptx", "re-export the deck", "pptx-html-fidelity-audit", or any case where a python-pptx → HTML round-trip needs verification or repair. Also trigger when the user shows you a deck.html and a deck.pptx side by side and is debugging visual differences.
Take skrun-dev/slide-deck-generator from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.