5.2k★by dbhurley
homeassistant – OpenClaw Skill
homeassistant is an OpenClaw Skills integration for coding workflows. Control Home Assistant - smart plugs, lights, scenes, automations.
Skill Snapshot
| name | homeassistant |
| description | Control Home Assistant - smart plugs, lights, scenes, automations. OpenClaw Skills integration. |
| owner | dbhurley |
| repository | dbhurley/homeassistant |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @dbhurley/homeassistant |
| last updated | Feb 7, 2026 |
Maintainer

name: homeassistant description: Control Home Assistant - smart plugs, lights, scenes, automations. homepage: https://www.home-assistant.io/ metadata: {"clawdis":{"emoji":"🏠","requires":{"bins":["curl"],"env":["HA_TOKEN"]},"primaryEnv":"HA_TOKEN"}}
Home Assistant
Control smart home devices via Home Assistant API.
Setup
Set environment variables:
HA_URL: Your Home Assistant URL (e.g.,http://192.168.1.100:8123)HA_TOKEN: Long-lived access token (create in HA → Profile → Long-Lived Access Tokens)
Quick Commands
List entities by domain
curl -s "$HA_URL/api/states" -H "Authorization: Bearer $HA_TOKEN" | \
jq -r '.[] | select(.entity_id | startswith("switch.")) | .entity_id'
Turn on/off
# Turn on
curl -s -X POST "$HA_URL/api/services/switch/turn_on" \
-H "Authorization: Bearer $HA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"entity_id": "switch.office_lamp"}'
# Turn off
curl -s -X POST "$HA_URL/api/services/switch/turn_off" \
-H "Authorization: Bearer $HA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"entity_id": "switch.office_lamp"}'
Control lights
# Turn on with brightness
curl -s -X POST "$HA_URL/api/services/light/turn_on" \
-H "Authorization: Bearer $HA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"entity_id": "light.living_room", "brightness_pct": 80}'
Trigger scene
curl -s -X POST "$HA_URL/api/services/scene/turn_on" \
-H "Authorization: Bearer $HA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"entity_id": "scene.movie_time"}'
Call any service
curl -s -X POST "$HA_URL/api/services/{domain}/{service}" \
-H "Authorization: Bearer $HA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"entity_id": "...", ...}'
Get entity state
curl -s "$HA_URL/api/states/{entity_id}" -H "Authorization: Bearer $HA_TOKEN"
Entity Domains
switch.*— Smart plugs, generic switcheslight.*— Lights (Hue, LIFX, etc.)scene.*— Pre-configured scenesautomation.*— Automationsclimate.*— Thermostatscover.*— Blinds, garage doorsmedia_player.*— TVs, speakerssensor.*— Temperature, humidity, etc.
Notes
- API returns JSON by default
- Long-lived tokens don't expire — store securely
- Test entity IDs with the list command first
No README available.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install homeassistant?
Run openclaw add @dbhurley/homeassistant in your terminal. This installs homeassistant into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/dbhurley/homeassistant. Review commits and README documentation before installing.
