Build polished one-day Google Calendar briefs. Use when the user asks for today, tomorrow, or a specific date summary with an agenda, conflict flags, free windows, remaining-meeting readouts, or a calendar brief, and the Google Calendar connector is available.
Use this skill to turn one day of Google Calendar events into a readable daily brief instead of a raw event dump. Use the Google Calendar app from this plugin for the source data, then use the bundled formatter as the default rendering path.
calendar_id=primary unless the user names a different calendar.scripts/render_day_brief.py.search_events for the one-day event list that feeds the formatter.search_events_all_fields only if the brief needs richer event metadata than the standard event summary surface returns.[local_midnight, next_local_midnight) in the user's timezone.calendar_id, time_min, time_max, and timezone.The formatter's default shape is a good baseline:
Day ShapeAgendaWhat Needs AttentionUseful ReadoutRemaining TodayKeep the tone compact and practical. Do not use a fenced code block for the agenda.
Run the formatter whenever you want the full daily brief:
python3 scripts/render_day_brief.py \
--time-min 2026-03-11T00:00:00-07:00 \
--time-max 2026-03-12T00:00:00-07:00 \
--timezone America/Los_Angeles \
--now 2026-03-11T17:02:19-07:00
Provide the Google Calendar JSON payload on stdin. The script accepts either:
events field, orUse --now when summarizing today so the script can emit Remaining Today. Omit it for future days if you do not need that section.
Time and Meeting.10:00-10:15 without meridiem in each row.What Needs Attention.Day Shape and Useful Readout narrative rather than metric-heavy.