skills/integrations/google/google-slides/SKILL.md
Create and manage Google Slides presentations. Load when user mentions 'google slides', 'slides', 'presentation', 'create presentation', 'add slide', or references creating/editing slide decks.
npx skillsauth add beam-ai-team/beam-next-skills google-slidesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create, edit, and manage Google Slides presentations via OAuth authentication.
uv run python 00-system/skills/google/google-master/scripts/google_auth.py --check --service slides
Exit codes:
python3 00-system/skills/google/google-master/scripts/google_auth.py --loginuv run python 00-system/skills/google/google-slides/scripts/slides_operations.py list
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py list --query "quarterly"
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py info <presentation_id>
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py create "Q4 Sales Report"
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py read <presentation_id> --slide 1
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py add-slide <presentation_id>
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py add-slide <presentation_id> --layout title_body
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py delete-slide <presentation_id> <slide_id>
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py add-text <presentation_id> <slide_id> "Hello World" --x 100 --y 100
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py add-image <presentation_id> <slide_id> "https://example.com/image.png"
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py duplicate <presentation_id> "Copy of Presentation"
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py export <presentation_id> ./output.pdf --format pdf
uv run python 00-system/skills/google/google-slides/scripts/slides_operations.py export <presentation_id> ./output.pptx --format pptx
The ID is in the URL:
https://docs.google.com/presentation/d/[PRESENTATION_ID]/edit
| Layout | Description |
|--------|-------------|
| blank | Empty slide |
| title | Title slide (large centered title) |
| title_body | Title with body text |
| title_two_columns | Title with two columns |
| title_only | Just a title area |
| section | Section header |
| big_number | Large number display |
| caption | Caption only |
| Operation | Function | Description |
|-----------|----------|-------------|
| List | list_presentations() | List all presentations |
| Info | get_presentation_info() | Get presentation metadata |
| Create | create_presentation() | Create new presentation |
| Read | read_slide() | Get slide content |
| Add Slide | add_slide() | Add new slide |
| Delete Slide | delete_slide() | Remove slide |
| Add Text | add_text_box() | Insert text box |
| Add Image | add_image() | Insert image |
| Duplicate | duplicate_presentation() | Copy presentation |
| Export | export_presentation() | Export to PDF/PPTX |
Text boxes and images use points (pt) for positioning:
--x and --y: Position from top-left corner--width and --height: Element dimensionsStandard slide is approximately 720 x 540 points.
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')
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')
See ../google-master/references/error-handling.md for common errors and solutions.
First-time setup: ../google-master/references/setup-guide.md
Quick start:
pip install google-auth google-auth-oauthlib google-api-python-client.env file at Beam Next root:
GOOGLE_CLIENT_ID=your-client-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your-client-secret
GOOGLE_PROJECT_ID=your-project-id
python3 00-system/skills/google/google-master/scripts/google_auth.py --logintesting
Audit registry.yaml against disk, validate SKILL.md frontmatter, find duplicates and orphans. Load when user says 'audit skills registry', 'validate beam-next-skills', 'registry drift', 'skills catalog audit', 'check registry yaml'.
tools
All Workable ATS operations — fetch JDs, search candidates, post assessments/reviews. Load when user says "fetch JD", "search workable", "push to workable", "post review", "rate candidate", "workable", "push assessment", "list jobs", or after interview-coach completes an evaluation. Replaces workable-fetch-jd and workable-push-assessment.
data-ai
Load when user mentions "tavily research", "market intelligence", "competitive research", "GTM research", or needs real-time market data for sales, marketing, or vertical strategy.
development
Shared resource library for Slack integration skills. DO NOT load directly - provides common references (setup, API docs, error handling, authentication) and scripts used by slack-connect and individual Slack skills.