skills$openclaw/homeassistant
dbhurley5.2k

by dbhurley

homeassistant – OpenClaw Skill

homeassistant is an OpenClaw Skills integration for coding workflows. Control Home Assistant - smart plugs, lights, scenes, automations.

5.2k stars3.4k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026coding

Skill Snapshot

namehomeassistant
descriptionControl Home Assistant - smart plugs, lights, scenes, automations. OpenClaw Skills integration.
ownerdbhurley
repositorydbhurley/homeassistant
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @dbhurley/homeassistant
last updatedFeb 7, 2026

Maintainer

dbhurley

dbhurley

Maintains homeassistant in the OpenClaw Skills directory.

View GitHub profile
File Explorer
2 files
.
_meta.json
281 B
SKILL.md
2.3 KB
SKILL.md

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 switches
  • light.* — Lights (Hue, LIFX, etc.)
  • scene.* — Pre-configured scenes
  • automation.* — Automations
  • climate.* — Thermostats
  • cover.* — Blinds, garage doors
  • media_player.* — TVs, speakers
  • sensor.* — 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
README.md

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.