Claude-skill-registry google-slides
Create and manage Google Slides presentations. Load when user mentions 'google slides', 'slides', 'presentation', 'create presentation', 'add slide', or references creating/editing slide decks.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/google-slides" ~/.claude/skills/majiayu000-claude-skill-registry-google-slides && rm -rf "$T"
manifest:
skills/data/google-slides/SKILL.mdsource content
Google Slides
Create, edit, and manage Google Slides presentations via OAuth authentication.
Pre-Flight Check (ALWAYS RUN FIRST)
python3 00-system/skills/google/google-master/scripts/google_auth.py --check --service slides
Exit codes:
- 0: Ready to use - proceed with user request
- 1: Need to login - run
python3 00-system/skills/google/google-master/scripts/google_auth.py --login - 2: Missing credentials or dependencies - see ../google-master/references/setup-guide.md
Quick Reference
List Presentations
python3 00-system/skills/google/google-slides/scripts/slides_operations.py list
Search Presentations
python3 00-system/skills/google/google-slides/scripts/slides_operations.py list --query "quarterly"
Get Presentation Info
python3 00-system/skills/google/google-slides/scripts/slides_operations.py info <presentation_id>
Create Presentation
python3 00-system/skills/google/google-slides/scripts/slides_operations.py create "Q4 Sales Report"
Read Slide Content
python3 00-system/skills/google/google-slides/scripts/slides_operations.py read <presentation_id> --slide 1
Add Blank Slide
python3 00-system/skills/google/google-slides/scripts/slides_operations.py add-slide <presentation_id>
Add Slide with Layout
python3 00-system/skills/google/google-slides/scripts/slides_operations.py add-slide <presentation_id> --layout title_body
Delete Slide
python3 00-system/skills/google/google-slides/scripts/slides_operations.py delete-slide <presentation_id> <slide_id>
Add Text Box
python3 00-system/skills/google/google-slides/scripts/slides_operations.py add-text <presentation_id> <slide_id> "Hello World" --x 100 --y 100
Add Image
python3 00-system/skills/google/google-slides/scripts/slides_operations.py add-image <presentation_id> <slide_id> "https://example.com/image.png"
Duplicate Presentation
python3 00-system/skills/google/google-slides/scripts/slides_operations.py duplicate <presentation_id> "Copy of Presentation"
Export to PDF
python3 00-system/skills/google/google-slides/scripts/slides_operations.py export <presentation_id> ./output.pdf --format pdf
Export to PowerPoint
python3 00-system/skills/google/google-slides/scripts/slides_operations.py export <presentation_id> ./output.pptx --format pptx
Presentation ID
The ID is in the URL:
https://docs.google.com/presentation/d/[PRESENTATION_ID]/edit
Slide Layouts
| Layout | Description |
|---|---|
| Empty slide |
| Title slide (large centered title) |
| Title with body text |
| Title with two columns |
| Just a title area |
| Section header |
| Large number display |
| Caption only |
Available Operations
| Operation | Function | Description |
|---|---|---|
| List | | List all presentations |
| Info | | Get presentation metadata |
| Create | | Create new presentation |
| Read | | Get slide content |
| Add Slide | | Add new slide |
| Delete Slide | | Remove slide |
| Add Text | | Insert text box |
| Add Image | | Insert image |
| Duplicate | | Copy presentation |
| Export | | Export to PDF/PPTX |
Positioning
Text boxes and images use points (pt) for positioning:
and--x
: Position from top-left corner--y
and--width
: Element dimensions--height
Standard slide is approximately 720 x 540 points.
Common Workflows
Create Report Presentation
from slides_operations import create_presentation, add_slide, add_text_box # Create presentation pres = create_presentation("Monthly Report") pres_id = pres['id'] # Get first slide ID info = get_presentation_info(pres_id) first_slide = info['slides'][0]['id'] # Add title add_text_box(pres_id, first_slide, "Monthly Performance Report", x=100, y=200, width=500, height=60) # Add more slides add_slide(pres_id, layout='title_body')
Export for Sharing
from slides_operations import export_presentation # Export to PDF for email export_presentation(presentation_id, "./report.pdf", format='pdf') # Export to PowerPoint for editing export_presentation(presentation_id, "./report.pptx", format='pptx')
Error Handling
See ../google-master/references/error-handling.md for common errors and solutions.
Setup
First-time setup: ../google-master/references/setup-guide.md
Quick start:
pip install google-auth google-auth-oauthlib google-api-python-client- Create OAuth credentials in Google Cloud Console (enable Google Slides API, choose "Desktop app")
- Add to
file at Nexus root:.envGOOGLE_CLIENT_ID=your-client-id.apps.googleusercontent.com GOOGLE_CLIENT_SECRET=your-client-secret GOOGLE_PROJECT_ID=your-project-id - Run
python3 00-system/skills/google/google-master/scripts/google_auth.py --login