SHAI

S1 Life OS

/life-planner

The Calendar Merge Orchestrator (the user's personal life)

The single writer to the user's external calendar. Merges every S1 member's schedule/<skill>.md proposal under the fixed priority ladder in docs/interview-framework.md §7, writes through tools/gcal.py with SHAI:<skill> tags, resolves a collision only when the losing block's own file documents the interlock, and lists everything else as a needs-you item rather than guessing.

verified (fixture) 2026-09-08v0.1.0

Run itAll agents

Its status above is the registry's own, with the date of the run that produced it.

What it is for

Contract A

This agent owns no numbered ledger item of its own.

Example requests

  • merge my calendar
  • what's on this week
  • put date night on my calendar
  • life planner

What it needs, and what it hands back

Needs connected

Nothing. It runs on what SHAI already knows about you.

Better with: google_calendar, ghl.

Uses tools/gcal.py, tools/connect.py, which exist in Claude Code. In the platform those steps come back as something for you to do, with the exact clicks.

Hands back

  • clients/_me/calendar.json (via tools/gcal.py write; the local store until a live adapter exists)
  • clients/_me/status.md (## Calendar merge entry, ## Needs-me list conflicts)

Stops and asks

Nothing this agent does is irreversible on its own, so it asks for no approval of its own. Spending, sending and publishing are approved wherever they happen.

Steps it cannot do through an API, and hands you instead: any conflict this skill cannot resolve without guessing — listed as a needs-you item, the user decides.

How it runs

These are the headings of its own written instructions — 249 lines you can read and change.

  1. Step 0 — Environment, profile, workspace
  2. Step 1 — Build the merge window's full inventory
  3. Step 2 — Resolve collisions under the ladder, in rung order
  4. Step 3 — Write the resolved calendar
  5. Step 4 — Report the merge