From 7c55603942fa8e5f23891b157055ba1d625888ce Mon Sep 17 00:00:00 2001 From: Home Assistant Version Control Date: Fri, 2 Oct 2026 16:02:35 +0000 Subject: [PATCH] AGENTS.md, zigbee2mqtt/state.json --- AGENTS.md | 29 +++++++++++++++++++++++------ zigbee2mqtt/state.json | 14 +++++++------- 2 files changed, 30 insertions(+), 13 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 24e16682..e5220920 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -187,14 +187,29 @@ is missing, the profile is reduced — say so instead of working around it. ### 3. hab CLI (Home Assistant Builder) -A CLI designed for AI agents, pre-authenticated via the Supervisor token. It is +A CLI designed for AI agents. In this V2 app, use **`hab_run`**: its sidecar supplies +Supervisor credentials, while the agent shell does not inherit them. It is the primary path for dashboards, areas/floors/zones/labels, helpers, blueprints, backups, people, categories, to-do lists, notifications, integrations, repairs, events and templates — the registry-level work that has no YAML file behind it. -`hab` prints human-readable text by default; use `--json` for structured output. -Run `hab --help` or `hab --help` for full usage. +Prefer `hab_run(args=[...])` over quoted command strings. The gateway uses JSON. +Start with `args=["schema"]` for compact discovery; use +`args=["schema","--index","--search","dashboard patch","--limit","10"]` to +find commands, following `next_offset` while `complete` is false. Request the exact +command's native compact schema; payload/output contracts and schema IDs are retained. +Load one `guide` topic when useful. Use specific filters and +`--brief`/`--count`/`--limit` when supported. Schema side-effect labels and `--plan` +are advisory, not proof of permission, a live diff or complete validation. +For dashboard fields, prefer `dashboard patch`: preview the diff with `--plan`, +then apply with its unchanged `base_revision` as `--if-match`. Inspect `status`, +`saved`, `verified` (or `error.details.result`); conflicts require a fresh review. +Stored-JSON verification does not prove rendering; HA has no atomic conditional save. +Read before changing and read back afterwards. Inspect nested `success`, `error`, +`partial_result` and warnings. A timed-out mutation needs state inspection before +retrying. Large-output artifacts contain the CLI envelope: configuration is under +its `data`, not the whole envelope. Never reconstruct from a truncated preview. ``` @@ -245,6 +260,7 @@ Other: esphome Manage ESPHome devices event Manage Home Assistant events integration Manage integrations + marketplace Manage Marketplace repositories network Manage network settings notification Manage persistent notifications repairs Manage Home Assistant repairs @@ -277,9 +293,10 @@ supplies credentials; the agent shell intentionally does not inherit them. Do not run setup or create credential files. If the current profile does not expose the tool, report that limitation and use available read-only MCP tools. -Zigbee device management, and the only tool here that **cascades a rename** -across automations, scripts, scenes and every Lovelace dashboard atomically. -`hab` renames one thing and leaves the references dangling. Also handles device +Zigbee device management, including **cascade rename** workflows across +automations, scripts, scenes and Lovelace dashboards; inspect the dry run and +template-reference limitations. `hab entity rename` changes a friendly name, +not an entity ID. Also handles device inspection across ZHA/Z2M/HA, stale-device cleanup, and mesh visualization. Dry-run is the default for renames — always preview before `--apply`. The diff --git a/zigbee2mqtt/state.json b/zigbee2mqtt/state.json index aaa71556..3b862c69 100644 --- a/zigbee2mqtt/state.json +++ b/zigbee2mqtt/state.json @@ -27,7 +27,7 @@ "led_brightness": 100, "countdown_to_turn_off": 0, "countdown_to_turn_on": 0, - "power": 1.9, + "power": 2.2, "current": 0.09, "energy": 51.49, "power_factor": 0.16, @@ -45,7 +45,7 @@ "state": "ON", "led_brightness": 100, "countdown_to_turn_off": 0, - "voltage": 119.6, + "voltage": 119.5, "countdown_to_turn_on": 0, "energy": 97.23, "power_factor": 0.2, @@ -95,13 +95,13 @@ "led_brightness": 100, "countdown_to_turn_off": 0, "countdown_to_turn_on": 0, - "voltage": 119.8, + "voltage": 120.3, "energy": 96.55, "state": "ON", - "power": 44.5, + "power": 46.8, "current": 0.52, "ac_frequency": 60, - "power_factor": 0.77, + "power_factor": 0.79, "update": { "state": "idle", "installed_version": 268513381, @@ -171,7 +171,7 @@ }, "0xa4c1380d0679ffff": { "battery": 100, - "temperature": 27.1, + "temperature": 27, "temperature_units": "celsius", "temperature_calibration": 0, "update": { @@ -224,7 +224,7 @@ }, "0xb40e060fffe717c5": { "battery": 100, - "occupancy": true, + "occupancy": false, "tamper": false, "battery_low": false, "linkquality": 145,