使用 gog CLI 工具管理 Google 日历,支持创建、列出、更新、删除日历事件,具备颜色标记、OAuth 认证和脚本化能力。
Google CLI. 管理 Google 日历事件高效使用 gog 命令行工具.是一项面向实际任务的技能,主要用于Prerequists.;Install gog.;
它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
使用 gog 命令行工具高效管理 Google Calendar 事件。
brew install steipete/tap/gogcli
# 配置 OAuth 凭据 gog auth credentials /path/to/client_secret.json # 添加具有日历访问权限的 Google 账户 gog auth add you@gmail.com --services calendar # 验证身份验证状态 gog auth list
# 列出主日历中的事件(仅今日事件) gog calendar events primary --from "2026-01-01T00:00:00Z" --to "2026-01-01T23:59:59Z" # 列出未来 7 天的事件 gog calendar events primary --from "$(date -u +%Y-%m-%dT00:00:00Z)" --to "$(date -u -v+7d +%Y-%m-%dT23:59:59Z)"
# 创建基础事件 gog calendar create primary --summary "Team Meeting" --from "2026-01-15T14:00:00+01:00" --to "2026-01-15T15:00:00+01:00" # 创建带颜色的事件 gog calendar create primary --summary "Important Deadline" --from "2026-01-20T00:00:00+01:00" --to "2026-01-20T23:59:59+01:00" --event-color 11
# 更新事件标题与颜色 gog calendar update primary--summary "Updated Meeting Title" --event-color 4
| 颜色 ID | 十六进制代码 | 典型用途 |
|---|---|---|
| 1 | #a4bdfc | 会议、工作 |
| 2 | #7ae7bf | 个人事务、健康 |
| 3 | #dbadff | 社交、活动 |
| 4 | #ff887c | 截止日期、紧急事项 |
| 5 | #fbd75b | 提醒 |
| 6 | #ffb878 | 差旅 |
| 7 | #46d6db | 娱乐、休闲 |
| 8 | #e1e1e1 | 通用 |
| 9 | #5484ed | 工作项目 |
| 10 | #51b749 | 已完成、已处理 |
| 11 | #dc2127 | 关键事项、高优先级 |
# 查看所有可用颜色 gog calendar colors
# 列出所有事件以直观查看空闲时段 gog calendar events primary --from "2026-01-15T00:00:00Z" --to "2026-01-21T23:59:59Z" --json
注意:gog CLI 不直接支持周期性事件,但可通过脚本实现:
# 通过脚本创建多个事件(示例)
for i in {1..5}; do
DATE=$(date -v+${i}d +%Y-%m-%d)
gog calendar create primary --summary "Daily Standup"
--from "${DATE}T09:00:00+01:00" --to "${DATE}T09:30:00+01:00"
--event-color 1
done
# 设置默认账户以避免重复指定 export GOG_ACCOUNT=you@gmail.com # 后续命令无需再加 --account 参数 gog calendar events primary --from "..." --to "..."
--json 参数获取机器可读输出--no-input 执行批处理:在自动化脚本中使用该参数跳过交互式提示"primary" 作为日历 ID#!/bin/bash # 获取本周所有事件 START=$(date -u -v-Monday +%Y-%m-%dT00:00:00Z) END=$(date -u -v+Sunday +%Y-%m-%dT23:59:59Z) gog calendar events primary --from "$START" --to "$END" --json