본문으로 건너뛰기
cccskills
무료GitHub에 공개

pptx-extract-template

Extract reusable templates from PowerPoint presentations into the template library

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구PowerPoint
설치 방법 보기

포함된 파일(1)

  • SKILL.md4.6 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

/pptx-extract-template

Extract the design system (slide masters, layouts, colour themes, font themes, placeholder configurations) from a PowerPoint presentation and save it as a reusable template.

Usage

/pptx-extract-template <path-to-pptx>
/pptx-extract-template <path-to-pptx> --name "Template Name"
/pptx-extract-template <path-to-pptx> --previews

Examples

/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"

Instructions

Phase 1: Locate the PowerPoint File

  1. Parse the argument for a file path
  2. If partial or just a filename, search in this order:
    • ~/Downloads/
    • Vault Attachments/ folder
    • Current directory
  3. Verify the file exists and has a .pptx extension
  4. If not found, ask user for the correct path

Phase 2: Dry-Run Analysis

Run 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:

  • Number of slide masters and layouts
  • Theme colours and fonts
  • Notable layout names

Phase 3: Confirm Name and Tags

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

Phase 4: Extract and Save

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

Phase 5: Verify

After extraction, verify the output:

  1. Check .claude/templates/pptx/<slug>/template.json exists and is valid JSON
  2. Check _catalogue.json has been updated
  3. Confirm the source PPTX was copied

Phase 6: Report

Template 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

What Gets Extracted

ElementDescriptionStored As
Slide MastersBase design with backgrounds, logostemplate.json
Slide LayoutsNamed layouts with placeholder positionslayouts/*.json
Colour ThemeBrand colours (dk1, lt1, accent1-6, etc.)theme/colours.json
Font ThemeHeading and body font familiestheme/fonts.json
PlaceholdersType, position, size, default formatting per layoutlayouts/*.json
Source PPTXOriginal file for use as creation templatesource.pptx

Error Handling

ErrorSolution
File not foundAsk user for correct path
Not a PPTX fileInform user, suggest conversion
python-pptx import errorpip3 install python-pptx
Corrupted PPTXSuggest opening in PowerPoint first
Permission deniedCheck file permissions

Template Storage

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

Integration with Other Skills

  • /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 presentations

Dependencies

  • python-pptx — PPTX parsing and introspection
  • lxml — Theme XML extraction
  • LibreOffice (optional) — Layout preview generation

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Batch populate summary fields using content analysis

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

DavidROliverBA/ArchitectKB532026년 3월 2일 업데이트

auto-tag

무료

Batch auto-tag untagged notes using content analysis

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

DavidROliverBA/ArchitectKB532026년 3월 2일 업데이트

Generate C4 architecture diagrams from system notes

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

DavidROliverBA/ArchitectKB532026년 3월 2일 업데이트

canvas

무료

Create and edit Obsidian Canvas files for architecture visualization

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

DavidROliverBA/ArchitectKB532026년 3월 2일 업데이트

Check Outlook inbox and update daily note with message summary

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

DavidROliverBA/ArchitectKB532026년 3월 2일 업데이트

commit

무료

Stage and commit vault changes with UK English conventional commit messages

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

DavidROliverBA/ArchitectKB532026년 3월 2일 업데이트

DavidROliverBA의 스킬 모두 보기

이 스킬의 문제 신고