pptx · tfriedel — Claude Code skill: build and edit .pptx decks from code
A skill that teaches the agent to create, modify and inspect .pptx files: pull text, dig into slide XML, touch notes and comments. Useful when the deck is generated by code instead of PowerPoint clicks.
npx skills add tfriedel/claude-office-skills --skill pptx -a claude-codeWhat pptx does
A .pptx file is a ZIP of XML parts, and the skill maps that structure out for the agent: presentation metadata in ppt/presentation.xml, slides, speaker notes, comments, layouts and theme. Plain text comes out with python -m markitdown path-to-file.pptx. Comments, notes, animations and heavy formatting need the archive unpacked: python ooxml/scripts/unpack.py <office_file> <output_dir>. The script sits at skills/pptx/ooxml/scripts/unpack.py relative to the project root.
For a deck made from scratch, the workflow is html2pptx: slides are authored in HTML and converted to PowerPoint with placement kept accurate. The agent is told to name its design approach before writing any code. Fonts must be web-safe (Arial, Georgia, Courier New among them), and the palette has to fit the subject. Sample palettes and layout tricks such as uneven column widths are included.
Given a reference design, the skill reads it first: colors from <a:clrScheme>, fonts from <a:fontScheme>, and actual usage in ppt/slides/slide1.xml. Python and markitdown are needed for the reading half; without them start there.
What it helps with
- pull text out of someone else's deck without PowerPoint
- unpack a .pptx and read a slide's XML
- attach comments and speaker notes to a file
- turn HTML slides into a new presentation
- lift colors and fonts from a reference design
Example prompts for the agent
- Extract the text from
quarterly.pptxand give it to me as a list - Add a speaker note to slide 3 in
deck.pptx - Build a deck from these HTML slides and save it as
report.pptx
How to install pptx
1Skills CLI (Vercel)
npx skills add tfriedel/claude-office-skills --skill pptx -a claude-code2Manually: put the files in place
~/.claude/skills/pptx/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/pptx/
1Skills CLI (Vercel)
npx skills add tfriedel/claude-office-skills --skill pptx -a codex2Manually: put the files in place
.agents/skills/pptx/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add tfriedel/claude-office-skills --skill pptx -a cursor2Manually: put the files in place
.cursor/skills/pptx/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install tfriedel/claude-office-skills pptx2Manually: put the files in place
.github/skills/pptx/SKILL.md1Skills CLI (Vercel)
npx skills add tfriedel/claude-office-skills --skill pptx -a gemini-cli2Platform CLI
gemini skills install https://github.com/tfriedel/claude-office-skills --path public/pptxManually: put the files in place
.devin/skills/pptx/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add tfriedel/claude-office-skills --skill pptx -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about pptx
How do I install pptx in Claude Code?
Run npx skills add tfriedel/claude-office-skills --skill pptx -a claude-code. The skill file then lands at ~/.claude/skills/pptx/SKILL.md.
What does pptx do?
It hands the agent instructions and scripts for .pptx work: extracting text, reading XML, editing notes and comments, and generating presentations from HTML slides.
What does the skill need to run?
Python, for markitdown and for unpacking the archive. It expects unpack.py at skills/pptx/ooxml/scripts/unpack.py and suggests find . -name "unpack.py" when the file is not there.
Similar skills
All skills for Office documents →pptx by other authors comes first.