speaker
Speaker is a Codex skill project for academic presentations: read real.pptx, combine text extraction, PPTX structure parsing, page-by-page rendering, OCR, and visual review to generate page-by-page speaker notes, and write a clean version of the lecture into the PowerPoint comment area.
A Claude Code and Codex skill that writes PowerPoint speaker notes by actually reading slide visuals, not just the text boxes.
Speaker is a Python-based skill for AI coding assistants (specifically Codex and Claude Code) that generates speaker notes for PowerPoint presentations. Most tools that do this only read the text boxes on each slide, which means they miss charts, screenshots, tables, and labels embedded inside images. This project is built to avoid that gap by looking at slides the way a human would: reading the visible content, not just the raw text layer.
The process works in several stages. First it reads the structure of the .pptx file and extracts text boxes, tables, native charts, and any additional XML content that standard libraries miss. Then it renders each slide as an image so that visually complex content, things like SmartArt, grouped shapes, or screenshot overlays, can be inspected. An OCR step reads any text found inside those images, and a vision review stage prepares a summary of each slide's visual elements for a vision-capable AI agent or a human reviewer.
From that combined picture of each slide, the skill drafts two sets of notes. One is a display version, meant for rehearsal: it includes slide labels, transitions, pauses, and a timing table. The other is a clean version containing only the spoken words, which gets injected directly into the PowerPoint notes pane. Both are derived from the same grounded source so they stay consistent with each other.
The outputs are a new .pptx file with the notes written in, a .docx rehearsal document (with a Markdown fallback if the required library is not installed), and a vision review packet that records the evidence gathered per slide. Intermediate files are saved under a work folder so nothing is lost if a step needs to be rerun.
To use it inside Claude Code, the repository provides a project skill at .claude/skills/ppt-speech-writer. After opening Claude Code from the repository root, invoking /ppt-speech-writer starts the full workflow. Before drafting begins, the skill asks the user to confirm the output language, since it does not infer language from the conversation automatically.
Where it fits
- Generate rehearsal speaker notes with timing for an existing PowerPoint deck
- Extract spoken-word notes that get written directly into the PowerPoint notes pane
- Get an AI reading of chart and screenshot content that plain text extraction would miss
- Produce a rehearsal document alongside the updated deck for practicing a talk