Agent skill

Template Deck Builder

by OneWave-AI in OneWave-AI/claude-skills

Builds and edits PowerPoint decks bound to a company's own .pptx or .potx template, with a consulting-grade storyline and a rendered visual QA pass.

MITAuto-check passedDocuments & Office

Install Template Deck Builder

skills CLI
$ npx skills add OneWave-AI/claude-skills --skill template-deck-builder -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install OneWave-AI/claude-skills template-deck-builder --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/OneWave-AI/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/template-deck-builder .claude/skills/template-deck-builder && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
template-deck-builder
GitHub stars
323
Token cost
~2k tokens
SKILL.md length
1,001 words
Files
13 (incl. scripts, references)
Skills in repo
70
Repo updated
First seen
Licence
MIT

At a glance

Builds and edits PowerPoint decks bound to a company's own .pptx or .potx template, with a consulting-grade storyline and a rendered visual QA pass.

  • Works in 6 steps: Inspect the template (never skip) → Write the storyline before any slide → Write the storyboard JSON → …
  • The user says use our template
  • SKILL.md covers Files, Workflow, Editing an existing deck and Guardrails
  • Runs Python and Shell scripts from its folder; calls python3 and pip

What it does

Template Deck Builder is an agent skill from OneWave-AI/claude-skills. Builds and edits PowerPoint decks bound to a company's own .pptx or .potx template, with a consulting-grade storyline and a rendered visual QA pass. Maps the template's masters, layouts, placeholders, theme colors and fonts; drafts a storyboard of action titles (pyramid principle, SCR) for approval; fills the template's own placeholders instead of drawing text boxes; adds native charts in theme colors, tables sized to placeholders, speaker notes and source lines; then renders every slide to PNG and checks text…

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including scripts and reference files (for example `references/python-pptx-notes.md`, `references/storyboard-schema.md` and `references/storyline.md`).

It sits in Documents & Office, covering PowerPoint presentations, Slides and decks and Comics and storyboards. It works with Microsoft PowerPoint and python-pptx. The repository describes itself as: 200+ production-ready Claude Code skills for sales, marketing, design, engineering, and AI agent architecture. Built and maintained by OneWave AI. The licence is MIT.

When your agent uses it

  • The user says use our template
  • Corporate template
  • Consulting-style deck
  • Client presentation

Example prompts

  • “Use the template-deck-builder skill to build and edits PowerPoint decks bound to a company's own .pptx or .potx template, with a consulting-grade…”
  • “/template-deck-builder”

Requirements

  • Python 3
  • A Bash shell

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Inspect the template (never skip)
  2. Write the storyline before any slide
  3. Write the storyboard JSON
  4. Build into the placeholders
  5. QA: render, look, fix, repeat
  6. Deliver

What it can do on your machine

Read from SKILL.md and the folder at commit fc5b785. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 4 files in scripts/ (Python and Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Template Deck Builder loads about 2k tokens when it runs, and up to ~6.9k if it reads all its reference files. Until then it costs about 245 tokens; SKILL.md has 1,001 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~245
When it runs · the whole SKILL.md, loaded when a task matches
~2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~6.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from OneWave-AI/claude-skills at commit fc5b785, republished under its MIT licence (© OneWave-AI). 1,001 words, ~1,980 tokens.

Download SKILL.mdSave it as .claude/skills/template-deck-builder/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
template-deck-builder
description
Builds and edits PowerPoint decks bound to a company's own .pptx or .potx template, with a consulting-grade storyline and a rendered visual QA pass. Maps the template's masters, layouts, placeholders, theme colors and fonts; drafts a storyboard of action titles (pyramid principle, SCR) for approval; fills the template's own placeholders instead of drawing text boxes; adds native charts in theme colors, tables sized to placeholders, speaker notes and source lines; then renders every slide to PNG and checks text overflow, off-slide and overlapping shapes, off-theme fonts and colors, empty placeholders and weak titles. Use whenever the user says use our template, company deck, brand or corporate template, make slides, build a deck, pptx, potx, consulting-style deck, board or client presentation, action titles, or fix my deck formatting, and whenever an existing deck must be edited without breaking its masters. Complements the generic pptx skill.

Template Deck Builder

Build decks INTO the company template and make them argue something. The three ways decks go wrong are: rebuilding the template from scratch (floating text boxes, hard-coded colors, ignored layouts), having no storyline (topic-label titles, one slide per data dump), and shipping without looking (overflowing text, boxes over charts). This skill has one step for each.

Scripts need python-pptx (pip install python-pptx), plus LibreOffice (soffice) and poppler (pdftoppm) for the render. Anthropic's generic pptx skill covers raw pptx manipulation from scratch. Use this skill when a template exists or the deck has to read like consulting work.

Files

  • scripts/inspect_template.py: template to layout_map.json (layouts, placeholders, geometry, theme, recommended layout per slide type).
  • scripts/build_deck.py: storyboard JSON to deck, filling placeholders. Also edits an existing deck in place (--edit).
  • scripts/qa_deck.py: checks, render, contact sheet, report. Exits 1 on any ERROR.
  • references/storyboard-schema.md: every storyboard field, with examples.
  • references/storyline.md: action titles, pyramid, SCR, ghost deck, chart choice.
  • references/python-pptx-notes.md: placeholder mechanics, autofit limits, EMU, charts, breakages.
  • tests/run_tests.sh OUT_DIR: builds a sample template, a good 6-slide deck and a bad one, and checks that QA passes the first and catches the second.

Workflow

1. Inspect the template (never skip)
bash
python3 scripts/inspect_template.py company.potx -o layout_map.json

Read the printed layout list and recommended. From here on, every slide uses one of these layouts by exact name. Note the theme fonts and colors. They are the only fonts and colors allowed. If the template holds sample slides, the build drops them by default (keep_template_slides: true keeps them).

If no layout fits a slide type (for example no two-column layout), say so and pick the closest one. Do not draw your own. A deck that ignores the layouts breaks the moment someone applies a new theme or edits it in PowerPoint.

2. Write the storyline before any slide

Read references/storyline.md, then give the user:

  1. The governing thought: one sentence, the answer to the audience's question.
  2. The ghost deck: one action title per slide, numbered, with its layout and a one-line note on the evidence (chart type, table, bullets).

Test it. Read the titles alone, top to bottom. They must make the whole argument in order, and each must be a full sentence with a so-what, around 15 words or fewer. "Q3 revenue" is a label. "Q3 revenue fell 8% because two accounts churned" is a title. Every slide carries one message, and its body only proves that message.

Stop and get the storyline approved. Changing a title list costs seconds. Rebuilding 20 slides costs an hour.

3. Write the storyboard JSON

Follow references/storyboard-schema.md. Each slide gets layout (exact name) or type, title, one content block (bullets, chart, table, columns, quote), source, and notes. Rules:

  • Charts carry real numbers and a number_format. Use highlight for the bar that makes the point. The chart type follows from the message (see storyline.md).
  • Every chart or table gets a source. Every content slide gets notes, which hold what the presenter says, not the slide text again.
  • Bullets: at most 6, one line each where possible, parallel grammar. Use **Lead-in:** detail for scannable bullets.
  • Use free_text only when the user asks for an annotation the template has no placeholder for. It is flagged in QA on purpose.
4. Build into the placeholders
bash
python3 scripts/build_deck.py storyboard.json --template company.potx -o deck.pptx

The build fills title, subtitle, body, chart, table, quote and source placeholders by role. Charts and tables go into the content placeholder itself, so they inherit its position. Charts use theme accent colors (schemeClr), so a theme change recolors them. Speaker notes are written, and unused empty placeholders are removed. Read the build log. Any ERROR (unknown layout, content with no placeholder to hold it) means fix the storyboard and rebuild. Never patch the output by hand with text boxes.

Show full SKILL.md (385 more words)Show less
5. QA: render, look, fix, repeat
bash
python3 scripts/qa_deck.py deck.pptx --storyboard storyboard.json --out-dir qa/

Then open qa/contact_sheet.png and look at every slide. The checks estimate text fit from font metrics. The render shows what the checks miss: an unbalanced layout, a chart that says nothing, a label collision.

Fix at the source, in order:

  • text_overflow / text_tight: cut words, split into two slides, or move detail to notes. Do not shrink fonts, and do not rely on "shrink text on overflow". PowerPoint recomputes that on edit, so type sizes drift from slide to slide.
  • overlap, off_slide, free_text_box, template_bypass: move the content into a layout placeholder, or change the layout.
  • off_theme_font / off_theme_color: remove the hard-coded value so the theme applies.
  • empty_placeholder: fill it or drop it. Empty ones show "Click to add text" in edit view.
  • action_title: rewrite as a full-sentence takeaway. Re-read the storyline section of the report.
  • no_source: add the source line.

Rebuild and rerun QA until it reports 0 ERROR and every WARN is fixed or explained to the user. Only then deliver.

6. Deliver

Deliver deck.pptx, the contact sheet, and a short note: the governing thought, the slide count, and any WARN you chose to leave with the reason. Offer the ghost deck (the titles) as the executive summary.

Editing an existing deck

The goal is to change the content and keep the design system.

  1. Run inspect_template.py deck.pptx. existing_slides lists each slide's layout and its placeholder shapes and text.
  2. Write an edit storyboard: {"slides": [{"edit": 4, "title": "...", "bullets": [...]}], "delete": [7], "order": [...]}. Edits replace text inside the existing placeholders and keep the first run's formatting. New slides without edit are appended from the deck's own layouts.
  3. build_deck.py edits.json --edit deck.pptx -o deck_v2.pptx, then QA with expected_slide_count.

Never re-create the deck to change it, and never copy slides into a fresh file. Either one silently drops the masters. For "fix my deck formatting", run QA first and fix what it finds, working from ERRORs down.

Guardrails

  • The template decides fonts, colors, positions and bullet styles. The storyboard decides words and numbers.
  • One message per slide. If a title needs "and", it is probably two slides.
  • Numbers on slides must come from the user's data. Mark placeholders as [TBD] rather than inventing figures, and QA will show them.
  • Keep text at 10pt or larger (source lines excepted). QA warns below that.

© OneWave-AI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 12 other files (scripts, references) in template-deck-builder of OneWave-AI/claude-skills.

  • SKILL.md
  • references/python-pptx-notes.md
  • references/storyboard-schema.md
  • references/storyline.md
  • scripts/build_deck.py
  • scripts/inspect_template.py
  • scripts/qa_deck.py
  • scripts/tdb_common.py
  • tests/make_sample_template.py
  • tests/run_tests.sh
  • tests/sloppy_edit.py
  • tests/storyboard_bad.json
  • tests/storyboard_good.json

Open the folder on GitHubat commit fc5b785

Compare with similar skills

Template Deck Builder next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Template Deck Builder compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Template Deck Builder this skillOneWave-AI/claude-skills323—~2kAutomated safety check: PassMIT
Slidesfcakyon/claude-codex-settings1.2k1 repos~1.1kAutomated safety check: PassMIT
Powerpoint SlidesNoi1r/powerpoint-skill123—~12kAutomated safety check: NotesMIT
PPTX HTML Fidelity Auditsanqiufong/slides-from-anything1321 repos~3.5kAutomated safety check: PassApache-2.0
Slide Making Skillhaojing8312/WorkClaw1411 repos~1.8kAutomated safety check: PassApache-2.0
Ppt Generationpeintune/runjam228—~7.1kAutomated safety check: PassMIT

Similar skills

  • Slides

    fcakyon/claude-codex-settings

    Create and edit presentation slide decks (.pptx) with PptxGenJS, bundled layout helpers, and render/validation utilities.

    1.2k GitHub starsUsed in 1 repo~1.1k tokens
    Documents & OfficeAuto-check passed
  • Powerpoint Slides

    Noi1r/powerpoint-skill

    Create visually rich PowerPoint (.pptx) presentations from academic papers, research notes, or any content the user wants in slide format.

    123 GitHub stars~12k tokensUpdated 6 mo ago
    Documents & OfficeAuto-check: notes
  • PPTX HTML Fidelity Audit

    sanqiufong/slides-from-anything

    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…

    132 GitHub starsUsed in 1 repo~3.5k tokens
    Documents & OfficeAuto-check passed
  • Slide Making Skill

    haojing8312/WorkClaw

    Implement single-slide PowerPoint pages with PptxGenJS. An agent skill from haojing8312/WorkClaw.

    141 GitHub starsUsed in 1 repo~1.8k tokens
    Documents & OfficeAuto-check passed
  • Ppt Generation

    peintune/runjam

    A skill your agent uses when the user requests to generate, create, or make presentations (PPT/PPTX).

    228 GitHub stars~7.1k tokensUpdated 3 days ago
    Documents & OfficeAuto-check passed
  • PPTX

    ymx10086/ResearchClaw

    Create, edit, and analyze PowerPoint presentations — research talks, conference presentations, lecture slides, and poster summaries.

    313 GitHub stars~2.3k tokensUpdated 6 mo ago
    Documents & OfficeAuto-check passed

More from OneWave-AI/claude-skills

All 70 skills in this repo
  • CRM Data Cleanup

    OneWave-AI/claude-skills

    Finds duplicate and junk records in a CRM CSV export with fuzzy matching, normalizes fields and writes a reviewable merge plan plus import-ready files without touching the live CRM.

    323 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Design Export Repair

    OneWave-AI/claude-skills

    Repairs broken decks and PDFs exported from Claude Design or similar AI deck generators: clipped text, wrong fonts and corrupted .pptx package structure.

    323 GitHub stars~2.6k tokensUpdated 6 days ago
    Auto-check passed
  • Bi Measure Builder

    OneWave-AI/claude-skills

    Writes, explains, debugs, and optimizes BI calculations - Power BI / Fabric DAX measures and calculated columns, Tableau calculated fields (FIXED/INCLUDE/EXCLUDE LOD expressions, table…

    323 GitHub stars~2.2k tokensUpdated 6 days ago
    Auto-check passed
  • Bookkeeping Close

    OneWave-AI/claude-skills

    Categorizes transactions, reconciles bank and card statements to the ledger, works a month-end checklist and prepares a close package, without ever forcing a balance.

    323 GitHub stars~2k tokensUpdated 6 days ago
    Auto-check passed
  • CSV and Excel Merger

    OneWave-AI/claude-skills

    Combines CSV, TSV and Excel files into one verified table with pandas, by stacking or joining, mapping columns, normalizing keys and removing duplicates.

    323 GitHub stars~1.6k tokensUpdated 6 days ago
    Auto-check passed
  • Sec Filing Puller

    OneWave-AI/claude-skills

    Pulls financial statement numbers for US public companies straight from SEC EDGAR's free official XBRL APIs (companyfacts, companyconcept, frames, submissions) into a cited table.

    323 GitHub stars~2.1k tokensUpdated 6 days ago
    Auto-check passed

Questions about Template Deck Builder

What does Template Deck Builder do?

Builds and edits PowerPoint decks bound to a company's own .pptx or .potx template, with a consulting-grade storyline and a rendered visual QA pass. Template Deck Builder is an agent skill from OneWave-AI/claude-skills.potx template, with a consulting-grade storyline and a rendered visual QA pass.

When should I use Template Deck Builder?

Template Deck Builder fits situations like: the user says use our template; corporate template; consulting-style deck; client presentation.

How do I install Template Deck Builder in Claude Code?

Run `npx skills add OneWave-AI/claude-skills --skill template-deck-builder -a claude-code`. Or copy the skill folder (template-deck-builder in OneWave-AI/claude-skills) into .claude/skills/template-deck-builder in your project. Claude Code loads it when a task matches its description.

How do I install Template Deck Builder in Codex?

Run `npx skills add OneWave-AI/claude-skills --skill template-deck-builder -a codex`. Or copy the skill folder (template-deck-builder in OneWave-AI/claude-skills) into .agents/skills/template-deck-builder in your project. Codex loads it when a task matches its description.

Can I use Template Deck Builder in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add OneWave-AI/claude-skills --skill template-deck-builder -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/template-deck-builder, .gemini/skills/template-deck-builder, .github/skills/template-deck-builder and .opencode/skills/template-deck-builder in your project.

What does Template Deck Builder need to run?

Going by SKILL.md and its folder, Template Deck Builder needs Python and a shell for the scripts in its folder and the command-line tools its instructions call (python3 and pip). Our summary lists: Python 3; A Bash shell.

Does Template Deck Builder access the network?

SKILL.md contains no URLs. Its commands use pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Template Deck Builder safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Template Deck Builder use?

Template Deck Builder is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Template Deck Builder use?

About 2k tokens (SKILL.md is roughly 7.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.9k tokens, read only when the agent opens those files.

What are the alternatives to Template Deck Builder?

Skills that share tags, products or a category with Template Deck Builder: Slides (fcakyon/claude-codex-settings, 1.2k stars), Powerpoint Slides (Noi1r/powerpoint-skill, 123 stars), PPTX HTML Fidelity Audit (sanqiufong/slides-from-anything, 132 stars) and Slide Making Skill (haojing8312/WorkClaw, 141 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Template Deck Builder?

OneWave-AI (a GitHub organization) maintains it in OneWave-AI/claude-skills, which has 323 GitHub stars. The repository holds 70 skills in this directory. The repository was last updated on October 2, 2026.

Source: OneWave-AI/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.