用途:通过 Home Assistant REST API 控制家中设备,包括灯光、开关、气候、场景和脚本,并查询实体状态。
主要能力:脚本封装了 ping 检测、读取实体状态、调用服务以及按域列出实体。例如: node scripts/ha.mjs ping node scripts/ha.mjs state light.living_room node scripts/ha.mjs call light turn_on '{"entity_id":"light.living_room","brightness_pct":50}' node scripts/ha.mjs list --domain light 底层接口为 GET /api/、GET /api/states/<entity_id>、POST /api/services/<domain>/<service>。
使用方式:需一次性配置 HA 基础 URL,并把长期访问令牌写入本地密钥文件。 mkdir -p /root/.openclaw/workspace/secrets chmod 700 /root/.openclaw/workspace/secrets 令牌文件路径:/root/.openclaw/workspace/secrets/ha_token,权限设为 600。可用环境变量 HA_URL、HA_TOKEN 覆盖默认值。设备清单位于 skills/homeassistant/references/inventory-nice.md 与 inventory.md,可用 node scripts/ha-refresh-context.mjs 刷新。
适用场景:需要以自然语言或指令方式读取与调整家中设备状态的自动化助手流程。
限制与安全:建议为本助手单独创建 Home Assistant 用户并使用其长期访问令牌;令牌不得提交到 git,应存放在被忽略的 secrets 目录。若 HA 暴露于公网,需启用 HTTPS、强认证,并尽量配合 IP 限制或 VPN。官方文档见 https://developers.home-assistant.io/docs/api/rest/。其他更细的限制资料中暂未提供。