google-calendar について
google-calendar は Google Calendar の予定を管理するスキルです。自然言語での予定作成や、複数カレンダーの空き状況確認に対応しています。
主な機能
- 01カレンダーと予定の一覧表示
- 02予定の詳細取得
- 03予定の作成・更新・削除
- 04自然言語による予定追加
- 05カレンダーの空き状況確認
活用シーン
- 01期間を指定して会議を検索
- 02予定作成前に空き時間を確認
- 03自然言語の依頼から予定を作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ aws-samples/ sample-strands-agent-with-agentcore --skill google-calendarインストール後、Claude Code で/google-calendarを入力して読み込まれたか確認します。
詳細
Google Calendar
利用可能なツール
-
list_calendars():ユーザーのすべてのカレンダー(メイン、共有、登録済み)を一覧表示します。
-
list_events(calendar_id?, max_results?, time_min?, time_max?, query?, show_deleted?):カレンダーの予定を一覧表示します。
calendar_id(string、任意、デフォルト:"primary"):カレンダー IDmax_results(integer、任意、デフォルト:10、最大:100):予定の最大件数time_min(string、任意、デフォルト:現在時刻):RFC3339 形式の開始時刻(例:"2024-01-01T00:00:00Z")time_max(string、任意):RFC3339 形式の終了時刻query(string、任意):フリーテキスト検索show_deleted(boolean、任意、デフォルト:false):削除済みの予定を含めます
-
get_event(event_id, calendar_id?):特定の予定の詳細情報を取得します。
event_id(string、必須):予定 ID(list_events から取得)calendar_id(string、任意、デフォルト:"primary")
-
create_event(summary, start_time, end_time, calendar_id?, description?, location?, attendees?, timezone?, all_day?, reminder_minutes?):新しい予定を作成します。
summary(string、必須):予定のタイトルstart_time(string、必須):RFC3339 形式(例:"2024-01-15T09:00:00")、または終日の予定の場合は日付 "YYYY-MM-DD"end_time(string、必須):RFC3339 形式、または終日の予定の場合は日付calendar_id(string、任意、デフォルト:"primary")description(string、任意):予定の説明/メモlocation(string、任意):予定の場所attendees(string、任意):カンマ区切りのメールアドレスtimezone(string、任意、デフォルト:"UTC"):タイムゾーン(例:"Asia/Seoul"、"America/New_York")all_day(boolean、任意、デフォルト:false):終日の予定を作成します(時刻には YYYY-MM-DD を使用)reminder_minutes(string、任意):カンマ区切りのリマインダー時刻(分単位)(例:"10,30,60")
-
update_event(event_id, calendar_id?, summary?, start_time?, end_time?, description?, location?, attendees?, timezone?):既存の予定を更新します。指定したフィールドのみ変更されます。
event_id(string、必須)calendar_id(string、任意、デフォルト:"primary")- その他のパラメーターは任意です。変更するフィールドのみ指定してください
-
delete_event(event_id, calendar_id?, send_notifications?):予定を削除します。
event_id(string、必須)calendar_id(string、任意、デフォルト:"primary")send_notifications(boolean、任意、デフォルト:false):参加者にキャンセル通知を送信します
-
quick_add_event(text, calendar_id?):自然言語のテキストから予定を作成します。
text(string、必須):自然言語による説明(例:"Meeting with John tomorrow at 3pm"、"Team standup every Monday at 9am")calendar_id(string、任意、デフォルト:"primary")
-
check_availability(time_min, time_max, calendars?, timezone?):空き状況を確認します。
time_min(string、必須):RFC3339 形式の期間の開始時刻time_max(string、必須):RFC3339 形式の期間の終了時刻calendars(string、任意):カンマ区切りのカレンダー ID(デフォルト:primary)timezone(string、任意、デフォルト:"UTC")
使用ガイドライン
- 時刻形式:RFC3339 —
2024-01-15T09:00:00Z(UTC)または2024-01-15T09:00:00+09:00(タイムゾーン付き)。 - 終日の予定:
all_day=trueとともに日付形式YYYY-MM-DDを使用します。 - デフォルトのカレンダーは
"primary"です。
よくある操作
会議を予定する:create_event を attendees パラメーターとともに使用すると、時刻、説明、リマインダーを細かく指定できます。
空き時間を探す:予定の作成前に、該当するカレンダー ID と期間を指定して check_availability を呼び出し、予定の重複を避けます。
手早く予定を登録する:quick_add_event は自然言語を受け付けます(例:"Lunch with Sarah tomorrow at noon")。便利ですが、create_event よりも正確さに欠けます。
予定を変更する:新しい start_time と end_time を指定して update_event を使用します。指定したフィールドのみ変更されます。
UI ガイダンス(tools-config より)
Google Calendar ツールの使用方法:
- list_calendars:ユーザーのすべてのカレンダー(メイン、共有、登録済み)を取得します
- list_events:日付範囲フィルターと検索を使用して、今後の予定を一覧表示します
- get_event:予定の詳細情報を取得します
- create_event:出席者やリマインダーを設定して、新しいカレンダーの予定を作成します
- update_event:既存の予定(時刻、タイトル、説明、出席者)を変更します
- delete_event:出席者への通知を任意で設定して、予定を削除します
- quick_add_event:自然言語から予定を作成します(例:「明日午後3時にJohnと会議」)
- check_availability:スケジュール調整のために空き状況を確認します
時刻形式:
- RFC3339 形式:2024-01-15T09:00:00Z(UTC)または 2024-01-15T09:00:00+09:00(タイムゾーン付き)
- 終日の予定:YYYY-MM-DD の日付形式を使用します
一般的な操作:
- 会議を設定する:出席者パラメーターを指定して create_event を使用します
- 空き時間を探す:予定を作成する前に check_availability を使用します
- すばやくスケジュールを設定する:自然言語入力には quick_add_event を使用します
- 日程を変更する:新しい start_time と end_time を指定して update_event を使用します