task icon Task

Analyze Calendar Usage

Generate calendar profile from event data

5

Apply event classification from sliceCalendar Agent Rules. Then follow sliceCalendar Profile Guidelines to generate and save the calendar profile to stateService Profiles.

6

For the top 3-5 collaborators (people user meets with regularly):
Run taskResolve 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.