gcal
SKILL.md
Google Calendar Manager
Create events, set reminders, and view schedule via Google Calendar API.
Prerequisites
- Google OAuth must be set up:
python3 ~/.claude/skills/_google-auth/scripts/setup.py - Google Calendar API enabled in Google Cloud project
- Python packages:
google-auth-oauthlib,google-api-python-client
Command Routing
| User Says | Action |
|---|---|
| "today's schedule", "what's on my calendar" | List today's events |
| "this week", "next 7 days" | List events for date range |
| "add event", "schedule meeting" | Create timed event |
| "reminder", "set reminder" | Create event with reminder notification |
| "block time for studying" | Create time block |
Workflow: List Events
python3 ~/.claude/skills/gcal/scripts/list_events.py --date today
Options:
--date today/--date tomorrow/--date "2026-02-28"--days 7(show next 7 days)--max 20
Present as a clean schedule:
## Today - Tuesday, Feb 25
| Time | Event | Location |
|------|-------|----------|
| 10:00 AM - 11:30 AM | CS 301 Lecture | Room 204 |
| 2:00 PM - 3:00 PM | GAUDON Client Call | Zoom |
| 7:00 PM - 9:00 PM | Study Group | Library |
Workflow: Create Event
Parse natural language into event parameters, then run:
python3 ~/.claude/skills/gcal/scripts/create_event.py \
--title "CS 301 Study Session" \
--start "2026-02-26T15:00:00" \
--end "2026-02-26T17:00:00"
Options:
--duration 120(minutes, instead of --end)--description "Review chapters 5-7"--location "Library Room 3"--reminder 60(popup 60 min before; can repeat for multiple)--date "2026-03-01"(all-day event, instead of --start/--end)
Workflow: Set Reminder
Reminders are events with notification overrides:
python3 ~/.claude/skills/gcal/scripts/create_event.py \
--title "Submit Lab Report" \
--start "2026-02-28T23:59:00" \
--duration 15 \
--reminder 60 --reminder 1440
This creates a 15-minute event with popups at 1 hour and 24 hours before.
Natural Language Parsing
Convert user input to script arguments:
| User Says | Parsed |
|---|---|
| "tomorrow 3pm-5pm" | --start 2026-02-26T15:00:00 --end 2026-02-26T17:00:00 |
| "Friday at noon for 2 hours" | --start 2026-02-28T12:00:00 --duration 120 |
| "next Monday" | --date 2026-03-02 (all-day) |
| "remind me at 11:59pm" | --start <date>T23:59:00 --duration 15 --reminder 30 |
Always use ISO 8601 format for dates/times. Use the current date context to resolve relative dates (today, tomorrow, next Monday, etc.).
Error Handling
| Error | Solution |
|---|---|
| "OAuth credentials not found" | Run setup: python3 ~/.claude/skills/_google-auth/scripts/setup.py |
| "Token expired" | Script auto-refreshes; if fails, re-run setup |
| Event not appearing | Check timezone; script uses local timezone |
| Past date warning | Warn user if creating event in the past |
Safety Rules
- Confirm event details before creating (show: title, time, reminders)
- Warn if event overlaps with existing events
- Never delete or modify existing events without explicit permission
Weekly Installs
2
Repository
theaayushstha1/…c-skillsFirst Seen
Feb 27, 2026
Security Audits
Installed on
mcpjam2
claude-code2
replit2
junie2
windsurf2
zencoder2