mcpField
G
gcal

gcal

github.com/naoterumaker生产力468 次安装37 周前更新
代码仓库

关于 gcal

gcal 是通过 gog CLI 操作 Google Calendar 的技能指南,涵盖事件、日历、空闲时间、邀请和访问控制的管理命令。

主要功能

  1. 01列出、搜索、创建、更新和删除事件
  2. 02设置重复、全天及特殊事件
  3. 03检查空闲时段与日程冲突
  4. 04管理日历列表、颜色和访问控制
  5. 05回复邀请并配置会议选项

适用场景

  1. 01查看当天或指定日期范围的事件
  2. 02安排包含参与者和 Google Meet 的会议
  3. 03检查多个日历的空闲时间
  4. 04管理邀请和日历访问权限

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/naoterumaker/openclaw-gog-skills --skill gcal

安装后在 Claude Code 中输入/gcal确认已加载。

详细介绍

来自项目 README

Google Calendar 操作スキル (gog v0.10.0)

gog CLI でGoogleカレンダーを操作する。

実行パス: gog

認証アカウント: (gogで認証したアカウント)

Execution Notes

  • exec ツールで実行時、timeout: 60 を指定
  • 日時はRFC3339形式: 2026-02-15T10:00:00+09:00

予定一覧

基本(今後7日間)
gog calendar events
gog calendar events --max 10
期間指定
gog calendar events --from "2026-02-01" --to "2026-02-28"
gog calendar events --from "2026-02-15T00:00:00+09:00" --to "2026-02-15T23:59:59+09:00"
特定カレンダー
gog calendar events primary                    # メインカレンダー
gog calendar events "[email protected]"         # 共有カレンダー
今日の予定
TODAY=$(date +%Y-%m-%d)
gog calendar events --from "${TODAY}T00:00:00+09:00" --to "${TODAY}T23:59:59+09:00"

予定作成

基本
gog calendar create primary \
  --summary "ミーティング" \
  --from "2026-02-15T10:00:00+09:00" \
  --to "2026-02-15T11:00:00+09:00"
終日予定
gog calendar create primary \
  --summary "休暇" \
  --from "2026-02-20" \
  --to "2026-02-21" \
  --all-day
場所・説明付き
gog calendar create primary \
  --summary "クライアントMTG" \
  --from "2026-02-15T14:00:00+09:00" \
  --to "2026-02-15T15:30:00+09:00" \
  --location "東京都渋谷区〇〇ビル 5F" \
  --description "議題:\n1. 進捗報告\n2. 次回スケジュール"
参加者追加
gog calendar create primary \
  --summary "定例会議" \
  --from "2026-02-15T10:00:00+09:00" \
  --to "2026-02-15T11:00:00+09:00" \
  --attendees "[email protected],[email protected]"
Google Meet付き
gog calendar create primary \
  --summary "オンラインMTG" \
  --from "2026-02-15T10:00:00+09:00" \
  --to "2026-02-15T11:00:00+09:00" \
  --with-meet
リマインダー付き
gog calendar create primary \
  --summary "重要MTG" \
  --from "2026-02-15T10:00:00+09:00" \
  --to "2026-02-15T11:00:00+09:00" \
  --reminder "popup:30m" \
  --reminder "email:1d"
繰り返し予定
# 毎週月曜
gog calendar create primary \
  --summary "週次定例" \
  --from "2026-02-17T10:00:00+09:00" \
  --to "2026-02-17T11:00:00+09:00" \
  --rrule "RRULE:FREQ=WEEKLY;BYDAY=MO"

# 毎月15日
gog calendar create primary \
  --summary "月次報告" \
  --from "2026-02-15T10:00:00+09:00" \
  --to "2026-02-15T11:00:00+09:00" \
  --rrule "RRULE:FREQ=MONTHLY;BYMONTHDAY=15"

予定更新

gog calendar update primary <eventId> --summary "新しいタイトル"
gog calendar update primary <eventId> --from "2026-02-15T11:00:00+09:00" --to "2026-02-15T12:00:00+09:00"
gog calendar update primary <eventId> --location "オンライン"

予定削除

gog calendar delete primary <eventId>
gog calendar delete primary <eventId> --force  # 確認スキップ

予定検索

gog calendar search "ミーティング"
gog calendar search "MTG" --from "2026-02-01" --to "2026-02-28"

カレンダー管理

カレンダー一覧
gog calendar calendars
空き時間確認
gog calendar freebusy "primary,[email protected]" \
  --from "2026-02-15T09:00:00+09:00" \
  --to "2026-02-15T18:00:00+09:00"
予定の衝突確認
gog calendar conflicts --from "2026-02-15" --to "2026-02-21"

特殊イベント

フォーカスタイム
gog calendar focus-time primary \
  --from "2026-02-15T14:00:00+09:00" \
  --to "2026-02-15T17:00:00+09:00"
外出中(Out of Office)
gog calendar out-of-office primary \
  --from "2026-02-20" \
  --to "2026-02-21"
勤務場所設定
gog calendar working-location primary \
  --from "2026-02-15" \
  --to "2026-02-16" \
  --type "home"

作成オプション一覧

オプション説明
--summaryタイトル
--from開始日時(RFC3339)
--to終了日時(RFC3339)
--all-day終日予定
--location場所
--description説明
--attendees参加者(カンマ区切り)
--with-meetGoogle Meet作成
--reminderリマインダー(popup:30m, email:1d等)
--rrule繰り返しルール
--event-color色(1-11)
--visibility公開設定(default/public/private)
--transparency表示(opaque=予定あり/transparent=空き)
--send-updates通知(all/externalOnly/none)
--guests-can-inviteゲスト招待許可
--guests-can-modifyゲスト編集許可

日時形式

RFC3339形式
2026-02-15T10:00:00+09:00   # 日本時間
2026-02-15T01:00:00Z        # UTC
終日イベントの日付
2026-02-15   # 開始日
2026-02-16   # 終了日(翌日を指定)

典型ワークフロー

今日の予定確認→ミーティング追加
# 1. 今日の予定確認
TODAY=$(date +%Y-%m-%d)
gog calendar events --from "${TODAY}T00:00:00+09:00" --to "${TODAY}T23:59:59+09:00"

# 2. 空き時間確認
gog calendar freebusy "primary" --from "${TODAY}T09:00:00+09:00" --to "${TODAY}T18:00:00+09:00"

# 3. 予定作成(Google Meet付き)
gog calendar create primary \
  --summary "緊急MTG" \
  --from "${TODAY}T15:00:00+09:00" \
  --to "${TODAY}T16:00:00+09:00" \
  --with-meet \
  --attendees "[email protected]"
来週の予定確認
START=$(date -v+1d +%Y-%m-%d)  # macOS
END=$(date -v+7d +%Y-%m-%d)
gog calendar events --from "$START" --to "$END"

招待への返答(RSVP)

gog calendar respond primary <eventId> --status accepted
gog calendar respond primary <eventId> --status declined
gog calendar respond primary <eventId> --status tentative

カレンダーの色一覧

gog calendar colors

単一イベント取得

gog calendar event primary <eventId>
gog calendar event primary <eventId> --json

アクセス制御 (ACL)

# ACL一覧
gog calendar acl primary

# ACL追加
gog calendar acl primary --add "[email protected]" --role reader

# ACL削除
gog calendar acl primary --remove "[email protected]"

注意事項

  • タイムゾーン: +09:00 を必ず付ける(日本時間)
  • 終日イベント: --to は終了日の翌日を指定
  • 参加者通知: デフォルトで招待メールが送信される
  • 繰り返し削除: 単発だけ削除するか全部削除するか確認される

评论

支持 Markdown