ワンクリックで
pptx-extract-template
Extract reusable templates from PowerPoint presentations into the template library
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Extract reusable templates from PowerPoint presentations into the template library
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Generate C4 architecture diagrams from system notes
Create and edit Obsidian Canvas files for architecture visualization
Visualize system dependencies and relationships
Analyse architecture diagrams and flowcharts
Generate architecture diagrams using Python diagrams library
Batch populate summary fields using content analysis
| name | pptx-extract-template |
| context | fork |
| description | Extract reusable templates from PowerPoint presentations into the template library |
| model | opus |
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 extraction