Claude Code×GASで実現するGoogle Workspace自動化の全体像
Google Workspaceの自動化は2軸で切る。1軸目は対象データ(メール/予定/表計算/ファイル/フォーム)、2軸目は処理タイプ(分類・通知/作成・転記/連携・横断)。本記事の7レシピはこの交点から、副業・本業の両方で投資対効果が高い組み合わせを抽出した。

レシピ集の中には、すでに本サイトで実装記録を公開しているものと、Claude Codeへの投げ方だけ示す構想中のものが混在している。順序通り読まなくても、刺さるレシピから着手して問題ない。
なぜ今Claude CodeとGASの組み合わせが最強なのか
GASは無料で動く、Googleの中で完結する、認証は自分のGoogleアカウントで済む。副業エンジニア向けの3拍子がそろっている。一方で「書きはじめるまでが面倒」が長年のネック。Apps Scriptエディタを開いて空のmain関数を眺めて閉じる、を何度繰り返したか分からない。
そこにClaude Code Max 5xが噛み合う。仕様だけプロンプトで投げれば、claspで同期して動くコードまで生やしてくれる。試運転→修正→本番デプロイをローカルから一気通貫で回せる。エディタUIを開く頻度が一気に下がる。
事前準備:clasp導入とAPI認証の最短セットアップ
Claude CodeでGASを書く前提として、claspをローカルに通しておく。ここを省くとClaude Codeが書いたコードをコピペで運ぶハメになり、結局スピードが落ちる。
- STEP1Node.js LTSを入れる
公式インストーラーで最新LTSを入れる。すでに開発で使っているなら飛ばしてよい。
- STEP2claspをグローバルインストール
ターミナルで
npm install -g @google/claspを実行。インストール後clasp --versionで動作確認。 - STEP3ブラウザ認証
clasp loginを実行するとブラウザが立ち上がりGoogle認証画面に飛ぶ。承認するとローカルにトークンが保存される。 - STEP4プロジェクトを作成または取り込む
新規なら
clasp create --type sheets --title "automation"、既存スクリプトを引き継ぐならclasp clone <スクリプトID>で同期。
これで Claude Code が書いたコードを clasp push するだけで反映される。
レシピ1〜2:Gmail自動仕分け&下書き生成で受信箱ゼロ運用
受信箱が日々パンクするなら、最初に攻めるのはここ。判定とラベリングをGASに任せれば、人間の判断は重要メールへの対応だけに集中できる。
レシピ1:重要メールをAI判定してラベル&通知振り分け
GmailApp.search() で未処理メールを引いて、件名と本文の冒頭500字をGemini APIまたはClaude APIに渡す。判定値は「至急 / 重要 / 通常 / 不要 / 営業」の5値固定。結果に応じてGmailラベル付与とSlack通知を発火させる。
Claude Codeに投げるプロンプト例:
Gmailの未読メールを取得し、本文を500字に切ってGemini APIで5値判定。
判定値に応じてラベル付与とSlack Webhook通知を発火させるGASを、
[main.gs/config.gs/api.gs](http://main.gs/config.gs/api.gs) の3ファイル構成で書いて。APIキーは
PropertiesService経由で参照すること。
ファイル分割と参照経路まで指定すると、Claude Codeが「とりあえず1ファイルに全部」とやらかすのを防げる。
レシピ2:定型問い合わせへの返信下書きを自動生成
このレシピはGAS×Gemini API無料枠でメール返信下書きを自動化した実装記録で5パターン判定+下書き生成のスプレッドシート設計まで含めて公開済み。コピペで動くコードを起点に、自分の業務パターンに合わせて分類軸を組み替えるのが最短ルート。
レシピ1の判定ロジックと組み合わせると、「通知だけ済ませる」と「下書きまで作る」の出し分けが可能になる。
レシピ3〜4:カレンダーとTo Doを連動させる予定管理レシピ
予定が増えるほど、準備作業まで頭の中で持ち回すコストが膨らむ。それを引き剥がす2レシピ。
レシピ3:会議招待から準備タスクを自動でTo Doに登録
CalendarApp.getEventsForDay() で当日の予定を取り、件名と説明欄をAPIに渡してタスクをN個抽出。Google Tasks API(Apps Scriptの Advanced Service として有効化)で対象日に登録する。
たとえば「営業同行打合せ」なら「先方資料の確認」「ヒアリングシート更新」が当日朝に積まれる。トリガーは平日朝7時の時間ベースで十分。
レシピ4:空き時間を解析して集中作業ブロックを自動確保
カレンダーの空きをスキャンして、90分以上連続するスロットを「集中作業」というイベントで予約してしまう。トリガーは毎週日曜の夜、翌週分をまとめて押さえる方式が運用が楽。
クォータ・スコープ的にも CalendarApp 内で完結するので、追加API登録が要らない。組み込みコストが最も低いレシピで、効果が一番体感しやすい。
レシピ5〜6:スプレッドシート&ドライブの定型作業を撲滅
表計算とファイル操作はGASの土俵そのもの。Claude Codeに任せれば実装スピードが段違いに上がる。
レシピ5:請求書・領収書PDFをドライブから自動仕訳
DriveAppで指定フォルダ配下のPDFを走査し、Gemini APIのドキュメント読み取りで請求元・金額・支払期日を抽出。スプレッドシートに追記したうえで、年月フォルダへ自動移動させる。
本業/副業/個人の混在ファイルでも、フォルダ命名規則と仕訳タグでまとめて捌ける。確定申告期に「未仕訳の山」を作らないための先行投資として効く。
レシピ6:スプレッドシートの数値変動をSlack/Chatへ即通知
売上、PV、Search Consoleの主要指標などをスプレッドシートにダンプし、前日比・前週比を onOpen() またはトリガーで判定。閾値超過時にSlackやGoogle Chatへ即時通知する。
スプレッドシート操作と通知連携のノウハウはGAS×NotebookLMで本業メール集約を自動化した実践記で扱っているスクリプトと共通基盤。通知部分だけ差し替えればそのまま流用できる。
レシピ7:フォーム回答からドキュメント&メールまでワンストップ生成
申込・問い合わせフォームは「来た瞬間に処理を始めたい」典型ケース。手動の写経を完全に消す最後のレシピ。
レシピ7:申込フォーム→契約書ドラフト→送信を全自動化
Formsのトリガー onFormSubmit で回答を捕捉。Google Docsのテンプレートを DriveApp.getFileById().makeCopy() で複製し、Body内のプレースホルダを置換して契約書ドラフトを生成。PDF化して GmailApp.sendEmail で関係者に送信する。
副業のクライアント契約、子ども関連の同意書、社内申請書類まで、テンプレートと差し込み項目さえ用意すれば横展開できる。
Claude Codeで”雑な指示”からGASコードを生やすコツ
プロンプトは「画面で見える流れ」を時系列で書くのが効く。雑に投げても Claude Code が補完してくれるが、clasp push で動く前提を成立させるには以下3点だけ最初に明示する。
- 入力:何を/どこから/どのくらいの量
- 処理:使うAPI・必要スコープ・分岐ルール
- 出力:どこに/どの形式で/通知の要否
この型に乗せれば、初手のコードは8割そのまま動く。残り2割は実行ログを見せて修正させればよい。Claude Code の機能を体系的に押さえたいならClaude Code /powerup入門のレッスン7〜8(カスタムコマンドとHooks)を先に通すと、自動化レシピの組み立てそのものが速くなる。
運用時の注意点とトラブルシューティング
動いたの先にある運用フェーズで、これだけは事前に詰めておかないと事故る。
実行制限・権限スコープでハマらないための設計指針
GASにはApps Scriptの割り当て上限(メール送信、トリガー実行時間、外部API呼び出し回数など)がある。一気にバッチ処理を回すと無料アカウントは即上限に到達する。設計時に押さえる3点:
- 件数を分割して走らせる(1回あたり50件など上限を決め打ち)
- ユーザートリガーと時間ベーストリガーを使い分け、同時実行で衝突させない
- スコープは必要最小限。最初から
script.external_request全許可にしない
詳細な数値はGoogle公式のApps Scriptクォータページで確認できる。設計前に1回必ず開く。
個人情報・APIキーを守るセキュリティチェックリスト
副業で動かす場合、本業データとの混在が一番の事故ポイントになる。最低限のラインを固定しておく。
- APIキーは
PropertiesService.getScriptProperties()経由でのみ参照。コード直書き禁止 - Gitに
.clasp.jsonを上げる場合、リポジトリは必ずPrivate - 本業データを扱うスクリプトは個人GoogleアカウントとWorkspaceアカウントで分離。同居運用は事故の温床
- Webアプリ公開(doGet/doPost)は「自分のみ」「全員」のスコープを必ず明示確認
ここを守れば、運用中に冷や汗をかく場面は激減する。
よくある質問
- QClaude Code Max 5xは必須ですか?Proプランでも使えますか?
- A
試行レベルなら Claude Pro でも
clasp pushまで問題なく回る。日次で複数レシピを並行運用する段階に入ったら Max 5x が現実的。Gemini API側は無料枠で十分カバーできる範囲が広いので、まずはここから始めて段階的に上げるのが安い。
- QAPIキーを使わずGoogleアカウントだけでAI処理は可能か?
- A
GASからの直接API呼び出しは認証キーが必要なので、完全な「キーなし」はできない。ただしGemini APIは無料枠が広く、Google AI Studio経由でキー発行も無料・即時。コストよりもキー管理運用(PropertiesServiceへの格納)を最初に決めておく方が重要。
- Qclaspは必須?Apps Scriptエディタだけでは動かせない?
- A
不可ではない。レシピ単発ならエディタだけで完結する。ただしClaude Code に書かせたコードを毎回コピペで持ち込むのは手間で、修正サイクルが遅くなる。3レシピ以上を本気で運用するならclasp導入が結果的に最短になる。
- Q本業のWorkspaceで個人開発のスクリプトと干渉しないか?
- A
干渉する。本業アカウントで個人レシピを動かすと、本業データに対するスコープ権限が誤って広がるリスクがある。Googleアカウントを明確に分離し、claspのloginも別プロファイルで運用するのが安全。社用PC側では本業用、私用PC側では副業用と物理的に分けるのが理想。
- Q7レシピを全部動かすと月のコストは?
- A
GAS実行・Drive容量は無料枠で完結する想定。Gemini APIは判定頻度次第だが、レシピ1〜7を中規模に回しても月数百円〜千円程度に収まることが多い。Claude Code側のサブスク(Max 5x)が固定費の主軸になる。
まとめ
3点に集約する。
- Google Workspaceの自動化は「対象データ×処理タイプ」の2軸でレシピ化すると見通しが立つ
- Claude Codeに仕様だけ投げて
clasp pushまで一気通貫で回すと、書きはじめの腰の重さが消える - 制限・スコープ・キー管理は最初に固めないと運用フェーズで事故る
次のアクションは、レシピ2(メール返信下書き)のSE歴20年の業務自動化術で扱っている運用設計を起点に、自分の業務パターンに刺さるレシピから着手するのが最短ルート。


