フューチャー技術ブログ

GoogleカレンダーをGeminiアプリの外部記憶装置として活用する

AI Tips連載、11日目の記事です。

はじめに

こんにちは!先日、念願の日傘を初めて購入したのですが、まさか1週間も経たずに壊れてしまい、ちょっぴり落ち込んでいるHealthCare Innovation Group (HIG) の清水です。

今回は、普段の業務で使っているGeminiアプリ(Geminiとのチャット)で感じた「AIって、これまでの文脈を忘れちゃうな…」という壁と、それをGoogleカレンダーで解決できそう、というお話をご紹介したいと思います。

課題感とやりたいこと

次の3点を何とかしたいと思い、本記事の執筆に着手しました。

  • タスクをどこか1箇所でまとめて管理したい
    • 複数プロジェクトに関わっていると、それぞれのプロジェクトで使っているツールでタスクを管理するよりも、どこか一箇所にまとめて管理したい、と感じることがよくあります
    • その日に何をやり、次の日に何をすべきかを効率的に把握し、スムーズに業務を進めたいという思いも常にありました
  • AIに過去の文脈を引き継いで会話したい
    • チャットが長くなると、AIは過去の会話の文脈を少しずつ忘れていってしまいます
    • テーマAについて話していたチャットからテーマBについて別のチャットを作成する際に、テーマAで話していた背景や目的をスムーズに引継ぎたいこともよくあります
  • 自身の作業ログを効率的に作成したい
    • AIと相談した結果は、プロジェクトの成果物としてアウトプットしますが過程をすべて残すことは難しいです
    • 自身の日報や週報を詳細にAIに書いてもらうことで(例えば評価の時期などに)自身の振り返りの材料を十分に残すことができます

本記事でやりたいことは、「Geminiアプリ内で進捗状況などを確認・出力できる仕組みを作る」ことです。Geminiアプリの中で完結するような仕組みを目指したらどんなことができるか、という点を検証していきます。

前提として、Gemini、社内利用スタート!という記事にあるように、Google Workspaceのプランに組み込まれたことで当社ではGeminiを業務で使用しています。そこで、Gemini アプリに Google Workspace のアプリとサービスを接続することで上記の課題が解決できないか模索していきます。

Geminiチャットから Google Workspace のアプリとサービスを接続する1

どんなものか?

次のようにGeminiアプリからGoogle Workspaceのアプリにメンションする形で呼び出すことができます。

例えば、ToDoリストに「技術ブログを執筆する」というタスクを追加する場合、Geminiアプリから次のように追加できます。

これを使ってどんなことができそうか?

Geminiアプリ内で進捗状況などを確認・出力できる仕組みを作るために、Geminiアプリから外部サービスに状況を書き込み・読み取りできる、外部記憶装置的な仕組みを考えます。

Geminiアプリから呼び出せるアプリを比較してみます。

Geminiの「外部記憶装置」としてのGoogle Workspaceアプリ比較

Geminiアプリから呼び出せる、かつ、読み書きができるGoogle Workspaceのアプリを比較したものを次に示します。

役割としては、Google Keepが有力かと思いました。しかし、記事執筆時点(2025/07/28)では、Google Keepの処理が日本語では完了しなかった(※)ため、Geminiアプリからの読み込みと書き込みの能力が高いGoogleカレンダーをGeminiアプリの外部記憶装置として使えそうだと判断しました。5

後付けかもですが、Googleカレンダーだと日時を指定できるため、どの時間帯に何をしていたか後追いすることができるのも、他アプリより嬉しいと考えています。

※英語にした場合、Google Keepでメモの登録と参照ができたので、日本語でも将来的にできるようになるかもしれません。

ツール 書き込み能力 読み取り能力 検索性 総評・最適な用途
Google カレンダー 非常に高い
・タイトル、説明、日時、場所など構造化された情報を書き込める。
・説明欄には長文を保存可能(5000文字程度は確認済み)。
非常に高い
・日時やキーワードでイベントを正確に特定できる。
・説明を読み取れる。
非常に高い
・時間軸での検索が得意。
・キーワードでの検索も強力。
最有力候補
時系列での情報整理、長文の議論ログ、外部記憶装置として使えそう。
Google Keep 限定的
・タイトルと本文に、テキストを書き込める。
・Googleアカウントの優先言語が日本語だと正常に完了しない。
限定的
・メモの内容をGeminiのチャット上で表示できる。
・Googleアカウントの優先言語が日本語だと正常に完了しない。
限定的
・メモのタイトルや内容から特定できる。
・Googleアカウントの優先言語が日本語だと正常に完了しない。
不向き
日本語設定のまま利用することが記事執筆時点では難しい。
Google ToDo リスト 限定的
タスクのタイトルのみ書き込み可能。
・「説明」欄には書き込めない。
限定的
・タイトルと期限は読み取れる。
「説明」欄は読み取れない。
高い
・タスク名での検索は可能。
限定的な用途
詳細な情報を保存できないため、単純な管理(完了/未完了)には使える。

具体的な使い道

書き込む

次のようなプロンプトで、チャットでの会話内容をGoogleカレンダーに記録します。

2点を意識しています。

  • 人間向け以外にLLM向けを用意すること
    • 文脈を正確に引き継ぐためにLLM向けのログを残す指示を出しています
    • 実験している中では、5000文字程度であれば説明欄に書き込めたので、LLM向けにはなるべく多くの情報を残すように指示しています
  • 確認不要で作成させること
    • 通常のプロンプトでは、「XXという予定を作って」→「XXという予定を作りますか?」という確認が入るため、今回は省略させるよう指示を加えています
@Google Calendar
以下の指示に基づき、このチャットのサマリーをGoogleカレンダーに新しい予定として登録してください。

# CONTEXT
- このチャットは、AIアシスタントとの継続的な対話セッションです。
- セッションの文脈を永続化し、将来のセッションに引き継ぐため、Googleカレンダーの特定の予定を「外部記憶装置」として利用しています。
- このプロンプトの目的は、このチャットセッション**全体**の議論の内容を抽出し、新しいサマリー予定を作成することです。

# INSTRUCTIONS
1. **EXTRACT & SUMMARIZE (for HUMAN):**
まず、このプロンプトが送信されるまでの、**このチャットの最初から最後までのすべての会話**を分析してください。
そして、人間が後から読んでも分かりやすいように、主要な「議論のテーマ」「新たに分かったこと」「次に行うべきアクション」を日本語で**簡潔に**要約してください。

2. **EXTRACT & LOG (for LLM):**
次に、同じく**このチャットの全会話**から、将来のAI(LLM)が文脈を完全に復元できるように、より詳細な情報を抽出・構造化してください。これには、重要な発言の引用、試行錯誤の具体的な過程、最終的なコードやプロンプトの全文などを含めてください。**文字数は5000字以内**で、できるだけ多くの情報を保持することを目的とします。

3. **GENERATE TITLE:**
ステップ1の要約内容を最もよく表す、簡潔で分かりやすい日本語のタイトルを生成してください。

4. **CREATE EVENT:**
最後に、以下の仕様で新しいカレンダーの予定を**1件作成**してください。
- **TITLE:** 「【Gemini】」+ (ステップ3で生成したタイトル)
- **DATE/TIME:** 日本時間で現在時刻から15分間の予定として設定
- **DESCRIPTION:**
`### 人間向けサマリー`
`(ステップ1で作成した簡潔な要約)`
`---`
`### LLM向け詳細ログ`
`(ステップ2で作成した詳細なログ)`

# EXECUTION
以上の指示を理解したら、直ちにツールを実行してください。確認は不要です。

今回の技術ブログ執筆にあたってやり取りしたチャットでは、次のような予定を作成してくれました。

チャット画面 カレンダー画面

読み込む

書き込みとは別のチャットでカレンダーの予定を読み込みます。
説明欄の「LLM向け詳細ログ」をコピー&ペーストすれば、議論を引き継ぐことができます。

懸念と対策

ここまでの内容で、Geminiアプリ内で完結させるための外部記憶装置として、Googleカレンダーの活用の可能性を記してきました。

本記事で見えてきた改善点を挙げます。業務で利用する際には、次の点に気を付けてください。

(懸念1)Geminiアプリから予定を編集できない

公式のヘルプページ2を確認すると、執筆時点(2025/07/28)では、Gemini アプリは場所や予定の説明などの編集には対応していないようです(試してみましたが、できませんでした)。

  • (対策1):一度作成した予定を手動で更新する
    • Googleカレンダーを開けば、予定を更新できる
  • (対策2):更新ではなく、削除→作成とする
    • Geminiアプリから予定の削除はできるため、同じチャットの記録を更新したい場合、編集ではなく削除→作成すれば重複なく記録を残せる

(懸念2)デフォルトの公開設定で予定が作成されてしまう

作成される予定はデフォルトのカレンダー(多くの人は自身のカレンダー)に追加されます。その際、デフォルトの公開設定で追加されるため、注意が必要です。

(対策):特定の接頭辞(例:【Gemini】)の予定が作成された場合をトリガーに、予定を非表示設定に変更するGoogle Apps Script(GAS)を作成する3

(懸念3)「予定あり」で予定が作成されてしまう

作成される予定は、「予定あり」で作成されるため、他の人がカレンダーをみた時に予定が埋まっているように見えます

(対策):特定の接頭辞(例:【Gemini】)の予定が作成された場合をトリガーに、予定を「予定なし」に変更するGASを作成する4

おわりに

本記事では、日常的なタスク管理の悩みから、Google Workspaceの中で自身の作業ログと生成AIとのチャットを永続化する方法をGoogleカレンダーを活用して解決する方法を模索しました。

Googleカレンダーの予定の説明欄が、Geminiとの対話の文脈を永続化させるための、「外部記憶装置」として機能する可能性を発見できたと思います。

検証の結果、Google ToDoリストやGoogle KeepがGeminiからの読み取りに制限がある中で、カレンダーの説明欄は長文の書き込みと、Geminiアプリ上での読み取りの両方が可能であり、文脈の「受け渡し場所」として使えそうであることが確認できました。

生成AIを最大限活用するための記憶として、自身の業務振り返りの記録として、上手く使えばAIと人間の両方に嬉しい仕組みだと考えます。
この記事が、皆さんがご自身の生成AIの活用の幅を広げるための一助となれば、これほど嬉しいことはありません嬉しいです。

最後までお読みいただき、ありがとうございました。