google-slides — скилл для Claude Code: что делает и как установить
Скилл для чтения, поиска и создания презентаций в Google Slides через скрипты на Python. Помогает генерировать слайды и менять текст в документах без ручной правки.
npx skills add sanjay3290/ai-skills --skill google-slides -a claude-codeЧто делает google-slides
Интеграция работает напрямую через скрипты scripts/slides.py и scripts/auth.py без запуска MCP-сервера. Скилл умеет искать файлы на Google Диске по поисковому запросу, выгружать текст из фигур и таблиц, проверять метаданные, создавать пустые презентации и добавлять слайды с разметкой вроде TITLE_AND_BODY или TITLE. Для точечных правок есть замена текста во всей презентации и удаление слайдов по их идентификаторам. В качестве аргумента можно передавать как прямой ID презентации, так и полную ссылку из браузера.
Первичная авторизация открывает окно браузера по команде python scripts/auth.py login. Скилл сохраняет токены в системное хранилище ключей: Keychain на macOS, Windows Credential Locker на Windows или Secret Service API в Linux. Просроченные токены обновляются через облачную функцию Google.
Главное ограничение — скилл работает только с учётными записями Google Workspace. Попытка авторизоваться через личный аккаунт Gmail приведёт к ошибке.
Какие задачи решает
- найти нужные презентации на Google Диске по поисковому запросу
- извлечь весь текст и содержимое таблиц из готовой презентации
- создать пустую презентацию и добавить слайды с выбранным макетом
- заменить фрагменты текста во всех слайдах документа
- удалить ненужный слайд по его идентификатору объекта
Примеры запросов агенту
- Найди презентацию по запросу "quarterly report" с ограничением в 5 результатов
- Создай презентацию "Q4 Sales Report" и добавь слайд с макетом TITLE_AND_BODY
- Замени во всей презентации 1abc123xyz789 слово "Draft" на "Final" с учётом регистра
Как установить google-slides
1Через Skills CLI (Vercel)
npx skills add sanjay3290/ai-skills --skill google-slides -a claude-code2Вручную: положить файлы
~/.claude/skills/google-slides/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/google-slides/
1Через Skills CLI (Vercel)
npx skills add sanjay3290/ai-skills --skill google-slides -a codex2Вручную: положить файлы
.agents/skills/google-slides/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add sanjay3290/ai-skills --skill google-slides -a cursor2Вручную: положить файлы
.cursor/skills/google-slides/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install sanjay3290/ai-skills google-slides2Вручную: положить файлы
.github/skills/google-slides/SKILL.md1Через Skills CLI (Vercel)
npx skills add sanjay3290/ai-skills --skill google-slides -a gemini-cli2Командой платформы
gemini skills install https://github.com/sanjay3290/ai-skills --path skills/google-slidesВручную: положить файлы
.devin/skills/google-slides/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add sanjay3290/ai-skills --skill google-slides -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора15
Похожие
Рядом в теме «Документы и офис»
Всё по теме «Документы и офис» →Вопросы о google-slides
Как установить google-slides в Claude Code?
Выполните команду npx skills add sanjay3290/ai-skills --skill google-slides -a claude-code.
Что умеет скилл google-slides?
Он позволяет агенту находить презентации, считывать текст со слайдов, создавать новые колоды, добавлять слайды с нужной разметкой и массово менять текст без внешнего MCP-сервера.
Можно ли подключить личную почту Gmail?
Нет. Скилл требует обязательного наличия учётной записи Google Workspace, а обычные аккаунты Gmail не поддерживаются.
Исходный текст
SKILL.md · Apache-2.0
---
name: google-slides
description: |
Read and write Google Slides presentations - get text, find presentations, create presentations, add slides,
replace text, and manage slide content. Use when user asks to: read a presentation, create slides, find slides,
add a slide, replace text in a presentation, or manage presentation content. Lightweight integration with
standalone OAuth authentication supporting full read/write access.
license: Apache-2.0
metadata:
author: sanjay3290
version: "1.0"
---
# Google Slides
Lightweight Google Slides integration with standalone OAuth authentication. No MCP server required. Full read/write access.
> **Requires Google Workspace account.** Personal Gmail accounts are not supported.
## First-Time Setup
Authenticate with Google (opens browser):
```bash
python scripts/auth.py login
```
Check authentication status:
```bash
python scripts/auth.py status
```
Logout when needed:
```bash
python scripts/auth.py logout
```
## Read Commands
All operations via `scripts/slides.py`. Auto-authenticates on first use if not logged in.
```bash
# Get all text content from a presentation
python scripts/slides.py get-text "1abc123xyz789"
python scripts/slides.py get-text "https://docs.google.com/presentation/d/1abc123xyz789/edit"
# Find presentations by search query
python scripts/slides.py find "quarterly report"
python scripts/slides.py find "project proposal" --limit 5
# Get presentation metadata (title, slide count, slide object IDs)
python scripts/slides.py get-metadata "1abc123xyz789"
```
## Write Commands
```bash
# Create a new empty presentation
python scripts/slides.py create "Q4 Sales Report"
# Add a blank slide to the end
python scripts/slides.py add-slide "1abc123xyz789"
# Add a slide with a specific layout
python scripts/slides.py add-slide "1abc123xyz789" --layout TITLE_AND_BODY
# Add a slide at a specific position (0-based index)
python scripts/slides.py add-slide "1abc123xyz789" --layout TITLE --at 0
# Find and replace text across all slides
python scripts/slides.py replace-text "1abc123xyz789" "old text" "new text"
python scripts/slides.py replace-text "1abc123xyz789" "Draft" "Final" --match-case
# Delete a slide by object ID (use get-metadata to find IDs)
python scripts/slides.py delete-slide "1abc123xyz789" "g123abc456"
# Batch update (advanced - for formatting, inserting shapes, images, etc.)
python scripts/slides.py batch-update "1abc123xyz789" '[{"replaceAllText":{"containsText":{"text":"foo"},"replaceText":"bar"}}]'
```
## Slide Layouts
Available layouts for `add-slide --layout`:
- `BLANK` - Empty slide (default)
- `TITLE` - Title slide
- `TITLE_AND_BODY` - Title with body text
- `TITLE_AND_TWO_COLUMNS` - Title with two text columns
- `TITLE_ONLY` - Title bar only
- `SECTION_HEADER` - Section divider
- `ONE_COLUMN_TEXT` - Single column text
- `MAIN_POINT` - Main point highlight
- `BIG_NUMBER` - Large number display
## Presentation ID Format
You can use either:
- Direct presentation ID: `1abc123xyz789`
- Full Google Slides URL: `https://docs.google.com/presentation/d/1abc123xyz789/edit`
The scripts automatically extract the ID from URLs.
## Output Format
### get-text
Returns extracted text from all slides, including:
- Presentation title
- Text from shapes/text boxes on each slide
- Table data with cell contents
### find
Returns list of matching presentations:
```json
{
"presentations": [
{"id": "1abc...", "name": "Q4 Report", "modifiedTime": "2024-01-15T..."}
],
"nextPageToken": "..."
}
```
### get-metadata
Returns presentation details:
```json
{
"presentationId": "1abc...",
"title": "My Presentation",
"slideCount": 15,
"pageSize": {"width": {...}, "height": {...}},
"hasMasters": true,
"hasLayouts": true
}
```
## Token Management
Tokens stored securely using the system keyring:
- **macOS**: Keychain
- **Windows**: Windows Credential Locker
- **Linux**: Secret Service API (GNOME Keyring, KDE Wallet, etc.)
Service name: `google-slides-skill-oauth`
Automatically refreshes expired tokens using Google's cloud function.
© sanjay3290 · Apache-2.0 · sanjay3290/ai-skills