CLAUDE LABEN
TEACHERS — AnthropicがClaude for Teachersを公開。米国K-12の認証済み教員に、プレミアム機能と授業向けスキル、全50州の学習指導基準に沿ったカリキュラム連携を無償提供しますADMIN — Claude Enterprise全組織でAdmin APIがベータ提供に。メンバーと招待の操作はベータヘッダー不要、グループとカスタムロールは専用ヘッダーが必要ですM365 — Microsoft 365コネクタに書き込みツールが追加。メールの下書き・送信・整理、カレンダー操作、OneDriveとSharePointのファイル作成・更新まで任せられますMCP — --mcp-configや.mcp.jsonのサーバ単位request_timeout_msが無視され、新規セッションで60秒既定のままタイムアウトする不具合が修正されましたSUBAGENT — --forward-subagent-textとCLAUDE_CODE_FORWARD_SUBAGENT_TEXTが追加。サブエージェントのテキストと思考をstream-json出力に含められますDEADLINE — 7月24日にOpus 4.7のfastモードが削除されます。残り7日、speed: "fast" はエラーになるためOpus 4.8への移行をご確認くださいTEACHERS — AnthropicがClaude for Teachersを公開。米国K-12の認証済み教員に、プレミアム機能と授業向けスキル、全50州の学習指導基準に沿ったカリキュラム連携を無償提供しますADMIN — Claude Enterprise全組織でAdmin APIがベータ提供に。メンバーと招待の操作はベータヘッダー不要、グループとカスタムロールは専用ヘッダーが必要ですM365 — Microsoft 365コネクタに書き込みツールが追加。メールの下書き・送信・整理、カレンダー操作、OneDriveとSharePointのファイル作成・更新まで任せられますMCP — --mcp-configや.mcp.jsonのサーバ単位request_timeout_msが無視され、新規セッションで60秒既定のままタイムアウトする不具合が修正されましたSUBAGENT — --forward-subagent-textとCLAUDE_CODE_FORWARD_SUBAGENT_TEXTが追加。サブエージェントのテキストと思考をstream-json出力に含められますDEADLINE — 7月24日にOpus 4.7のfastモードが削除されます。残り7日、speed: "fast" はエラーになるためOpus 4.8への移行をご確認ください
記事一覧/Claude Code
Claude Code/2026-04-28中級

Claude Codeでスライド生成を30分で自動化する実践ワークフロー

Claude Code SkillsとMarkdown中間フォーマットを組み合わせて、企画からGoogle Slides出力まで30分で完了するスライド生成の全ワークフローを解説します。

Claude Code197Skills5Google Slides自動化68プレゼンテーション2

プレゼンテーション資料を作ると、時間のかなりの部分が「レイアウト調整」と「フォーマット整形」に奪われることに気づきます。スライドの内容を考える時間よりも、PowerPointやGoogle Slidesで形を整える時間の方が長くなってしまう。これはクリエイティブな作業ではなく、単なる手作業です。

Claude Code Skillsを使うと、この流れ全体を根本的に変えられます。構成を書くだけで、後はAIが自動生成し、そのままGoogle Slidesにアップロード可能な形式で出力してくれる。実際にこのワークフローを回してみると、手作業の30分が完全に消えます。

従来のスライド作成は「組み立て作業」になっている

Google Slidesで一からスライドを作る場合、ほとんどの時間が以下に費やされます:

  • テンプレート選択と配色調整
  • テキストボックスのサイズ変更
  • 画像の挿入と位置合わせ
  • 各スライドの高さ統一
  • フォントサイズの調整

これらは「デザイン的な判断」ではなく、機械的な作業です。AIにできる仕事を人間がやっているわけです。

Claude Code Skillsを使ったアプローチでは、この全てが自動化されます。

ワークフロー全体:3つのステップ

ステップ1:Markdownで構成と内容を書く

スライド資料の本質は「何を伝えるか」です。ここに集中します。

# プロダクト戦略 2026
 
## 導入
- 市場変化への対応が急務
- 3つの新機能で競争優位性を確立
 
## 機能1:リアルタイム同期
- 問題:複数ユーザーが同時編集するとラグが発生
- 解決策:WebSocket + CRDT実装
- 期待値:99.9%のユースケースで<100msレイテンシ
 
## 機能2:AI提案機能
- Claude APIを活用した自動提案
- ユーザーが承認するワークフロー
- 誤検知率:3%以下を目指す
 
## 導入計画
- Q2:内部テスト
- Q3:ベータ版提供開始
- Q4:全ユーザー向けリリース
 
## 成功指標
- 採用率:60%以上
- ユーザーフィードバック:4.5/5以上

このMarkdownファイルが、スライド資料の「ソース」になります。

ステップ2:Claude Code Skillを実行

Skillのプロンプトに以下の指示を含めます:

このMarkdownを受け取り、Google Slides API用のJSONフォーマットに変換してください。

要件:
- 各H2セクションを1スライドにする
- 箇条書きは自動的にBullet pointに変換
- タイトルはH1から抽出
- 配色はBlue系の統一スタイル
- フォント:Google Sans(または代替:Arial)

出力形式:
{
  "presentation": {
    "title": "...",
    "slides": [
      {
        "title": "...",
        "content": [
          {"type": "text", "value": "...", "fontSize": 14}
        ]
      }
    ]
  }
}

Claude CodeがSkillを実行すると、このJSONが自動生成されます。

ステップ3:Google Slides APIで自動アップロード

生成されたJSONを、Python + google-slides-apiを使ってGoogle Slidesにアップロードします。

from google.oauth2.service_account import Credentials
from googleapiclient.discovery import build
import json
 
# サービスアカウント認証
credentials = Credentials.from_service_account_file(
    'service_account.json',
    scopes=['https://www.googleapis.com/auth/presentations']
)
slides_service = build('slides', 'v1', credentials=credentials)
 
# プレゼンテーション作成
presentation = slides_service.presentations().create(
    body={'title': 'Auto-Generated Slides'}
).execute()
 
presentation_id = presentation['presentationId']
 
# JSONから読み込み
with open('generated_slides.json', 'r') as f:
    slide_data = json.load(f)
 
# 各スライドを追加
for slide_content in slide_data['slides']:
    request_body = {
        'requests': [
            {
                'createSlide': {
                    'objectId': f'slide_{id(slide_content)}',
                    'insertIndex': len(slide_data['slides']),
                    'slideLayoutReference': {'predefinedLayout': 'BLANK'}
                }
            }
        ]
    }
    slides_service.presentations().batchUpdate(
        presentationId=presentation_id,
        body=request_body
    ).execute()
 
print(f"Presentation created: https://docs.google.com/presentation/d/{presentation_id}")

このスクリプトを実行するだけで、Google Slidesの編集可能なファイルが生成されます。

実際にかかる時間

フェーズ手動作成Claude Code自動化
構成検討・執筆15分15分
スライド作成・レイアウト20分0分(自動)
配色・フォント調整10分0分(自動)
Google Slidesアップロード5分5分
合計50分20分

構成さえ固まっていれば、自動化部分は3分以内に完了します。

Claude Codeを使う際の工夫

1. 中間フォーマットを活用する

「Markdown → JSON → Google Slides」という段階を経ることで、各ステップで修正が容易になります。JSONが生成されたら、それを手で調整してからアップロード可能です。

2. テンプレートスタイルは固定する

毎回のプロンプトでスタイルを定義するのではなく、「Blue Corporate Style」「Minimal Tech」といった名前で事前定義しておくと、Skillの再利用性が高まります。

3. 画像埋め込みは後で

自動生成時点では画像は含めず、JSONに「image_placeholder」を残しておいて、人間が後で Google Slides上で差し替える方が効率的です。完全自動化より「90%自動化 + 10%手調整」の方が実用的です。

他のツールとの比較

  • Canvaの自動生成機能:デザインの自由度は劣るが、より簡単
  • PowerPoint自動ジェネレータ:オンプレのみ対応、クラウド非対応
  • Slidesgo テンプレート:手動での編集が残る
  • Claude Code + Google Slides API:完全カスタマイズ可能 + 既存テンプレートの継承可能

今後の展開

このワークフローは、以下の方向に発展させられます:

  • 複数スタイルテンプレートの運用:営業用・エンジニア向け・経営層向けなど、用途別テンプレート
  • 既存スライドの自動リファイン:古い資料をMarkdown化して再生成
  • チーム共有フォーマット:Markdownで構成共有 → 各自が異なるスタイルで生成

手作業から自動化へのシフトは、最初は「本当に動くのか」という疑問があります。ですが、一度このパターンを確立してしまえば、スライド資料の作成速度は変わります。

重要なのは、自動化によって「つまらない作業が消える」ことだけでなく、「修正や反復が高速化される」ことです。フィードバックを受けて構成を変更しても、5分で新しいスライドが生成されます。

シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

Claude Code2026-06-13
編集した SKILL.md が反映されない — /reload-skills と .claude/skills 自動ロードで再起動なしに差し替える
SKILL.md を編集しても実行中のセッションには反映されません。.claude/skills 自動ロードと /reload-skills、SessionStart フックを組み合わせた再起動なしの差し替え運用と、版番号による検証手順を実運用の経験から整理します。
Claude Code2026-07-05
Trusted Devices を小規模チームで運用する — メンバー端末の検証とローテーション設計
Team/Enterprise の Trusted Devices を2〜5人規模で導入する際の、端末登録・無人実行前のプリフライト・端末ローテーション時の漏れ対策を、実運用の手順とスクリプトで整理します。
Claude Code2026-07-01
Claude Code をアップデートしたら hook が発火しなくなった — ハイフン入り matcher の厳密一致化(v2.1.195)
Claude Code v2.1.195 でハイフンを含む hook matcher が部分一致から厳密一致に変わり、既存の PreToolUse フックが静かに発火しなくなりました。原因の切り分けと、壊れない matcher の書き方をまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →