mcpField
G
google-slides

google-slides

github.com/odyssey4meドキュメント13195 回インストール1 日前に更新
リポジトリ

google-slides について

Markdownからプレゼンテーションを作成・編集するスキルです。スライドを扱うユーザー向けで、PPTXをローカル生成し、必要に応じてGoogle Slidesへアップロードできます。

主な機能

  1. 01MarkdownからPPTXを生成
  2. 02YAML frontmatterで設定
  3. 03Google Slidesへアップロード
  4. 04プレゼンテーションの取得と再構築
  5. 05画像またはテキストでスライドをプレビュー

活用シーン

  1. 01Markdownファイルからスライドを作成
  2. 02取得したGoogle Slidesの資料を編集して再構築
  3. 03共有前にPPTXをプレビュー

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/odyssey4me/agent-skills --skill google-slides

インストール後、Claude Code で/google-slidesを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
command-reference.md
permissions.md
presentations-guide.md
scripts/
google-slides.py
templates/
default.pptx
generate_template.py

詳細

Google Slides

YAML frontmatter を含む Markdown ファイルからプレゼンテーションを作成します。このスキルは python-pptx を使用してローカルで .pptx ファイルを生成し、必要に応じて Drive API 経由で Google Slides にアップロードできます。既存のプレゼンテーションを Markdown としてダウンロードし、編集して再構築し、再アップロードするラウンドトリップワークフローにも対応しています。

インストール

必須の Python パッケージ:

pip install --user google-auth google-auth-oauthlib google-api-python-client keyring pyyaml

ローカルで .pptx を作成する場合:

pip install --user python-pptx cairosvg

任意のシステム依存関係: LibreOffice(preview コマンド用)。このスキルは libreoffice、soffice、Flatpak、または環境変数 LIBREOFFICE_PATH で設定されたパスを自動検出します。

セットアップの確認

インストール後、スキルが正しく設定されていることを確認します。

$SKILL_DIR/scripts/google-slides.py check

次の項目が確認されます。

  • Python の依存関係(google-auth、google-auth-oauthlib、google-api-python-client、keyring、pyyaml、python-pptx、cairosvg)
  • 認証設定
  • Google API への接続
  • LibreOffice の利用可否(任意)

不足している項目がある場合、確認コマンドにセットアップ手順が表示されます。

認証

Google Slides では、認証に OAuth 2.0 を使用します。セットアップの詳細については、以下を参照してください。

  1. GCP プロジェクトのセットアップガイド - プロジェクトを作成し、Drive API を有効にします
  2. Google OAuth のセットアップガイド - 認証情報を設定します
クイックスタート
  1. ~/.config/agent-skills/google.yaml を作成します。

    oauth_client:
      client_id: your-client-id.apps.googleusercontent.com
      client_secret: your-client-secret
    
  2. $SKILL_DIR/scripts/google-slides.py check を実行して OAuth フローを開始し、セットアップを確認します。

スコープまたは認証エラーについては、OAuth のトラブルシューティングガイドを参照してください。

スクリプトの使い方

各コマンドの読み取り/書き込みの分類については、permissions.md を参照してください。

# Setup and auth
$SKILL_DIR/scripts/google-slides.py check
$SKILL_DIR/scripts/google-slides.py auth setup --client-id ID --client-secret SECRET
$SKILL_DIR/scripts/google-slides.py auth reset
$SKILL_DIR/scripts/google-slides.py auth status

# Build a presentation from Markdown
$SKILL_DIR/scripts/google-slides.py create --file deck.md
$SKILL_DIR/scripts/google-slides.py create --file deck.md --output deck.pptx --palette redhat-brand
$SKILL_DIR/scripts/google-slides.py create --file deck.md --title "My Deck"  # build and upload

# Download a presentation as Markdown
$SKILL_DIR/scripts/google-slides.py get PRESENTATION_ID
$SKILL_DIR/scripts/google-slides.py get PRESENTATION_ID -o deck.md

# Upload or replace slides in an existing presentation
$SKILL_DIR/scripts/google-slides.py update PRESENTATION_ID --file deck.pptx
$SKILL_DIR/scripts/google-slides.py update PRESENTATION_ID --file deck.pptx --mode append

# Preview and verify
$SKILL_DIR/scripts/google-slides.py preview --file deck.pptx
$SKILL_DIR/scripts/google-slides.py preview --file deck.pptx --format summary
$SKILL_DIR/scripts/google-slides.py verify --file deck.pptx

# List available color palettes
$SKILL_DIR/scripts/google-slides.py palettes

引数の詳細と例については、command-reference.md を参照してください。

Markdown 形式

プレゼンテーションは、YAML frontmatter を含む Markdown ファイルとして記述します。スライドは、単独の行に --- を置いて区切ります。スライドの種類は HTML コメントディレクティブで指定します。

---
title: Team Update
subtitle: Q2 2026
author: Jane Smith
date: 2026-06-23
palette: redhat-brand
---

# Team Update

## Q2 2026

> Speaker notes go in blockquotes.

---



# Progress Review

---

## Key Metrics

- Revenue: $1.2M (up 15%)
- Active users: 50,000
- NPS: 72

::icon:trending-up::

> Mention the NPS improvement from last quarter.

---



## Comparison



### Before

- Manual process
- 3-day turnaround
- Error-prone



### After

- Fully automated
- 15-minute turnaround
- 99.9% accuracy

---



# Architecture

![System architecture diagram](images/architecture.png)

---



# Thank You

## Questions?
スライドの種類
種類ディレクティブ説明
タイトル(最初のスライドとして自動検出)プレゼンテーションのタイトルとサブタイトル
セクション``大きな見出しを含むセクション区切り
コンテンツ(デフォルト)見出しと箇条書きで構成される標準スライド
2 列``/ マーカーで左右に分けたコンテンツ
画像``任意の見出しを含むスライド全体の画像
クロージング``クロージングスライド(例:「Thank You」)
書式設定
  • # H1 -- スライドのタイトル
  • ## H2 -- スライドのサブタイトル
  • - bullets -- 箇条書き(入れ子にも対応)
  • > blockquote -- 発表者ノート(スライドには表示されません)
  • ![alt](path) -- 画像
  • ::icon:name:: -- Red Hat アイコンリポジトリのアイコン

Markdown 形式の仕様、アイコンのカテゴリ、カラーパレットについて詳しくは、presentations-guide.md を参照してください。

カラーパレット

組み込みのカラーパレットは 7 種類あり、Red Hat ブランドのパレットが 4 種類、汎用パレットが 3 種類です。palettes を使用すると一覧を表示できます。

frontmatter(palette: name)またはコマンドライン(--palette name)でパレットを設定します。コマンドラインフラグを指定すると、frontmatter の設定が上書きされます。

例

スライド資料を作成してプレビューする
# Create .pptx from Markdown
$SKILL_DIR/scripts/google-slides.py create --file deck.md --output deck.pptx

# Preview as images (requires LibreOffice)
$SKILL_DIR/scripts/google-slides.py preview --file deck.pptx --format images

# Get a text summary instead
$SKILL_DIR/scripts/google-slides.py preview --file deck.pptx --format summary
作成とアップロードを一度に行う
$SKILL_DIR/scripts/google-slides.py create --file deck.md --title "Q2 Team Update"
# Builds .pptx, uploads to Google Drive, returns the presentation URL
ラウンドトリップワークフロー
# Download existing presentation as Markdown
$SKILL_DIR/scripts/google-slides.py get 1abc...xyz -o deck.md

# Edit deck.md in your editor...

# Rebuild
$SKILL_DIR/scripts/google-slides.py create --file deck.md --output deck.pptx

# Verify quality and accessibility
$SKILL_DIR/scripts/google-slides.py verify --file deck.pptx

# Replace slides in the original presentation
$SKILL_DIR/scripts/google-slides.py update 1abc...xyz --file deck.pptx --mode replace
クラウド版と照合する
$SKILL_DIR/scripts/google-slides.py verify --file deck.pptx --presentation-id 1abc...xyz

エラー処理

認証エラーとスコープエラーは再試行できません。 コマンドが認証エラー、不十分なスコープのエラー、またはアクセス拒否エラー(終了コード 1)で失敗した場合は、停止してユーザーに知らせてください。再試行したり、自動で問題を解決しようとしたりしないでください。これらのエラーにはユーザーの操作(ブラウザーでの OAuth 同意)が必要です。ユーザーにOAuth トラブルシューティングガイドを案内してください。

再試行できるエラー:レート制限(HTTP 429)と一時的なサーバーエラー(HTTP 5xx)は、少し待ってから再試行すると解決する場合があります。それ以外のエラーはすべてユーザーに報告してください。

モデルに関するガイダンス

このスキルでは、構造化された入出力を必要とする API 呼び出しを行います。標準的な能力を備えたモデルを推奨します。

トラブルシューティング

プレゼンテーションが見つからない

URL から正しいプレゼンテーション ID を使用していることを確認してください。

  • URL:https://docs.google.com/presentation/d/1abc...xyz/edit
  • プレゼンテーション ID:1abc...xyz
LibreOffice が見つからない

preview コマンドには LibreOffice が必要です。パッケージマネージャーからインストールするか、LIBREOFFICE_PATH にバイナリの場所を設定してください。このスキルは libreoffice、soffice、Flatpak のインストールを自動的に確認します。

リファレンス

コメント