Generate, update, and manage PowerPoint decks with YAML-driven Python scripts.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "powerpoint" skill from askskill: 1. Download https://raw.githubusercontent.com/microsoft/hve-core/main/.github/skills/experimental/powerpoint/SKILL.md 2. Save it as ~/.claude/skills/powerpoint/SKILL.md 3. Reload skills and tell me it's ready
Generate a 5-slide PowerPoint from the YAML content below, using consistent styling and layout: ...
A ready-to-open PPTX presentation is produced.
Update the existing slides’ text, shapes, and styling using the new content.yaml and style.yaml.
An updated slide deck is returned.
After export, inspect the rendered slides and point out any typography, contrast, or layout issues.
Validation feedback based on slide images is provided.
Useful for people who need to create multi-slide reports from structured YAML. Content, layout, and styling can be managed separately for efficient batch production.
Good for teams maintaining consistent PowerPoint templates and design rules. style.yaml and layout mappings help keep slides visually aligned.
Useful when you need to review layout and visual quality after export. The tool can convert PPTX into visual outputs for validation.
This document describes a PowerPoint skill built on python-pptx, using YAML files to drive slide content, styling, generation, updates, and management. It covers the directory structure, required files, and prerequisites such as PowerShell, uv, and Python 3.11+. It also explains export and validation dependencies including LibreOffice, optional poppler tools, and the GitHub Copilot CLI for vision-based checks.
Generates, updates, and manages PowerPoint slide decks using python-pptx with YAML-driven content and styling definitions.
This skill provides Python scripts that consume YAML configuration files to produce PowerPoint slide decks. Each slide is defined by a content.yaml file describing its layout, text, and shapes. A style.yaml file defines dimensions, template configuration, layout mappings, metadata, and defaults.
SKILL.md covers technical reference: prerequisites, commands, script architecture, API constraints, and troubleshooting. For conventions and design rules (element positioning, visual quality, color and contrast, contextual styling), follow pptx.instructions.md.
The Invoke-PptxPipeline.ps1 script handles virtual environment creation and dependency installation automatically via uv sync. Requires uv, Python 3.11+, and PowerShell 7+.
If uv is not installed:
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# Via pip (fallback)
pip install uv
The Export and Validate actions require LibreOffice for PPTX-to-PDF conversion and optionally pdftoppm from poppler for PDF-to-JPG rendering. When pdftoppm is not available, PyMuPDF handles the image rendering.
The Validate action's vision-based checks require the GitHub Copilot CLI for model access.
# macOS
brew install --cask libreoffice
brew install poppler # optional, provides pdftoppm
# Linux
sudo apt-get install libreoffice poppler-utils
# Windows (winget preferred, choco fallback)
winget install TheDocumentFoundation.LibreOffice
# choco install libreoffice-still # alternative
# poppler: no winget package; use choco install poppler (optional, provides pdftoppm)
The validate_slides.py script uses the GitHub Copilot SDK to send slide images to vision-capable models. The Copilot CLI must be installed and authenticated:
# Install Copilot CLI
npm install -g @github/copilot-cli
# Authenticate (uses the same GitHub account as VS Code Copilot)
copilot auth login
# Verify
copilot --version
style.yaml — Dimensions, defaults, template configuration, and metadatacontent.yaml — Per-slide content definition (text, shapes, images, layout)content-extra.py — Custom Python for complex slide drawingsAll slide content lives under the working directory's content/ folder:
content/
├── global/
│ ├── style.yaml # Dimensions, defaults, template config, and theme metadata
│ └── voice-guide.md # Voice and tone guidelines
├── slide-001/
│ ├── content.yaml # Slide 1 content and layout
│ └── images/ # Slide-specific images
│ ├── background.png
│ └── background.yaml # Image metadata sidecar
├── slide-002/
│ ├── content.yaml # Slide 2 content and layout
│ ├── content-extra.py # Custom Python for complex drawings
│ └── images/
│ └── screenshot.png
├── slide-003/
│ ├── content.yaml
│ └── images/
│ ├── diagram.png
│ └── diagram.yaml
└── ...
style.yaml)The global style.yaml defines dimensions, template configuration, layout mappings, metadata, and defaults. Color and font choices are specified per-element in each slide's content.yaml rather than centralized in the style file.
See the style.yaml template for the full template, field reference, and usage instructions.
content.yaml)…
It uses python-pptx and YAML configuration to generate, update, and manage PowerPoint slides. Content, style, and layout are defined in separate files.
It requires Python 3.11+, uv, and PowerShell 7+. Export and validation also need LibreOffice; poppler’s pdftoppm is optional; vision validation requires the GitHub Copilot CLI.
Slide content lives under the working directory’s content/ folder, typically including a global style.yaml, voice-guide.md, and each slide-xxx folder with its content.yaml and image assets.
Provides the foundational rules and workflow for Design Thinking coaching.
Helps you write cleaner, safer, more maintainable Python code.
Turns Design Thinking outputs into RPI-ready handoff context.
Compress replies to terse, accurate output with selectable intensity levels.
Use a Python CLI to automate reading and writing Mural content.
Review code changes across perspectives and produce structured findings.
Process slide decks locally with templates, checks, HTML-to-PowerPoint, and PPTX rescue.
Generate styled PowerPoint decks from topics, audience, tone, and slide requirements.
Create animation-rich web presentations or convert PowerPoint decks for talks and pitches.
Create, read, edit, and organize PPTX presentations, text, notes, and layouts.
Generate, edit, QA, and export presentations from a topic with AI.
Create web-based report decks with charts, diagrams, and flexible exports.