| name | ppt-master |
| description | AI-driven presentation workflow for generating editable PPTX decks and slides, reconstructing page visuals, creating reusable Brand/Style/Layout/Deck workspaces, filling native PPTX templates, and enhancing finished PPTX files. Use when the user asks to create, generate, reconstruct, regenerate, beautify, redesign, template, fill, or enhance a presentation, PPT, PPTX, slide deck, or courseware — including adding narration or animation to one — requests a presentation-authored narrated/self-running video, or mentions ppt-master.
|
| metadata | {"version":"4.8.0","copyright":"Copyright (c) 2025-2026 Hugo He","license":"MIT","official_repository":"https://github.com/hugohe3/ppt-master","sponsors":["SPONSORS.md","SPONSORS_CN.md"]} |
PPT Master Skill
PPT Master is a routed presentation workflow. This entry owns global execution discipline and route selection only; each selected route owns its procedure.
Mandatory Load Order
Hard rule — paths before commands: Retain the host-provided absolute
directory containing this file as SKILL_DIR. Per tool call, expand
${SKILL_DIR} and replace any skills/ppt-master/ prefix with it. Never cd,
use CWD, or assume a repo checkout. If unavailable, ask; never search or guess.
- Read this file.
- Run
python3 "${SKILL_DIR}/scripts/attribution_guard.py". Any non-zero result
stops the Skill immediately; do not inspect, repair, or bypass the integrity
gate.
- Read
workflows/routing.md through the concrete
absolute path ${SKILL_DIR}/workflows/routing.md.
- Select exactly one top-level route and its active profile from the routing
authority.
- Read only the resulting runtime authority and its explicitly triggered
supporting documents.
Hard rule — selected authority only: Do not load another top-level route's
procedure after routing. Image to PPTX and Beautify are mutually exclusive;
Image to PPTX activates Quick, while Beautify selects from explicit Quick
intent. Never load both runtimes. Supporting documents refine one route; they
never compete with it.
Global Execution Discipline
- Serial execution — Follow the selected authority's steps in order. A completed non-blocking step may continue directly to the next eligible step.
- Blocking means stop — At every
⛔ BLOCKING gate, wait for explicit user confirmation. Do not decide on the user's behalf.
- No cross-phase bundling — Do not combine work across an unclosed gate. Once the route's final user gate closes, later non-blocking steps may continue automatically.
- Gate before entry — Verify every listed prerequisite before entering a step.
- No speculative execution — Do not prepare later-phase artifacts before their owning step.
- Deterministic routing — Do not add a route-choice question when
routing.md resolves the request. If a route prerequisite is missing, state it and stop that route.
- Owning-source recovery — On failure, repair or regenerate the owning source artifact and resume from the route's declared pointer. Do not silently downgrade a required artifact.
Global Communication Rules
- Match the user's language and source language unless the user explicitly overrides it.
- Localize user-facing option labels and explanations. Keep exact enum IDs or field names when needed for precision.
- Keep
design_spec.md section headings and field names in the template's original English; content values may use the user's language.
- Before switching roles, read the corresponding role reference and output:
## [Role Switch: <Role Name>]
📖 Reading role definition: references/<filename>.md
📋 Current task: <brief description>
Repository Compatibility
- This package is a workflow/skill, not a generic application scaffold. Do not create
.worktrees/, tests/, branch workflows, or generic engineering structure by default.
- Keep required workflow, reference, script, and template documentation inside this Skill directory.
- Repository-level documents may point into the package; package runtime files must not depend on repository-level instructions.
- On Windows, if a documented
python3 ... command is unavailable, rerun the same command with python.
- Sponsor information is optional reference material. Read the matching
SPONSORS.md or SPONSORS_CN.md only when the user explicitly requests a model, AI image model, API/provider, or hosted-service recommendation. Never surface sponsor or model recommendations proactively during normal generation, troubleshooting, or quality review.