agentleFS
rufushsu9987rufushsu9987/claude-code-slides/skills/create-deck/SKILL.md

create-deck

Skill1 starsChanged 3 months agoMITView on GitHub

Create a polished presentation deck from a topic, brief, document, URL, or repository. Use for slides, presentations, pitch decks, technical talks, architecture reviews, status reports, training decks, or source-to-slides conversion. Supports HTML, Marp, PPTX, named professional templates, content-aware layout archetypes, and existing slide frameworks.

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

46 rules. About 0 are common, 40 are distinctive, and 6 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈40

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Create the presentation requested in the current user message.

    line 8
  2. Distinctive:

    HTML: default for live talks, design fidelity, interaction, offline playback, browser sharing, or unspecified output.

    line 31
  3. Distinctive:

    Do not ask the user to choose when the request implies a sensible default.

    line 36
  4. Distinctive:

    Read every local file, URL, document, image, or code path the request depends on.

    line 65
  5. Distinctive:

    Never copy confidential material into a deck unless the intended audience is authorized to receive it.

    line 70
  6. Distinctive:

    Never fabricate metrics, logos, customer names, benchmarks, citations, product screenshots, research findings, or system components.

    line 71
  7. Distinctive:

    Ask only for a missing constraint that materially changes the output.

    line 86
  8. Distinctive:

    When the request asks to explore, or multiple directions would create materially different decks, compare exactly three concise narrative …

    line 88
  9. Very specific:

    Create a deck-local deck-plan.md before writing slide markup, CSS, Markdown slides, PptxGenJS, or visual-generation code.

    line 94
  10. Distinctive:

    Every page has an internal audience takeaway, but a visible takeaway callout is default-off.

    line 133
  11. Distinctive:

    Use the bundled layout system to match information shape to visual form:

    line 137
  12. Distinctive:

    When an opening asks how or why a mechanism works, separate proof from explanation: use the cover for concise sourced signals, then use the …

    line 152
  13. Distinctive:

    use at least eight distinct layout archetypes when the content supports them

    line 156
  14. Distinctive:

    never repeat the exact archetype on consecutive slides

    line 157
  15. Distinctive:

    do not let the same visual family dominate more than two of any three consecutive slides

    line 158
  16. Distinctive:

    keep card-grid and node-card pages at or below roughly 20%

    line 159
  17. Distinctive:

    keep generic split-screen pages at or below roughly 35%

    line 160
  18. Distinctive:

    avoid more than two consecutive slides with the same underlying geometry

    line 161
  19. Distinctive:

    Run the bundled helper from the user's workspace:

    line 180
  20. Distinctive:

    Keep assets inside the deck directory.

    line 196
  21. Very specific:

    Treat deck-plan.md as an implementation contract.

    line 210
  22. Distinctive:

    Update the plan before implementation when changing:

    line 220
  23. Distinctive:

    Use the selected template as a visual language, not a fixed page structure.

    line 229
  24. Distinctive:

    Use claim-style headlines rather than labels such as “Overview” or “Architecture”.

    line 234
  25. Distinctive:

    Prefer diagrams, numbers, timelines, comparisons, short code, screenshots, quotations, and native tables over bullet walls.

    line 235
  26. Distinctive:

    Keep most pages below roughly 35 visible words.

    line 236
  27. Distinctive:

    Put nuance, caveats, transitions, and secondary evidence in speaker notes.

    line 237
  28. Distinctive:

    Use useful alt text and text equivalents for meaningful visuals.

    line 238
  29. Distinctive:

    Keep visible content in the requested language.

    line 239
  30. Distinctive:

    Do not use decorative visuals without an information job.

    line 240
  31. Distinctive:

    Keep the title and audience promise dominant.

    line 244
  32. Distinctive:

    If used, include exactly one sourced artifact, compact proof rail, one operational signal, or tiny direct system cue.

    line 246
  33. Distinctive:

    Never add a generic orbit, hub-and-spoke, concentric-circle, logo-cloud, or micro-label diagram to fill space.

    line 247
  34. Distinctive:

    Keep the right-side module secondary to the title, understandable within two seconds, and usually no wider than one-third of the canvas.

    line 248
  35. Very specific:

    When a slide needs a standalone architecture, flowchart, sequence, state, ER, timeline, swimlane, quadrant, loop, chart, data-flow, or …

    line 254
  36. Distinctive:

    Keep slide title, explanation, source note, and speaker notes editable outside the SVG.

    line 256
  37. Distinctive:

    Follow the selected diagram type reference and self-check.

    line 257
  38. Very specific:

    Use Mermaid/draw.io extractors for redraws.

    line 258
  39. Distinctive:

    Read the bundled Python SVG authoring protocol before implementing a source-specific visual.

    line 262
  40. Distinctive:

    Default to a deck-local Python generator when the semantic model is unique.

    line 263
  41. Very specific:

    Write or update <visual>.visual.md before changing geometry in <visual>.py.

    line 264
  42. Distinctive:

    Keep title, explanation, source note, footer, and notes editable outside the SVG whenever possible.

    line 265
  43. Very specific:

    Prefer deterministic SVG with a stable viewBox, accessible <title> and <desc>, escaped text, and no external script or absolute local path.

    line 266
  44. Distinctive:

    Keep code samples short and projection-safe.

    line 275
  45. Distinctive:

    every slide's information shape and visual form remain intact

    line 296
  46. Distinctive:

    Do not bury the deliverable under a long process summary.

    line 322

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Create a presentation deck

Create the presentation requested in the current user message. Treat it as a deliverable: inspect the source material, plan the argument, create editable files, validate the result, and leave clear preview or export instructions.

Bundled resources

Resolve these paths relative to this skill directory:

  • Storytelling and slide-planning system
  • Brand-neutral visual quality — read for every deck
  • Claude Code-inspired visual system — read only after selecting claude-editorial / terminal-editorial, or when the user explicitly requests Claude styling
  • Layout system
  • Python SVG authoring protocol
  • Python SVG plan template
  • Output format guidance
  • scripts/slides-cli.mjs — portable wrapper for the bundled deck CLI
  • scripts/generate-slide-art.py — optional pattern library and fallback renderer
  • diagram-design skill — when available, for editorial architecture, flowchart, sequence, data, and security diagrams plus Mermaid/draw.io redraws

Keep the user's project or workspace as the shell working directory. Resolve each helper from the directory containing this SKILL.md, convert it to an absolute path, and do not cd into the installed skill before running it. In commands below, replace <absolute-skill-dir> with that real absolute directory; never type the placeholder literally.

1. Choose the delivery format

Honor an explicit format. Otherwise infer it from intended use:

  • HTML: default for live talks, design fidelity, interaction, offline playback, browser sharing, or unspecified output.
  • Marp: Markdown review, Git diffs, documentation-style decks, or fast PDF generation.
  • PPTX: editable Microsoft PowerPoint, corporate handoff, or Office compatibility.
  • Existing framework: preserve Slidev, Reveal.js, React, Marp, or a company template already used by the repository unless the user requests migration.

Do not ask the user to choose when the request implies a sensible default. State the assumption briefly and proceed.

2. Choose a template

Honor an explicit template name. Otherwise select the closest match to audience and communication goal. The default is claude-editorial; the legacy name terminal-editorial remains an alias.

List installed presets when needed:

node "<absolute-skill-dir>/scripts/slides-cli.mjs" templates
node "<absolute-skill-dir>/scripts/slides-cli.mjs" templates --format pptx --json

Recommended selection:

TemplateBest use
claude-editorialTechnical talks, architecture reviews, AI and developer tooling
executive-briefLeadership updates, strategy proposals, quarterly reviews
cloud-architectureInfrastructure, platform engineering, security boundaries
data-storyAnalytics, research findings, metrics, evidence-led narratives
product-launchProduct demos, launches, roadmaps, feature narratives
dark-terminalLive demos, code walkthroughs, engineering deep dives
incident-reviewPostmortems, impact timelines, root cause, remediation

A supplied brand system or existing company template always takes precedence. Apply the brand-neutral visual-quality reference to every deck. Load the Claude Code-inspired visual system only when the selected template is claude-editorial / terminal-editorial, or when the user explicitly requests that style.

3. Inspect the source material

  • Read every local file, URL, document, image, or code path the request depends on.
  • For repository-based technical decks, identify actual architecture, dependencies, data flows, trust boundaries, deployment model, operations, costs, and risks.
  • Preserve attribution for external facts, charts, screenshots, quotations, and benchmarks.
  • Classify important claims as Verified, Derived, Assumption, or Proposal.
  • Record source conflicts, dates, definitions, units, and limitations.
  • Never copy confidential material into a deck unless the intended audience is authorized to receive it.
  • Never fabricate metrics, logos, customer names, benchmarks, citations, product screenshots, research findings, or system components.

4. Lock the communication objective

Infer or establish:

  • audience and current knowledge
  • the decision, belief, or action the deck should create
  • duration and page budget
  • one-sentence audience promise
  • central thesis
  • one-sentence Direction Lock
  • strongest evidence and weakest assumption
  • language, brand, accessibility, confidentiality, and delivery constraints

Ask only for a missing constraint that materially changes the output. Otherwise record a reasonable assumption and continue.

When the request asks to explore, or multiple directions would create materially different decks, compare exactly three concise narrative forks. Do not create three full outlines. Select or synthesize one Direction Lock before implementation.

5. Plan before rendering

For non-trivial decks, use the sibling deck-architect and visual-director skills when available. Otherwise perform those roles inline.

Create a deck-local deck-plan.md before writing slide markup, CSS, Markdown slides, PptxGenJS, or visual-generation code. The directory may be scaffolded first so the plan has a stable path, but no slide implementation begins until the plan exists.

deck-plan.md is the presentation source of truth. It contains:

  1. Presentation Contract
  2. Evidence Ledger
  3. Narrative Strategy and Direction Lock
  4. Story Spine and section map
  5. Narrative Review
  6. Page-by-page Slide Blueprint
  7. Content moved to notes or removed
  8. Risks, assumptions, missing evidence, and source conflicts

For every slide record:

  • id, section, role, and purpose
  • claim-style title and optional supporting sentence
  • internal audience takeaway
  • evidence status, source, and source assets
  • information shape
  • visual form
  • layout archetype
  • geometry
  • dominant element
  • density and intended eye path
  • visible content and speaker-note content
  • transition in and transition out
  • editing constraints

The page's information shape is selected before its visual form; the visual form is selected before the layout archetype. Three bullets are not automatically three cards.

A useful default story spine is:

Reality → Tension → Reframe → Mechanism → Proof → Decision

Adapt it to the evidence and deck type. Run a section-continuity pass and record only unresolved same-section slide pairs in the Narrative Review. Repair a weak sequence by merging, cutting, reordering, or strengthening a claim—not by adding decorative arrows or presenter-style transition copy.

Every page has an internal audience takeaway, but a visible takeaway callout is default-off. Add one only when it states a source-grounded implication not already carried by the title and working area.

Semantic layout selection

Use the bundled layout system to match information shape to visual form:

  • tension/root cause → expectation-reality-root-cause, claim plus proof, or one-glance story
  • protocol interaction → actor headers, lifelines, numbered messages, labeled request/response arrows
  • cross-team handoff → swimlanes with owners, triggers, approvals, and failure paths
  • causal chain → labeled cause-mechanism-effect path
  • hierarchy → layers that change ownership, policy, or abstraction
  • topology → real actors, systems, stores, and labeled connections
  • trust boundary → named zones, crossings, and enforcement
  • aligned records → one native table object
  • artifact evidence → screenshot or source crop with two to four proof-oriented callouts
  • number or trend → native metric or chart with definition, date, unit, source, and decision implication

For every editorial-cover, explicitly record coverRight as none, artifact-right, proof-rail, signal-stack, or direct-system-cue, plus the source or rationale. Whitespace is a valid design decision; when no source-backed artifact, proof, or signal improves the opening, leave the space empty.

When an opening asks how or why a mechanism works, separate proof from explanation: use the cover for concise sourced signals, then use the next page for the causal model. The handoff should move from evidence to mechanism to implication.

For a deck of 10 or more slides:

  • use at least eight distinct layout archetypes when the content supports them
  • never repeat the exact archetype on consecutive slides
  • do not let the same visual family dominate more than two of any three consecutive slides
  • keep card-grid and node-card pages at or below roughly 20%
  • keep generic split-screen pages at or below roughly 35%
  • avoid more than two consecutive slides with the same underlying geometry
  • introduce a visible rhythm change every three to four slides through scale, density, background, or dominant visual
  • interleave claim, evidence, architecture, sequence, risk, and decision pages

Inspect available archetypes with:

node "<absolute-skill-dir>/scripts/slides-cli.mjs" layouts
node "<absolute-skill-dir>/scripts/slides-cli.mjs" layouts --json

Review checkpoints

For interactive or high-stakes work, present the plan before full implementation and then render a small style sample: the cover plus one representative content page. This prevents narrative or visual drift before the complete deck is built.

For a one-shot workflow, do not create unnecessary hard pauses. Run the same plan audit and sample self-review, record unresolved assumptions, and continue to the complete deliverable.

6. Scaffold the output

Run the bundled helper from the user's workspace:

node "<absolute-skill-dir>/scripts/slides-cli.mjs" init "Deck title" --format html --template claude-editorial
node "<absolute-skill-dir>/scripts/slides-cli.mjs" init "Deck title" --format marp --template data-story
node "<absolute-skill-dir>/scripts/slides-cli.mjs" init "Deck title" --format pptx --template executive-brief

The default destination is slides/<slug>/. Respect an explicit path or established repository convention. The generated template.json records the selected preset, palette, typography, pattern, layout system, and output format.

FormatMinimum deliverable
HTMLdeck-plan.md, index.html, theme.css, slides.js, template.json, README.md
Marpdeck-plan.md, deck.md, theme.css, template.json, README.md
PPTXdeck-plan.md, deck.mjs, package.json, template.json, README.md; generate the .pptx when dependency installation is permitted

Keep assets inside the deck directory.

For every custom Python SVG, keep the plan, generator, and output together:

assets/<visual>.visual.md
assets/<visual>.py
assets/<visual>.svg

The Markdown plan records source of truth, semantic model, composition, eye path, accessibility, editable slide content, and validation contract. Keep it synchronized with the Python and generated SVG.

7. Author against the plan

Treat deck-plan.md as an implementation contract.

Allowed without re-planning:

  • fit, spacing, alignment, and type adjustments
  • switching implementation medium when semantic meaning remains intact
  • shortening visible copy without changing the claim
  • moving nuance into notes
  • accessibility and export fixes

Update the plan before implementation when changing:

  • thesis or Direction Lock
  • slide role, claim, evidence, or order
  • section structure
  • information shape or visual form
  • source interpretation
  • decision or recommendation

Use the selected template as a visual language, not a fixed page structure. Preserve color, typography, grid, spacing, and component behavior while changing composition according to each page's communication role.

Content rules

  • One idea per page.
  • Use claim-style headlines rather than labels such as “Overview” or “Architecture”.
  • Prefer diagrams, numbers, timelines, comparisons, short code, screenshots, quotations, and native tables over bullet walls.
  • Keep most pages below roughly 35 visible words. Dense reference pages are explicit exceptions.
  • Put nuance, caveats, transitions, and secondary evidence in speaker notes.
  • Use useful alt text and text equivalents for meaningful visuals.
  • Keep visible content in the requested language; preserve natural technical English terms when appropriate.
  • Do not use decorative visuals without an information job.

Cover rules

  • Keep the title and audience promise dominant.
  • The right half is optional and whitespace is valid.
  • If used, include exactly one sourced artifact, compact proof rail, one operational signal, or tiny direct system cue.
  • Never add a generic orbit, hub-and-spoke, concentric-circle, logo-cloud, or micro-label diagram to fill space.
  • Keep the right-side module secondary to the title, understandable within two seconds, and usually no wider than one-third of the canvas.
  • Give every proof-rail number a role, source, date, and relationship to the other signals.
  • For mechanism-led topics, use a next-page explanatory handoff instead of expanding the cover into a dashboard.

Diagram Design integration

  • When a slide needs a standalone architecture, flowchart, sequence, state, ER, timeline, swimlane, quadrant, loop, chart, data-flow, or security diagram, prefer the diagram-design skill rather than rebuilding generic boxes.
  • For a presentation, set diagram size to slide-16x9 when the content fits; otherwise use the smallest readable preset and split the visual.
  • Keep slide title, explanation, source note, and speaker notes editable outside the SVG.
  • Follow the selected diagram type reference and self-check.
  • Use Mermaid/draw.io extractors for redraws; do not preserve a poor source layout merely because it already exists.

Custom Python SVG rules

  • Read the bundled Python SVG authoring protocol before implementing a source-specific visual.
  • Default to a deck-local Python generator when the semantic model is unique; built-in drawing kinds are examples and fast fallbacks, not a closed catalog.
  • Write or update <visual>.visual.md before changing geometry in <visual>.py.
  • Keep title, explanation, source note, footer, and notes editable outside the SVG whenever possible.
  • Prefer deterministic SVG with a stable viewBox, accessible <title> and <desc>, escaped text, and no external script or absolute local path.
  • Promote a one-off visual into the shared generator only after it proves reusable across unrelated decks.

Technical-deck rules

  • Show system, trust, data-ownership, and operational boundaries.
  • Label protocols, identities, stores, control plane, data plane, and failure paths.
  • Separate current state, target state, and migration plan.
  • Cover security, operability, cost, performance, maintainability, and tradeoffs when relevant.
  • Keep code samples short and projection-safe.

Format markers

  • HTML: set data-layout="<archetype>" and data-geometry="<geometry>" on every slide.
  • Marp: assign a matching slide class such as <!-- _class: metric-spotlight -->.
  • PPTX: keep explicit LAYOUT_SEQUENCE and GEOMETRY_SEQUENCE arrays and use editable text, shapes, charts, and native tables.

8. Validate and improve

Run:

node "<absolute-skill-dir>/scripts/slides-cli.mjs" check <deck-path>

Then use the sibling deck-reviewer skill when available. Fix high-confidence Critical and Major findings and re-run validation.

Compare the rendered deck against deck-plan.md:

  • claims, evidence status, and slide order match
  • every slide's information shape and visual form remain intact
  • layout archetypes and geometries match the plan or have a documented equivalent
  • same-section transitions pass the Narrative Review
  • native tables remain native
  • visible takeaway callouts are not repeated boilerplate
  • source facts, dates, units, labels, and boundaries remain accurate

Verify format-specific output:

  • HTML: keyboard, click and swipe navigation; hash state; viewport scaling; notes; reduced motion; print-to-PDF; local assets; meaningful layout markers.
  • Marp: frontmatter; separators; theme loading; layout classes; asset paths; HTML/PDF export.
  • PPTX: generation succeeds; wide layout; editable elements; native tables; speaker notes; text bounds; portable fonts; deterministic filename; explicit layout and geometry sequences.
  • Custom Python SVG: .visual.md, .py, and .svg agree; Python compiles; SVG parses; regeneration is deterministic; labels, sources, dates, and units match the plan.

Inspect every page at presentation size and thumbnail scale. Fix blank pages, overflow, clipping, overlap, missing assets, broken aspect ratios, unreadable type, ambiguous hierarchy, and meaningless decoration.

9. Hand off

Report:

  • deck path, format, selected template, and deck-plan.md path
  • slide count, unique archetype count, and geometry/rhythm summary
  • preview or export command
  • validation and review status
  • unresolved assumptions, source conflicts, missing assets, or environment limitations

Do not bury the deliverable under a long process summary.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.