π
CALENDAR
Natural language β Google Calendar β WhatsApp reminders
Neo types a plain-English reminder; Zion parses date, time, and title with Groq or Gemini, writes to Google Calendar, confirms on WhatsApp, then calendar_reminder.py polls every 10 minutes and sends 24h / 2h / 1h heads-ups.
A Real Conversation
Create in chat β reminders fire automatically from the calendar service
@zion remind me dentist
tomorrow 3pm
11:20 AM
[Zion] β
Event Created!
ββββββββββββββββββββββ
π
Dentist
π Tomorrow, 3:00 PM
β° Reminder: 1 hour before
Added to Google Calendar
11:20 AM ββ
[Zion] π
Reminder:
Dentist in 1 hour!
(Today 3:00 PM)
2:00 PM ββ
Also: @zion what's today? β shows all events
π click to read full brief
NEO
π± WhatsApp β same thread
ZION
routes @zion remind
calendar intent
NL command
GROQ / GEMINI
parse title + date/time
timezone-aware JSON
structured event draft
GOOGLE CALENDAR API
OAuth2 β create event
eventId stored in DB
calendar_reminders.db
WhatsApp confirm
[Zion] β
Createdβ¦
Bridge /api/send
instant confirmation
calendar_reminder.py
poll every 10 min
24h / 2h / 1h windows
zion-calendar.service
later: scheduled pings
Key files: calendar_create.py Β· calendar_reminder.py
Capability Map
Calendar construct β center hub + four domains
π
CALENDAR
CREATE
natural language β event
Groq / Gemini parser
Google Calendar API write
title + datetime + tz
REMINDERS
24h, 2h, 1h before
poll every 10 minutes
zion-calendar.service
calendar_reminder.py
WhatsApp nudge text
SYNC
Google Calendar OAuth2
calendar_reminders.db
event IDs + fire times
durable reminder queue
COMMANDS
@zion remind me β¦
@zion calendar
@zion today
list / query / cancel flows
Tech Stack
Runtime Python 3 β zion.service + zion-calendar.service
Parser Groq OpenAI GPT-OSS-120B / Gemini Flash β NL β structured event
Calendar Google Calendar API β OAuth2, create + list
Reminders calendar_reminder.py β 10 min poll, 24h/2h/1h tiers
Storage calendar_reminders.db β SQLite on VM
Delivery WhatsApp Bridge POST /api/send
Key Files calendar_create.py, calendar_reminder.py