Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Google Calendar integration for viewing, creating, and managing calendar events. Use when the user asks about their schedule, wants to add/edit/delete events, check availability, or needs a morning brief. Supports natural language like "What's on my calendar tomorrow?" or "Schedule lunch with Alex at noon Friday." Free tier provides read access; Pro tier ($12) adds create/edit/delete and morning briefs.
Google Calendar integration for viewing, creating, and managing calendar events. Use when the user asks about their schedule, wants to add/edit/delete events, check availability, or needs a morning brief. Supports natural language like "What's on my calendar tomorrow?" or "Schedule lunch with Alex at noon Friday." Free tier provides read access; Pro tier ($12) adds create/edit/delete and morning briefs.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Manage Google Calendar through natural conversation.
ActionCommandTierView todaypython scripts/gcal_core.py todayFreeView tomorrowpython scripts/gcal_core.py tomorrowFreeView weekpython scripts/gcal_core.py weekFreeSearch eventspython scripts/gcal_core.py search -q "meeting"FreeList calendarspython scripts/gcal_core.py calendarsFreeFind free timepython scripts/gcal_core.py freeFreeQuick addpython scripts/gcal_core.py quick -q "Lunch Friday noon"ProDelete eventpython scripts/gcal_core.py delete --id EVENT_ID -yProMorning briefpython scripts/gcal_core.py briefPro
First-time setup required: User must create Google Cloud project and OAuth credentials Save client_secret.json to ~/.config/gcal-pro/ Run authentication: python scripts/gcal_auth.py auth Browser opens โ user grants calendar access โ done Check auth status: python scripts/gcal_auth.py status
View events (today, tomorrow, week, month) Search events List calendars Find free time slots
Everything in Free, plus: Create events Quick add (natural language) Update/reschedule events Delete events Morning brief via cron
When user asks "What's on my calendar?" or "What do I have today?": cd /path/to/gcal-pro python scripts/gcal_core.py today For specific ranges: "tomorrow" โ python scripts/gcal_core.py tomorrow "this week" โ python scripts/gcal_core.py week "meetings with Alex" โ python scripts/gcal_core.py search -q "Alex"
When user says "Add X to my calendar" or "Schedule Y": Option 1: Quick add (natural language) python scripts/gcal_core.py quick -q "Lunch with Alex Friday at noon" Option 2: Structured create (via Python) from scripts.gcal_core import create_event, parse_datetime create_event( summary="Lunch with Alex", start=parse_datetime("Friday noon"), location="Cafe Roma", confirmed=True # Set False to show confirmation prompt )
โ ๏ธ CONFIRMATION REQUIRED for destructive actions! Before deleting or significantly modifying an event, ALWAYS confirm with the user: Show event details Ask "Should I delete/reschedule this?" Only proceed with confirmed=True or -y flag after user confirms Delete: # First, find the event python scripts/gcal_core.py search -q "dentist" # Shows event ID # Then delete (with user confirmation) python scripts/gcal_core.py delete --id abc123xyz -y
When user asks "When am I free?" or "Find time for a 1-hour meeting": python scripts/gcal_core.py free
Set up via Clawdbot cron to send daily agenda: from scripts.gcal_core import generate_morning_brief print(generate_morning_brief()) Cron setup example: Schedule: 8:00 AM daily Action: Run python scripts/gcal_core.py brief Delivery: Send output to user's messaging channel
ErrorCauseSolution"client_secret.json not found"Setup incompleteComplete Google Cloud setup"Token refresh failed"Expired/revokedRun python scripts/gcal_auth.py auth --force"requires Pro tier"Free user attempting writePrompt upgrade or explain limitation"Event not found"Invalid event IDSearch for correct event first
All times are interpreted in user's local timezone (default: America/New_York) When user specifies timezone (e.g., "2 PM EST"), honor it Display times in user's local timezone Store in ISO 8601 format with timezone
For event lists, use this format: ๐ **Monday, January 27** โข 9:00 AM โ Team standup โข 12:00 PM โ Lunch with Alex ๐ Cafe Roma โข 3:00 PM โ Client call ๐ **Tuesday, January 28** โข 10:00 AM โ Dentist appointment ๐ 123 Main St For confirmations: โ Event created: "Lunch with Alex" ๐ Friday, Jan 31 at 12:00 PM ๐ Cafe Roma For morning brief: โ๏ธ Good morning! Here's your day: ๐ Monday, January 27, 2026 You have 3 events today: โข 9:00 AM โ Team standup โข 12:00 PM โ Lunch with Alex โข 3:00 PM โ Client call ๐ Tomorrow: 2 events
~/.config/gcal-pro/ โโโ client_secret.json # OAuth app credentials (user provides) โโโ token.json # User's access token (auto-generated) โโโ license.json # Pro license (if purchased)
This skill works with: Cron: Schedule morning briefs Memory: Store calendar preferences Messaging: Deliver briefs via Telegram/WhatsApp/etc.
When a Free user attempts a Pro action, respond: โ ๏ธ Creating events requires gcal-pro Pro ($12 one-time). Pro includes: Create, edit, delete events + morning briefs. ๐ Upgrade: [gumroad-link] For now, I can show you your schedule (free) โ want to see today's events?
Workflow acceleration for inboxes, docs, calendars, planning, and execution loops.
Largest current source with strong distribution and engagement signals.