PPT Agent
Generate professional presentations the way you build software — from a one-line request straight to a validated PPTX file.
- Source repo
- sunbigfly/ppt-agent-skills
- Stars
- ★ 901
- Last updated
- 3mo ago
- License
- NOASSERTION
- Primary language
- Python
- FA score
- 41/100 · Major gaps
At a glance
- How it runs
- Works with
- Portable with changes
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A founder needing a 15-page pitch deck fast can give a single line (e.g. "embodied intelligence trends in 2026, dark tech style") and receive dual-format PPTX plus a web preview
- Not a fit if
- Agent platforms without Skill loading support need extra adaptation
- Teams unwilling to bear the high runtime and token cost of per-page screenshots and LLM visual audits
- Source review
- 41/100 · Major gaps 1 safety controls not found
What does this agent do, and when should you use it?
PPT Agent (sunbigfly/ppt-agent-skills) is a code-driven, state-machine-managed multi-agent framework that turns a one-line request into a professional PPTX file. It splits the pipeline into seven stages: interview, branch confirmation, web search or local source compression, narrative outline, global style lock, per-page parallel production (Planning → HTML → Visual QA), and dual-format export — each stage's artifacts are gate-checked before proceeding. Research / Outline / Style / Planning run as isolated subagents with non-overlapping contexts, and every subagent is forced to carry a SUBAGENT_MODEL parameter. Each page first produces a JSON contract validated by planning_validator.py, then renders to HTML, is screenshot automatically, and is audited pixel-by-pixel by an LLM, with overflow fixed by DOM + CSS structural rewriting. The built-in Puppeteer rasterization engine exports both PNG and SVG PPTX files, and all artifacts land in ppt-output/runs/<RUN_ID>/. Distributed as an Agent Skill with no separate deployment, it ships 8 themes, 10 layout types, 13 chart templates, and 15 scripts.
After the user submits a one-line request, the framework executes its state machine: P0 interview produces interview-qa.txt and requirements-interview.txt; P2A web search or P2B local source compression yields search.txt / source-brief.txt; P3 generates outline.txt and P3.5 locks style.; P4 runs per-page parallel production — Planning (planningN. validated by planning_validator.py) → HTML rendering (slide-N.html) → screenshot slide-N.png audited by LLM Visual QA, where detected overflow triggers DOM + CSS structural rewriting by a patch subagent; P5 builds preview.html and exports presentation-png.pptx and presentation-svg.pptx, finishing with delivery-manifest.. Execution relies on SKILL.md as the main console (state machine, gates, recovery rules), scripts in scripts/ (validators, harness, exporter), plus visual_qa.py (planning + html dual-layer assertions), subagent_logger.py, and planning_validator.py. Interrupted runs resume statelessly by scanning existing artifacts on disk (outline.txt / style. / slide-N.png, etc.) to infer the recovery point.
- A founder needing a 15-page pitch deck fast can give a single line (e.g. "embodied intelligence trends in 2026, dark tech style") and receive dual-format PPTX plus a web preview
- A consultant who compresses local reports into decks can use the P2B local source compression branch to distill documents before per-page generation
- A content team sensitive to layout quality can rely on the pixel-level Visual QA loop to eliminate overflow, overlap, and hallucination issues
- An operations staffer producing structured decks with charts can reuse the 13 chart templates and 10 layout types directly
- A technical user who wants auditability can use subagent_logger.py stage commands and run logs to replay and redo from checkpoints
How do you install or deploy this agent?
Run in a terminal: npx skills add sunbigfly/ppt-agent-skills. The project runs as an Agent Skill and needs no standalone deployment; the README does not list system dependencies (Node.js version, browser requirements) beyond this install command, so verify against the repository scripts.
How do you use this agent?
After installing, enter a natural-language request in any Skill-capable agent environment, e.g.: "Generate a 15-page pitch deck on embodied intelligence trends in 2026, dark tech style." The framework runs all seven stages (P0–P5) automatically; all outputs (preview.html, presentation-png.pptx, presentation-svg.pptx, and intermediate contract files) are written to ppt-output/runs/<RUN_ID>/.
What are this agent's strengths and limitations?
- Subagent stage isolation keeps Research / Outline / Style / Planning contexts uncontaminated, and SUBAGENT_MODEL is mandatory per subagent to prevent silent fallback
- Pixel-level Visual QA loop: each page is screenshot and audited by an LLM; detected overflow is fixed via DOM + CSS structural rewriting rather than spacing tweaks, addressing root causes of overlap and layout chaos
- Data/render separation: JSON contracts pass planning_validator.py before driving HTML rendering, with an html-level physical structure detector blocking non-conforming skeletons
- Stateless checkpoint recovery: interrupts resume by scanning existing artifacts on disk; a failed step rolls back only that step, not other pages
- Dual-engine export: PNG raster stream guarantees cross-platform visual fidelity; SVG vector stream keeps fonts editable; the Puppeteer engine uses event hooks (document.fonts.ready) for hard-delay-free screenshots
- Requires an agent environment that supports Skill loading; platforms without Skill support need extra adaptation, and the README offers no standalone deployment path
- Subagents must have SUBAGENT_MODEL set with no default fallback, so users must configure model access and bear LLM call costs
- The multi-stage pipeline — per-page screenshots plus LLM visual audits — carries high execution time and token consumption
- The GitHub License field is NOASSERTION; although README badges say MIT, verify the LICENSE file before adopting
- Install docs omit concrete runtime requirements (Node.js version, browser dependencies); validate your environment before deployment
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| PPT Agent This agent | 41 · Major gaps | Agent plugin / skillFree + model costs | ★ 901 | 3mo ago | Python | — |
| PPT Master — AI-native PowerPoint generation | 0 · Major gaps | Agent plugin / skillFree + model costs | ★ 57k | 4d ago | Python | Claude Code |
| OfficeCLI | 71 · Some gaps | CLIFree | ★ 31k | 2d ago | C# | Codex · Claude Code |
| Paper2Any Research Workspace | 63 · Some gaps | Self-hosted serviceFree + model costs | ★ 2.8k | 27d ago | Python | OpenAI API |
How does FollowAgents rate this agent?
Why each dimension lost points
README describes Gate checks, per-step rollback and stateless recovery — rollback earns 2; but least privilege, sensitive data, and external effects (web search, Puppeteer disk writes/exports) are asserted at slogan level without script/SKILL.md corroboration (1 each), user confirmation appears only as the P1 branch gate (1), sensitive data handling is entirely absent (0), dependency security lacks pinning or advisories (1), and attribution is limited to a community link (1).
The P0–P5 state machine maps cleanly onto the artifact chain, so self-consistency earns 2; dependency availability (Puppeteer/fonts/model) and failure messaging are mentioned only in passing, 1 each.
Audience and scenarios (pitch decks, styles, layouts) are reasonably covered (2); capability boundaries, trigger precision, and environment requirements (Node/Puppeteer/browser) are unstated, 1 each.
The repository-structure section gives a clear architecture (2); the LICENSE file matches the MIT badge (2); install notes are a single npx line with no prerequisites (1); naming stability, examples/FAQ (four unannotated screenshots), changelog (one future-dated 2026-04-09 entry, no CHANGELOG file), and maintenance responsibility all score 1; known limitations are not disclosed at all (0).
Artifact chain and dual-format PPTX export support reasonable output usability (2); marginal value over naive LLM slide generation is argued via validators, Visual QA, and the state machine (2); no cost/time/token data supports cost-benefit (1).
Claims (15 scripts, 13 chart templates, dual-layer assertions) are not traceable within the supplied files (1); no cross-source corroboration (1); marketing phrasing ("0 font loss", "100% fidelity", "first-ever") is intermixed with factual claims without separation (1).
- Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
- This is a static review only; all effectiveness claims (100% fidelity, 0 font loss, Gate interception) are unverified by execution.
- Publisher identity is unverified; dependencies (Puppeteer, npx skills distribution) are unpinned — assess supply-chain risk yourself.
- The exact permission scope of web search, screenshots, and disk writes is not documented; inspect scripts/ and SKILL.md before use.
- The changelog carries a future date (2026-04-09) and no known limitations are disclosed, warranting skepticism.
- License metadata is NOASSERTION, inconsistent with the MIT LICENSE file; verify before integration.