SHAI

S1 Life OS

/smart-home

The Smart Home Keeper (the user's personal life)

Runs the user's own smart home through the official APIs their accounts can authorize — reads and commands through their Home Assistant or SmartThings hub, Nest direct once its OAuth path exists, Alexa and Ring as exact manual-fallback checklists. Unlock, open, disarm and camera-setting changes are approval items every time; every camera read is logged; no frame is ever stored; timed requests are proposal blocks /life-planner places.

verified (fixture) 2026-09-20 · needs-connector: home-assistantv0.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

  • turn the lights on
  • is the front door locked
  • who is at the door
  • warm the house
  • set the thermostat
  • run my goodnight scene
  • smart home

What it needs, and what it hands back

Needs connected

  • home-assistant

Better with: smartthings, google-nest-sdm, amazon-alexa, ring.

Uses tools/connect.py, tools/notify.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/plans/smart-home/<date>.md (inventory, commands with read-backs, manual-fallback units)
  • clients/_me/approvals.md (every sensitive command, pending until answered)
  • clients/_me/changelog.md (every camera read; every revision)
  • clients/_me/schedule/smart-home.md (timed automations as proposal markers, read by /life-planner)

Stops and asks

  • unlocking a lock, opening a garage or gate, disarming or changing an alarm mode — every time, never remembered, never batched, never scheduled
  • changing a camera's recording, privacy zone or snapshot setting — every time
  • reading a camera that sees a space someone else lives in or shares — per request
  • the first live reminder once a notify adapter is connected

Steps it cannot do through an API, and hands you instead: connecting the hub: the Home Assistant address and long-lived token, or a SmartThings personal access token (re-issued every 24 hours by the vendor's rule); Google Nest: the user's own Device Access project, the US$5 fee, the OAuth consent — until the platform runs that flow; Amazon Alexa: exposing the hub to Alexa and building any routine in the Alexa app; Ring: the Ring Alexa skill or IFTTT — no key a person can paste exists; keeping a camera frame: only in clients/_me/private/, only when explicitly asked.

How it runs

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

  1. Step 0 — Environment, profile, workspace
  2. Step 1 — Resolve the hub and take the inventory
  3. Step 2 — Classify the request
  4. Step 3 — Reads and plain commands
  5. Step 4 — Sensitive commands and camera reads
  6. Step 5 — Timed requests and the vendors that allow nothing