关于 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(字符串,可选,默认值:"primary"):日历 IDmax_results(整数,可选,默认值:10,最大值:100):事件数量上限time_min(字符串,可选,默认值:当前时间):RFC3339 格式的开始时间(例如:"2024-01-01T00:00:00Z")time_max(字符串,可选):RFC3339 格式的结束时间query(字符串,可选):自由文本搜索show_deleted(布尔值,可选,默认值:false):包含已删除的事件
-
get_event(event_id, calendar_id?):获取特定事件的详细信息。
event_id(字符串,必填):事件 ID(来自 list_events)calendar_id(字符串,可选,默认值:"primary")
-
create_event(summary, start_time, end_time, calendar_id?, description?, location?, attendees?, timezone?, all_day?, reminder_minutes?):创建新事件。
summary(字符串,必填):事件标题start_time(字符串,必填):RFC3339 格式(例如:"2024-01-15T09:00:00"),全天事件则使用日期 "YYYY-MM-DD"end_time(字符串,必填):RFC3339 格式,或全天事件使用的日期calendar_id(字符串,可选,默认值:"primary")description(字符串,可选):事件描述/备注location(字符串,可选):事件地点attendees(字符串,可选):以逗号分隔的电子邮件地址timezone(字符串,可选,默认值:"UTC"):时区(例如:"Asia/Seoul"、"America/New_York")all_day(布尔值,可选,默认值:false):创建全天事件(时间请使用 YYYY-MM-DD)reminder_minutes(字符串,可选):以逗号分隔的提醒时间(分钟)(例如:"10,30,60")
-
update_event(event_id, calendar_id?, summary?, start_time?, end_time?, description?, location?, attendees?, timezone?):更新现有事件。仅更改指定的字段。
event_id(字符串,必填)calendar_id(字符串,可选,默认值:"primary")- 其他参数均为可选项——仅提供要更改的字段
-
delete_event(event_id, calendar_id?, send_notifications?):删除事件。
event_id(字符串,必填)calendar_id(字符串,可选,默认值:"primary")send_notifications(布尔值,可选,默认值:false):向参与者发送取消通知
-
quick_add_event(text, calendar_id?):根据自然语言文本创建事件。
text(字符串,必填):自然语言描述(例如:"明天下午 3 点与 John 开会"、"每周一上午 9 点团队晨会")calendar_id(字符串,可选,默认值:"primary")
-
check_availability(time_min, time_max, calendars?, timezone?):检查忙闲状态。
time_min(字符串,必填):RFC3339 格式的时间范围起点time_max(字符串,必填):RFC3339 格式的时间范围终点calendars(字符串,可选):以逗号分隔的日历 ID(默认值:primary)timezone(字符串,可选,默认值:"UTC")
使用指南
- 时间格式:RFC3339——
2024-01-15T09:00:00Z(UTC)或2024-01-15T09:00:00+09:00(含时区)。 - 全天事件:使用日期格式
YYYY-MM-DD,并设置all_day=true。 - 默认日历为
"primary"。
常见操作
安排会议:使用 create_event,并通过 attendees 参数全面控制时间、描述和提醒。
查找可用时间:创建事件前,使用相关日历 ID 和时间范围调用 check_availability,以避免时间冲突。
快速安排:quick_add_event 接受自然语言(例如:"明天中午与 Sarah 共进午餐")。使用方便,但不如 create_event 精确。
重新安排:使用 update_event 并提供新的 start_time 和 end_time。仅更改提供的字段。
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 并设置 attendees 参数
- 查找可用时间:创建活动前使用 check_availability
- 快速安排:使用 quick_add_event 处理自然语言输入
- 重新安排:使用 update_event 设置新的 start_time 和 end_time