pptx

Create, edit, and validate PowerPoint .pptx presentations via OOXML manipulation and rendering.

Updated May 24, 2026
One-click install
npx skills add https://github.com/MWest2020/skill-forge --skill pptx-mwest2020
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pptx
Source: https://github.com/MWest2020/skill-forge/tree/main/skills/pptx
Command: npx skills add https://github.com/MWest2020/skill-forge --skill pptx-mwest2020

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve? Working with .pptx files programmatically is error-prone: extracting content, editing slides without corrupting the package, and producing visually polished decks all require deep knowledge of the OOXML format and rendering toolchain. This Skill provides a complete workflow for reading, editing, creating, and quality-checking PowerPoint presentations. ## Core Features & Use Cases - Content Extraction & Analysis: Extract text with markitdown, generate thumbnail grids of slides, and unpack raw OOXML for inspection. - Template-Based Editing: Unpack a .pptx, duplicate or add slides from layouts, edit XML content, clean orphaned files, validate against XSD schemas, and repack. - From-Scratch Creation: Build new decks with pptxgenjs when no template exists, guided by built-in design rules for palettes, typography, and layouts. - Mandatory Visual QA: Convert slides to images via LibreOffice and Poppler, then run a structured fix-and-verify inspection loop. - Use Case: A user asks to update a quarterly pitch deck — the Skill unpacks the file, edits slide content, validates the package against OOXML schemas, repacks it, and visually verifies every slide before delivery. ## Quick Start Use the pptx skill to create a five-slide presentation about our product roadmap and save it as roadmap.pptx.

Frequently Asked Questions about pptx

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

FAQPage Schema
How do I extract text from a .pptx file in Python?

Run python -m markitdown presentation.pptx to extract all text content from a PowerPoint file. For a visual overview instead, use the thumbnail script to render slide images into a labeled grid.

How do I edit an existing PowerPoint presentation programmatically?

Unpack the .pptx into its OOXML directory structure, edit the slide XML directly, add or duplicate slides with the add_slide script, remove orphaned files with clean.py, then validate and repack with pack.py.

How do I create a PowerPoint deck from scratch without a template?

Use pptxgenjs, a Node.js library installed via npm, to generate slides programmatically. Follow the skill's design guidance for color palettes, font pairings, layouts, and spacing to produce polished slides.

Does this work with LibreOffice in sandboxed environments?

Yes. The soffice helper detects blocked AF_UNIX sockets at runtime and applies an LD_PRELOAD shim so LibreOffice headless PDF conversion works in sandboxed VMs where it would otherwise fail.

Why does my edited .pptx appear corrupt after repacking?

Corruption usually comes from broken relationship references, duplicate IDs, or missing content-type declarations. Run the validate script against the original file to catch XSD violations and unreferenced files before packing.

How do I visually check slides for layout problems?

Convert the deck to PDF with soffice, then to JPEG images with pdftoppm, and inspect each slide for overlapping elements, text overflow, low contrast, and leftover placeholder text. Repeat the fix-and-verify loop until clean.