Analyze Calendar Usage
Generate calendar profile from event data
5
Apply event classification from Calendar Agent Rules. Then follow
Calendar Profile Guidelines to generate and save the calendar profile to
Service Profiles.
6
For the top 3-5 collaborators (people user meets with regularly):
Run Resolve Person Entity for each with:
- name: their display name
- email: their email address
- source: "Calendar: Regular meetings"
- relationship context: meeting frequency and type (1:1, team, etc.)
The resolver handles checking for existing entries and merging.
Skip one-off attendees.
You MUST use a todo list to complete these steps in order. Never move on to one step if you haven't completed the previous step. If you have multiple CONSECUTIVE read steps in a row, read them all at once (in parallel). Otherwise, do not read a file until you reach that step.
Add all steps to your todo list now and begin executing.
## Steps
1. [Read Connection Profile Format]: Read the documentation in: `skills/sauna/[skill_id]/references/context.profile.format.md` (Canonical profile structure)
2. [Read Calendar Raw Data]: Read the file at `session/calendar-raw.json` into context
3. [Read Calendar Agent Rules]: Read the documentation in: `skills/sauna/[skill_id]/references/calendar.google.rule.md` (Event classification and collaborator scoring rules)
4. [Read Calendar Profile Guidelines]: Read the documentation in: `skills/sauna/[skill_id]/references/calendar.google.profile.md` (How to generate the profile)
5. Apply event classification from `skills/sauna/[skill_id]/references/calendar.google.rule.md`. Then follow `skills/sauna/[skill_id]/references/calendar.google.profile.md` to generate and save the calendar profile to `documents/user/services/*.md`.
6. For the top 3-5 collaborators (people user meets with regularly):
Run `skills/sauna/[skill_id]/references/recipes/context.entity.resolve_person.md` for each with:
- name: their display name
- email: their email address
- source: "Calendar: Regular meetings"
- relationship context: meeting frequency and type (1:1, team, etc.)
The resolver handles checking for existing entries and merging.
Skip one-off attendees.