Skip to content
Back to skills

Visual Slides

ASecurity

Use when the user explicitly requests a slide deck by command, flag, or natural language. Generates a self-contained HTML deck in the diagrams directory with embedded CSS, JavaScript, keyboard navigation, and a progress indicator. Not for PowerPoint files; use pptx.

  • 52 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 3, 2026
ai-agentsjavascriptjava

Security analysis

A100/100

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

Scanned September 3, 2026

npx -y skills add OutlineDriven/outline-driven-development --skill visual-slides --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Visual Slides?

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

Security grade badge for Visual Slides
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/outlinedriven-visual-slides-outline-driven-development/badge)](https://www.skillsdirectory.com/skills/outlinedriven-visual-slides-outline-driven-development)

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: visual-slides
description: 'Use when the user explicitly requests a slide deck by command, flag, or natural language. Generates a self-contained HTML deck in the diagrams directory with embedded CSS, JavaScript, keyboard navigation, and a progress indicator. Not for PowerPoint files; use pptx.'
---

# Visual slides

## Contract

| Field | Bound contract |
|---|---|
| Trigger | Explicit slide-deck request via command, flag, or natural language; never auto-selected |
| Authority | Reversible local: write only the named HTML file to the diagrams directory; delete the file to roll back |
| Side effect | Writes one self-contained HTML slide deck to the diagrams directory |
| Done | Every source item mapped to a slide; the deck fits within a 16:9 short-landscape viewport without horizontal scroll under prefers-reduced-motion; no external resource dependencies at runtime |

## Inputs

Required:
- **Source items**: the content to present, one item per slide. Each item is a title, body text, or diagram source.

Optional:
- **Style direction**: color palette, font, or layout hint from the user.

## Procedure

1. **Parse source items and map to slides.** Enumerate the source items before writing any file. Each item becomes one slide. Done when: slide count is confirmed from the source items, or the step has stopped with `empty-source-items`.

2. **Resolve the output filename.** Derive from the topic or title of the first slide: lowercase, spaces to hyphens, `.html` suffix. Resolve the diagrams directory: use the session diagrams directory if known, otherwise derive from context or create `diagrams/` under the project root. Create the directory if absent. Done when: filename is derived and the diagrams directory exists and is writable, or the step has stopped with `directory-not-writable`.

3. **Generate self-contained HTML with embedded assets.** One slide section per source item. Inline all CSS in a `<style>` block. Inline all JavaScript in a `<script>` block. No external CDN scripts, no `<script src>`, no `eval`, no `data:` URLs, no external fonts (use system font stack). Keyboard arrows and a visible progress indicator for navigation. Done when: the HTML deck contains one slide per source item with all assets inline.

4. **Validate short-landscape viewport budget.** Each slide must fit within a 16:9 landscape viewport without horizontal scroll under `prefers-reduced-motion`. Done when: every slide passes the viewport budget check.

5. **Write to the diagrams directory.** Write the HTML file under the derived filename. Done when: the file exists in the diagrams directory, or the step has stopped with `write-failure`.

## Failure and recovery

| Failure class | Rule |
|---|---|
| `empty-source-items` | Source items empty or unreadable. Stop, return error. |
| `directory-not-writable` | Diagrams directory cannot be created or is not writable. Stop, do not write. |
| `write-failure` | File write returns non-zero. Stop, do not report success. |

Partial-result rule: if the HTML file is not written and validated, discard all output. Rollback: delete the written HTML file. The tool does not delete pre-existing files.

## Output

A self-contained HTML slide deck in the diagrams directory, with the path reported.

Files in this skill

  • SKILL.md3.2 KB
  • agents/openai.yaml156 B

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.

Comments

Loading comments…