homeassistant-cli

🏡 官方智能家居 CLI 控制中枢

基于 Home Assistant 官方 CLI 工具的智能家居控制指南,提供自动补全、实时监控等丰富交互体验,帮助用户高效管理全屋智能设备。

收藏
4.9k
安装
1.6k
版本
v1.0.0
CLS 安全性认证2026-05-03
点击查看完整报告 >

使用说明

核心用法

homeassistant-cli 是一个文档型 Skill,旨在指导用户使用官方 hass-cli 工具控制 Home Assistant 智能家居系统。用户需先通过 pip 或 Homebrew 安装 hass-cli,配置 HASS_SERVERHASS_TOKEN 环境变量后即可使用。核心功能包括:设备状态查询与控制(灯光、开关、传感器等)、服务调用与场景激活、实时事件监控(event watch)、历史数据查询(state history),以及灵活的输出格式切换(table/YAML/JSON)。Skill 提供了完整的命令示例和自动补全配置指南,支持 bash/zsh/fish 等主流 shell。

显著优点

1. 交互体验丰富:相比 curl 方案,提供自动补全、实时事件流、历史查询等高级功能,大幅降低命令行操作门槛。
2. 输出格式灵活:一键切换 table/YAML/JSON 格式,兼顾人工阅读与脚本自动化需求。

3. 官方生态背书:基于 Home Assistant 官方 CLI 工具,社区活跃、文档完善、持续维护。

4. 零代码风险:纯文档型 Skill,不执行任何系统命令或网络请求,完全由用户自主控制操作。

5. 安装便捷:支持 pip 和 Homebrew 双渠道安装,跨平台兼容性好。

潜在缺点与局限性

1. 依赖外部工具:必须预先安装 hass-cli 和 Python 环境,相比纯 curl 方案增加了依赖负担。
2. 配置门槛存在:需要用户手动生成长期访问令牌并配置环境变量,对新手有一定学习成本。

3. 网络环境要求:依赖与 Home Assistant 服务器的稳定连接,内网穿透或 HTTPS 证书配置可能带来额外复杂度。

4. 功能边界清晰:作为文档型 Skill,本身不执行任何自动化操作,所有控制需用户手动发起。

适合的目标群体

  • 智能家居重度用户:频繁与 Home Assistant 交互,需要高效命令行工具进行批量设备管理。
  • 技术爱好者与极客:偏好 CLI 工作流,希望将智能家居控制集成到终端日常操作中。
  • 自动化脚本开发者:需要结构化输出(JSON/YAML)进行下游处理的工程师。
  • Home Assistant 管理员:负责多设备维护、故障排查、历史数据分析的系统管理者。

使用风险

1. 令牌安全管理HASS_TOKEN 具有长期访问权限,若硬编码在脚本或泄露可能导致未授权访问,建议严格使用环境变量并设置文件权限。
2. 网络传输安全:默认依赖 HTTPS 加密,但用户若配置不当或使用自签名证书可能引入中间人攻击风险。

3. 依赖项维护hass-cli 版本更新可能与 Home Assistant 服务器版本产生兼容性波动,需关注官方更新日志。

4. 误操作风险:命令行操作直接生效,批量控制设备时需谨慎确认实体 ID,避免意外触发场景。

安全解读

核心用法

homeassistant-cli 是 Home Assistant 官方生态维护的 hass-cli 命令行工具的 Skill 封装,面向频繁与智能家居交互的高级用户。核心工作流包括:通过环境变量配置 HASS_SERVERHASS_TOKEN 完成认证,使用 hass-cli state list 发现实体,hass-cli service call 控制设备,配合 event watch 实时监控状态变化,state history 回溯数据历史。

显著优点

交互体验领先:原生支持 bash/zsh/fish 自动补全,大幅降低实体 ID 和服务名称的记忆负担;-o yaml/json/table 一键切换输出格式,兼顾人机可读与脚本处理;event watch 实时流式监控填补 curl 方案的能力空白。

发现能力出色:无需预先知晓实体命名规则,通过 state list <domain>service list 即可交互式探索全屋设备能力,降低 Home Assistant 新用户的上手门槛。

官方生态背书:基于 Home Assistant Ecosystem 组织维护的正经项目,文档完备、社区活跃、MIT 开源许可,长期可持续性有保障。

潜在缺点与局限

依赖负担:必须预装 Python 环境并通过 pip/brew 安装 hass-cli 二进制,相比纯 curl 方案显著增重;Windows 用户可能遭遇 Python 路径配置困扰。

性能与脚本化权衡:富格式输出和交互特性带来额外开销,批量自动化场景下不如 curl + jq 的组合轻量直接;部分高级功能(如历史查询)依赖 Home Assistant recorder 组件启用状态。

网络准入要求:必须能够直连 Home Assistant 实例的 8123 端口,反向代理或复杂认证场景需额外配置。

适合人群

  • 每日多次手动控制智能家居的活跃用户
  • 偏好交互式 Shell 体验、厌恶记忆长串实体 ID 的开发者
  • 需要实时监控设备状态或排查自动化故障的进阶玩家
  • 已部署 Python 环境、不介意额外依赖的 macOS/Linux 用户

常规风险

  • 令牌泄露HASS_TOKEN 环境变量可能被其他进程读取,建议配合 shell 配置文件的权限管控(600)或使用密钥管理工具
  • MITM 攻击:若使用自签名证书或未加密的 HTTP 连接,局域网流量可能被截获;务必启用 HTTPS 并验证证书
  • 误操作影响service call 直接作用于物理设备(门锁、警报器),生产环境执行前建议在开发实例验证命令语义
  • 历史数据隐私state history 查询可能暴露家庭成员行为模式,共享设备需注意数据脱敏

homeassistant-cli 内容

references文件夹
手动下载zip · 6.7 kB
autocomplete.mdtext/markdown
请选择文件