Install the pptx skill to work with .pptx files for reading, editing, creating, unpacking, validating, and rebuilding PowerPoint presentations.

Stars104K
Favorites0
Comments0
CategoryPowerPoint
Install Command
npx skills add https://github.com/anthropics/skills --skill pptx
Overview

Overview

What the pptx skill does

The pptx skill is designed for any workflow that touches a PowerPoint .pptx file. In the repository guidance, it is the default choice whenever a user needs to open, create, inspect, modify, combine, split, or otherwise work with presentation files. That makes it a practical fit for slide-deck production, office-document processing, and PowerPoint-specific automation.

This skill supports several real-world jobs:

  • reading and extracting content from presentations
  • generating a visual thumbnail overview of slides
  • unpacking a .pptx file into editable XML parts
  • editing existing decks based on a template
  • creating slides or full presentations from scratch
  • cleaning and packing an unpacked presentation back into a valid .pptx
  • validating PowerPoint structure with included office-oriented tooling

Who should use pptx

Use pptx if you work with:

  • business presentations and pitch decks
  • internal slide updates based on an existing template
  • content extraction from PowerPoint files
  • automated presentation workflows in a CLI-heavy environment
  • XML-level edits to Office documents
  • AI or agent workflows that need to inspect or rewrite slide content

It is especially relevant for people using Anthropic-oriented agent workflows, since the repository is part of anthropics/skills and the skill is written as a reusable operating guide for presentation tasks.

Problems this skill helps solve

pptx is useful when ordinary file conversion or basic export tools are not enough. For example, it helps when you need to:

  • understand the text and structure inside a deck
  • see slide layouts quickly before editing
  • reuse a branded template instead of starting over
  • duplicate or add slides in an unpacked presentation
  • edit slide XML directly for precise changes
  • remove orphaned files after structural edits
  • rebuild the presentation package cleanly after modifications

The repository evidence shows a complete workflow around markitdown, thumbnail generation, unpacking, editing, cleaning, and packing, so this skill is best understood as a practical PowerPoint workflow toolkit rather than a single script.

What is included in the repository

The published files indicate that the pptx skill includes:

  • SKILL.md for the quick-reference workflow
  • editing.md for template-based editing guidance
  • pptxgenjs.md for creating presentations from scratch with PptxGenJS
  • scripts/thumbnail.py for slide thumbnail grids
  • scripts/add_slide.py for duplicating slides or creating a slide from a layout
  • scripts/clean.py for removing unreferenced files from an unpacked deck
  • scripts/office/unpack.py and scripts/office/pack.py for opening and rebuilding Office packages
  • scripts/office/validate.py and scripts/office/validators/pptx.py for validation-related workflow support

When pptx is a good fit

Choose pptx when:

  • the input or output is definitely a .pptx file
  • you need more than a screenshot or export-only workflow
  • you want to inspect both content and structure
  • you need template-aware editing instead of generating generic slides
  • you want CLI-driven steps for a repeatable workflow

When pptx may not be the best fit

This skill may be less suitable when:

  • you only need to view a presentation manually in PowerPoint or another GUI app
  • you need a general office suite tutorial rather than a PowerPoint-specific process
  • you do not want to work with file packaging, XML parts, or script-driven editing
  • your workflow is entirely outside .pptx files

Installation notes before you begin

Install the skill with:
npx skills add https://github.com/anthropics/skills --skill pptx

Before using pptx, it helps to know that the repository references several external tools or libraries in its examples, including markitdown, PptxGenJS, and LibreOffice-related conversion support through soffice in the thumbnail workflow. The exact environment setup for those tools is separate from the skill install itself, so plan for both the skill installation and any supporting runtime dependencies your workflow needs.

Licensing and usage considerations

The repository includes LICENSE.txt with proprietary terms from Anthropic. Review that file before adopting the skill in a production workflow, especially if you are evaluating reuse, retention, or redistribution constraints.

How to Use

Install the pptx skill

Install pptx with the standard skills command:
npx skills add https://github.com/anthropics/skills --skill pptx

After installation, read these files first:

  • SKILL.md
  • editing.md
  • pptxgenjs.md
  • scripts/thumbnail.py
  • scripts/add_slide.py
  • scripts/clean.py

These files map closely to the main usage paths exposed by the repository.

Start with the quick-reference workflow

The repository’s quick reference breaks usage into three practical entry points:

  • read or analyze content
  • edit or create from a template
  • create from scratch

That is the best way to choose your path.

If you already have an existing presentation to inspect or revise, start with reading and thumbnails. If you have a branded deck to adapt, follow the editing workflow. If you have no template, use the PptxGenJS route documented in pptxgenjs.md.

Read and analyze a PowerPoint file

For content extraction, the repository points to:
python -m markitdown presentation.pptx

This is useful when you want to inspect slide text, summarize a deck, review placeholders, or extract content into another workflow.

For a visual overview, use:
python scripts/thumbnail.py presentation.pptx

According to the script header, this creates a grid of slide thumbnails and labels each thumbnail with the XML filename such as slide1.xml. That is particularly helpful before editing, because you can quickly map slide visuals to the underlying XML parts.

For raw structure access, unpack the file:
python scripts/office/unpack.py presentation.pptx unpacked/

This gives you the package contents needed for XML-level changes.

Edit an existing presentation from a template

The repository explicitly recommends a template-based workflow in editing.md.

A practical sequence is:

  1. Analyze the source template with thumbnail.py and markitdown.
  2. Decide which existing layouts should map to your new content.
  3. Unpack the .pptx.
  4. Make structural changes first.
  5. Edit text inside slide XML files.
  6. Clean the unpacked directory.
  7. Pack the directory back into a .pptx.

The guidance in editing.md is especially useful because it warns against monotonous decks and encourages varied layouts such as multi-column slides, image-plus-text slides, quote slides, section dividers, and stat callouts. That makes pptx more than a low-level file tool: it also supports better presentation workflow decisions.

Add or duplicate slides in an unpacked deck

Use scripts/add_slide.py when you need to create a new slide inside an unpacked presentation.

Repository evidence shows two supported modes:

  • duplicate an existing slide XML file such as slide2.xml
  • create a slide from a layout file such as slideLayout2.xml

The script prints the <p:sldId> element you need to add to presentation.xml, which is a practical detail for structural editing.

This is useful if you are rebuilding a deck from a template and want to preserve layout fidelity.

Clean up after structural edits

Use:
python scripts/clean.py unpacked/

Based on the script description, clean.py removes orphaned slides, relationships, unreferenced media and related resources, notes slides, theme files, and content-type overrides for deleted files. This step matters after deleting or rearranging slides because PowerPoint packages can easily accumulate broken references during manual editing.

If you plan to manipulate the XML directly, this cleanup step is one of the strongest reasons to use pptx instead of an ad hoc zip-editing approach.

Rebuild the presentation package

After editing and cleanup, repack the deck with:
python scripts/office/pack.py unpacked/

The repository’s editing flow places packing after cleanup, which is the safer order when you have made structural changes.

Create a presentation from scratch

If you do not have a template or reference deck, the repository points to pptxgenjs.md.

That guide uses PptxGenJS and shows the basic structure for creating a presentation, setting layout values, adding slides, inserting text, and writing the final .pptx file. The examples also cover formatting details such as charSpacing, rich text arrays, multi-line text handling, and layout dimensions.

This path is best when:

  • branding constraints are light or fully programmable
  • you are generating decks from structured data
  • you want code-first presentation generation instead of template editing

Typical pptx workflow patterns

Common ways to use pptx include:

  • extracting text from customer or internal presentations for review
  • producing thumbnails to understand a deck before modifying it
  • reusing a branded presentation as a template for a new audience
  • editing slide XML in parallel when each slide is a separate task
  • generating a fresh presentation with PptxGenJS when no template exists
  • unpacking and validating office-document internals in a CLI workflow

Files and folders worth checking

For installation evaluation and day-to-day usage, these repository paths are the most helpful:

  • SKILL.md
  • editing.md
  • pptxgenjs.md
  • scripts/thumbnail.py
  • scripts/add_slide.py
  • scripts/clean.py
  • scripts/office/unpack.py
  • scripts/office/pack.py
  • scripts/office/validate.py
  • scripts/office/validators/pptx.py

Practical fit for teams and agents

pptx fits well into agent or workflow systems that need a repeatable CLI path for PowerPoint files. The repository structure shows clear separation between overview guidance, editing instructions, generation instructions, and helper scripts. That makes it easier to adopt in semi-automated presentation pipelines than a single undocumented script collection.

FAQ

What is the pptx skill mainly for?

The pptx skill is for working with PowerPoint .pptx files across reading, editing, creating, unpacking, and rebuilding workflows. The repository guidance says to use it any time a .pptx file is involved as input, output, or both.

How do I install pptx?

Install it with:
npx skills add https://github.com/anthropics/skills --skill pptx

Then review SKILL.md first, followed by editing.md and pptxgenjs.md depending on whether you are editing an existing deck or creating a new one.

Can pptx extract text from a presentation?

Yes. The repository’s quick reference points to python -m markitdown presentation.pptx for reading and analyzing content.

Can pptx create thumbnails of slides?

Yes. scripts/thumbnail.py creates thumbnail grids for quick visual analysis of a PowerPoint presentation. The script description says it labels thumbnails with XML filenames and shows hidden slides with a placeholder pattern.

Can I edit an existing deck with pptx instead of generating a new one?

Yes. That is one of the main supported workflows. editing.md describes a template-based process that includes analyzing the existing deck, unpacking it, changing structure, editing slide XML, cleaning unreferenced parts, and packing it back into a .pptx file.

Does pptx support creating presentations from scratch?

Yes. The repository includes pptxgenjs.md, which documents a PptxGenJS workflow for building a presentation programmatically when no template or reference deck is available.

Is pptx only for text extraction?

No. Text extraction is only one part of the skill. Repository evidence also shows support for thumbnails, unpacking, XML editing, slide duplication, cleanup, repacking, and validation-related tooling.

Do I need to work with XML to use pptx?

Not always, but many of the editing workflows do rely on unpacked Office XML files. If you are creating from scratch via PptxGenJS, you may stay mostly in JavaScript. If you are modifying a branded template precisely, XML-level edits are part of the intended workflow.

When should I choose pptx over a generic slides tool?

Choose pptx when the PowerPoint file itself is the working artifact and you need accurate .pptx handling, template reuse, structure-aware edits, or package-level operations. If your work is specifically about PowerPoint, slide decks, and office-document packaging, this skill is a strong fit.

Are there any licensing considerations?

Yes. The repository includes a proprietary LICENSE.txt with Anthropic terms and additional restrictions. Review that file carefully before using pptx beyond normal in-service usage.

Ratings & Reviews

No ratings yet
Share your review
Sign in to leave a rating and comment for this skill.
G
0/10000
Latest reviews
Saving...