🧪 Skills

HML Google Slides

Create, edit, and export Google Slides presentations. Use when creating new presentations, adding or updating slides, reading slide content, exporting to PDF...

v1.0.0
❤️ 0
⬇️ 134
👁 1
Share

Description


name: google-slides description: "Create, edit, and export Google Slides presentations. Use when creating new presentations, adding or updating slides, reading slide content, exporting to PDF/PPTX, or building a deck from scratch. Requires gog auth to be working."

Google Slides

Uses the gog CLI for basic operations and scripts/slides.py for advanced edits (adding/editing slide content via the Slides API).

Auth Check

Before any Slides operation, verify auth is working:

gog slides info <any-presentation-id> --account david@hml.tech

If it fails, re-auth: gog auth add david@hml.tech --services gmail,calendar,drive,docs,sheets,contacts,tasks,people

Core Commands (via gog)

# Create a new blank presentation
gog slides create "My Presentation" --account david@hml.tech --json

# Get info about a presentation (slide count, title, etc.)
gog slides info <presentationId> --account david@hml.tech --json

# Export to PDF
gog slides export <presentationId> --format pdf --out /tmp/deck.pdf --account david@hml.tech

# Export to PPTX
gog slides export <presentationId> --format pptx --out /tmp/deck.pptx --account david@hml.tech

# Copy a presentation (e.g., to use a template)
gog slides copy <presentationId> "Copy Title" --account david@hml.tech --json

Adding/Editing Slide Content (via scripts/slides.py)

For adding text slides, batch updates, and reading full content, use scripts/slides.py.

# Add a text slide with title and bullet body
python3 scripts/slides.py add-slide <presentationId> \
  --title "Slide Title" \
  --body "• Bullet point one\n• Bullet point two"

# Add a slide at a specific position (0-indexed)
python3 scripts/slides.py add-slide <presentationId> --title "Intro" --insert-at 0

# Run arbitrary batch update requests from a JSON file
python3 scripts/slides.py batch <presentationId> requests.json

# Export via script
python3 scripts/slides.py export <presentationId> --format pdf --out /tmp/deck.pdf

# List comments with their anchors (e.g. which slide they are on)
python3 scripts/slides.py list-comments <presentationId>

# Resolve a comment and optionally leave a reply message
python3 scripts/slides.py resolve-comment <presentationId> <commentId> --reply "Fixed!"

Building a Deck from Scratch

Typical workflow:

  1. Create presentation: gog slides create "Title" --json → get presentationId
  2. Add slides one by one using scripts/slides.py add-slide
  3. For rich content (images, shapes, formatting), write batch requests to a JSON file and run scripts/slides.py batch
  4. Export: gog slides export <id> --format pdf --out /tmp/deck.pdf

For complex batch requests (images, shapes, text formatting), see references/batch_requests.md.

Getting Presentation ID

From a Google Slides URL: https://docs.google.com/presentation/d/**<presentationId>**/edit

Notes

  • gog slides uses the Drive API under the hood (no separate Slides scope needed)
  • scripts/slides.py uses the Google Slides API directly and requires working gog auth tokens
  • Set GOG_ACCOUNT=david@hml.tech in env to skip --account flag

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs