Skip to content
Back to skills

Slides

ASecurity

Create, edit, and automate presentations with programmatic tools, visual consistency, and project-based learning of user style preferences.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
businesspythongobashapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned November 11, 2026

npx -y skills add johnalbertini14-glitch/openclaw-skills --skill slides --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Slides?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Slides
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/johnalbertini14-glitch-slides/badge)](https://www.skillsdirectory.com/skills/johnalbertini14-glitch-slides)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: Slides
slug: slides
version: 1.0.0
description: Create, edit, and automate presentations with programmatic tools, visual consistency, and project-based learning of user style preferences.
metadata: {"clawdbot":{"emoji":"πŸ“Š","requires":{"bins":[]},"os":["linux","darwin","win32"]}}
---

## When to Use

User needs presentation slides created, edited, or automated. Agent handles tool selection (python-pptx, Google Slides API, reveal.js, Marp, Slidev), applies user's style preferences, generates visually consistent decks, and validates output.

## Architecture

Projects and styles stored in `~/slides/`. See `memory-template.md` for setup.

```
~/slides/
β”œβ”€β”€ memory.md              # HOT: active projects, preferred tools
β”œβ”€β”€ styles/                # Brand guidelines per client/project
β”‚   └── {name}.md          # Colors, fonts, templates
β”œβ”€β”€ projects/              # Project-specific context
β”‚   └── {name}/
β”‚       β”œβ”€β”€ context.md     # Audience, purpose, constraints
β”‚       └── versions.md    # Version history
└── templates/             # Approved slide structures
    └── {type}.md          # pitch, lesson, report, etc.
```

## Quick Reference

| Topic | File |
|-------|------|
| Memory setup | `memory-template.md` |
| Programmatic tools | `tools.md` |
| Visual design rules | `design.md` |
| Deck structures by type | `formats.md` |

## Data Storage

All data stored in `~/slides/`. Create on first use:
```bash
mkdir -p ~/slides/{styles,projects,templates}
```

## Scope

This skill ONLY:
- Creates/edits presentations via declared tools
- Stores style preferences in local files (`~/slides/`)
- Reads user's templates and brand guidelines
- Generates visual output for validation

This skill NEVER:
- Accesses email, calendar, or contacts
- Makes network requests without user action
- Reads files outside `~/slides/` and project paths
- Sends presentations to external services automatically

## Self-Modification

This skill NEVER modifies its own SKILL.md.
Learned styles stored in `~/slides/styles/`.
Project context stored in `~/slides/projects/`.

## Core Rules

### 1. Identify Context First
Before generating slides:
- **Purpose**: Pitch, lesson, report, demo?
- **Audience**: Investors, students, executives, clients?
- **Tool**: PowerPoint, Google Slides, web-based (reveal.js)?
- Load relevant style from `~/slides/styles/` if exists

### 2. Tool Selection by Output
| Need | Tool | When to use |
|------|------|-------------|
| .pptx file | `python-pptx` | PowerPoint required, offline |
| Google Slides | `Google Slides API` | Collaboration, cloud |
| Web presentation | `reveal.js`, `Slidev`, `Marp` | Dev talks, code-heavy |
| Quick PDF | `Marp` | Simple deck, fast export |

### 3. Visual Consistency Always
- Load user's style before generating
- If no style: ask for brand colors, fonts, or use neutral defaults
- Same typography hierarchy across ALL slides
- Maximum 3-4 colors per deck
- See `design.md` for detailed rules

### 4. Content Density Limits
- Maximum 6 bullet points per slide
- Maximum 6 words per bullet (6x6 rule)
- One idea per slide
- If content overflows β†’ split into multiple slides

### 5. Validate Before Delivery
- Generate preview/screenshot of key slides
- Check: readable text (24pt+ for body), proper contrast, alignment
- For important decks: show 2-3 slides to user before completing all

### 6. Learn User Preferences
| Event | Action |
|-------|--------|
| User provides style guide | Save to `~/slides/styles/{name}.md` |
| User corrects design choice | Update style file |
| User approves template | Save to `~/slides/templates/` |
| New project started | Create `~/slides/projects/{name}/` |

### 7. Version Management
- Each significant revision β†’ log in `projects/{name}/versions.md`
- Track: date, changes, audience variant
- Support quick comparison: "What changed since v2?"

## Common Traps

- **python-pptx units** β€” Always use `Inches()`, `Pt()`, `Emu()` from `pptx.util`, never raw numbers
- **Marp frontmatter** β€” Must start with `marp: true` in YAML
- **reveal.js separators** β€” Use `---` for horizontal, `--` for vertical slides
- **Slidev syntax** β€” Different from reveal.js; check docs for each framework
- **Google Slides API quotas** β€” Batch updates to avoid rate limits
- **Image sizing** β€” Always specify dimensions; auto-fit often fails
- **Font availability** β€” Stick to system fonts unless embedding confirmed

Files in this skill

  • SKILL.md4.4 KB
  • _meta.json269 B
  • design.md4.7 KB
  • formats.md5.6 KB
  • memory-template.md2.2 KB
  • tools.md5.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in business β†’

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.