Agent skill · Code Review & Quality

pptx

Read, edit, or create PowerPoint .pptx files. Trigger this skill whenever the user mentions a deck, slides, slide deck, presentation, or a `.pptx` filename — whether the goal is to extract text, modify an existing deck, build one from scratch, or prepare slides for review. Three execution paths are supported: text extraction (always available), template editing (unzip → patch slide XML → repack), and creation from scratch (python-pptx for Python or PptxGenJS for Node).

opensquilla6,385★ · +160/wk · 1 repos on radarProfile →
claude-codeships scriptsApache-2.0
Install
npx skills add opensquilla/opensquilla --skill pptx --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 6
SKILL.md size: 15 KB
Bundled scripts: yes
Path: src/opensquilla/skills/bundled/pptx/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 6,515 · +130 this week
Language: Python
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# pptx Work with PowerPoint `.pptx` decks. The pptx file format is OOXML — a zip container holding XML descriptions of slides, layouts, masters, and media. ## Delivery rule First, use the available tool list for this session to choose the delivery path. If `write_file`, `edit_file`, `apply_patch`, or `execute_code` is available: - Build the `.pptx` in the active workspace using the paths below. - Call `publish_artifact` for the final `.pptx` before your final reply when that tool is available. - The code examples later in this document apply. If only `create_pptx` is available: - Use it only for a basic text-only deck from slide titles, body text, and bullets. - Do not use it for illustrated, image-heavy, chart-heavy, template-based, or visually designed decks. It does not support images, icons, charts, custom layouts, or visual QA. - If the user asked for those visual features, explain that full visual deck authoring is unavailable in this session instead of calling `create_pptx` as though it satisfies the request. If none of those file-authoring tools are available: - Do not attempt to generate, save, or modify the `.pptx`. - Do not paste OOXML, Python, JavaScript, HTML, or other

What's inside
Steps it walks through
  1. Delivery rule
  2. Decide the path first
  3. Path A: Read text from a .pptx
  4. Path B: Edit an existing deck
  5. B1. Text-only edits (preferred)
  6. B2. Structural edits (add/remove/reorder slides, change layouts)
  7. Path C: Create from scratch
  8. C1. python-pptx quick recipe
  9. C2. PptxGenJS quick recipe
  10. Design checklist (apply to both C1 and C2)
  11. Visual QA (when render tools are available)
  12. Common pitfalls
  13. Troubleshooting
  14. Boundaries
Ships with 5 files
  • THIRD_PARTY_NOTICES.md
  • references/pptxgenjs.md
  • references/python_pptx.md
  • scripts/extract_text.py
  • scripts/render_thumbs.sh
Commands it runs
python {baseDir}/scripts/extract_text.py /path/to/deck.pptx
python {baseDir}/scripts/extract_text.py /path/to/deck.pptx --json
python -m markitdown deck.pptx
mkdir _unpacked && (cd _unpacked && unzip -q ../input.pptx)
edit _unpacked/ppt/presentation.xml (sldIdLst order)
edit _unpacked/ppt/slides/slideN.xml content
bash {baseDir}/scripts/render_thumbs.sh out.pptx
emits out-01.jpg, out-02.jpg, ... in cwd, plus out.pdf
More from opensquilla
All skills →
About this skill
What does the pptx skill do?

Read, edit, or create PowerPoint .pptx files. Trigger this skill whenever the user mentions a deck, slides, slide deck, presentation, or a `.pptx` filename — whether the goal is to extract text, modify an existing deck, build one from scratch, or prepare slides for review. Three execution paths are supported: text extraction (always available), template editing (unzip → patch slide XML → repack), and creation from scratch (python-pptx for Python or PptxGenJS for Node).

How do I install it?

Run `npx skills add opensquilla/opensquilla --skill pptx --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From opensquilla/opensquilla, a repository with 6,515 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going