From code-abyss
Creates, edits, and processes PowerPoint (.pptx) files: builds slides from HTML, rewrites templates, performs OOXML editing, and validates output with thumbnails.
How this skill is triggered — by the user, by Claude, or both
Slash command
/code-abyss:creating-presentations <file.pptx | task><file.pptx | task>This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
`.pptx` is a ZIP archive of XML and resources. Choose workflow by intent.
html2pptx.mdooxml.mdooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsdooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsdooxml/schemas/ISO-IEC29500-4_2016/pml.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsdooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd.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 convert
html2pptx() per HTML filepptx.writeFile() to savepython scripts/thumbnail.py output.pptx workspace/thumbnails --cols 4
See 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 |
npx claudepluginhub telagod/code-abyss --plugin code-abyssCreates, edits, and analyzes PowerPoint (.pptx) presentations via markdown conversion and raw XML. Useful for generating slide decks, extracting content, or modifying layouts/notes.
Creates, edits, and analyzes PowerPoint (.pptx) presentations via markdown conversion and raw XML. Useful for generating slide decks, extracting content, or modifying layouts/notes.