| name | calendar-availability |
| description | Dual-calendar availability checking — combines Google Calendar (personal) and WorkIQ (work/Microsoft 365) to determine true schedule and free slots. Use when agent says "check availability", "find free time", "schedule something", "is {{PARENT_1}} free", "what meetings today", "gym slot", "when can he", "calendar conflicts", "block time", or any scheduling decision.
|
Calendar Availability
Purpose
{{PARENT_1}} has TWO calendars — personal (Google Calendar) and work (Microsoft 365 via WorkIQ). Checking only one gives an INCOMPLETE, DANGEROUS picture of his availability. Work meetings are invisible to Google Calendar and vice versa.
This skill ensures ALL scheduling agents properly combine both calendar sources before making time-based decisions.
The Workflow
Step 1 — Check Personal Calendar (Google)
gcal_today() # For today's events
gcal_upcoming(days=N) # For multi-day lookups
Returns: Family events, medical appointments, errands, kids' activities, personal commitments.
Step 2 — Check Work Calendar (Microsoft 365)
workiq-ask_work_iq(question: "What meetings does {{PARENT_1}} have today?")
# Or for a specific date:
workiq-ask_work_iq(question: "What meetings does {{PARENT_1}} have on [date]?")
# Or for availability:
workiq-ask_work_iq(question: "When is {{PARENT_1}} free between [start] and [end]?")
Returns: Work meetings (standups, 1:1s, reviews, focus time, team syncs).
Step 3 — Combine and Determine Availability
A time slot is only FREE if it's clear on BOTH calendars.
Merge rules:
- Overlapping events from both calendars = fully blocked
- Adjacent events with <15 min gap = effectively blocked (no useful time)
- "Focus time" on work calendar = treat as soft block (can be overridden for urgent personal)
- "Tentative" events = treat as soft block (mention the conflict)
Step 4 — Report with Source Labels