Use when creating a presentation about a feature, concept, or system. Researches the topic, structures content for accessibility, generates diagrams, and exports polished Marp slides styled to the repo's design system. Triggered by 'make a presentation', 'create slides', 'do-presentation', or 'explain this as a deck'.
Creates polished, educational presentations about any feature, concept, or system in the current repo. Outputs Marp markdown with PDF and HTML exports, styled to match the repo's design system.
| Sub-file | Load when... |
|---|---|
CONTENT_GUIDE.md | Structuring slide content — educational best practices, slide types, pacing |
THEME_DETECTION.md | Building the Marp CSS theme — how to find and adapt the repo's design system |
The topic comes from $ARGUMENTS. If empty, ask the user what to present on.
Determine what the presentation covers:
Ask the user only if the scope is genuinely ambiguous. Otherwise, make a reasonable call.
Spawn an Explore agent to deeply research the topic:
Research output should answer:
Read CONTENT_GUIDE.md for educational best practices. Structure slides following this proven flow:
1. Title slide (hook + subtitle)
2. The Problem (why this exists — relatable scenario)
3. The Big Idea (one-sentence thesis)
4. How It Works — Overview (diagram or visual)
5-8. Key Concepts (one per slide, with examples)
9. Architecture/Flow Diagram
10. Real Example (concrete, from the actual codebase)
11. Trade-offs / Design Decisions
12. Summary (3 bullet takeaway)
13. Questions / Further Reading
Adjust count based on topic complexity. Aim for one idea per slide.
Read THEME_DETECTION.md for the full detection process. Quick version:
**/*.css, **/tailwind.config.*, **/theme.*, **/variables.*, **/tokens.***/styles/**, **/design-system/**, **/ui/**style: block from extracted tokensIMPORTANT: All presentations use light backgrounds. Even if the repo's design system is dark, adapt it to light mode. Keep the accent colors and fonts, invert backgrounds to white/light gray, use dark text. See the "Light Mode Mandate" section in THEME_DETECTION.md for the full dark→light token mapping.
When the presentation mentions companies, products, or branded technologies, pull in their logos for visual polish. Logos appear inline next to brand names or as small icons in tables/lists.
Source priority:
Simple Icons (GitHub raw) — 3000+ tech/business brands, monochrome SVGs, no auth
# Download SVG (slug is lowercase brand name, no spaces)
curl -s "https://raw.githubusercontent.com/simple-icons/simple-icons/develop/icons/{slug}.svg" \
-o diagrams/logo-{slug}.svg
Common slugs: anthropic, stripe, github, slack, redis, python, docker, linear, sentry, notion, telegram, postgresql
To find a slug, check: https://raw.githubusercontent.com/simple-icons/simple-icons/develop/slugs.md
Google Favicons — universal fallback, any domain, PNG
curl -sL "https://www.google.com/s2/favicons?domain={domain}&sz=128" \
-o diagrams/logo-{name}.png
Colorizing SVGs for dark backgrounds:
Simple Icons SVGs have no fill color (default black — invisible on dark slides). Inject a fill:
# White (safe default for dark themes)
sed -i '' 's/<path/<path fill="#e6edf3"/' diagrams/logo-{slug}.svg
# Or use the brand's official color (Simple Icons provides these)
sed -i '' 's/<path/<path fill="#FF6600"/' diagrams/logo-{slug}.svg
Converting SVG to PNG (if needed for Marp compatibility):
# macOS built-in, no dependencies, good quality at 512px
qlmanage -t -s 512 -o diagrams/ diagrams/logo-{slug}.svg 2>/dev/null
mv diagrams/logo-{slug}.svg.png diagrams/logo-{slug}.png
Using logos in Marp slides:
<!-- Inline next to text (small, 24-32px) -->
 Anthropic ships Managed Agents
<!-- In a table cell -->
|  Stripe | Payment processing |
<!-- Larger, standalone -->

Rules:
--allow-local-files — prefer SVG over PNG for sharpnessFor any architectural or flow concepts, create diagrams:
mermaid-render skill is available:
.mmd file, render to PNG, embed as imageDiagram guidelines:
Create the presentation file. Location priority:
docs/ directory exists, use docs/presentations/<slug>.md<repo-root>/presentations/<slug>.mdMarp file structure:
---