PlugWiki

pptx: Anthropic's PowerPoint skill for Claude

Makes Claude create, edit and read PowerPoint decks. Built into Claude.ai, and available in Claude Code and the Claude API.

Installs
246.7K
on skills.sh
Stars
186.4K
on GitHub
Files
55
besides SKILL.md
Updated
Oct 2026
last repo commit

The pptx skill makes Claude build, edit and read PowerPoint decks (.pptx files) from a plain request. Ask for a deck, fill in a template, or summarise one you upload, and Claude picks the right method and checks the slides as images before it hands the file back. In Claude.ai it needs Code execution and file creation turned on, and in the API it needs the code execution tool. It is Anthropic's own skill, and it is source-available, not open source.

Good for

  • Anyone who wants a first-draft PowerPoint deck from notes or an outline
  • Teams who fill the same slide template again and again
  • Sales and marketing people who need pitch decks fast
  • Developers who build decks through the Claude API
  • Students and teachers who turn a document into slides

Install pptx

Claude Code

  1. 1

    Copy this prompt.

    Install the pptx skill in Claude Code. Run this command:
    
    /plugin marketplace add anthropics/skills
    /plugin install document-skills@anthropic-agent-skills
    
    Then check that it loaded and tell me how to use it.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js with pptxgenjs, Python with markitdown, LibreOffice, Poppler.

The plugin installs all four document skills (xlsx, docx, pptx, pdf). Pick the plugin if you want the skill without a claude.ai sign-in. The synced copy is newer than the repo copy right now, and it does not load with API-key sign-in, on Bedrock, or in bare or --safe-mode sessions. On Windows, install LibreOffice so Claude does not drive your open PowerPoint to check slides.

From the project README. Source.

What's in the skill

When it loads

Use this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates (.potx), layouts, speaker notes, or comments. Trigger whenever the user mentions "deck," "slides," "presentation," or references a .pptx or .potx filename, regardless of what they plan to do with the content afterward. If a .pptx or .potx file needs to be opened, created, or touched, use this skill.

Sections in SKILL.md

  1. Scripts
  2. Creating with pptxgenjs — gotchas
  3. Editing existing decks and templates
  4. Design Ideas
  5. Before Starting
  6. Color Palettes
  7. For Each Slide
  8. Typography
  9. Spacing
  10. Avoid (Common Mistakes)
  11. QA (Required)
  12. Content QA
  13. File QA (required)
  14. Visual QA
  15. Converting to Images
  16. Dependencies

Key facts

Author
Anthropic
Installs on skills.sh
246,627 (Nov 2, 2026)
Last change to this skill
Jul 17, 2026

What it includes

  • Writes a pptxgenjs script that builds a new deck with charts, icons and notes

    For a new presentation, Claude writes JavaScript that builds each slide, then runs it.

    Try: “Make a 10-slide pitch deck for our Q3 results with a revenue chart”

    Runs code · Create a deck

  • Unzips the .pptx, edits the slide XML, zips it back

    Keeps your template's layouts, fonts and colours by editing the file's slide XML directly.

    Try: “Fill this template.pptx with the content from notes.md”

    Write · Edit a deck or template

  • Dumps every slide's text as Markdown, one block per slide

    Pulls the text out of a deck so Claude can summarise or reuse it.

    Try: “Summarise the key points of board-update.pptx”

    Read · Read a deck

  • Makes a labelled image grid of every slide

    Lets Claude see a template's layouts so it can choose which slide fits each section.

    Runs code · thumbnail.py

  • Duplicates a slide or layout and registers it in the file

    Adds a copy of a slide without breaking the deck. It rewrites the input unless you pass -o.

    Write · add_slide.py

  • Removes slides, media and links that nothing uses any more

    Tidies the deck after slides are deleted.

    Delete · clean.py

  • Checks the file's structure and charts, and names the fix for each failure

    Catches errors PowerPoint would reject before you open the file.

    Read · office/validate.py

  • Runs LibreOffice without a window to convert files to PDF

    Converts the deck to PDF for checking, or upgrades an old .ppt file to .pptx.

    Try: “Convert old-deck.ppt to pptx”

    Runs code · office/soffice.py

  • Renders each slide to an image and looks for overflow, overlap and low contrast

    Claude looks at pictures of the finished slides and fixes layout problems before it hands you the file.

    Runs code · Visual check

  • Built-in palettes, safe fonts, sizes, spacing and a list of looks to avoid

    A style guide so slides do not all look the same.

    Try: “Make it look less like an AI-made deck”

    Design rules

From the official docs

Permissions

Medium risk

Claude runs scripts that can rewrite or delete slides in the deck you give it, and in Claude.ai file creation has internet access. Work on a copy of your deck and watch the chat while it runs.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • On Windows it can close your open PowerPoint

    Without LibreOffice, Claude may drive your installed PowerPoint to check slides, and one user lost all open decks. Install LibreOffice first. The issue is open. github.com

  • One script compiles a small C helper at runtime

    Where sockets are blocked, soffice.py writes C code that is inside the script, compiles it with gcc and loads it into LibreOffice. Socket flagged this pattern; read the script if you run it on your own machine. github.com

  • add_slide.py rewrites your deck unless told not to

    The skill's own notes say to pass -o, or the script rewrites the input deck in place. Work on a copy. github.com

  • clean.py can delete every slide

    If presentation.xml cannot be parsed, clean.py treats every slide as unused and deletes them. Keep a copy of the original. The issue is open. github.com

  • A crafted deck can read local files on old lxml

    The validators use lxml's default parser, and on lxml older than 5 a crafted .pptx can make them read local files. Open only decks you trust. The issue is open. github.com

  • skills.sh audits: two pass, Socket warns

    Gen Agent Trust Hub passed it (Risk Level SAFE, noting dynamic and command execution). Snyk passed it (Risk Level LOW, no issues). Socket warned with one low alert on soffice.py. All three audits are dated Sep 15, 2026. skills.sh

  • Claude.ai file creation has internet access

    Anthropic warns this may put your data at risk and says to monitor chats closely. Claude for PowerPoint should only be used with trusted files. anthropic.com

Security advisories

No published security advisories as of Nov 2, 2026.

Technical details
Turning on read-onlyNo read-only mode. Reading a deck does not change it, but add_slide.py rewrites the input deck unless you pass -o, and clean.py deletes unused slides and media.
Talks toClaude.ai file creation has internet access. The API container has no network access
Sign-in and keysNo keys or sign-in of its own.
Data retentionAgent Skills are not covered by zero data retention arrangements in the Claude API.
Scopes
  • Runs Python and Node scripts

  • Runs LibreOffice, Poppler and sometimes gcc

  • Writes JPEG, PDF and unpacked folders in the working directory

What people say

People like getting a full first draft in one go, and say matching a company template still takes a lot of hand work.

What people like

  • Claude writes a whole deck from notes in one go.
  • A .pptx file lets colleagues review it with comments in tools they already use.

Common complaints

  • Matching a company template exactly still takes about as much fiddling as building the deck by hand.
  • On Windows without LibreOffice, checking slides closed all of one user's open PowerPoint files.
  • Keynote refuses to import some generated decks.

In their words

Examples

  • Build a new deck from a short brief

    Create a presentation about renewable energy

    Claude writes the deck and returns it as a downloadable .pptx file.

    Source
  • Turn meeting notes into a deck, then open it in Google Slides

    Turn these notes into a 10-slide PowerPoint deck for the Q3 review.

    One HN commenter pasted notes into Claude, got a .pptx, and imported it into Google Slides.

  • Fill your own template with new content

    Fill this template.pptx with the content from notes.md. Keep the layouts and fonts.

  • Summarise a deck someone sent you

    Summarise the key points of board-update.pptx, slide by slide.

  • Make a deck that colleagues can comment on

    Make a pitch deck for our Q3 results with a revenue chart, as a .pptx so my team can review it in PowerPoint.

Common errors and fixes

  • Keynote says the deck is invalid

    Cause: Keynote rejects some decks that PowerPoint and LibreOffice open fine.

    Fix: Upload the file to PowerPoint Online (OneDrive), download it again, then open it in Keynote.

    claude-desktop Source

  • All your open PowerPoint files close during a check

    Cause: On Windows without LibreOffice, Claude may drive your installed PowerPoint and quit it.

    Fix: Install LibreOffice so slides render with soffice instead.

    claude-code Source

  • Japanese text breaks lines in the wrong places

    Cause: The deck builder sets the text language to en-US by default.

    Fix: No fix yet. Check line breaks in the finished deck before you share it.

    claude-code, claude-desktop Source

  • The sections list no longer matches the slides

    Cause: clean.py and add_slide.py leave the section list out of sync, and validate.py does not catch it.

    Fix: No fix yet. After adding or removing slides, check the sections in PowerPoint.

    claude-code Source

  • thumbnail.py crashes after rendering every slide

    Cause: Passing --cols 0 makes it fail at the end.

    Fix: Leave out the --cols option or give it a number above 0.

    claude-code Source

  • PDF conversion fails now and then in Docker

    Cause: LibreOffice conversion fails sometimes and the script does not retry.

    Fix: Run the conversion again. The issue is open.

    claude-code Source

  • Icons do not render in API-built decks

    Cause: The API sandbox shipped react and react-dom at mismatched versions.

    Fix: No fix yet. Ask for a deck without icons if they come out broken.

    Source

  • Unrelated skills load after the plugin install

    Cause: document-skills loads every skill in the repo, not just the four document skills.

    Fix: Delete the unrelated skill folders from ~/.claude/plugins/cache/anthropic-agent-skills, and repeat after updates.

    claude-code Source

Questions

Is there a PowerPoint skill for Claude?

Yes. It is called pptx, and Anthropic builds it into Claude. It is one of four document skills, next to docx, xlsx and pdf, that let Claude create files. Ask for a deck or attach a .pptx and Claude uses it on its own.

How do I install the pptx skill?

In Claude.ai there is nothing to install. Turn on Code execution and file creation in Settings > Capabilities and check that pptx is on in Customize > Skills. In Claude Code, use the plugin steps in the install box above.

Does the pptx skill work on the free plan?

Yes, per Anthropic's support page, which lists Free, Pro, Max, Ultra, Team and Enterprise for skills, and skills need Code execution and file creation turned on. The repo README still says paid plans, but it is older than the support page. If Settings > Capabilities shows Code execution and file creation, you have it.

Can I use the pptx skill in Claude Code or the API?

Yes to both. In Claude Code, install the document-skills plugin from the anthropics/skills marketplace. If you sign in with a claude.ai account, Anthropic's built-in skills also sync to your machine. In the API, add the skill with skill_id pptx and the code execution tool to a Messages request, then download the deck with the Files API.

pptx skill vs the Claude in PowerPoint add-in?

The skill makes Claude write a new .pptx file in a sandbox, and you download it. Claude for PowerPoint is a separate Microsoft 365 add-in that edits the deck you already have open, using its slide master and layouts. The add-in is for Pro, Max, Team and Enterprise, and skills you turn on in Claude also work inside it.

Is the pptx skill open source?

No. The license says all rights reserved. Use is governed by your agreement with Anthropic, and you may not copy it, change it, share it or keep copies outside Anthropic's services. Anthropic calls it source-available. Whether a local Claude Code install counts is not answered anywhere, and a user who asked on GitHub got no reply.

Is the pptx skill safe?

Mostly. It runs scripts on the machine where Claude works, and some of them rewrite or delete slides in the deck you give it. The skills.sh audits show two passes (Gen Agent Trust Hub and Snyk) and one low warning (Socket). Work on a copy of your deck.

Does the pptx skill work in Codex, Cursor or Copilot?

Anthropic does not document it. It only covers Claude.ai, Claude Code and the API. A user asked about GitHub Copilot on the repo and got no answer, and the license ties use to Anthropic's services.

What does the pptx skill need on my computer?

Claude.ai and the API sandbox already have everything. On your own machine, the scripts use Node with pptxgenjs, Python with markitdown, Pillow, defusedxml and lxml, LibreOffice, and Poppler. Without LibreOffice on Windows, Claude may drive your open PowerPoint instead.

Why won't my deck open in Keynote?

An open issue reports decks that PowerPoint, PowerPoint Online and LibreOffice open fine but Keynote rejects. The reporter's workaround is to upload the file to PowerPoint Online (OneDrive), download it again, then open it in Keynote.

Information

updated Nov 2, 2026

Folder
skills/pptx

anthropics/skillsskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 33
  1. The repo copy of docx, pptx, and xlsx lags the claude.ai sync · github.com
  2. anthropics/skills README · github.com
  3. Extend Claude with skills · code.claude.com
  4. marketplace.json · github.com
  5. pptx SKILL.md · github.com
  6. Using skills in Claude · support.claude.com
  7. What are skills? · support.claude.com
  8. Create and edit files with Claude · support.claude.com
  9. Agent Skills guide · platform.claude.com
  10. pptx LICENSE.txt · github.com
  11. pptx on skills.sh · skills.sh
  12. Commits to skills/pptx · github.com
  13. Socket audit for pptx · skills.sh
  14. Snyk audit for pptx · skills.sh
  15. Gen Agent Trust Hub audit for pptx · skills.sh
  16. Copilot licensing question · github.com
  17. Is a local install allowed under the license? · github.com
  18. Closes open PowerPoint · github.com
  19. Keynote import · github.com
  20. Use Claude in PowerPoint · support.claude.com
  21. soffice.py · github.com
  22. clean.py deletes every slide when presentation.xml cannot be parsed · github.com
  23. Validators use lxml's default parser · github.com
  24. Create files with Claude · anthropic.com
  25. Hacker News comment · news.ycombinator.com
  26. Hacker News comment · news.ycombinator.com
  27. Hacker News comment · news.ycombinator.com
  28. Japanese kinsoku · github.com
  29. Section list out of sync · github.com
  30. thumbnail.py --cols 0 · github.com
  31. LibreOffice PDF conversion in Docker · github.com
  32. react / react-dom mismatch in API sandbox · github.com
  33. document-skills loads every skill · github.com

Updated Nov 2, 2026.