PPT Master

AI generates SVG pages, then Python converts them into native PowerPoint DrawingML objects.

1 - 概要

PPT Master は、PDF、DOCX、XLSX、URL、Markdown、貼り付けテキストなどをもとに、PowerPoint で直接編集できる .pptx を生成する AI ワークフロー。各スライドを画像として貼るのではなく、図形・テキストボックス・チャートを native object として出力する。

22
example projects
309
example pages
21
layout templates
90+
TTS locales
2 - 設計思想

PPT Master の中心は AI が SVG を作り、converter が DrawingML に翻訳するという分業。SVG と DrawingML はどちらも絶対座標の 2D vector format なので、HTML/CSS の document flow より PowerPoint の canvas model に近い。

狙い: AI に直接 DrawingML を書かせず、人間がブラウザで検査できる SVG を中間形式にする。これで生成・デバッグ・変換の認知負荷を下げる。

出力は「完成品」ではなく、編集可能な高品質ドラフト。ゼロから白紙を埋める仕事を大きく減らす一方、最終調整は PowerPoint 上で人間が行う設計になっている。

Local pipeline; AI calls are the exception
No PPT SaaS subscription
Claude / GPT / Gemini etc.
Cursor / Claude Code / Copilot etc.

AI presentation tools の分類

方式 出力 PowerPoint で要素単位に編集できるか
Template fill-in 固定テンプレートに内容を流し込む PPTX 部分的
Image-based 各スライドを一枚画像として PPTX に入れる 不可
HTML presentation Web ベースの deck 不可
PPT Master DrawingML の shape / text / chart 可能
3 - 生成パイプライン
01
Source
PDF、Office document、URL、Markdown を Markdown source に寄せる。
02
Project
format を選び、sources / images / templates / output directories を作る。
03
Strategist
Eight Confirmations、design_spec.md、spec_lock.md を確定する。
04
Images
必要な場合だけ AI 生成または web search で visual assets を取得。
05
Executor
spec_lock をページごとに読み直し、SVG を順番に生成する。
06
Finalize
notes split、icon/image embedding、SVG cleanup を行う。
07
Export
DrawingML PPTX と SVG snapshot backup を出力する。
重要: SVG 生成はサブエージェントに分けず、main agent が順番に実行する。長い deck で文脈が崩れないよう、各ページの前に spec_lock.md を再読する。
4 - 使い方

ユーザーが直接触る依存は基本的に Python 3.10+。その上で、読み書きと command execution ができる AI agent host から workflow を進める。

# install
pip install -r requirements.txt

# create a project
python3 skills/ppt-master/scripts/project_manager.py init q3-report --format ppt169

# import source files into the project
python3 skills/ppt-master/scripts/project_manager.py import-sources projects/q3-report sources/report.pdf --move

ユーザーは code を書くより、AI chat に材料と意図を渡す。AI は design spec を確認し、承認後に生成と export を進める。

Please create a PPT from projects/q3-report/sources/report.pdf

Use a consulting style, 16:9 format, 8-10 pages.
Keep the deck editable in PowerPoint.

If narration is useful, prepare speaker notes only first.

生成される主要成果物

成果物 役割 なぜ残すか
design_spec.md 人間向けの構成・デザイン仕様 意図、対象読者、色、ページ構成をレビューできる
spec_lock.md Executor 向けの execution contract 色・フォント・素材の drift を防ぐ
svg_output/ AI が生成した SVG pages ブラウザで見て直せる中間表現
svg_final/ post-processing 済み SVG PPTX export の入力として安定化済み
exports/ native editable PPTX 納品・編集用の本命ファイル
backup/ SVG snapshot PPTX と SVG source backup 見た目の参照と再 build の保険
5 - ツール群

実体は repository-specific skill と Python script 群。source conversion、project management、image acquisition、SVG quality check、PPTX export が分かれている。

source_to_md/*.py
PDF / DOCX / XLSX / PPTX / URL を Markdown source に変換する入口。
project_manager.py
project init、source import、directory validation を担当。
image_gen.py
OpenAI、Gemini、Replicate など複数 backend で画像生成。
svg_quality_checker.py
viewBox、禁止 SVG feature、spec drift を export 前に検出。
finalize_svg.py
icon embedding、image crop、text flattening などの post-processing。
svg_to_pptx.py
SVG を DrawingML に変換し、animations や speaker notes 付き PPTX を出力。

Template library

Google style、McKinsey、academic defense、government blue など 21 の layout templates。ただし main workflow は free design が default で、template は明示された時だけ使う。

Narration and video

speaker notes から edge-tts で slide ごとの MP3 を作り、PPTX に埋め込める。PowerPoint や Keynote の video export と組み合わせられる。

6 - 制約と適性
  • PowerPoint 上で最終編集したい。
  • 生成・変換・export はローカルで行い、外部通信を AI model とのやり取りに限定したい。
  • consulting deck、technical talk、government report など構造が重い資料を作る。
  • AI model や editor host を固定されたくない。
  • browser で即座に共有できる zero-setup slide tool が欲しい。
  • 10 ページを数秒で出したい。PPT Master は serial page generation を重視する。
  • drag-and-drop UI や real-time co-editing が必要。
  • PowerPoint の最終仕上げを一切したくない。

Export 直前の hard guards

守るべき出口: svg_quality_checker.py は speaker notes 生成前に実行し、error が 0 になるまで修正する。post-processing は finalize_svg.py を使い、svg_to_pptx.py は -s final で export する。

この 3 つはまとめて実行せず、1 つずつ成功を確認する。

python3 skills/ppt-master/scripts/total_md_split.py projects/q3-report
python3 skills/ppt-master/scripts/finalize_svg.py projects/q3-report
python3 skills/ppt-master/scripts/svg_to_pptx.py projects/q3-report -s final