gws-calendar 是 gws CLI 中用于操作 Google Calendar 的技能模块,对应 calendar API v3。它面向需要以命令行方式管理日历和事件的用户,把日历 API 的各类资源与方法封装为统一的命令形式。
【调用形式】 基本形式为: gws calendar <resource> <method> [flags]
【前置条件】 资料明确要求:使用前先阅读 ../gws-shared/SKILL.md,其中包含认证方式、全局标志和安全规则。若该文件缺失,可运行 gws generate-skills 生成。
【辅助命令】
- +insert:创建一个新事件。
- +agenda:展示跨所有日历的即将到来的事件。
【API 资源与方法】
- acl(访问控制规则):delete(删除访问控制规则)、get(返回访问控制规则)、insert(创建访问控制规则)、list(返回某日历的访问控制列表中的规则)、patch(更新访问控制规则,支持 patch 语义)、update(更新访问控制规则)、watch(监视 ACL 资源变更)。
- calendarList(用户日历列表):delete(从用户日历列表中移除日历)、get(返回用户日历列表中的某个日历)、insert(将已有日历插入用户日历列表)、list(返回用户日历列表中的日历)、patch(更新用户日历列表中的日历,支持 patch 语义)、update(更新用户日历列表中的日历)、watch(监视 CalendarList 资源变更)。
- calendars(日历):clear(清空主日历,会删除该账户主日历关联的所有事件)、delete(删除次级日历;主日历清空请用 calendars.clear)、get(返回日历元数据)、insert(创建次级日历,请求的已认证用户将成为新日历的数据所有者;资料建议以目标数据所有者身份认证,可用域范围委派让应用代表特定用户行事,不要用服务账号认证,否则服务账号会成为数据所有者并可能导致意外行为)、patch(更新日历元数据,支持 patch 语义)、update(更新日历元数据)。
- channels:stop(停止通过该频道监视资源)。
- colors:get(返回日历和事件的颜色定义)。
- events(事件):delete(删除事件)、get(按 Google Calendar ID 返回事件;若要用 iCalendar ID 检索事件,应使用 events.list 并传入 iCalUID 参数)、import(导入事件,用于把已有事件的私有副本加入日历;只有 eventType 为 default 的事件可导入;已弃用行为:导入非 default 事件时其类型会被改为 default,并丢弃该事件类型特有的属性)、insert(创建事件)、instances(返回指定重复事件的实例)、list(返回指定日历上的事件)、move(将事件移动到另一日历,即更改事件组织者;只有 default 事件可移动,birthday、focusTime、fromGmail、outOfOffice 和 workingLocation 事件不可移动)、patch(更新事件,支持 patch 语义)、quickAdd(基于简单文本字符串创建事件)、update(更新事件)、watch(监视 Events 资源变更)。
- freebusy:query(返回一组日历的空闲/忙碌信息)。
- settings(设置):get(返回单个用户设置)、list(返回已认证用户的所有设置)、watch(监视 Settings 资源变更)。
【命令发现方式】 在调用任何 API 方法前,可先查看: gws calendar --help # 浏览资源与方法 gws schema calendar.<resource>.<method> # 查看某方法的必需参数、类型和默认值 用 gws schema 的输出可以构建 --params 和 --json 标志。
【适用场景】 适合在命令行或自动化脚本中管理 Google 日历:创建/查询/更新/删除事件,查看跨日历日程,查询空闲忙碌,管理日历列表与访问控制规则等。
【限制与未提供信息】 资料未说明计费、价格、配额、速率限制、具体认证配置细节以及除上述 API 能力之外的功能,这些内容暂未提供。