🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Slides

by @ivangdavila

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

Versionv1.0.0
Downloads2,171
TERMINAL
clawhub install slides

πŸ“– About This Skill


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:

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
  • ⚑ 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.