.claude/skills/pptx-extract-template/SKILL.md
Extract reusable templates from PowerPoint presentations into the template library
npx skillsauth add DavidROliverBA/ArchitectKB pptx-extract-templateInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Extract the design system (slide masters, layouts, colour themes, font themes, placeholder configurations) from a PowerPoint presentation and save it as a reusable template.
/pptx-extract-template <path-to-pptx>
/pptx-extract-template <path-to-pptx> --name "Template Name"
/pptx-extract-template <path-to-pptx> --previews
/pptx-extract-template ~/Downloads/BAAE Community Day Feb2026.pptx
/pptx-extract-template Attachments/SAP Architecture.pptx --name "SAP Branded" --previews
/pptx-extract-template quarterly-review.pptx --name "BA Quarterly Review"
~/Downloads/Attachments/ folder.pptx extensionRun the extraction script in dry-run mode to show what will be extracted:
python3 .claude/scripts/pptx_extract_template.py "<pptx-path>" --dry-run --verbose
Review the output and present a summary to the user:
Use AskUserQuestion to confirm:
Question: "What should this template be called?"
Header: "Template"
Options:
1. "<inferred name from filename>" (Recommended)
2. "Custom name"
Then ask for tags:
Question: "Which tags apply to this template?"
Header: "Tags"
Options:
1. "ba, corporate" (Recommended for BA presentations)
2. "ba, engineering"
3. "ba, community-day"
4. "Custom tags"
multiSelect: true
Run the full extraction:
python3 .claude/scripts/pptx_extract_template.py "<pptx-path>" --name "<name>" --tags <tag1> <tag2>
Add --previews if the user requested layout preview thumbnails (requires LibreOffice).
After extraction, verify the output:
.claude/templates/pptx/<slug>/template.json exists and is valid JSON_catalogue.json has been updatedTemplate extracted successfully!
Name: <name>
Slug: <slug>
Layouts: <count> unique layouts
Theme: <colour scheme name> (<major font> / <minor font>)
Saved to: .claude/templates/pptx/<slug>/
Use this template with:
/pptx-create "Title" --template <slug>
View all templates with:
/pptx-templates
| Element | Description | Stored As |
|---------|-------------|-----------|
| Slide Masters | Base design with backgrounds, logos | template.json |
| Slide Layouts | Named layouts with placeholder positions | layouts/*.json |
| Colour Theme | Brand colours (dk1, lt1, accent1-6, etc.) | theme/colours.json |
| Font Theme | Heading and body font families | theme/fonts.json |
| Placeholders | Type, position, size, default formatting per layout | layouts/*.json |
| Source PPTX | Original file for use as creation template | source.pptx |
| Error | Solution |
|-------|----------|
| File not found | Ask user for correct path |
| Not a PPTX file | Inform user, suggest conversion |
| python-pptx import error | pip3 install python-pptx |
| Corrupted PPTX | Suggest opening in PowerPoint first |
| Permission denied | Check file permissions |
Templates are stored in .claude/templates/pptx/:
.claude/templates/pptx/
├── _catalogue.json # Master index
├── <template-slug>/
│ ├── template.json # Full metadata
│ ├── source.pptx # Original PPTX (used for creation)
│ ├── layouts/ # Per-layout JSON files
│ │ ├── title-slide.json
│ │ ├── section-header.json
│ │ └── ...
│ ├── theme/
│ │ ├── colours.json
│ │ └── fonts.json
│ └── previews/ # Optional layout thumbnails
│ └── *.png
/pptx-create — Use extracted templates to create new presentations/pptx-templates — Browse and manage the template library/pptx-to-page — Extract content (not design) from presentationspython-pptx — PPTX parsing and introspectionlxml — Theme XML extractiontools
--- context: fork --- # /youtube Save a YouTube video as both a Weblink (quick reference) and a detailed Page (full analysis). ## Usage ``` /youtube <url> /youtube <url> <optional title override> ``` ## Examples ``` /youtube https://www.youtube.com/watch?v=0TpON5T-Sw4 /youtube https://youtu.be/abc123 AWS re:Invent Keynote ``` ## Prerequisites This skill uses the MCP Docker YouTube tools: - `mcp__MCP_DOCKER__get_video_info` - Video metadata - `mcp__MCP_DOCKER__get_transcript` - Full trans
data-ai
Create and manage git worktrees for parallel agent sessions
testing
--- context: fork --- # /wipe Generate a context handoff summary, clear the session, and resume in a fresh conversation. Detects environment and provides automated (tmux) or manual workflow. ## Usage ``` /wipe /wipe quick # Minimal handoff, just essentials /wipe detailed # Comprehensive handoff with full context ``` ## Instructions When the user invokes `/wipe`: ### Phase 1: Detect Environment First, check the terminal environment: ```bash echo "Environment Detection:"
data-ai
--- context: fork --- # /weekly-summary Generate comprehensive weekly summary from daily notes, meetings, tasks, and project updates using parallel sub-agents. ## Usage ``` /weekly-summary /weekly-summary --last-week /weekly-summary --from 2026-01-01 --to 2026-01-07 /weekly-summary --output page # Create Page note instead of just outputting ``` ## Instructions This skill uses **5 parallel sub-agents** to gather data concurrently from different vault areas, then synthesizes a comprehensi