homeassistant-cli
Advanced Home Assistant control using the official hass-cli tool. Features auto-completion, event monitoring, history queries, and rich output formatting. Alternative to the curl-based homeassistant skill - choose this if you want a more interactive CLI experience with better discovery and formatting.
Best use case
homeassistant-cli is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Advanced Home Assistant control using the official hass-cli tool. Features auto-completion, event monitoring, history queries, and rich output formatting. Alternative to the curl-based homeassistant skill - choose this if you want a more interactive CLI experience with better discovery and formatting.
Teams using homeassistant-cli should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/homeassistant-cli/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How homeassistant-cli Compares
| Feature / Agent | homeassistant-cli | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Advanced Home Assistant control using the official hass-cli tool. Features auto-completion, event monitoring, history queries, and rich output formatting. Alternative to the curl-based homeassistant skill - choose this if you want a more interactive CLI experience with better discovery and formatting.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Home Assistant CLI Control your Home Assistant smart home devices using the **official hass-cli tool** — a feature-rich command-line interface with auto-completion, event monitoring, and flexible output formatting. ## Why This Skill vs. `homeassistant` (curl-based)? **Choose `homeassistant-cli` if you want:** - ✅ **Auto-completion** for entity IDs and services (bash/zsh/fish) - ✅ **Event monitoring** in real-time (`hass-cli event watch`) - ✅ **History queries** (`hass-cli state history`) - ✅ **Better output formatting** (table/YAML/JSON with one flag) - ✅ **Interactive exploration** (easier to discover entities and services) - ✅ **Comprehensive documentation** with examples and troubleshooting **Choose `homeassistant` (curl) if you want:** - ✅ Zero dependencies (curl + jq are pre-installed) - ✅ Lightweight and fast - ✅ Better for scripting and automation - ✅ No Python requirements Both work great — this skill is for users who interact frequently with Home Assistant and want a richer CLI experience. ## Setup Before using hass-cli, configure authentication: 1. Generate a long-lived access token in Home Assistant: - Navigate to your profile: `https://your-homeassistant:8123/profile` - Scroll to "Long-Lived Access Tokens" - Create a new token 2. Set environment variables (add to shell config for persistence): ```bash export HASS_SERVER=https://homeassistant.local:8123 export HASS_TOKEN=<your-token> ``` 3. Test connection: ```bash hass-cli info ``` ## Common Commands ### List Entities ```bash # List all entities hass-cli state list # Filter by domain hass-cli state list light hass-cli state list switch hass-cli state list sensor # Get specific entity state hass-cli state get light.living_room ``` ### Control Devices ```bash # Turn on/off lights hass-cli service call light.turn_on --arguments entity_id=light.living_room hass-cli service call light.turn_off --arguments entity_id=light.living_room # Set brightness (0-255) hass-cli service call light.turn_on --arguments entity_id=light.bedroom,brightness=128 # Turn on/off switches hass-cli service call switch.turn_on --arguments entity_id=switch.fan hass-cli service call switch.turn_off --arguments entity_id=switch.fan # Toggle any device hass-cli service call homeassistant.toggle --arguments entity_id=light.kitchen ``` ### List and Call Services ```bash # List all services hass-cli service list # Filter services hass-cli service list light hass-cli service list 'home.*toggle' # Get service details (YAML output) hass-cli -o yaml service list homeassistant.toggle ``` ### Work with Scenes ```bash # List scenes hass-cli state list scene # Activate a scene hass-cli service call scene.turn_on --arguments entity_id=scene.movie_time ``` ### Monitor Events ```bash # Watch all events hass-cli event watch # Watch specific event type hass-cli event watch state_changed hass-cli event watch automation_triggered ``` ### History ```bash # Get state history (last 50 minutes) hass-cli state history --since 50m light.living_room # Multiple entities hass-cli state history --since 1h light.living_room switch.fan ``` ## Output Formats Control output with `-o` or `--output`: ```bash # Table (default) hass-cli state list # YAML hass-cli -o yaml state get light.living_room # JSON hass-cli -o json state list light # No headers (for scripting) hass-cli --no-headers state list ``` ## Tips - **Entity discovery**: Use `hass-cli state list` to find entity IDs - **Service discovery**: Use `hass-cli service list` to find available services - **Auto-completion**: See [references/autocomplete.md](references/autocomplete.md) for shell setup - **Troubleshooting**: See [references/troubleshooting.md](references/troubleshooting.md) ## Examples See [references/examples.md](references/examples.md) for common automation patterns and use cases.
Related Skills
homeassistant-n8n-agent
Bridge OpenClaw with your n8n instance for Home Assistant automation.
homeassistant-assist
Control Home Assistant smart home devices using the Assist (Conversation) API.
homeassistant
Control Home Assistant - smart plugs, lights, scenes, automations.
glitch-homeassistant
Control smart home devices via Home Assistant API.
homeassistant-skill
Control Home Assistant devices and automations via REST API. 25 entity domains including lights, climate, locks.
paylock
Non-custodial SOL escrow for AI agent deals.
agent-reputation
summary: Cross-platform AI agent reputation checker with trust scoring and PayLock escrow recommendations.
Telecom Agent Skill
Turn your AI Agent into a Telecom Operator. Bulk calling, ChatOps, and Field Monitoring.
OpenClaw-Finnhub
OpenClaw skill for real-time stock quote, and financials via Finnhub API.
```markdown
# OpenClaw-Last.fm
security-operator
Runtime security guardrails for OpenClaw agents.
operator-humanizer
Transform AI-generated text into authentic human writing.