Detalle del Skill

home-assistant-manager

Comprehensive Home Assistant configuration, deployment, validation, and dashboard management.

CoincidenciaDirectaRevisado para home assistant
Fuentekomal-skynet/claude-skill-homeassistantFuente externa
Instalaciones reportadas218Solo señal de popularidad

Revisar antes de usar

La revisión automática comprueba relevancia, no seguridad ni respaldo. Lee las instrucciones de la fuente antes de usar este Skill.

Vista previa guardada

SKILL.md

Este extracto es una copia guardada durante la revisión. La fuente externa contiene la versión completa y actual.

---
name: home-assistant-manager
description: Manage Home Assistant configuration safely and fast — edit and deploy YAML (automations, blueprints, scripts, scenes, templates, MQTT), validate with ha core check, deploy via git or rapid scp, reload-vs-restart correctly, verify changes from logs, traces and entity state, and build Lovelace dashboards. Use for any Home Assistant config, automation, template, or dashboard work over SSH/hass-cli/MCP.
---

# Home Assistant Manager

Operate a remote Home Assistant instance precisely: make a change, get it live, prove it
worked. Optimize for the fewest safe round-trips.

## Assumptions
- The repo you're editing **is** the HA `/config` dir, git-connected to the instance.
  Edits aren't live until pulled on the instance.
- `[email protected]` in examples is a placeholder. Resolve the real user/host once
  (project CLAUDE.md, `~/.ssh/config`, or ask) and if it isn't recorded in the project
  CLAUDE.md yet, add it so future sessions skip this step.
- Access via one or more of: `hass-cli` (REST), SSH `ha`, or an MCP server (see below).
- Only edit `.yaml`/`.yml`/`.md`. Never read/write `.env` or `secrets.yaml`; use `!secret`.

## Remote access — pick the right tool
- **SSH `ha`** — always works, needs no local env. Use for `ha core check|restart|logs|info`.
- **`hass-cli`** (REST) — state/service calls, but needs `HASS_SERVER`/`HASS_TOKEN` in the
  shell *before* the session starts. If they're unset, hass-cli falls back to the wrong
  host (localhost) and errors — don't retry, check `[ -n "$HASS_TOKEN" ]` once, then use
  SSH or MCP instead.
- **MCP** (preferred when available) — first-class tools for live state/control, no env
  juggling. Official `mcp_server` integration (HA core ≥2025.2) or community `ha-mcp`
  (richer, 80+ tools). Use it instead of shelling out when present.

## The deploy pipeline (the one canonical flow)
Changes are not live until step 4.
1. Edit YAML locally.
2. Validate: `ssh [email protected] "ha core check"` (slow, ~30-60s — see "when to
   skip" below).
3. Commit + push: `git add … && git commit -m "…" && git push`.
4. **Make it live:** `ssh [email protected] "cd /config && git pull"`.
5. Apply: **reload** if possible, else **restart** (table below).
6. Verify (next section).

**Rapid iteration:** skip git and `scp` straight to the instance, then reload — good for
dashboards and tight test loops. Commit to git only once stable.
`scp automations.yaml [email protected]:/config/` → reload.

**When to skip `ha core check`:** it parses the whole config and is slow. For an isolated
YAML edit you're confident in, a domain reload surfaces errors faster and the logs tell
you immediately. Always run it before a *restart* or for `configuration.yaml` changes.

## Reload vs restart
| Change | Action |
|--------|--------|
| automations, scripts, scenes, groups, template entities, themes | **reload** the domain (`hass-cli service call automation.reload`, etc.) |
| `configuration.yaml` core, new integrations, platform sensors (min/max), MQTT sensor/binary_sensor platforms, dashboard registry (`lovelace_dashboards`) | **restart** (`ssh … "ha core restart"`, ~30s) |

Prefer reload. Never restart without a passing `ha core check`. Before risky changes
(core `configuration.yaml` surgery, removing an integration), snapshot first — it's cheap:
`ssh [email protected] "ha backups new --name pre-<change>"`.

## Verify — don't assume it worked
1. Reload/restart the right domain.
2. For automations, **trigger manually** for instant feedback:
   `hass-cli service call automation.trigger --arguments entity_id=automation.<id>`
   (or call the service via MCP). This **bypasses `conditions` by default** — it proves the
   actions, not the gate. To test conditions too, pass `skip_condition: false` or exercise
   the real trigger, then read the automation's trace in the UI.
3. Read the logs filtered to your change:
   `ssh [email protected] "ha core logs 
Leer la fuente completa en GitHub (abre una página externa)
Contexto

Trabajo relacionado