Skip to content

Skill: pptx-from-brain-dump

The terminal step in a three-stage content pipeline: brain-dump-cleanercontent-to-layoutpptx-from-brain-dump. Consumes a cleaned brain-dump and a PPTX template that already has the house style baked in, then writes one .pptx file. No Plan Gate, no scaffold — it’s a one-shot generator.

Reach for this when the deliverable is a .pptx (not HTML, not PDF), a branded template file exists, and the content starts as loose prose. If you want HTML instead, use the Presentation HTML template for a single-file artefact or the Presentation Bootstrap for a real project. If no PPTX template exists, the built-in pptx skill can render from scratch — but the output won’t carry your house style.

The skill assumes the earlier two stages have already run (or will run in the same session). It refuses to map content to slides without a layout map — that’s the contract between content and rendering.

Copy the fenced block into .claude/skills/pptx-from-brain-dump/SKILL.md. The name: and description: inside the fence are the skill’s own frontmatter — they aren’t the Playbook page’s frontmatter.

---
name: pptx-from-brain-dump
description: Generate a .pptx file from a brain-dump and a PPTX template. Use when the user wants a PowerPoint deck (not HTML), has a brain-dump of content, and has a .pptx template file with the house style baked in. Assumes brain-dump-cleaner and content-to-layout skills have already run (or will run as part of the same session).
---
# pptx-from-brain-dump
Renders a slide deck as a `.pptx` file. Consumes a brain-dump and a PPTX template; produces one file. One-shot — no project scaffold, no governance files, no Plan Gate.
## When to use this skill
Use when all three are true:
- The deliverable is a `.pptx` file (not HTML, not PDF).
- A PPTX template file exists with master slides, brand colours, and type ramp already set up.
- The content starts as a brain-dump — loose prose, `##` slide markers, no PowerPoint-shaped structure yet.
Don't use this skill if:
- The deliverable is HTML — use the [Presentation HTML template](/static-builds/template-presentation/) or the [Presentation Bootstrap](/static-builds/template-presentation-bootstrap/).
- No PPTX template exists — generating a `.pptx` from scratch is the built-in `pptx` skill's job, and the output won't carry your house style.
- The content is already structured as discrete slides with explicit layout choices — call the built-in `pptx` skill directly.
## Inputs
Three things, all in the working directory unless stated:
| Input | Where | Required |
|---|---|---|
| Brain-dump | Paste in conversation, or `brain-dump.md` in working dir | Yes |
| PPTX template | Path provided by user (e.g. `~/templates/house-style.pptx`) | Yes |
| `design.md` | Working directory | Optional |
If `design.md` is present, read only its **Tone** and **Don'ts** sections. The PPTX template owns palette and typography — ignore those sections of `design.md` even if populated.
## The pipeline
This skill is the terminal step in a three-stage pipeline. The earlier stages may already have run, or you may need to run them in sequence:
1. **`brain-dump-cleaner`** — if the input is genuinely raw (typos, contradictions, duplicate ideas). Skip if the brain-dump is already clean.
2. **`content-to-layout`** — produces a layout map: one line per slide, each tagged with a layout name (`title`, `prose`, `bullets`, `stat`, `two-column`, `option-cards`, `canvas`).
3. **`pptx-from-brain-dump`** (this skill) — consumes the cleaned brain-dump + the layout map, maps each layout to a master slide in the template, writes the `.pptx`.
If the user hasn't run stages 1–2, run them first. Don't skip the layout map — it's the contract between content and rendering.
## Mapping layouts to master slides
PPTX templates carry master slides with names. The mapping from the seven-layout vocabulary to master slide names is:
| Layout | Looks for a master named... | Fallback if not found |
|---|---|---|
| `title` | "Title Slide", "Title", "Section Divider" | First master slide in template |
| `prose` | "Content", "Text Slide", "Body" | "Title and Content" if present, else first content master |
| `bullets` | "Bullets", "List", "Content" | "Title and Content" if present, else first content master |
| `stat` | "Stat", "Big Number", "Figure" | "Title Slide" with stat as title |
| `two-column` | "Two Column", "Comparison", "2 Content" | Two content masters side by side using "Content" master twice (last resort) |
| `option-cards` | "Cards", "Options", "Grid" | "Bullets" master with each option as a bullet (lossy — flag in report) |
| `canvas` | "Image", "Full Bleed", "Picture" | "Content" master with image placeholder enlarged (flag in report) |
Read the template's master slide names before mapping. If a layout's preferred master is missing, use the fallback and flag the substitution in the final report.
## Procedure
1. Read the PPTX template file. List its master slides by name.
2. Read the layout map (from `content-to-layout` output or generated inline).
3. Read `design.md` if present — extract Tone and Don'ts only.
4. For each slide in the map:
- Pick the master slide using the mapping table above.
- Populate placeholders from the brain-dump content for that section.
- Respect the Don'ts (e.g. "never use red", "no exclamation marks") in copy.
- Match the Tone in word choice (e.g. "corporate, restrained" → no rhetorical questions, no contractions).
5. Generate the `.pptx` using the built-in pptx skill's primitives.
6. Save as `deck.pptx` in the working directory (or filename specified by user).
## Output report
After generation, report:
- Final slide count.
- Master slide usage (which masters were used for which slides).
- Any layout substitutions made because the preferred master wasn't in the template.
- Any slides where the brain-dump content didn't fit the master's placeholder shape (e.g. content too long for the placeholder, image referenced but no image provided).
- Any Don'ts that required rewriting copy (so the user can sanity-check the rewrites).
## What this skill doesn't do
- Doesn't modify the template. The `.pptx` template is read-only.
- Doesn't generate master slides. If the template is missing a master, the skill substitutes and flags — it doesn't invent new masters.
- Doesn't enforce palette or typography against `design.md`. The template wins, unconditionally.
- Doesn't produce an HTML version alongside the PPTX. Use the HTML templates separately if you want both — the same brain-dump can feed both pipelines.
- Doesn't deploy. The output is a file on disk.