telagod/creating-presentations
Processes PowerPoint presentation files (.pptx). Creates slides, rewrites templates, converts HTML to presentations, validates thumbnails, swaps layouts, and performs deep OOXML editing. Use when working with presentation files or slide decks. Do NOT use for Word documents, spreadsheets, or PDF files.
npx skills add https://github.com/telagod/code-abyss --skill creating-presentations
.pptx is a ZIP archive of XML and resources. Choose workflow by intent.
| Intent | Workflow | Reference |
|--------|----------|-----------|
| Read text | markitdown → markdown | thumbnails-and-conversion.md |
| Analyze layout / comments / theme | unpack → raw XML | thumbnails-and-conversion.md |
| Create new from scratch | html2pptx | html2pptx.md + design-patterns.md |
| Create using template | rearrange + inventory + replace | template-workflow.md |
| Edit existing slides | unpack → OOXML → pack | ooxml.md |
| Visual review | thumbnail grids | thumbnails-and-conversion.md |
html2pptx.md. NEVER set range limits.<p>, <h1>–<h6>, <ul>, <ol>class="placeholder" for chart/table areas (gray bg for visibility)scripts/html2pptx.js to converthtml2pptx() per HTML filepptx.writeFile() to savepython scripts/thumbnail.py output.pptx workspace/thumbnails --cols 4See template-workflow.md for full 7-step workflow (extract → inventory → outline → rearrange → inventory text → generate replacements → apply).
ooxml.md (~500 lines). NEVER set range limits.python ooxml/scripts/unpack.py <file> <dir>ppt/slides/slide{N}.xml)python ooxml/scripts/validate.py <dir> --original <file>python ooxml/scripts/pack.py <dir> <file>Concise code, no verbose names, no unnecessary print statements.
| Package | Install | Purpose |
|---------|---------|---------|
| markitdown | pip install "markitdown[pptx]" | Text extraction |
| pptxgenjs | npm i -g pptxgenjs | Create via html2pptx |
| playwright | npm i -g playwright | HTML rendering |
| react-icons | npm i -g react-icons react react-dom | Icons |
| sharp | npm i -g sharp | SVG rasterization |
| LibreOffice | apt install libreoffice | PDF conversion |
| Poppler | apt install poppler-utils | pdftoppm |
| defusedxml | pip install defusedxml | Secure XML |
Take telagod/creating-presentations from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference pip, npm.
Without those the skill loads but fails at the first command.