
document-pptx
Builds and edits PowerPoint (.pptx) slide decks and templates with PPTX-Automizer. Use when you make or build a slide deck or presentation, or repair one.
- Installs
- 278
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/vasilyu1983/ai-agents-public --skill document-pptx- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads document-pptx automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Document PPTX
Boundary: when the claude.ai Slides artifact type or the official Anthropic pptx skill is available, prefer it for plain create/edit, generic template fill and visual QA. Use this skill for its specialist lanes:
- template inspection before automation (layouts, placeholder idx, shape names, OOXML parts)
- designer-owned template fills with PPTX-Automizer
- speaker-note extraction and damaged-deck inspection
- accessibility and EN 301 549 review
Quick Reference
| Job | Default | Notes |
|---|---|---|
| Inspect a template before any fill | scripts/pptx_inventory.py --json | Layout names, placeholder idx and type, shape names |
| Inspect a damaged deck or its parts | scripts/pptx_ooxml_inspect.py | Broken relationships, missing targets, repair dialogs |
| Extract or back up speaker notes | scripts/pptx_extract_notes.py | Markdown or JSON |
| Fill a designer-owned template | PPTX-Automizer | Named-element replacement only (chart data, text, table, image) |
| Python reporting or extraction | python-pptx | Standard charts, notes, placeholders |
| JS/TS or browser export | PptxGenJS | Real combo charts; 16:9 default layout |
Scripts And Exit Codes
| Script | 0 | 1 | 2 |
|---|---|---|---|
pptx_ooxml_inspect.py | No broken relationship targets | Broken targets found (gate). --report-only exits 0 for well-formed packages with broken targets | File missing, invalid package or malformed relationship part |
pptx_inventory.py / pptx_extract_notes.py | Written | n/a | File missing, unreadable, or not a .pptx |
Decision Rules
- Template first or from scratch. Use the branded template when the deck goes to an external audience, brand or legal review is in the path, or the request names "our template". Build from scratch for internal drafts, exploratory mock-ups or data-shaped reports where speed matters more than branding. Never guess brand colours, fonts or layout names when a template exists: inventory it first. With no template and no brand requirement, a clean unbranded deck beats an invented corporate look.
- PPTX-Automizer only for narrow fills. It merges named elements into a designer-owned structure; it is not a general slide generator.
- Resolve layouts by name, every time. Layout indices are not portable between templates, and designers reorder or rename layouts between versions.
- Guard placeholders by idx set.
1 in slide.placeholdersis alwaysFalse; test against{ph.placeholder_format.idx for ph in slide.placeholders}. See references/pptx-template-branding.md. - One takeaway per slide, and chart data traceable to one source of truth with units, timeframe and source.
- Accessibility is part of authoring: titles, reading order, contrast and alt text, not a final pass.
Known Limits
-
python-pptxhas no animation API (no build or entrance effects) and no slide-transition API. Both need direct OOXML<p:timing>/<p:transition>edits; see references/pptx-animations-transitions.md before promising motion. -
python-pptxcannot create a true combo chart (column plus line); it has no multi-plot chart constructor. Fill a template combo chart withreplace_data, or usePptxGenJS. -
python-pptxhas no gradient-fill API and no supported way to edit theme colours (theme1.xml). Both need direct XML edits with a backup first. -
The colour class is
RGBColor(frompptx.dml.color), notRgbColor; the wrong case raisesImportError. -
Default slide sizes differ: python-pptx's default template is 10 × 7.5 in (4:3), PptxGenJS's default is 10 × 5.625 in (16:9). Check every shape and chart against the target size (
y + h <= slide height); positions copied from a 4:3 example run off a 16:9 slide. -
PptxGenJShas no slide-transition or auto-advance option;slide.transition/advanceAfterare silently ignored. Write<p:transition>OOXML instead. -
PPTX-Automizer's
modifyElement(selector, callback)takes modification callbacks (ModifyTextHelper.setText(...),ModifyTableHelper.setTable(...),ModifyChartHelper.setChartData(...)), not an options object like{ text: ... }. -
Blind template edits can break timing, media or repairability. Keynote or Google Slides opening a file cleanly does not confirm PowerPoint compatibility, and the reverse is also true.
-
Library behaviour changes between releases. Re-test a claimed API gap or default against the installed version before relying on it, and mark it unverified when you cannot.
Workflow
- Classify the job: fresh deck, template fill, notes extraction, or repair.
- Build the slide narrative before writing slide code (assets/slide-narrative-template.md).
- Inspect the template (
pptx_inventory.py --json,pptx_ooxml_inspect.py --json) before any automation change. - Generate or edit, then run the release gate below.
Rendered Slide Release Gate
After the final save, reopen the deck and inventory slide count, layout names, placeholders, media relationships, chart data, and speaker notes. Render every slide to images or PDF in the declared delivery target and inspect for clipped text, font substitution, objects outside the slide, broken chart labels, low-resolution images, and unintended blank placeholders. Require an actual PowerPoint pass when PowerPoint fidelity or accessibility is an acceptance criterion; otherwise use the available target renderer and mark PowerPoint fidelity unverified.
Compare charts and headline figures with the source data after rendering, not only in the generation code. For template edits, confirm that masters and theme relationships still resolve and that the declared target viewer opens the file without a repair dialog. Record any viewer-specific variance instead of treating one viewer as proof for another.
Navigation
References
- references/pptx-layouts.md
- references/pptx-charts.md
- references/pptx-template-branding.md
- references/pptx-speaker-notes-delivery.md
- references/pptx-accessibility-compliance.md
- references/pptx-troubleshooting-repair.md
- references/pptx-animations-transitions.md
- references/deck-narrative-and-visual-patterns.md — Load when choosing a deck structure, persuasion arc, per-slide layout, slide type scale, or chart for a slide
- references/extraction-stack.md — Load when picking an extraction tool (native parse vs Docling vs OCR) for a new LLM/RAG pipeline
- data/sources.json
Scripts
- scripts/pptx_inventory.py
- scripts/pptx_extract_notes.py
- scripts/pptx_ooxml_inspect.py
Templates
- assets/pitch-deck.md
- assets/quarterly-review.md
- assets/slide-narrative-template.md
Related Skills
- ../document-pdf/SKILL.md
- ../document-xlsx/SKILL.md
- ../product-management/SKILL.md
Learnings Loop
When prior decisions or pitfalls are relevant, consult learnings.consolidated.md if present; use learnings.md only for needed history or as the available fallback. Otherwise skip both.
After applying it, if you encountered a pattern worth remembering, a mistake worth preventing, or a domain fact that surprised you, append one dated bullet to learnings.md via agents-skills-feedback-loop/scripts/append_learning.py. Do not modify SKILL.md itself.
FAQ
What does the document-pptx skill do?
Builds and edits PowerPoint (.pptx) slide decks and templates with PPTX-Automizer. Use when you make or build a slide deck or presentation, or repair one.
How do I install document-pptx?
Run npx skills add https://github.com/vasilyu1983/ai-agents-public --skill document-pptx in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/document-pptx/ (personal) or .claude/skills/document-pptx/ (project).
Which AI agents can use document-pptx?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is document-pptx safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains document-pptx?
It is published by vasilyu1983 in vasilyu1983/ai-agents-public. It has 278 recorded installs.
More from vasilyu1983/ai-agents-public
software-architecture-design
vasilyu1983/ai-agents-public
Designs runtime topology in a chosen solution. Use when choosing monolith vs services, cells, consistency, ADRs. Not for cross-system design (software-solution-architecture).
product-management
vasilyu1983/ai-agents-public
Guides founder-PM discovery, roadmaps, prioritization, and PMF measurement. Use when planning product strategy, metrics, or roadmaps.
document-xlsx
vasilyu1983/ai-agents-public
Builds Excel charts, pivots, validation, exports, Office Scripts/Graph automation, and workbook audits. Use when automating workbooks; for plain edits prefer official xlsx skill.
software-ui-ux-design
vasilyu1983/ai-agents-public
Designs and audits UI/UX systems with usability and accessibility requirements. Use when shaping flows, design systems, interaction patterns, or WCAG-aware product behavior.
document-pdf
vasilyu1983/ai-agents-public
Handles PDF/UA accessibility, real redaction, metadata scrubbing, signing, and extraction. Use when redacting or signing PDFs; for plain create/merge prefer the official pdf skill.
qa-testing-playwright
vasilyu1983/ai-agents-public
Builds and debugs Playwright E2E suites. Use when authoring browser tests, fixing flakes, or hardening Playwright CI and locator strategy.
Popular docs & writing skills
grill-with-docs
mattpocock/skills
A relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go.
lark-markdown
open.feishu.cn
飞书 Markdown:查看、创建、上传、编辑和比较飞书中的原生 Markdown 文件。当用户要操作飞书 Markdown 文件,或比较其远端版本及本地草稿时使用。纯本地 Markdown 文件操作不触发本 skill。不负责将 Markdown 导入为飞书在线文档,也不负责文件搜索、权限、评论、移动、删除等云空间管理操作。
writing-beats
mattpocock/skills
Writing, exploit; assemble raw material into a journey of beats, grounding each term before a beat leans on it.
writing-shape
mattpocock/skills
Writing, exploit: shape raw material into an article, paragraph by paragraph.
writing-fragments
mattpocock/skills
Writing, explore: mine raw fragments, no structure yet.
writing-for-agents
mattpocock/skills
Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.