
Slide Deck from Content
Turn a body of source content into a presentation deck. Outlines the narrative first, designs a consistent slide look, then builds the deck (HTML slides), evaluating for narrative flow and visual consistency.
Steps
Entry step: outline. Each step names the specialist role it wants; the full working prompt is expandable.
- Outline the deckplannerentry
narrative arc + per-slide bullets from the source
Show working prompt
Read the source content and outline the deck: a title slide, a clear narrative arc, and one idea per slide with 2-4 bullets each. Aim for a tight deck, not every detail. Write an **acceptance-criteria checklist** ("opens with a title slide", "one idea per slide", "ends with a takeaways/CTA slide", "every claim traces to the source"). `write_task_note` the outline + checklist. - Slide designdesigner
a consistent slide template + palette
Show working prompt
Design one reusable slide template: title position, body layout, palette, type scale, and how lists render. Consistency across slides matters more than flourish. `write_task_note` the template spec so the build phase applies it uniformly. No slide content yet.
- Build the deckdeveloper
generate the slides to the template
Show working prompt
Build the deck as a single navigable `index.html` (one section per slide, arrow-key/scroll navigation) applying the template uniformly and filling in the outlined content. On a loop-back, fix only the named gaps. `write_task_note` the deck path and slide count.
- Evaluatereviewer
Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.
Show working prompt
Check narrative flow (does it open with a title and end with takeaways, one idea per slide), visual consistency (every slide uses the template), and fidelity (claims trace to the source). Render/scan it if you can. Write PASS/FAIL per criterion. Then route — this is the whole point of the loop: - **Every criterion PASSES →** call `advance_task_step({ ref, stepId: "evaluate", next: "finish" })`. - **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: "evaluate", next: "build" })` to loop back. The builder fixes exactly those gaps. Never route to `finish` while any criterion is unmet. If you advance without a target, the loop sends you back by design. After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in. - Finishdeveloper
All acceptance criteria met. Stamp a short summary and report DONE.
Show working prompt
Every acceptance criterion passed. Write a one-paragraph DONE summary to task notes via `write_task_note`: what was built, the deliverable path(s), and a one-line confirmation that each criterion is met. Then report DONE.
Triggers
Phrases that suggest this craftbook to a crew.
- slide deck
- powerpoint
- presentation
- build a deck
Source
View this craftbook on GitHub · MIT license