PluginBench
Skill
Review
Audit score 70

pptx-reference-deck-analysis

wshobson/agents

Analyze reference PowerPoint decks for structure, theme, and layout without copying or modifying them.

What is pptx-reference-deck-analysis?

This skill extracts read-only design evidence from PPTX files using python-pptx and OOXML inspection utilities. Use it when you need to understand a reference deck's structure, typography, color scheme, layout patterns, or template organization before creating a new presentation.

  • Extract slide count, dimensions, text summaries, shape counts, and style information from reference decks
  • Analyze master slides, layouts, typography, color tokens, and font distribution
  • Generate derived template catalogs with layout roles, usable regions, and visual constraints
  • Inspect OOXML package structure for relationships, animations, media, comments, and malformed XML
  • Validate internal package integrity and detect broken relationships or orphaned parts
  • Create analysis manifests documenting inspected parts and parsing exceptions

How to install pptx-reference-deck-analysis

npx skills add https://github.com/wshobson/agents --skill pptx-reference-deck-analysis
Prerequisites
  • python-pptx library
  • defusedxml library (required for OOXML package inspection)
Claude Code
Cursor
Windsurf
Cline

How to use pptx-reference-deck-analysis

  1. 1.Run `scripts/inspect.py <deck.pptx>` to generate a compact JSON report of slide structure, text, theme tokens, and relationships
  2. 2.Run `scripts/validate_package.py <deck.pptx> --output <report.json>` to check for malformed XML, broken relationships, and package integrity issues
  3. 3.Use the analysis output to document layout roles, placeholder positions, and visual constraints
  4. 4.Extract color tokens and font information from the style-master analysis
  5. 5.Reference the derived template catalog to understand available layouts and their usable regions

Use cases

Good for
  • Audit a corporate template deck to understand brand colors, fonts, and slide layout patterns before generating compliant presentations
  • Inspect a reference presentation to extract layout roles and placeholder positions for automated slide generation
  • Validate PPTX file integrity and detect corrupted relationships before processing
  • Analyze multiple decks in a folder to catalog available templates and their constraints
  • Extract theme tokens and style masters to ensure generated decks match reference design systems
Who it's for
  • Presentation automation engineers building deck generators
  • Design system maintainers documenting template structure and constraints
  • QA engineers validating PPTX file integrity
  • Developers creating tools that generate slides programmatically
  • Teams standardizing presentation design across organizations

pptx-reference-deck-analysis FAQ

Can this skill modify or copy content from the reference deck?

No. The skill is read-only and never copies, clones, or mutates the source deck. Every target slide must be independently authored.

What OOXML utilities are available?

Three utilities are provided: inspect.py for compact JSON reports, validate_package.py for integrity checking, and unpack.py for raw package extraction when necessary.

Is it safe to use with untrusted PPTX files?

Yes. The scripts reject path traversal, symlinks, oversized members, and archive bombs. XML parsing uses defusedxml to prevent entity expansion and DTD attacks.

What information can be extracted from a reference deck?

Slide count and dimensions, text content, shape counts, colors, fonts, master/layout structure, animations, media references, comments, and relationship maps.

How do I ensure generated decks match the reference design?

Use the style-master analysis to extract color tokens and fonts, and reference the derived template catalog to understand layout constraints and placeholder positions.

Full instructions (SKILL.md)

Source of truth, from wshobson/agents.


name: pptx-reference-deck-analysis description: "Use when analyzing a reference PPTX for read-only structure, theme, typography, layout rhythm, diagnostics, derived template catalogs, or safe OOXML package inspection."

PPTX Reference Deck Analysis

Inspect a reference deck as design evidence. This skill never copies, clones, or mutates a source deck.

Contract

Implement required extraction on demand with a small task-local python-pptx script. Capture only the information required for the new deck:

  • compact prompt context: slide count and size, text summaries, shape counts, styles, brand signals, template use, and layout rhythm;
  • full extraction: summary, slides, and read-only layout_tree evidence;
  • folder diagnostics: one result per deck plus a manifest;
  • style-master analysis: colors, fonts, size distribution, master/layout use, and flow patterns;
  • derived template catalog: zero-based source indices, layout roles, usable regions, placeholders, visual structures, and constraints.

Rules

  • Keep the source deck read-only and independently author every target-slide coordinate.
  • Use the bundled OOXML utilities only for raw themes, relationships, notes, comments, animations, media, masters, or layouts that high-level extraction cannot expose.
  • Record inspected parts and parsing exceptions in the analysis manifest.
  • Do not use extracted content, fonts, images, or proprietary assets in a generated deck without explicit permission and license evidence.

OOXML package inspection

Install defusedxml from requirements.txt before using the bundled utilities.

  1. Run scripts/inspect.py <deck.pptx> for a compact JSON report of slide order, text, theme tokens, relationships, notes, comments, animations, and media.
  2. Run scripts/validate_package.py <deck.pptx> --output <report.json> for malformed XML, broken internal relationships, content-type gaps, duplicate layout links, and orphaned parts.
  3. Run scripts/unpack.py <deck.pptx> <output-dir> only when raw-package evidence is necessary.
  4. Resolve relationship targets relative to the .rels owner; never infer slide order from filenames.

Safety

  • Never modify a supplied deck or blindly copy package parts into a new deck.
  • Run the scripts from a trusted workspace; they reject path traversal, symlinks, oversized members, and archive bombs.
  • Parse untrusted XML with defusedxml; do not enable entity expansion, DTD loading, or network access.
  • Treat theme colors as tokens unless fully resolved against the color scheme.

See references/reference-deck-analysis.md for output shapes, references/reference-deck-analysis-patterns.md for documentation-only patterns, and references/ooxml-parsing.md for package part maps.