Scheduling scope, current shell state, and planned task/calendar relationships.
Agenda is the scheduling surface in the Work section.
Agenda is an organization-scoped scheduling workspace with day, week, month, and agenda-list views for first-class agenda items. Users can organize local items in shared or personal calendars and control each calendar's visibility independently. Each organization starts with a default company calendar named Organization (Dutch: Organisatie), not the organization name.
Planning is a separate Work surface. Each organization has one company-wide Planning calendar that is always shared with every member and cannot be deleted or transferred. Assigning work on Planning projects those tasks onto that calendar.
Agenda items preserve standard calendar semantics so the product can interoperate with iCalendar feeds and external providers without later reshaping the domain model. Items support location, online meeting URLs, busy/free transparency, confirmed/tentative/cancelled status, reminders, structured recurrence, attendees, organizer metadata, and provider identifiers such as iCal UID, sequence, etag, and timezone.
Agenda will coordinate:
Connecting a Google account (per user, via OAuth at the Google Calendar integration page) mirrors the account's calendars into Agenda under the user's own calendars. The account's primary calendar is enabled automatically and imported right after connecting; other calendars can be enabled per calendar. Imported events are read-only; the existing iCalendar feed covers the other direction (loading CentraKit agenda items into Google Calendar).
syncToken sync) and can be refreshed manually with Sync now.openid, email, https://www.googleapis.com/auth/calendar.readonly.google/centra-kit-calendar). Calendar scopes: openid, email, https://www.googleapis.com/auth/calendar.readonly.pnpm env:pull so VERCEL_OIDC_TOKEN stays fresh for local Connect token requests.CRON_SECRET (at least 32 characters); the scheduled sync requires it in production. Locally it is only needed to exercise the sync by hand with curl -H "Authorization: Bearer $CRON_SECRET" https://api.localhost/api/v1/internal/google-calendar-sync.Those can be added once task and workflow scheduling semantics are stable.