From calendar-skills
Create or update events directly in Google Calendar so they sync to devices already connected to that Google account. Use when an agent should perform a real calendar update instead of emailing an `.ics` file.
How this skill is triggered — by the user, by Claude, or both
Slash command
/calendar-skills:google-calendar-syncThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use the bundled script to create or update a Google Calendar event through the Google Calendar API.
Use the bundled script to create or update a Google Calendar event through the Google Calendar API.
This is the direct-sync path:
.ics email step is requiredUse this skill when the user wants a real calendar update written directly to Google Calendar.
If your phone is signed into the same Google account and calendar sync is enabled, events created by this skill should appear in Google Calendar on the phone automatically.
uv sync
The script stores a refreshable token locally after the first successful authorization.
For persistent repo-local setup, create .env.calendar in this skill directory. The script loads that file automatically, or you can override it with --env-file.
Use SETUP.md for the one-time setup steps on a MacBook.
YYYY-MM-DD HH:MMYYYY-MM-DD HH:MMAmerica/New_YorkCreate a new event in your primary calendar. Run from this skill directory:
uv run scripts/upsert_google_calendar_event.py \
--summary "Project Review" \
--start "2026-04-15 14:00" \
--end "2026-04-15 14:30" \
--tz "America/New_York" \
--client-secret /path/to/client_secret.json
Create a new event with attendees and Google Meet. Run from this skill directory:
uv run scripts/upsert_google_calendar_event.py \
--summary "Project Review" \
--start "2026-04-15 14:00" \
--end "2026-04-15 14:30" \
--tz "America/New_York" \
--description "Review current milestone and blockers." \
--attendee "[email protected]" \
--attendee "[email protected]" \
--add-meet \
--client-secret /path/to/client_secret.json
Update an existing event. Run from this skill directory:
uv run scripts/upsert_google_calendar_event.py \
--event-id "<existing event id>" \
--summary "Project Review" \
--start "2026-04-15 15:00" \
--end "2026-04-15 15:30" \
--tz "America/New_York" \
--client-secret /path/to/client_secret.json
primarytoken.json in this skill directoryCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub ryanznie/skills --plugin calendar-skills