Setup & Deployment
OpenClaw + Home Assistant: The Ultimate Smart Home AI Assistant (2026 Guide)
14 min read · Updated 2026-03-10
By DoneClaw Team · We run managed OpenClaw deployments and write from hands-on production experience.
Ever wished you could just *tell* your smart home what to do? Not fiddling with apps, not memorizing voice commands—just natural conversation? That's exactly what combining OpenClaw with Home Assistant unlocks. Imagine texting your home: *"Set the living room to movie mode and remind me when the dryer is done."* No app switching. No dashboard hunting. Just one sentence, and your AI assistant handles the rest—triggering multiple devices, checking sensors, and following up when conditions change. That's what this guide covers: turning Home Assistant from a powerful but technical automation platform into a conversational AI that actually *understands* what you want.
What You'll Get
By the end of this guide, you'll have:
Let's get started.
- **OpenClaw running inside Home Assistant** — no separate server needed
- **Natural language control** — say what you want in plain English
- **Persistent context** — your assistant remembers your preferences and habits
- **AI-powered automations** — leverage LLMs for complex, multi-step tasks
- **Voice integration** — talk to your smart home through Assist
Why OpenClaw + Home Assistant?
Home Assistant is the world's largest open-source smart home platform, with support for over 2,000 device integrations. But it has a learning curve—automations require YAML, triggers, and conditions. That's where OpenClaw comes in.
OpenClaw is an AI agent that:
Together? You get a smart home that *talks back*.
- **Understands natural language** — no syntax required
- **Maintains memory** — learns your habits and preferences
- **Executes multi-step tasks** — chains actions together intelligently
- **Runs 24/7** — always available via Telegram, Discord, or WhatsApp
What Others Are Building
*"I integrated OpenClaw with Home Assistant using ha-mcp, and suddenly my smart home has a brain that persists between conversations. It knows I prefer the thermostat at 72°F when I'm working from home. It knows to turn off the outdoor lights at sunrise. It even reminds me when I've left the garage door open."* — Dan Malone, Home Assistant Community
*"OpenClaw gave my Home Assistant an AI agent with opinions. Now when I ask 'Is everything okay at home?' it doesn't just list device states—it gives me a summary with context: 'Everything's good. The living room is at 71°F, dryer finishes in 12 minutes, and I noticed you left the office window open. Want me to close it?'"*
Prerequisites
Before starting, ensure you have:
**Note:** This guide uses the community-developed OpenClaw Home Assistant add-on. It's not officially maintained by the Home Assistant team, but it's the easiest way to run OpenClaw inside HAOS.
- **Home Assistant OS** running on a supported device (Raspberry Pi 4/5, mini PC, or VM)
- **SSH access** to Home Assistant or the Home Assistant Community Store (HACS)
- **An OpenAI-compatible API key** — OpenAI, Anthropic, or Google Gemini (for the LLM)
- **Basic familiarity** with the Home Assistant interface
Step-by-Step Installation
This section walks you through installing OpenClaw as a Home Assistant add-on. The community-maintained add-on packages everything you need into one installation.
Hardware Requirements
Hardware requirements by device: Raspberry Pi 4 minimum 2GB RAM, recommended 4GB+ RAM. Raspberry Pi 5 minimum 4GB RAM, recommended 8GB RAM. x86 mini PC minimum Intel N100, recommended Intel i3+/AMD Ryzen 3+. VM/Server minimum 2 vCPU with 2GB RAM, recommended 4 vCPU with 4GB RAM.
**Important:** OpenClaw needs around 1-2GB RAM for the LLM context alone. If running other add-ons, budget accordingly.
Repository Setup
The add-on lives in a community repository. Here's how to add it:
- **Open Home Assistant** → Navigate to **Settings** → **Add-ons**
- **Access Add-on Store** → Click the **... (three dots)** in the top-right corner
- **Add Repository** → Select **Repositories** from the dropdown
- **Paste the URL**: https://github.com/techartdev/OpenClawHomeAssistant
- **Confirm** → Click **Add**, then **Close**
- **Refresh** → The Add-on Store should now show "OpenClaw Assistant" at the bottom
Installation Process
Once the repository is added:
- **Find OpenClaw Assistant** → Scroll to the bottom of the Add-on Store
- **Click Install** → This downloads and configures the add-on (2-5 minutes)
- **Review Options** → The add-on comes with sensible defaults, but check: **Start on boot** - enabled by default, **Watchdog** - enabled (auto-restarts if it crashes), **Protection mode** - may need disabled for full functionality
Configuration Deep Dive
The configuration file controls how OpenClaw connects to LLMs and Home Assistant. Here's a complete example:
Configuration options explained: "provider" is the LLM provider (openai, anthropic, google), example: openai. "model" is the model to use, example: gpt-4o or claude-3-5-sonnet. "temperature" controls creativity vs precision (0-1), example: 0.7. "max_tokens" is the maximum response length, example: 2048. "url" is the Home Assistant API endpoint, example: http://supervisor/core. "token" is a long-lived access token.
{
"llm": {
"provider": "openai",
"model": "gpt-4o",
"api_key": "sk-...",
"temperature": 0.7,
"max_tokens": 2048
},
"home_assistant": {
"url": "http://supervisor/core",
"token": "YOUR_LONG_LIVED_TOKEN"
},
"channels": {
"telegram": {
"enabled": true,
"bot_token": "BOT_TOKEN"
}
},
"system": {
"timezone": "America/New_York",
"log_level": "info"
}
}Getting Your Home Assistant Token
The token is critical—OpenClaw uses it to read sensors and call services:
- **Log into Home Assistant** with your admin account
- **Click your profile** (bottom left, your user icon)
- **Scroll to Long-Lived Access Tokens** (near the bottom)
- **Click Create Token**
- **Name it** something descriptive: "OpenClaw Integration"
- **Copy immediately** — this is the only time you'll see it!
- **Paste into your OpenClaw config**
Starting and Verifying
After configuration:
You should get a list of your Home Assistant entities. If not, check the logs.
- **Click Start** in the OpenClaw add-on card
- **Wait 30-60 seconds** — it needs to initialize the LLM connection
- **Check Logs** — look for "OpenClaw gateway started" or errors
- **Open Web Terminal** — click the "Web UI" link in the add-on Info tab
- **Test with:** What devices do you see in Home Assistant?
Connecting Messaging Channels
OpenClaw inside Home Assistant works great—but adding a messaging channel makes it *sing*. Here are your options:
Option A: Telegram (Recommended)
Create a bot via @BotFather on Telegram, get your **bot token**, and add to OpenClaw config:
{
"channels": {
"telegram": {
"enabled": true,
"bot_token": "your-telegram-bot-token"
}
}
}Option B: Discord
Create a Discord bot at discord.com/developers, get your **bot token** and **channel ID**, and add to config:
{
"channels": {
"discord": {
"enabled": true,
"bot_token": "your-discord-bot-token",
"channel_ids": ["your-channel-id"]
}
}
}Option C: WhatsApp
WhatsApp requires more setup (QR code pairing). See the official OpenClaw WhatsApp guide for detailed instructions.
Practical Use Cases
Now the fun part—what can you actually *do* with this? Here are 10 practical examples, from simple queries to complex automations.
1. Natural Language Device Control
**Instead of:** "Hey Google, turn on the living room lights to 50% and set the thermostat to 72"
**Just say:** "I'm settling in for a movie night"
OpenClaw understands context and executes multiple actions:
# OpenClaw interprets "movie night" as:
- Dim living room lights to 20%
- Close blinds
- Set thermostat to 68°F
- Turn on TV backlight (if connected)
- Disable motion-based automation in living room2. Smart Context Awareness
**Query:** "Is everything okay at home?"
OpenClaw doesn't just list device states—it provides *intelligent context*:
"Everything looks good. Main floor: 71°F, humidity 45%. The dryer finished 20 minutes ago. I noticed the garage door has been open for 45 minutes—should I close it? Also, the backyard camera detected motion 10 minutes ago (probably the neighbor's cat)."
3. Proactive Alerts
Configure OpenClaw to monitor conditions and alert you:
- **Garage door left open** → "Hey, the garage has been open for 30 minutes"
- **Unusual motion detected** → "Movement detected in the backyard—here's a snapshot"
- **Temperature threshold** → "The greenhouse hit 95°F, I'm turning on the exhaust fan"
4. Complex Automation Queries
**Instead of building complex YAML automations:**
**Just ask OpenClaw:** "Set the thermostat to 72°F on weekdays before I wake up, but only if it's colder than 60°F outside"
OpenClaw translates your intent into Home Assistant actions—and remembers your preferences for next time.
automation:
trigger:
- platform: state
entity_id: binary_sensor.workday_sensor
condition:
- condition: time
after: "06:00:00"
before: "09:00:00"
action:
- service: climate.set_temperature
target:
entity_id: climate.thermostat
data:
temperature: 725. Multi-Step Tasks
**Request:** "I'm heading to work—make sure everything's locked and adjust for my absence"
OpenClaw executes:
- Locks all doors
- Arms security system
- Adjusts thermostat to energy-saving mode
- Turns off all lights
- Activates "away" scene
6. Energy Management
**Query:** "How much energy did we use this week?"
OpenClaw pulls from your energy sensors:
"This week's consumption: 142 kWh, about $18.50 at current rates. That's 12% less than last week. Your solar panels generated 98 kWh, covering 69% of usage. Biggest consumers: HVAC (45%), water heater (22%), entertainment (15%)."
Skip 60 minutes of setup — deploy in 60 seconds
DoneClaw handles Docker, servers, security, and updates. Your OpenClaw agent is ready to chat in under a minute.
Deploy Now7. Routine Management
**Morning routine:** "Good morning!" → Weather report, today's schedule, thermostat adjustment, coffee maker start.
**Leaving home:** "I'm leaving" → Lights off, thermostat eco-mode, doors locked, security armed.
**Bedtime:** "Good night" → All doors locked, security armed, thermostat night mode, lights dimmed.
8. Device Status Queries
**Query:** "What's using the most power right now?"
"Current draw: 2.4 kW. The HVAC is pulling 1.8 kW (75%), water heater is heating (0.4 kW), and everything else combined is 0.2 kW."
9. Automation Troubleshooting
**Query:** "Why didn't the porch light turn on last night?"
OpenClaw checks logs and explains:
"The motion sensor triggered at 11:47 PM, but the automation was disabled because you put the porch on 'quiet hours' mode last Tuesday. Would you like me to re-enable it, or keep quiet hours active?"
10. Scene Creation
**Request:** "Create a 'date night' scene"
OpenClaw asks clarifying questions, then creates the automation:
"Sure! For date night, I'll set: dim dining lights to 30%, turn on accent lighting, thermostat to 70°F, and play your 'Romance' playlist. Should I also disable motion-triggered announcements?"
Voice Control with Assist
Home Assistant's **Assist** pipeline now integrates with OpenClaw. Here's how:
Now you can walk around your house and have full conversations with your smart home.
- **Enable Assist** in Home Assistant Settings → Voice
- Add the OpenClaw conversation agent
- Push to talk (or use "Hey JARVIS" if you've enabled wake words)
conversation:
agent: openclawTroubleshooting Common Issues
Here's a comprehensive guide to fixing the most common problems users encounter when running OpenClaw with Home Assistant.
Issue: "Failed to connect to Home Assistant"
**Symptoms:** OpenClaw responds with connection errors like "Failed to connect to Home Assistant", "Connection refused", or "Invalid authentication".
**Diagnosis:** Verify your Long-Lived Access Token is valid (it may have expired). Check the token has proper permissions (needs homeassistant read/write). Ensure Home Assistant URL is correct: http://supervisor/core (for HAOS).
**Fix:**
# In Home Assistant, create a new token:
# Profile → Long-Lived Access Tokens → Create Token
# Update your config with the new token and restart the add-onIssue: "LLM API errors" or "Rate limited"
**Symptoms:** OpenClaw stops responding or returns error messages like "API key invalid", "Rate limit exceeded", or "Insufficient credits".
**Fix:** Check your API key is valid and has credits remaining. Consider switching to a more cost-effective model (see our model comparison guide). Add rate limiting to prevent excessive API calls.
{
"llm": {
"provider": "google",
"model": "gemini-2.0-flash-exp",
"max_requests_per_minute": 10
}
}Issue: Device states not updating
**Symptoms:** OpenClaw reports stale sensor data, or shows "unknown" for device states.
**Diagnosis:** Home Assistant updates states periodically—OpenClaw pulls current states when needed. For real-time updates, ensure your devices report to Home Assistant frequently.
**Fix:**
# Restart the OpenClaw add-on after adding new devices
# This refreshes the entity list
# Also verify entities are properly configured in Home Assistant:
# Settings → Devices & Services → EntitiesIssue: Slow responses
**Symptoms:** Commands take 10+ seconds to respond.
**Diagnosis:** LLM API latency (most common cause), slow Home Assistant instance, or too many entities to query.
**Fix:** Use a faster LLM model: **Fastest:** Gemini 1.5 Flash, Claude 3 Haiku. **Balanced:** GPT-4o Mini, Claude 3.5 Sonnet. **Best quality:** GPT-4o, Claude 3 Opus. Run Home Assistant on faster hardware (SSD, more RAM). Reduce the number of devices/sensors OpenClaw needs to query.
{
"home_assistant": {
"include_entities": ["climate.*", "light.*", "switch.*"],
"exclude_entities": ["sensor.*_history", "binary_sensor.*_timestamp"]
}
}Issue: "Permission denied" for services
**Symptoms:** OpenClaw can't call certain Home Assistant services like lock.unlock, alarm_control_panel.arm_away, or cover.open_cover.
**Fix:** Home Assistant may restrict certain services by default. Add to your configuration.yaml:
homeassistant:
allowlist_external_dirs:
- /config
# Or create a limited API token for OpenClaw
# with only the permissions it needsIssue: OpenClaw add-on won't start
**Symptoms:** Add-on starts then immediately stops, or shows "Failed to start".
**Diagnosis:** Check the **Log** tab for specific error messages. Common causes: invalid JSON in configuration, missing required fields, or port already in use (18789).
**Fix:**
# Validate your JSON config using a JSON validator
# Common error: trailing commas are not allowed
# Check if port 18789 is in use:
# In Home Assistant terminal: netstat -tuln | grep 18789Issue: Messages not being received/sent
**Symptoms:** Telegram/Discord messages don't reach OpenClaw, or responses don't come back.
**Diagnosis:** Bot tokens may be incorrect, channel webhook URLs may be wrong, or firewall may be blocking.
**Fix:**
{
"channels": {
"telegram": {
"enabled": true,
"bot_token": "YOUR_BOT_TOKEN",
"allowed_telegram_users": ["YOUR_USER_ID"]
}
}
}Issue: Memory/context not persisting
**Symptoms:** OpenClaw doesn't remember previous conversations or preferences.
**Diagnosis:** Check if memory is enabled in config, may be running out of storage, or sessions may be getting cleared.
**Fix:**
{
"memory": {
"enabled": true,
"max_history": 100,
"persist_directory": "/config/openclaw_memory"
}
}Issue: Voice commands not working
**Symptoms:** Assist pipeline doesn't respond to voice commands.
**Fix:** Enable Assist in Home Assistant: **Settings → Voice**. Configure the conversation agent. For wake words, you'll need to set up a separate wake word detector (Porcupine, Snowboy, or the built-in one).
conversation:
agent: integration:openclawAdvanced Configuration
Once basic setup works, here are powerful options to unlock more functionality.
Custom Conversation Prompts
Fine-tune how OpenClaw behaves in your home:
{
"prompts": {
"system": "You are JARVIS, a helpful smart home assistant for a house in New York. Be concise, proactive, and always confirm dangerous actions like unlocking doors.",
"greeting": "Good morning! Everything looks good. The current temperature is {sensor.temperature}, and you have {calendar.today's_events} events today."
}
}Entity Filtering
Control which devices OpenClaw can see and control:
{
"home_assistant": {
"include_entities": [
"climate.*",
"light.*",
"switch.*",
"lock.*",
"sensor.temperature_*",
"sensor.humidity_*"
],
"exclude_entities": [
"sensor.*_history*",
"automation.*",
"scene.*"
]
}
}Safety Confirmations
Require confirmation for sensitive actions:
{
"safety": {
"require_confirmation": ["lock.unlock", "alarm.*", "cover.open_garage"],
"dangerous_actions_blocked": ["script.delete_.*", "automation.turn_off"]
}
}Security Considerations
Running an AI agent with access to your smart home has implications.
Security risks and mitigations: **Unauthorized access** — restrict OpenClaw to specific users (Telegram user IDs, Discord guilds). **API key exposure** — use environment variables, never hardcode keys. **Voice recording** — disable voice if concerned about privacy. **Automation accidents** — start with read-only access, add permissions gradually.
**Important:** The OpenClaw Home Assistant add-on is community-developed. Review the SECURITY.md before production use.
Cost Breakdown
Here's what you'll pay to run OpenClaw + Home Assistant. **Home Assistant** is free (open-source). **LLM API** costs $0.50–$30/month depending on usage. **Hardware** costs $0 (existing HA hardware) or $50–$150 for a Raspberry Pi. **Messaging** is free (Telegram/Discord/WhatsApp).
**Pro tip:** Use Gemini 1.5 Flash or Claude 3 Haiku for simple queries—80%+ cheaper than GPT-4.
Comparison: OpenClaw Inside vs. Outside Home Assistant
Comparison of running OpenClaw inside Home Assistant (as an add-on) vs. outside (standalone): **Setup complexity** — inside is easy, outside is medium. **Hardware requirements** — inside uses HA server, outside needs a separate server/VPS. **Home Assistant integration** — inside is native, outside requires MCP/JSON-RPC. **Resource usage** — inside shares HA resources, outside is independent. **Updates** — inside via HA Add-on store, outside via npm. **Flexibility** — inside is limited to HA capabilities, outside has full OpenClaw features.
**Recommendation:** For most users, the Home Assistant add-on is the easiest path. Power users who want more flexibility should consider running OpenClaw on a separate machine with the MCP Home Assistant integration.
Conclusion
You've got OpenClaw + Home Assistant running. Now what? 1. **Add more skills** — Browse ClawHub for community-built automations 2. **Explore voice** — Enable Assist for hands-free control 3. **Optimize costs** — Switch to cheaper models for simple commands 4. **Secure your setup** — Follow our security hardening guide Related Articles: OpenClaw Setup Guide for Beginners, Best AI Model for OpenClaw in 2026, OpenClaw Security Hardening Checklist, How to Connect OpenClaw to Telegram, OpenClaw Memory System Explained. *Ready to transform your smart home? Start with the add-on installation above, and don't forget to grab your Free Trial on DoneClaw if you want managed hosting with zero DevOps.*
Skip the setup? DoneClaw deploys OpenClaw for you — $29/mo with 7-day free trial, zero configuration.
Skip 60 minutes of setup — deploy in 60 seconds
DoneClaw handles Docker, servers, security, and updates. Your OpenClaw agent is ready to chat in under a minute.
Deploy NowFrequently asked questions
Do I need technical experience to use this?
Basic Home Assistant knowledge helps. If you can set up a basic automation, you can handle this. The add-on handles most complexity.
Can I use OpenClaw without Home Assistant?
Absolutely. OpenClaw works standalone with direct device integrations. See our standalone setup guide.
Which LLM works best for smart home control?
For simple commands, **Claude 3 Haiku** or **Gemini 1.5 Flash** offer the best speed-to-cost ratio. For complex multi-step reasoning, **GPT-4o** or **Claude 3.5 Sonnet** perform better.
Does this work with all Home Assistant devices?
Any device visible to Home Assistant works with OpenClaw. That includes Z-Wave, Zigbee, Matter, Tuya, ESPHome, and cloud integrations.
Can multiple household members use it?
Yes—OpenClaw supports per-user sessions. Each person gets personalized responses based on their preferences and history.
What happens if OpenClaw makes a mistake?
OpenClaw confirms dangerous actions (like unlocking doors) before executing. You can also restrict certain services entirely.
Is my data private?
OpenClaw runs locally (inside Home Assistant). LLM API calls send device states to the API provider—use local models (Ollama) if privacy is critical.
Can I use voice commands?
Yes, via Home Assistant's Assist pipeline. Push-to-talk works today; wake-word requires additional setup.