Agent skill · Audited from source

pptx-generator

skill · coleam00/second-brain-skillsLicence not declaredAudited 20 Oct 2026 · source 294746d0d134

★ 837pushed 268 days ago
✓SAFEGrade B · 89/100 · 20 Oct 2026 · 294746d
837repo stars · whole coleam00/second-brain-skills

Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 294746d0d134 and found no filesystem, network or shell access and no hard-coded secrets. What it does: Generate and edit presentation slides as PPTX files. Also create LinkedIn carousels and manage reusable slide layouts.

Ask an AI about this pageGChatGPTCClaudePPerplexityGeGeminiXGrok
More
Cite

Cite this page

ModelsAtlas. “pptx-generator (coleam00/second-brain-skills)”. Retrieved 20 Oct 2026. https://modelsatlas.com/skills/coleam00/pptx-generator

Trust audit

Audit 0.4.1 · source read 20 Oct 2026

Trust score89/100✓SAFE B
0 critical0 high1 medium1 low0 info

SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.

What the source does

  • FilesystemNone observedNo reads or writes in the source
  • NetworkNone observedNo outbound calls in the source
  • ShellNone observedNo commands run in the source
  • DependenciesPinnedNothing floats
  • SecretsNone foundNo keys in source

Five audit layers

LayerWhat we checkResultFindings
L0 ProvenanceRepo owner, licence, archive status, activityWARN2
L1 Static sourceSecrets, path traversal, supply chain, hidden codePASS0
L2 InstructionsPrompt injection, authority framing, hidden directivesPASS0
L3 InventoryThe files and declarations match the sourcePASS0
L4 SandboxRun in isolation and watch behaviourSKIPPED why0

Gates applied: no behavioural pass.

Findings (2)

MEDIUMInventory / provenanceinv.binary · cookbook-preview.pptx
F-13 Inventory / provenanceCWE-1104Layer L0
cookbook-preview.pptx
Why
a compiled or binary member cannot be reviewed from source
Fix
ship source, or explain the binary in the README
LOWInventory / provenanceinv.binary · font-test.pptx
F-13 Inventory / provenanceCWE-1104Layer L0
font-test.pptx
Why
a compiled or binary member cannot be reviewed from source
Fix
ship source, or explain the binary in the README

Audit 0.4.1 · source sha 294746d0d134 · 20 Oct 2026Report an issue or request a re-scan

Provenance

Who published it, and what the verdict is pinned to

  • Publishercoleam00 GitHub userOwner of the repository this skill is read from
  • Source foldercoleam00/second-brain-skills/.claude/skills/pptx-generatorThe exact folder we audited
  • LicenceNot declaredAs the repository states it
  • Commit pinned for this verdict294746d0d134A new audit runs when the source changes
  • Repository statusNot archivedLast push 268 days ago
  • Sandboxed runNot runSkills are read, not executed; layer L4 is skipped

What it tells the agent

Full source on GitHub ↗

Its description: Generate and edit presentation slides as PPTX files. Also create LinkedIn carousels and manage reusable slide layouts.

---
name: pptx-generator
description: |
  Generate and edit presentation slides as PPTX files. Also create LinkedIn carousels and manage reusable slide layouts.

  TRIGGERS - Use this skill when user says:
  - "create slides for [brand]" / "generate presentation for [brand]" / "make slides for [brand]"
  - "create a carousel for [brand]" / "linkedin carousel" / "make a carousel about [topic]"
  - "edit this pptx" / "update the slides" / "modify this presentation"
  - "create a new layout" / "add a layout to the cookbook" / "make a [type] layout template"
  - "edit the [name] layout" / "update the cookbook" / "improve the [name] template"
  - Any request mentioning slides, presentations, carousels, PPTX, or layouts with a brand name

  Creates .pptx files compatible with PowerPoint, Google Slides, and Keynote.
  Creates PDF carousels for LinkedIn (square 1:1 format).
---

# PPTX Slide Generator

Generate professional, on-brand presentation slides using python-pptx. This skill supports:
- **Slide Generation** - Create presentations for any brand in `brands/`
- **Carousel Generation** - Create LinkedIn carousels (square format, exports to PDF)
- **Slide Editing** - Modify existing PPTX files
- **Layout Management** - Create, edit, update cookbook layouts

**IMPORTANT:** All skill resources are in `.claude/skills/pptx-generator/`. Always use Glob patterns starting with `.claude/skills/pptx-generator/` to find files.

---

## ⚠️ CRITICAL: Batch Generation Rules

**NEVER generate more than 5 slides at once.**

| Rule | Details |
|------|---------|
| Max slides per batch | **5** (can be 1, 2, 3, 4, or 5) |
| After each batch | **STOP and validate output** |
| Validation required | Check: no duplicate titles, proper spacing, correct colors |
| Continue when | Validation passes |
| **After ALL batches** | **COMBINE into single file and DELETE part files** |

This prevents token limit errors and catches quality issues early.

**CRITICAL: Always clean up part files after combining.** The user should only see ONE final PPTX file, not multiple part files.

---

## ⚠️ PREREQUISITE: Brand Check

**Before generating slides, check if any brands exist.**

```
Glob: .claude/skills/pptx-generator/brands/*/brand.json
```

**If NO brands found (only `template/` exists):**

1. **STOP** - Do not proceed with slide generation
2. **Ask the user:**
   > "No brands are configured yet. Would you like me to help you create a brand first?
   > I'll need your brand colors, fonts, and style guidelines to set this up."

3. **If user wants to create a brand**, follow the **Creating a New Brand** section below.

4. **If user declines**, explain that slides require a brand configuration and offer to use generic styling as a fallback.

---

## Creating a New Brand

When no brands exist or user requests a new brand:

### Step 1: Read the Template

```
Read: .claude/skills/pptx-generator/brands/template/README.md
Read: .claude/skills/pptx-generator/brands/template/brand.json
Read: .claude/skills/pptx-generator/brands/template/config.json
```

### Step 2: Gather Brand Information

Ask the user for (or extract from provided materials):

| Required | Description |
|----------|-------------|
| **Brand name** | Folder name (lowercase, no spaces) |
| **Colors** | Background, text, accent colors (hex codes) |
| **Fonts** | Heading font, body font, code font |

| Optional | Description |
|----------|-------------|
| Output directory | Where to save generated files (default: `output/{brand}`) |
| Logo | Path to logo file (PNG/SVG) |
| Brand guidelines | Existing style guide or website to reference |
| Tone of voice | Writing style, vocabulary preferences |

### Step 3: Create Brand Files

1. **Create the brand folder:**
   ```bash
   mkdir -p .claude/skills/pptx-generator/brands/{brand-name}
   ```

2. **Create brand.json** with the gathered values:
   ```json
   {
     "name": "Brand Name",
     "description": "One-line description",
     "colors": {
       "background": "hex-without-hash",
       "background_alt": "hex-without-hash",
       "text": "hex-without-hash",
       "text_secondary": "hex-without-hash",
       "accent": "hex-without-hash",
       "accent_secondary": "hex-without-hash",
       "accent_tertiary": "hex-without-hash",
       "code_bg": "hex-without-hash",
       "card_bg": "hex-without-hash",
       "card_bg_alt": "hex-without-hash"
     },
     "fonts": {
       "heading": "Font Name",
       "body": "Font Name",
       "code": "Monospace Font"
     },
     "assets": {
       "logo": "assets/logo.png",
       "logo_dark": null,
       "icon": null
     }
   }
   ```

3. **Create config.json** with output settings:
   ```json
   {
     "output": {
       "directory": "output/{brand}",
       "naming": "{name}-{date}",
       "keep_parts": false
     },
     "generation": {
       "slides_per_batch": 5,
       "auto_combine": true,
       "open_after_generate": false
     },
     "defaults": {
       "slide_width_inches": 13.333,
       "slide_height_inches": 7.5
     }
   }
   ```

4. **Create brand-system.md** - Copy from template and fill in brand guidelines

5. **Create tone-of-voice.md** - Copy from template and fill in voice guidelines

6. **Add assets** - Copy logo/images to `brands/{brand-name}/assets/`

### Step 4: Verify

After creating the brand, verify with:
```
Glob: .claude/skills/pptx-generator/brands/{brand-name}/*
```

Then proceed to slide generation.

---

## Skill Modes

This skill operates in three modes:

### Mode 1: Generate Presentation Slides
User wants presentation slides (16:9) created using a brand's styling.
→ Follow: Brand Discovery → Layout Selection → Content Adaptation → Execute
→ Layouts in: `cookbook/*.py`

### Mode 2: Generate LinkedIn Carousels
User wants a LinkedIn carousel (square 1:1 format) for social media.
→ Follow: Brand Discovery → Carousel Planning → Generate → Export PDF
→ Layouts in: `cookbook/carousels/*.py`

### Mode 3: Manage Cookbook Layouts
User wants to create

Excerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.

Install

Pinned to the audited commit 294746d

Download folder ↗
uv run --with python-pptx==1.0.2 python << 'EOF'
uv run --with python-pptx==1.0.2 python .claude/skills/pptx-generator/.tmp/gen.py
uv run --with python-pptx==1.0.2 python << 'SCRIPT'
uv run .claude/skills/pptx-generator/generate-cookbook-preview.py

Commands as the repository documents them: shown, never run by us. Our verdict covers commit 294746d0d134 only.

Works in which agents?

What its own text says, not a test

AgentStatusMore
Claude CodeMentioned in its text, not testedSkills for Claude Code · About Claude Code
CursorMentioned in its text, not testedSkills for Cursor · About Cursor
“Mentioned” means the skill’s text names the agent. We have not run it there.

Audit history

Every audit, every source change

  1. ✓SAFE B 89 / 100

    first audit · source 294746d0d134

README badge

For maintainers · shows the latest audit

ModelsAtlas: SAFE BMODELSATLASSAFE · B
[![ModelsAtlas: SAFE B](https://modelsatlas.com/skills/coleam00/pptx-generator/badge.svg)](https://modelsatlas.com/skills/coleam00/pptx-generator/)

The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.

Similar skills

Add this badge to your README

[![ModelsAtlas: SAFE B](https://modelsatlas.com/skills/coleam00/pptx-generator/badge.svg)](https://modelsatlas.com/skills/coleam00/pptx-generator/)

Questions about pptx-generator

What does the pptx-generator skill do?
A collection of Claude Skills to turn Claude Code into a Second Brain
Is pptx-generator safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can pptx-generator access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
Which assistants does pptx-generator work with?
Its documentation mentions claude-code and cursor. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (294746d0d134), read on 2026-10-20. The repository is watched, and a new audit runs when it changes — this is the first audit.

Sources

Spotted something wrong? Report a correction · Methodology

Keep going in your AI

Opens with this page as the source. We add nothing else to the prompt.