用途:为需要同时管理多个 Google 账号日历的智能体与脚本提供统一命令行层,让日程结论可引用、写入可回滚,避免误操作惊扰真人。
主要能力:conflicts 跨全部账号回答是否重复预订,数据不完整或过期时不会给出武断结论;slots 按指定时长推荐跨账号空闲窗口;changes 列出指定水位后所有新增、移动和取消;manifest check 对比实际日历与已批准的 calendars.yaml,发现新增、缺失或权限漂移;events exceptions 找出重复事件中改期或取消的实例。写入采用 etag 前置条件,返回修改前镜像与可逆操作,并且强制 sendUpdates=none,结构性拒绝写含参与者的事件。
使用方式:先安装 CLI,可用 npx -y @mvanhorn/printing-press-library install google-calendar --cli-only,或 go install github.com/mvanhorn/printing-press-library/library/productivity/google-calendar/cmd/google-calendar-pp-cli@latest(需 Go 1.26.5+),并用 google-calendar-pp-cli --version 验证且确保安装目录在 PATH。认证按配置逐账号进行安装型 OAuth,需自备 client.json;只读配置仅申请 calendar.readonly。多数命令可加 --agent 展开为 --json --compact --no-input --no-color --yes;输出包裹在含 meta.source 与 results 的信封中。
适用场景:多账号冲突排查、可用时段提议、日程合并议程、按人类委托执行且需撤销的日历写入,以及账户变更后的清单体检。
限制:不涉及 Gmail、Google Tasks、日历共享或 ACL 变更;不接受自然语言日期,只接受显式 YYYY-MM-DD/RFC3339 与 today、+Nd;无法查询未列入 manifest 的他人可用性。收费与价格资料暂未提供。