Help us improve
Share bugs, ideas, or general feedback.
From ha-nova
Mandatory fallback for any HA NOVA task without a dedicated subskill. Must be invoked before any raw relay write operation. Covers blueprints, energy, calendars, zones/persons/tags, destructive registry admin, system health, Apps, HACS, Zigbee/Z-Wave, and unsupported config-entry helper families.
npx claudepluginhub markusleben/ha-nova --plugin ha-novaHow this skill is triggered — by the user, by Claude, or both
Slash command
/ha-nova:fallbackThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Mandatory fallback for HA features without a dedicated skill. Three tiers:
Use when the user wants Home Assistant operations through HA NOVA (App + Relay) with local OS-backed auth.
Integrates with Home Assistant REST and WebSocket APIs to manage entity states, call services, subscribe to events, and handle authentication. Use for HA API calls and real-time integrations.
Provides best practices for Home Assistant automations, helpers, scripts, and dashboards. Guides on avoiding templates, using native constructs, and safe refactoring.
Share bugs, ideas, or general feedback.
Mandatory fallback for HA features without a dedicated skill. Three tiers:
All relay calls in this skill are experimental -- always follow Safety Guardrails below.
Only needed when executing experimental relay calls (not for Roadmap/External guidance).
Verify relay CLI: ha-nova relay health
If this fails: ha-nova setup
For every Relay-Ready call in this skill:
ha-nova relay ws --data-file <payload-file> or ha-nova relay core --method <METHOD> --path <PATH> --body-file <payload-file>--out <result-file> for large responses-d as an optional tiny diagnostic path, not the canonical contract| Feature | Status | Skill |
|---|---|---|
| Automations CRUD | Covered | read / write |
| Scripts CRUD | Covered | read / write |
| Config Review | Covered | review |
| Helpers (9 storage + 9 config-entry) | Covered | helper |
| Entity Search | Covered | entity-discovery |
| Service Calls | Covered | service-call |
| Relay Setup | Covered | onboarding |
| Dashboard / Lovelace (storage lifecycle, cards, resources) | Covered | dashboard |
| History Queries | Covered | history |
| Logbook Queries | Covered | history |
| Statistics / Trend Queries | Covered | history |
| Area / Floor CRUD | Covered | organize |
| Label CRUD / Rich label metadata | Covered | organize |
| Category CRUD / Entity category assignment | Covered | organize |
| Entity / Device metadata updates | Covered | organize |
| Blueprints | Relay-Ready | this skill |
| Zone / Person / Tag Mgmt | Relay-Ready | this skill |
| Energy Configuration | Relay-Ready | this skill |
| System Health / Repairs | Relay-Ready | this skill |
| Calendar Queries | Relay-Ready | this skill |
| Other Config-Entry Helpers | Relay-Ready | this skill |
| Entity remove / Device config-entry detach | Relay-Ready | this skill |
| Event Subscriptions | Roadmap Phase 1c | -- |
| Template / YAML Sensors | Roadmap Phase 3 | -- |
| Configuration Backups | Roadmap Phase 2 | -- |
| Apps / Supervisor | External | -- |
| HACS | External | -- |
| Zigbee / Z-Wave Config | External | -- |
1. Check Capability Map for user's request
2. If "Covered" -> STOP, use the listed skill instead
3. If "Relay-Ready":
a. FIRST: Search web using the provided Search query — understand current payload schema before any call
b. Show experimental relay call examples informed by search results
c. Preview full payload before any write — never guess fields
d. Execute only after user confirms preview
4. If "Roadmap":
a. Explain which phase and what blocks it
b. Search web for manual workaround or alternative approach
c. Suggest HA UI as interim solution
5. If "External":
a. Explain why it's outside HA NOVA scope
b. Search web for current best practice (how to do it directly in HA)
c. Point to HA UI path
Web search is mandatory for Relay-Ready writes. The relay call examples below cover common read patterns, but write payloads change across HA versions. Always verify the current schema via web search before constructing a write payload.
List and import automation/script blueprints from the community or custom URLs.
Search: home assistant blueprint import automation api 2026
Experimental relay calls (no skill guardrails):
ha-nova relay ws --data-file <payload-file>
Risks: Imported blueprints execute when instantiated. Review blueprint source before import.
Manage location zones, person entities, and NFC/QR tags.
Search: home assistant zone person tag management api websocket 2026
Experimental relay calls (no skill guardrails):
ha-nova relay ws --data-file <payload-file>
Risks: Zone changes affect presence detection automations. Person changes affect device trackers.
Configure energy dashboard sources (grid, solar, gas, water, individual devices).
Search: home assistant energy dashboard configuration api preferences 2026
Experimental relay calls (no skill guardrails):
ha-nova relay ws --data-file <payload-file>
Risks: Field-level list replacement — omitted top-level keys (energy_sources, device_consumption, device_consumption_water) are preserved, but each provided key replaces its entire list. To add one source: read existing via energy/get_prefs, append to list, save back full list. Requires admin auth.
Check system health status and view deprecation/repair issues.
Search: home assistant system health repairs issues api 2026
Experimental relay calls (no skill guardrails):
ha-nova relay ws --data-file <payload-file>
Risks: None (read-only). Note: system_health/info uses a subscription pattern -- call via relay returns first response only.
List calendars and query upcoming events.
Search: home assistant calendar api rest events query 2026
Experimental relay calls (no skill guardrails):
ha-nova relay core --method GET --path /api/calendars --jq .data.body
ha-nova relay core --method GET --path <calendar-events-path> --jq .data.body
Use <calendar-events-path> for the full /api/calendars/<calendar_id>?start=...&end=... query string.
Risks: None (read-only).
Handle unsupported config-entry helper types that are not yet owned by ha-nova:helper.
Owned by ha-nova:helper now:
utility_meterderivativeintegrationmin_maxthresholdtodstatisticsgrouphistory_statsStill handled here:
templatetrendrandomfiltergeneric_thermostatswitch_as_xgeneric_hygrostatSearch: home assistant config entry flow helper template trend random filter generic_thermostat api 2026
Supported types in this fallback section: template, trend, random, filter, generic_thermostat, switch_as_x, generic_hygrostat
Experimental relay calls (no skill guardrails):
# Start create/reconfigure flow
ha-nova relay core --method POST --path /api/config/config_entries/flow --body-file <payload-file>
# Submit create/reconfigure step
ha-nova relay core --method POST --path /api/config/config_entries/flow/{flow_id} --body-file <payload-file>
# Start options flow for update when supported
ha-nova relay core --method POST --path /api/config/config_entries/options/flow --body-file <payload-file>
# Submit options step
ha-nova relay core --method POST --path /api/config/config_entries/options/flow/{flow_id} --body-file <payload-file>
# Delete unsupported config-entry helper by entry_id
ha-nova relay core --method DELETE --path /api/config/config_entries/entry/{entry_id}
Risks: Multi-step flows are complex. Each step returns the next step's schema. Update support can be domain- and version-specific. Delete requires correct entry_id resolution first. Prefer HA UI for these.
Destructive registry admin that is still outside ha-nova:organize v1:
Search: home assistant entity registry remove device remove config entry websocket api 2026
Experimental relay calls (no skill guardrails):
# Remove entity
ha-nova relay ws --data-file <payload-file>
# Remove config entry from device
ha-nova relay ws --data-file <payload-file>
Risks: Entity remove is not the same as a reversible rename/disable. Device detach depends on integration support and can sever the current device/config-entry relationship. Preview impact first.
Real-time event streams for state changes, automation triggers, and custom events.
Search: home assistant event subscription state_changed real time api 2026
Status: Coming in Phase 1c. Blocked by: No SSE streaming endpoint in Relay.
Workaround: Poll entity state periodically via GET /api/states/{entity_id}.
Define custom sensors using Jinja2 templates, REST endpoints, or shell commands.
Search: home assistant template sensor yaml configuration 2026
Status: Coming in Phase 3. Blocked by: No filesystem access in Relay (sensors defined in YAML files). Workaround: Create via HA UI: Settings > Devices & Services > Helpers (for template helpers) or add YAML manually.
Create and restore full configuration backups.
Search: home assistant backup restore api supervisor 2026
Status: Coming in Phase 2. Blocked by: No backup endpoint in Relay. Workaround: Use HA UI: Settings > System > Backups. Or use Supervisor API if HA OS.
Supervisor API is separate from HA Core API. Requires different auth and endpoints.
Search: home assistant supervisor app add-on install manage api 2026
Alternative: HA UI: Settings > Apps. Or ha CLI on HA OS.
Third-party integration with no stable public API.
Search: home assistant hacs install custom integration repository 2026
Alternative: HACS sidebar panel in HA UI.
Device pairing is hardware-specific, requires direct coordinator access (ZHA, Z2M, Z-Wave JS).
Search: home assistant zigbee2mqtt zha device pairing configuration 2026
Alternative: HA UI: Settings > Devices & Services > [Zigbee/Z-Wave integration].
Rules for all experimental relay calls in this skill:
lovelace/config/save): MUST read full config, merge changes in memory, preview merged result, then write. There is no partial update endpoint — the entire config is replaced.energy/save_prefs): omitted top-level keys are preserved, but each provided key replaces its entire list. To add one item, read the existing list first, append, then save back the full list.confirm:<token>)skills/ha-nova/SKILL.md → Claim-Evidence Binding)| Type | Behavior | Safe pattern | Examples |
|---|---|---|---|
| Full-document overwrite | Entire config replaced | Read → modify → save full document | lovelace/config/save |
| Field-level list replace | Omitted keys preserved, provided keys fully replaced | Read existing list → append/modify → save full list | energy/save_prefs |
| Merge/patch | Only provided fields updated | Send only changed fields | config/area_registry/update, config/entity_registry/update |
| Delete | Irreversible for areas/zones/labels; soft-delete (30 days) for entities | Always search/related first, tokenized confirmation | config/area_registry/delete, config/entity_registry/remove |
No HA WS endpoint has optimistic locking (no ETags, no version numbers). Last writer wins silently.
lovelace/config/save with a guessed or partial payload — this overwrites the ENTIRE dashboard config, destroying all other views and cardsenergy/save_prefs with a single source — this replaces the entire energy_sources list, deleting all existing sourcesrelay ws/relay core for unfamiliar operationsExperimental calls may fail with unfamiliar errors. General rules:
400/VALIDATION_ERROR: payload schema wrong -- search web for current WS type schema404/NOT_FOUND: endpoint may not exist in this HA version -- check HA release notes502/504: relay connection issue -- retry once, then route to ha-nova:onboarding