Rylai PPT
Use the bundled Python workflow to create a clean, editable .pptx. The
renderer is an original Rylai implementation built on python-pptx. It uses
local PowerPoint elements and does not load HTML templates, remote images, or
hosted assets.
Requirements
- Python 3
python-pptx
- Optional LibreOffice for rendering to PDF
Workflow
- Read the user's source material and identify the audience, purpose, slide count, language, and required facts.
- Create a JSON deck specification by adapting
examples/deck.json.
- Keep one message per slide. Split dense content instead of shrinking text.
- Validate the specification:
python <skill-dir>/scripts/build_deck.py build <deck.json> <output.pptx>
- Build the presentation:
python <skill-dir>/scripts/build_deck.py inspect <output.pptx>
- Render the result when LibreOffice is available:
python <skill-dir>/scripts/build_deck.py render <output.pptx> <render-dir>
- Check clipping, contrast, reading order, repeated wording, and slide count
before delivery.
Slide Types
cover: title, subtitle, eyebrow, footer
section: number, title, summary
bullets: title, kicker, and two to six structured items
metrics: title and two to four value cards
comparison: two labeled lists with two to five items each
timeline: two to five ordered steps
quote: quotation and attribution
closing: final title, subtitle, and contact line
Read references/deck-spec.md when field-level constraints are needed. Unknown slide fields fail validation so the deck stays portable and deterministic.
Design Rules
- Use the theme fields in the JSON spec rather than editing renderer constants for each deck.
- Use a restrained multi-color palette with one primary accent and one secondary accent.
- Keep titles short, body copy specific, and metrics attributable to the user's material.
- Use only the supported local vector icons:
circle, square, diamond, check, and arrow.
- Do not add remote URLs as image sources. This workflow intentionally has no image field.
- Preserve user-provided brand wording. Do not invent customer names, testimonials, statistics, or claims.
Runtime Notes
- Codex, Hermes, and Claude execute the same bundled Python scripts.
- Resolve all bundled paths from this skill directory.
- Write generated decks to the user's requested workspace, not inside the installed skill.
- Report the final path and the number and types of slides created.
Authored by Rylai for Codex, Hermes, and Claude.
1---2name: rylai-ppt3description: Create editable PowerPoint decks from a local JSON specification using Rylai's visual system, python-pptx, deterministic slide types, and optional rendering.4---56# Rylai PPT78Use the bundled Python workflow to create a clean, editable `.pptx`. The9renderer is an original Rylai implementation built on `python-pptx`. It uses10local PowerPoint elements and does not load HTML templates, remote images, or11hosted assets.1213## Requirements1415- Python 316- `python-pptx`17- Optional LibreOffice for rendering to PDF1819## Workflow20211. Read the user's source material and identify the audience, purpose, slide count, language, and required facts.222. Create a JSON deck specification by adapting `examples/deck.json`.233. Keep one message per slide. Split dense content instead of shrinking text.244. Validate the specification:2526```bash27python <skill-dir>/scripts/build_deck.py build <deck.json> <output.pptx>28```29305. Build the presentation:3132```bash33python <skill-dir>/scripts/build_deck.py inspect <output.pptx>34```35366. Render the result when LibreOffice is available:3738```bash39python <skill-dir>/scripts/build_deck.py render <output.pptx> <render-dir>40```41427. Check clipping, contrast, reading order, repeated wording, and slide count43 before delivery.4445## Slide Types4647- `cover`: title, subtitle, eyebrow, footer48- `section`: number, title, summary49- `bullets`: title, kicker, and two to six structured items50- `metrics`: title and two to four value cards51- `comparison`: two labeled lists with two to five items each52- `timeline`: two to five ordered steps53- `quote`: quotation and attribution54- `closing`: final title, subtitle, and contact line5556Read `references/deck-spec.md` when field-level constraints are needed. Unknown slide fields fail validation so the deck stays portable and deterministic.5758## Design Rules5960- Use the theme fields in the JSON spec rather than editing renderer constants for each deck.61- Use a restrained multi-color palette with one primary accent and one secondary accent.62- Keep titles short, body copy specific, and metrics attributable to the user's material.63- Use only the supported local vector icons: `circle`, `square`, `diamond`, `check`, and `arrow`.64- Do not add remote URLs as image sources. This workflow intentionally has no image field.65- Preserve user-provided brand wording. Do not invent customer names, testimonials, statistics, or claims.6667## Runtime Notes6869- Codex, Hermes, and Claude execute the same bundled Python scripts.70- Resolve all bundled paths from this skill directory.71- Write generated decks to the user's requested workspace, not inside the installed skill.72- Report the final path and the number and types of slides created.7374Authored by Rylai for Codex, Hermes, and Claude.