pptx

pptx is a skill for Claude Code, Codex from MODSetter/SurfSense. It costs 23 tokens per session (1,440 once invoked), scanned A, original, Apache-2.0.

A tool for creating editable PowerPoint presentations, which are slide decks used to present information.

In plain words
What is it for?
Making slide decks and other requested .pptx presentations.
Why use it?
It helps turn presentation requests into files that can still be changed in PowerPoint.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Making slide decks and other requested .pptx presentations.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/modsetter/surfsense/pptx
About the project

SurfSense is an open-source desktop application that uses an AI agent to research, transform, and edit documents while keeping their index on the user's machine. It is intended for people working with documents they cannot upload, with a choice of local or remote models and no account required.

MODSetter/SurfSense · 16,541 stars · on GitHub · surfsense.com

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add MODSetter/SurfSense --skill pptx
Clone the repo
git clone --depth 1 https://github.com/MODSetter/SurfSense

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for pptx

README.md
[![agentmods](https://agentmods.dev/badge/skills/modsetter/surfsense/pptx/github.svg)](https://agentmods.dev/skills/modsetter/surfsense/pptx)
Your own site
<a href="https://agentmods.dev/skills/modsetter/surfsense/pptx"><img src="https://agentmods.dev/badge/skills/modsetter/surfsense/pptx/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for pptx

Your own site · 80×15
<a href="https://agentmods.dev/skills/modsetter/surfsense/pptx"><img src="https://agentmods.dev/badge/skills/modsetter/surfsense/pptx.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 23 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,440 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00023 $0.01440
Opus 5.5 $0.00009 $0.00576
Sonnet 5.5 $0.00005 $0.00288
Haiku 4.5 $0.00002 $0.00144

Measured 1mo ago against content hash 096aa5282e5a, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

pptx scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

docker/sandbox/skills/pptx/SKILL.md · 121 lines

How it starts

The opening of the file, as written. The whole thing — 121 lines — stays where its author put it; the contents beside it link to each section on GitHub.

PPTX

Create an editable .pptx in /workspace with the preinstalled python-pptx package. Never install or download dependencies. For a new deck, set output_path to a descriptive /workspace/<name>.pptx path.

Use this order:

  1. Plan the slide purposes and visual system.
  2. Build the complete deck.
  3. Run the local checks below.
  4. Verify the complete deck once.
  5. If verification fails, repair it once and reverify.
  6. Save the artifact only after the latest verification passes.

Authoring rules

  • Use a 16:9 presentation unless the user requests another aspect ratio. Set prs.slide_width and prs.slide_height once; slide size is deck-wide.
  • Use a consistent layout, palette, type scale, spacing system, and placement grid across the deck.
  • Prefer a suitable built-in PowerPoint layout and its native placeholders over unrelated free-positioned text boxes. A native placeholder is a layout container, not permission to leave filler copy visible: populate every visible placeholder with final content unless the user explicitly requests a reusable template.
  • Treat requests for "image placeholders", "visual suggestions", or "design concepts" as design direction for a finished deck. Add the real visual or a finished graphic treatment; do not display those instructions as slide text.
  • Keep at least 0.5 inches of outer margin and 0.3 inches between unrelated content regions. Define title, subtitle, body, and footer regions once and reuse them; title and subtitle regions must not overlap.
  • Give every slide one clear purpose. Keep body copy concise: normally no more than six bullets, with short phrases rather than paragraphs.
  • Set fonts in the deck by family name. Default to Arial for fit-sensitive text; LibreOffice substitutes the metric-compatible Liberation Sans installed in the sandbox. Use Times New Roman/Liberation Serif when a serif is appropriate, and Noto for scripts they do not cover. If the user requires another font, leave about 10% extra width and height because LibreOffice and PowerPoint may use different metrics.
  • Never guess or hardcode a font-file path. A path is needed only when calling text_frame.fit_text(...); resolve it at runtime with fc-match, for example fc-match -f '%{file}\n' Arial, and use the first non-empty line. If no file is returned, do not call fit_text; shorten the text or enlarge its region.
  • Use 32–40 pt titles, 18–24 pt subtitles, and body text of at least 18 pt. Set text_frame.word_wrap = True and explicit text-frame margins; use zero margins where text must align exactly with a nearby shape.
  • Do not use PowerPoint runtime autofit (text_frame.auto_size) because PowerPoint and LibreOffice can resolve it differently. For a single-style title or subtitle, text_frame.fit_text(...) may be used with the font file resolved above so the fitted size is written into the PPTX. If a title must shrink below 28 pt or a subtitle below 16 pt, shorten it, enlarge its region, or split the content across slides instead.
  • Keep every shape on the slide canvas. Intentional edge bleed may cross a slide boundary, but do not park unused shapes off-canvas or hide backup slides.
  • Preserve image aspect ratios. When calling add_picture, derive the missing dimension from the source image instead of setting both width and height to unrelated values. Extended crop values are legal, but the left and right crop fractions must sum to less than 1, as must the top and bottom fractions, so some of the image remains visible.
  • Prefer editable native text, shapes, tables, and charts. Avoid SmartArt and elaborate gradients whose LibreOffice conversion is unreliable.

Read the full file on GitHub · 121 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago Changed · +32 lines 096aa5282e5a
  2. 1mo ago First seen · 89 lines · 23 tokens per session scan A dacf89a1e668

Subscribe to this mod's changes

pptx is a skill published in the GitHub repository MODSetter/SurfSense (16,541 stars, last pushed today), licensed Apache-2.0. It adds 23 tokens to every session and 1,440 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

leiloeiro-edital-ranbot-ai

Analise e auditoria de editais de leilao judicial e extrajudicial. Riscos ocultos, clausulas perigosas, debitos, ocupante e classificacao da oportunidade.

ThomasMoreAI/legal-skills-open · 51 tokens

first-reader

Beta readers for any draft, run by simulating how a real reader experiences it, moment by moment. A skim gate, a no-lookahead timed read producing an attention transcript with quit points, a recall test of what a reader remembers the next day, and a trust ledger of the implied author. Use when the user asks for a beta…

Shubhamsaboo/awesome-llm-apps · 174 tokens

mcp-apps-builder

MANDATORY for ALL MCP server work - mcp-use framework best practices and patterns. READ THIS FIRST before any MCP server work, including: Creating new MCP servers Modifying existing MCP servers (adding/updating tools, resources, prompts, widgets) Debugging MCP server issues or errors Reviewing MCP server code for…

Shubhamsaboo/awesome-llm-apps · 139 tokens

project-graveyard

Scans the developer's machine for dead side projects, autopsies each one from its git history (died at the payments wall, killed by a newer project, finished but never shipped), surfaces their personal death patterns, and picks the corpse most worth resurrecting — then helps ship it. Use when the user mentions…

Shubhamsaboo/awesome-llm-apps · 127 tokens

commit-archaeologist

Reconstructs why code exists from local git history, including the introducing commit, later changes, current authors, repeated companion files, and likely intent. Use when the user asks "why does this code exist", "who wrote this function and why", or to "explain the history of this function" before a rewrite…

Shubhamsaboo/awesome-llm-apps · 82 tokens

dependency-doctor

Checks requirements.txt, pyproject.toml, and package.json dependency manifests for surface-level direct-dependency footguns: standard-library shadowing pins, abandoned backports, unpinned dependencies, and obvious intra-manifest conflicts, plus opt-in PyPI yanked releases. Use when the user asks to check a manifest…

Shubhamsaboo/awesome-llm-apps · 115 tokens