# Home Assistant plugin Shows which Home Assistant updates are waiting and how old its last backup is, and installs Core, OS and add-on updates, each only after a fresh backup is confirmed. Each update goes on the timeline. Steward never holds a credential that can act on your house. It reads with a read-only token, and acts only through a webhook whose automation can take a backup or install an allowed update. ## Setting it up 1. In Home Assistant, turn on automatic backups (Settings → System → Backups). 2. Make a local-only user in the read-only group (`system-read-only`) and a long-lived token for it. 3. On Steward's Home Assistant page, choose Connect, enter Home Assistant's local address and the token, and save. 4. Copy the automation the connection page shows into Home Assistant (Settings → Automations → Create → Edit in YAML). Steward reads whether it is there and on. Steward must reach Home Assistant by a local address, because the webhook only answers local requests. Home Assistant bans an address after a few refused requests, so Steward stops asking after one refusal until you save the connection or choose Try again. ## Installing an update Install asks once, then Steward: 1. Asks for a backup and waits until Home Assistant's last successful backup time moves. If it doesn't, nothing is installed. 2. Asks for the update and follows it until the new version is installed, or until a deadline: 20 minutes for an add-on, 30 for Core, 45 for the OS. One runs at a time, and it carries on if Steward restarts. Firmware and custom integrations are left to Home Assistant, and Supervisor updates itself. ## Metrics Under source `homeassistant`, resource `homeassistant`, read every 5 minutes: `is_up`, `updates_waiting` and `backup_age_hours`. An alert rule on `backup_age_hours` above 26 warns when a daily backup has been missed; a rule's no-data warning covers Home Assistant going quiet.