Skip to content
←Back to Open Source

OPEN SOURCE DEEP DIVE

PowerPointPPTXAI Agent

PPT Master: AI generates native PowerPoint decks from any document

Hand a PDF, DOCX, web page or just a topic to any agent-capable tool and get a natively editable PPTX on your own machine — real slide masters, native shapes, data-backed charts and editable formulas.

hugohe3/ppt-master58kPythonMIT4 min read

PPT Master is a "make me a deck" workflow that runs inside an AI agent. Hand it a PDF, a DOCX, a web page, or just a topic, and it generates a natively editable .pptx on your own machine — not a pile of text boxes, and not a filled-in template.

What you actually get

"Editable" is table stakes now; the real question is how much of PowerPoint you get. PPT Master delivers PowerPoint's own object model, and goes fairly deep:

  • Native shapes and connectors with working adjustment handles — every element stays a real PowerPoint object you can click and keep editing;
  • Data-backed charts and tables, generated on demand: shape-based by default, or pass --native-charts-and-tables to get real PowerPoint Chart / Table objects with Edit Data;
  • The full text / picture / fill / effect model;
  • Through the template or structured route, decks with real slide masters and layouts (p:sldMaster / p:sldLayout inheritance);
  • Formulas compiled to editable OMML, so PowerPoint 2010+ can open and edit them.

The project publishes an item-by-item PowerPoint ↔ SVG Mapping Guide — what it covers today and what it does not. SmartArt is a deliberate omission, not a gap waiting to be closed.

More than one route

Generating a new deck from source material is the main pipeline, but not the only one. It can also:

  • Distill reusable brand / style / layout / deck templates from references you provide;
  • Fill an existing .pptx: keep its design and leave untouched pages byte-for-byte identical while editing the pages you choose, with selection and reordering, plus optional notes or narration;
  • Add native transitions, animations and narration to a finished deck.

Each route documents an explicit contract for what gets preserved — not a vague "we try our best".

How it runs: a skill inside any agent-capable tool

In form it is an agent workflow. You do exactly three things: install Python (3.10+; dependencies are one line, pip install -r requirements.txt), install an AI tool, and drop in your material. From there you talk in chat — "make a deck from this PDF" — and the agent handles content analysis, visual design, SVG generation and PPTX export. The deck lands in exports/<name>_<timestamp>.pptx, and the default flow also writes self-contained page previews to svg_final/.

By default the agent first confirms the design spec (template, aspect ratio, page count); say "quick generation, no need to confirm" and it skips that round. Images have two paths that can be mixed per image: the host agent's native image tool, or image_gen.py against a third-party image backend. Web search via image_search.py works zero-config (Openverse / Wikimedia Commons) and improves markedly with free Pexels / Pixabay keys; licensing (CC0, public domain, CC BY, CC BY-SA and more) is handled automatically, and images that require attribution get an inline credit.

Three promises, and one stated limit

Beyond native depth, the project is unusually plain-spoken:

  • Transparent cost — free and open source; the only cost is your model usage, with no PPT subscription on top;
  • Data stays local — apart from communicating with the model, the whole pipeline runs on your machine;
  • No platform lock-in — any agent-capable AI IDE can drive it; Claude, GPT, Gemini, Kimi and others all work.

It also states its limits outright: this is a tool, not a wishing well. The project owns the workflow; the model sets the ceiling — the recommended setup pairs a large context window (~1M tokens) with image generation. Do not expect a finished deck in one shot. The value is taking most of the tedious work off your plate; the polishing left over is yours — and a natively editable deck exists precisely so you can keep working on it. Cheaper models leave more to do: if results disappoint, upgrade the model first, then re-check your usage against the documentation.

Getting started

  1. Install Python 3.10+ (Windows has a dedicated step-by-step guide);
  2. Open the ppt-master folder in any agent-capable tool, or cd into it and launch a CLI agent;
  3. Put your PDFs / DOCX / images in projects/ and name the files in chat — or just paste the text directly.

MIT licensed. (The optional PDF converter depends on PyMuPDF, which is AGPL-3.0 — relevant only when handling PDF sources, and worth checking before redistributing a bundle that includes it.)

As an Amazon Associate, we earn from qualifying purchases.