google-calendar-automation by sickn33/antigravity-awesome-skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill google-calendar-automation轻量级 Google Calendar 集成,具备独立的 OAuth 身份验证。无需 MCP 服务器。
⚠️ 需要 Google Workspace 账户。 不支持个人 Gmail 账户。
使用 Google 进行身份验证(会打开浏览器):
python scripts/auth.py login
检查身份验证状态:
python scripts/auth.py status
需要时登出:
python scripts/auth.py logout
所有操作均通过 scripts/gcal.py 进行。首次使用时若未登录,将自动进行身份验证。
python scripts/gcal.py list-calendars
# 列出主日历中的事件(默认:未来 30 天)
python scripts/gcal.py list-events
# 列出指定时间范围内的事件
python scripts/gcal.py list-events --time-min 2024-01-15T00:00:00Z --time-max 2024-01-31T23:59:59Z
# 列出特定日历中的事件
python scripts/gcal.py list-events --calendar "work@example.com"
# 限制结果数量
python scripts/gcal.py list-events --max-results 10
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
python scripts/gcal.py get-event EVENT_ID
python scripts/gcal.py get-event EVENT_ID --calendar "work@example.com"
# 基础事件
python scripts/gcal.py create-event "Team Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z"
# 带描述和地点的事件
python scripts/gcal.py create-event "Team Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z" \
--description "Weekly sync" --location "Conference Room A"
# 带参与者的事件
python scripts/gcal.py create-event "Team Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z" \
--attendees user1@example.com user2@example.com
# 在特定日历上创建事件
python scripts/gcal.py create-event "Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z" \
--calendar "work@example.com"
# 更新事件标题
python scripts/gcal.py update-event EVENT_ID --summary "New Title"
# 更新事件时间
python scripts/gcal.py update-event EVENT_ID --start "2024-01-15T14:00:00Z" --end "2024-01-15T15:00:00Z"
# 更新多个字段
python scripts/gcal.py update-event EVENT_ID \
--summary "Updated Meeting" --description "New agenda" --location "Room B"
# 更新参与者
python scripts/gcal.py update-event EVENT_ID --attendees user1@example.com user3@example.com
python scripts/gcal.py delete-event EVENT_ID
python scripts/gcal.py delete-event EVENT_ID --calendar "work@example.com"
为指定参与者查找会议的第一个可用时间段:
# 为自己查找 30 分钟的空闲时段
python scripts/gcal.py find-free-time \
--attendees me \
--time-min "2024-01-15T09:00:00Z" \
--time-max "2024-01-15T17:00:00Z" \
--duration 30
# 为多个参与者查找 60 分钟的空闲时段
python scripts/gcal.py find-free-time \
--attendees me user1@example.com user2@example.com \
--time-min "2024-01-15T09:00:00Z" \
--time-max "2024-01-19T17:00:00Z" \
--duration 60
# 接受邀请
python scripts/gcal.py respond-to-event EVENT_ID accepted
# 拒绝邀请
python scripts/gcal.py respond-to-event EVENT_ID declined
# 标记为暂定
python scripts/gcal.py respond-to-event EVENT_ID tentative
# 响应但不通知组织者
python scripts/gcal.py respond-to-event EVENT_ID accepted --no-notify
所有时间均使用带时区的 ISO 8601 格式:
2024-01-15T10:30:00Z2024-01-15T10:30:00-05:00 (EST)primary 或省略 --calendar 标志list-calendars 命令返回的日历 ID(通常是电子邮件地址)令牌使用系统密钥环安全存储:
服务名称:google-calendar-skill-oauth
令牌过期时会使用 Google 的云函数自动刷新。
每周安装量
94
代码仓库
GitHub 星标
27.1K
首次出现
2026 年 2 月 9 日
安全审计
已安装于
opencode92
codex91
gemini-cli90
cursor90
github-copilot89
kimi-cli89
Lightweight Google Calendar integration with standalone OAuth authentication. No MCP server required.
⚠️ Requires Google Workspace account. Personal Gmail accounts are not supported.
Authenticate with Google (opens browser):
python scripts/auth.py login
Check authentication status:
python scripts/auth.py status
Logout when needed:
python scripts/auth.py logout
All operations via scripts/gcal.py. Auto-authenticates on first use if not logged in.
python scripts/gcal.py list-calendars
# List events from primary calendar (default: next 30 days)
python scripts/gcal.py list-events
# List events with specific time range
python scripts/gcal.py list-events --time-min 2024-01-15T00:00:00Z --time-max 2024-01-31T23:59:59Z
# List events from a specific calendar
python scripts/gcal.py list-events --calendar "work@example.com"
# Limit results
python scripts/gcal.py list-events --max-results 10
python scripts/gcal.py get-event EVENT_ID
python scripts/gcal.py get-event EVENT_ID --calendar "work@example.com"
# Basic event
python scripts/gcal.py create-event "Team Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z"
# Event with description and location
python scripts/gcal.py create-event "Team Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z" \
--description "Weekly sync" --location "Conference Room A"
# Event with attendees
python scripts/gcal.py create-event "Team Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z" \
--attendees user1@example.com user2@example.com
# Event on specific calendar
python scripts/gcal.py create-event "Meeting" "2024-01-15T10:00:00Z" "2024-01-15T11:00:00Z" \
--calendar "work@example.com"
# Update event title
python scripts/gcal.py update-event EVENT_ID --summary "New Title"
# Update event time
python scripts/gcal.py update-event EVENT_ID --start "2024-01-15T14:00:00Z" --end "2024-01-15T15:00:00Z"
# Update multiple fields
python scripts/gcal.py update-event EVENT_ID \
--summary "Updated Meeting" --description "New agenda" --location "Room B"
# Update attendees
python scripts/gcal.py update-event EVENT_ID --attendees user1@example.com user3@example.com
python scripts/gcal.py delete-event EVENT_ID
python scripts/gcal.py delete-event EVENT_ID --calendar "work@example.com"
Find the first available slot for a meeting with specified attendees:
# Find 30-minute slot for yourself
python scripts/gcal.py find-free-time \
--attendees me \
--time-min "2024-01-15T09:00:00Z" \
--time-max "2024-01-15T17:00:00Z" \
--duration 30
# Find 60-minute slot with multiple attendees
python scripts/gcal.py find-free-time \
--attendees me user1@example.com user2@example.com \
--time-min "2024-01-15T09:00:00Z" \
--time-max "2024-01-19T17:00:00Z" \
--duration 60
# Accept an invitation
python scripts/gcal.py respond-to-event EVENT_ID accepted
# Decline an invitation
python scripts/gcal.py respond-to-event EVENT_ID declined
# Mark as tentative
python scripts/gcal.py respond-to-event EVENT_ID tentative
# Respond without notifying organizer
python scripts/gcal.py respond-to-event EVENT_ID accepted --no-notify
All times use ISO 8601 format with timezone:
2024-01-15T10:30:00Z2024-01-15T10:30:00-05:00 (EST)primary or omit the --calendar flaglist-calendars (usually an email address)Tokens stored securely using the system keyring:
Service name: google-calendar-skill-oauth
Tokens are automatically refreshed when expired using Google's cloud function.
Weekly Installs
94
Repository
GitHub Stars
27.1K
First Seen
Feb 9, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
opencode92
codex91
gemini-cli90
cursor90
github-copilot89
kimi-cli89
通过 LiteLLM 代理让 Claude Code 对接 GitHub Copilot 运行 | 高级变通方案指南
43,100 周安装