AIカレンダーエージェント (ai-calendar-agent)

AI/ML

概要

このリポジトリは、自然言語で記述された予定(例:「明日13時にジム」「10月20日午後3時にチームミーティング」など)をAIで解析してGoogle カレンダーへ自動登録するエージェントです。バックエンドはGoogle Apps Scriptで構築され、自然言語理解にはGoogle Gemini 2.5 Flashを想定しています。ユーザー入力はGoogle Forms等から受け取れ、解析後はCalendar APIでイベント作成、Gmail APIで確認メールを送信するワークフローを備えます。実装はファイル数が少なく、サンプルやセットアップ手順もREADMEに記載されており、実運用向けにOAuthスコープやトリガー設定を追加して使える設計です。(約300字)

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 4
  • ファイル数: 3
  • メインの言語: JavaScript

主な特徴

  • 自然言語入力からイベント日時・期間を抽出してGoogle カレンダーに登録
  • Google Gemini(LLM)を用いた日付・時間の解釈と曖昧さの解消
  • Google FormsやApps Scriptトリガーと連携する軽量な自動化ワークフロー
  • 登録完了をGmailで通知(確認メール送信)

技術的なポイント

このプロジェクトはGoogle Apps Script(GAS)を中核に据え、ローカルサーバーを必要とせずGoogleの各種APIと統合する点が特徴です。入力テキストを受け取ると、まずGoogle Gemini 2.5 Flashなどの大規模言語モデルへ送信して「イベント抽出(日時、開始・終了、タイトル、場所、備考など)」を行わせます。GASから外部API(Gemini)へはUrlFetchApp等でHTTPリクエストを行い、JSONレスポンスをパースして構造化データへ変換します。抽出後はCalendarAppまたはAdvanced Calendar APIを使ってイベント作成を実行し、タイムゾーンや繰り返し、参加者の追加なども設定可能です。確認・通知はMailApp/GmailAppで行い、ユーザーへ作成結果を自動送信します。実装で注意すべき点は、日付・時間解析の曖昧さ(「明日」「来週の水曜」等)とタイムゾーン差、LLMの誤解や不確実性への対処です。ログや二重登録防止ロジック、ユーザー確認フロー(暫定イベントの承認)を入れることで実用性が高まります。また、GASの権限(Calendar API・Gmail APIのスコープ)とAPIキーやOAuthトークンの管理、レート制限やコスト(Gemini利用)を設計段階で考慮する必要があります。リポジトリ自体は最小構成で学習やプロトタイプに適していますが、本番運用にはエラーハンドリング、テスト、セキュリティ対策の追加を推奨します。(約700字)

プロジェクトの構成

主要なファイルとディレクトリ:

  • LICENSE: file
  • README.md: file
  • calendar-agent.gs: file

まとめ

自然言語からカレンダー登録までを簡潔に自動化するGASベースのプロトタイプ。拡張と本番対応がしやすい設計です。(約50字)

リポジトリ情報:

READMEの抜粋: 📋 Example Usage Input: Tomorrow gym at 1pm University class tomorrow 10am to 12pm Team meeting on October 20 at 3pm Result:

✅ 3 events automatically added to Google Calendar ✅ Confirmation email with event details ✅ All durations calculated correctly

🛠️ Tech Stack

Google Apps Script: Backend automation Google Gemini 2.5 Flash: AI for natural language understanding Google Forms: User interface Google Calendar API: Calendar integration Gmail API: Email notifications

🚀 Setup Instructions Pre…