Skip to content
Back to skills

Pptx

ASecurity

Create and edit `.pptx` presentations safely, export thumbnails for QA, and build polished decks with pptxgenjs plus OOXML editing.

  • 157 stars
  • 0 votes
  • 0 copies
  • 11 views
  • Added May 27, 2026
data-aigobashnode

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 26, 2026

npx -y skills add HybridAIOne/hybridclaw --skill pptx --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pptx?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Pptx
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/hybridaione-pptx/badge)](https://www.skillsdirectory.com/skills/hybridaione-pptx)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: pptx
description: Create and edit `.pptx` presentations safely, export thumbnails for QA, and build polished decks with pptxgenjs plus OOXML editing.
user-invocable: true
disable-model-invocation: false
requires:
  bins:
    - node
  node_modules:
    - pptxgenjs
    - jszip
    - linkedom
metadata:
  hybridclaw:
    category: office
    short_description: "PPTX deck editing."
    tags:
      - office
      - presentation
      - pptx
    related_skills:
      - office-workflows
      - xlsx
      - docx
---
# PPTX

Use this skill whenever the user asks to create, revise, template, or review a `.pptx` presentation.

## Start Here

- For new decks, read [pptxgenjs.md](./pptxgenjs.md).
- For template edits or preserving an existing deck, read [editing.md](./editing.md).

## Working Rules

- For template-based editing, use unpack -> edit OOXML -> pack. Do not round-trip an existing deck through `pptxgenjs`.
- For new decks, use `pptxgenjs` from a CommonJS `.cjs` script with `require("pptxgenjs")`.
- For new decks built from a folder of source files, treat the named source documents as the inputs of record. Do not inspect older generated decks, dashboards, summary files, or helper scripts in that folder unless the user explicitly asks to reuse or update them.
- Use `node skills/office/soffice.cjs convert ... --format pdf` only when the runtime says `soffice` is available.
- Keep layouts intentional: one message per slide, strong hierarchy, real whitespace, and consistent alignment.
- Use speaker-ready phrasing and evidence-based charts instead of generic bullet walls.
- For `pptxgenjs` tables, never use OOXML values directly in script options. Do not use `valign: "mid"`, `valign: "ctr"`, or raw `anchor: "mid"`. If vertical alignment is needed, use only the `pptxgenjs` values `top`, `middle`, or `bottom`. If it is not essential, leave table-cell vertical alignment unset.
- After `pptx.writeFile(...)` succeeds and the requested deck exists at the expected path, return it immediately. Do not inspect your own generated script or rerun file-existence checks unless generation failed or the user asked you to debug the deck.

## Visual QA Loop

- If both `soffice` and `pdftoppm` are available in the runtime, visual QA is required before final delivery.
- If either dependency is unavailable, do not attempt the render-and-review loop. Return the generated `.pptx` without mentioning the missing QA tools unless the user explicitly asked for QA, export, thumbnails, validation, or render verification.

1. Check capability availability before starting the QA loop. Prefer the runtime capability system message if it is already present. If you need to verify manually, run:
```bash
sh -lc 'command -v soffice >/dev/null 2>&1 || command -v libreoffice >/dev/null 2>&1'
sh -lc 'command -v pdftoppm >/dev/null 2>&1'
```
Only continue with steps 3-6 when both commands succeed.
2. Export the deck to PDF:
```bash
node skills/office/soffice.cjs convert deck.pptx /tmp/pptx-export --format pdf --json
```
3. Render slide thumbnails:
```bash
node skills/pptx/scripts/thumbnail.cjs deck.pptx /tmp/pptx-thumbs --count 6 --json
```
4. Delegate the visual inspection:
```json
{
  "mode": "single",
  "label": "PPTX QA",
  "prompt": "Review the generated slide thumbnails in /tmp/pptx-thumbs. Check alignment, overflow, contrast, chart legibility, and whether each slide communicates a single clear idea. Summarize concrete slide-by-slide fixes."
}
```
5. Apply only the concrete fixes found by review, then rerun the render and inspection steps.
6. Stop when there are no concrete slide-level issues left, or when one more rerender produces the same findings and further iteration would just churn.

## Templates

- Prefer user-provided templates from the current workspace or mounted paths.
- Bundled starter templates can live under `skills/office/templates/`.
- When a template defines brand layouts, preserve its masters, layouts, and theme parts unless the user explicitly asks for a redesign.

Files in this skill

  • SKILL.md3.9 KB
  • editing.md1.5 KB
  • pptxgenjs.md2.7 KB
  • scripts/thumbnail.cjs4.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.