Systems Lab

Agent skill

deck-generator

Generate professional presentations with AI-generated images.

activeNeeds a keyActs undeclared451 words

Filed under Content and SEO.

From ericosiu/ai-marketing-skills · 21 skills · 3,449 · pushed 2026-08-16

What it does when it runs

Generate professional presentations with AI-generated images. Use when asked to create a deck, presentation, pitch deck, or slides. Supports style presets (whiteboard, corporate, minimalist, etc). Uses Imagen 4.0 API for image generation and Google Slides API for assembly. Produces full decks from markdown content specs in minutes.

Read from the skill and the 3 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
  • GEMINI_API_KEY
  • GOOGLE_APPLICATION_CREDENTIALS
Hosts it reaches
  • generativelanguage.googleapis.com
  • levelingup.beehiiv.com
  • singlebrain.com
  • www.singlegrain.com
Tool permissions it declares
No allowed-tools in the frontmatter. It does act, so it runs under whatever permissions your session already grants.
Actions present in the files
shellwrites files

Ask about deck-generator

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/ericosiu/ai-marketing-skills.git /tmp/ai-marketing-skills
git -C /tmp/ai-marketing-skills sparse-checkout set "deck-generator"
mkdir -p ~/.claude/skills/deck-generator
cp -R "/tmp/ai-marketing-skills/deck-generator/." ~/.claude/skills/deck-generator/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Before you install: this skill will not complete its job on a bare agent. It needs GEMINI_API_KEY, GOOGLE_APPLICATION_CREDENTIALS, which you have to obtain separately.

Reproduced in full from ericosiu/ai-marketing-skills/blob/2eb0f34edb8d6111ca8b2930fed92413c9af7002/deck-generator/SKILL.md, which is licensed MIT (repository). 451 words, 12 headings.

Deck Generator

Generate complete presentations where every slide is an AI-generated image in a consistent visual style.

Quick Start

  1. Read the content spec (user provides slide content or a markdown file)
  2. Read references/styles.md to pick or customize a visual style
  3. Run scripts/generate-deck.py with content + style

Workflow

Step 1: Content Spec

Accept slide content in any format. Normalize to this structure per slide:

  • Title: Bold headline
  • Body: Key points, stats, or narrative
  • Visual cues: Icons, diagrams, layouts described in words

If user provides a markdown file with --- separators, parse each section as a slide. If user provides a topic only, generate 10-14 slides following standard deck structures.

Step 2: Style Selection

Available style presets:

StyleDescription
whiteboardHand-drawn sketch on white. Black ink, orange accents.
corporateNavy/white/gold. Clean sans-serif. Professional.
minimalistPure white, electric blue accent. Maximum negative space.
dark-techNear-black background, neon green. Terminal aesthetic.
playfulBright pastels, rounded shapes. Modern startup vibe.
editorialBlack/white with red spot color. Magazine aesthetic.

Default: whiteboard. User can specify any preset or describe a custom style.

Step 3: Generate

# Set your API key
export GEMINI_API_KEY="your-gemini-api-key"

# Run the generator
python3 scripts/generate-deck.py \
  --content slides.json \
  --style whiteboard \
  --title "Deck Title" \
  [--output-dir ./output] \
  [--aspect 16:9]

The script:

  1. Generates each slide image via Imagen 4.0 API
  2. Saves all images to the output directory
  3. Optionally creates a Google Slides presentation (requires Google Slides API credentials)
  4. Returns paths to all generated images

Step 4: Review & Iterate

To regenerate individual slides:

python3 scripts/generate-deck.py \
  --content slides.json \
  --style whiteboard \
  --slides 3,7 \
  --output-dir ./output

Key Details

  • Cost: ~4 cents per image. A 14-slide deck costs roughly 56 cents in API calls.
  • Speed: ~2 minutes for 14 slides.
  • API: Imagen 4.0 via Google's Generative Language API
  • Auth: Set $GEMINI_API_KEY environment variable
  • Aspect ratios: 16:9 (default), 1:1, 4:3, 3:4, 9:16
  • Image models: imagen-4.0-generate-001 (best quality), imagen-4.0-fast-generate-001 (faster)

Content JSON Format

[
  {"name": "01-title", "prompt": "Title slide: 'Your Deck Title' with company logo placeholder"},
  {"name": "02-problem", "prompt": "Problem slide showing frustrated marketer staring at dashboard with declining metrics"},
  {"name": "03-solution", "prompt": "Solution slide: AI agent workflow diagram with 3 connected boxes"}
]

Google Slides Integration (Optional)

To automatically create a Google Slides presentation, set up Google Slides API credentials:

export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
python3 scripts/generate-deck.py \
  --content slides.json \
  --style whiteboard \
  --title "My Deck" \
  --google-slides \
  --google-account [email protected]

Files bundled with it

These load only when the skill asks for them, so they cost nothing until it runs.

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what deck-generator does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.