pptx

Create, edit, and verify PowerPoint .pptx presentations via XML editing and pptxgenjs.

1|Updated May 19, 2026
One-click install
npx skills add https://github.com/thomasmartinsen/talks --skill pptx-thomasmartinsen
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pptx
Source: https://github.com/thomasmartinsen/talks/tree/main/20260519%20-%20Agentic%20engineering/primitives/skills/office/skills/pptx
Command: npx skills add https://github.com/thomasmartinsen/talks --skill pptx-thomasmartinsen

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires markitdown, Pillow, pptxgenjs, defusedxml, lxml, and includes scripts (resource) and references (resource) components.

What problem does it solve? Working with PowerPoint files programmatically is error-prone: decks end up with broken XML, leftover placeholder text, misaligned layouts, and slides that were never visually checked. This Skill provides a complete workflow for inspecting, editing, generating, and verifying .pptx files so decks come out correct and well-designed. ## Core Features & Use Cases - Template-Based Editing: Unpack a .pptx into readable XML, add/remove/reorder slides safely with helper scripts, edit content, and repack into a valid file. - Programmatic Deck Generation: Build brand-new presentations from scratch using pptxgenjs, with guidance on layouts, color palettes, typography, charts, tables, and icons. - Content Extraction & Visual QA: Extract all text with markitdown, generate thumbnail grids, render slides to images via PowerPoint COM or LibreOffice, and run structured fix-and-recheck review cycles. - Use Case: You receive a corporate template and need a 12-slide quarterly report. Generate thumbnails to pick layouts, unpack and edit the XML, repack the deck, render every slide to images, and verify no placeholder text or visual defects remain. ## Quick Start Use the pptx skill to build a five-slide project status deck from scratch and render each slide as an image for review.

Frequently Asked Questions about pptx

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I edit an existing PowerPoint template programmatically?

Unpack the .pptx into XML with the unpack script, modify the slide list in presentation.xml, edit individual slide XML files with precise text replacements, then run clean and pack scripts to produce a valid output file. Thumbnail grids help you map layouts before editing.

How do I generate a PowerPoint deck from scratch with JavaScript?

Use pptxgenjs: create a new PptxGenJS instance per file, set a layout like LAYOUT_16x9, then add slides with text, shapes, images, tables, and charts using inch-based coordinates and hex colors without the # prefix. Finish with writeFile to produce the .pptx.

How do I render PowerPoint slides to images for review?

Run the render_slides.py script, which on Windows uses PowerPoint COM export and otherwise falls back to LibreOffice converting to PDF plus pdftoppm splitting into per-slide JPEGs. If neither tool is installed, rendering is blocked and that limitation should be reported.

Why does my generated pptx file fail to open in PowerPoint?

Common causes are hex colors written with a # prefix, 8-character hex values in shadows, negative shadow offsets, or reusing one pptxgenjs instance for multiple files. Manually copying slide XML without registering content types and relationships also corrupts the package.

Can I extract text and speaker notes from a pptx file?

Yes, run python -m markitdown on the .pptx file to pull all slide text, speaker notes, and table content as Markdown. For layout internals like shape positions, unpack the file and inspect the raw slide XML directly.