> **pptx-reference-deck-analysis** — chapter 123 of 180 in [wshobson/agents](https://skillsdocs.com/wshobson/agents).
>
> Book (all chapters, one file): https://skillsdocs.com/wshobson/agents.md
> Machine manifest: https://skillsdocs.com/wshobson/agents/.well-known/agent-skills/index.json
> Install the book: `npx skills add wshobson/agents`
> Upstream: https://github.com/wshobson/agents/blob/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/SKILL.md @ `main`
> Raw bytes, no header: https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/SKILL.md
> Base for relative paths: https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/
> Licence: MIT — https://spdx.org/licenses/MIT.html
>
> Bundled files (7), referenced from this skill's directory:
>   - `references/ooxml-parsing.md` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/references/ooxml-parsing.md
>   - `references/reference-deck-analysis-patterns.md` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/references/reference-deck-analysis-patterns.md
>   - `references/reference-deck-analysis.md` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/references/reference-deck-analysis.md
>   - `requirements.txt` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/requirements.txt
>   - `scripts/inspect.py` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/scripts/inspect.py
>   - `scripts/unpack.py` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/scripts/unpack.py
>   - `scripts/validate_package.py` — https://raw.githubusercontent.com/wshobson/agents/main/plugins/pptx-deck-creation/skills/pptx-reference-deck-analysis/scripts/validate_package.py
>
> Content © its authors, served unmodified. Takedown: https://github.com/kyleledbetter/skillsdocs/issues/new?labels=takedown&title=Takedown+request

<!-- Verbatim upstream SKILL.md follows, YAML frontmatter included. -->

---
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.
