moltbot-haControl Home Assistant smart home devices, lights, scenes, and automations via moltbot-ha CLI with configurable safety confirmations.
Install via ClawdBot CLI:
clawdbot install iamvaleriofantozzi/moltbot-haControl your smart home via Home Assistant API using the moltbot-ha CLI tool.
uv tool install moltbot-ha
moltbot-ha config init
The setup will interactively ask for:
http://192.168.1.100:8123)Set your Home Assistant long-lived access token:
export HA_TOKEN="your_token_here"
To create a token:
HA_TOKEN environment variablemoltbot-ha test
moltbot-ha list
moltbot-ha list light
moltbot-ha list switch
moltbot-ha list cover
moltbot-ha state light.kitchen
moltbot-ha state sensor.temperature_living_room
# Turn on
moltbot-ha on light.living_room
moltbot-ha on switch.coffee_maker
# Turn off
moltbot-ha off light.bedroom
moltbot-ha off switch.fan
# Toggle
moltbot-ha toggle light.hallway
# Set brightness (percentage)
moltbot-ha set light.bedroom brightness_pct=50
# Set color temperature
moltbot-ha set light.office color_temp=300
# Multiple attributes
moltbot-ha set light.kitchen brightness_pct=80 color_temp=350
# Activate a scene
moltbot-ha call scene.turn_on entity_id=scene.movie_time
# Set thermostat temperature
moltbot-ha call climate.set_temperature entity_id=climate.living_room temperature=21
# Close cover (blinds, garage)
moltbot-ha call cover.close_cover entity_id=cover.garage
# With parameters
moltbot-ha call automation.trigger entity_id=automation.morning_routine
# With JSON data
moltbot-ha call script.turn_on --json '{"entity_id": "script.bedtime", "variables": {"brightness": 10}}'
moltbot-ha implements a 3-level safety system to prevent accidental actions:
Critical operations require explicit confirmation:
moltbot-ha on cover.garage
ā ļø CRITICAL ACTION REQUIRES CONFIRMATION
Action: turn_on on cover.garage
This is a critical operation that requires explicit user approval.
Ask the user to confirm, then retry with --force flag.
Example: moltbot-ha on cover.garage --force
"Opening the garage door is a critical action. Do you want to proceed?"
"Yes, open it"
moltbot-ha on cover.garage --force
ā ļø CRITICAL RULE FOR AGENTS:
--force flag without explicit user confirmation--forceSome entities can be permanently blocked in configuration:
[safety]
blocked_entities = ["switch.main_breaker", "lock.front_door"]
These cannot be controlled even with --force.
Edit ~/.config/moltbot-ha/config.toml:
[safety]
level = 3 # 0=disabled, 1=log-only, 2=confirm all writes, 3=confirm critical
critical_domains = ["lock", "alarm_control_panel", "cover"]
blocked_entities = [] # Add entities that should never be automated
allowed_entities = [] # If set, ONLY these entities are accessible (supports wildcards)
moltbot-ha on light.bedroom brightness_pct=30
moltbot-ha call cover.open_cover entity_id=cover.bedroom_blinds
moltbot-ha call climate.set_temperature entity_id=climate.bedroom temperature=21
moltbot-ha off light.* # Requires wildcard support in future
moltbot-ha call scene.turn_on entity_id=scene.goodnight
moltbot-ha call cover.close_cover entity_id=cover.all_blinds
moltbot-ha state sensor.temperature_living_room
moltbot-ha state sensor.humidity_bathroom
moltbot-ha state binary_sensor.motion_hallway
HA_URL in config matches your Home Assistant URLHA_TOKEN is set correctlymoltbot-ha list to discover correct entity IDsdomain.entity_name (e.g., light.kitchen, not Light.Kitchen)If running in Docker and can't reach Home Assistant on homeassistant.local:
http://192.168.1.100:8123Full config file (~/.config/moltbot-ha/config.toml):
[server]
url = "http://homeassistant.local:8123"
# token = "optional_here_prefer_env_var"
[safety]
level = 3
critical_domains = ["lock", "alarm_control_panel", "cover"]
blocked_entities = []
allowed_entities = []
[logging]
enabled = true
path = "~/.config/moltbot-ha/actions.log"
level = "INFO"
User: "What lights do I have?"
Agent: moltbot-ha list light
Agent: "You have these lights: light.living_room, light.kitchen, light.bedroom"
User: "Turn on the living room light"
Agent: moltbot-ha on light.living_room
Agent: "Living room light is now on"
User: "Open the garage"
Agent: moltbot-ha on cover.garage
<receives CriticalActionError>
Agent: "ā ļø Opening the garage door is a critical action. Do you want to proceed?"
User: "Yes, open it"
Agent: moltbot-ha on cover.garage --force
Agent: "Garage door is opening"
~/.config/moltbot-ha/actions.log by default*) are supported in allowed_entities and blocked_entities--json flag for programmatic parsingGenerated Mar 1, 2026
Homeowners can automate daily routines like turning on lights, adjusting thermostats, and closing blinds using CLI commands. This enables voice or chat-based control through an AI agent, enhancing convenience and energy efficiency in households.
Property managers can remotely control lights, locks, and sensors across multiple units to improve security and reduce energy costs. They can schedule actions like turning off appliances after check-outs and monitoring sensor states for maintenance alerts.
Caregivers can set up voice-activated commands to control lights, covers, and alarms, helping users with mobility issues manage their home environment independently. Safety confirmations prevent accidental critical actions, ensuring user security.
Small business owners can track sensor data like temperature and motion to optimize HVAC and lighting usage, reducing operational costs. They can automate scenes for business hours and use safety features to avoid unintended equipment changes.
Developers and hobbyists can script complex automations by combining CLI commands with other tools, creating custom workflows for events like parties or security alerts. The safety system allows experimentation without risking critical systems like garage doors.
Offer a managed service where users pay a monthly fee for automated home control, including setup, monitoring, and routine optimization. Revenue comes from subscriptions, with tiers based on the number of devices or advanced features like safety confirmations.
Provide consulting to businesses or high-end homeowners for integrating moltbot-ha with existing Home Assistant setups, including custom automation scripts and safety configurations. Revenue is generated through project-based fees and ongoing support contracts.
License the tool to property management or smart home companies as a white-label product, allowing them to rebrand it for their clients. Revenue comes from licensing fees and potential upsells for enhanced safety features or analytics.
š¬ Integration Tip
Ensure the HA_TOKEN environment variable is securely set and test connectivity with 'moltbot-ha test' before automating critical actions to avoid errors.
Control Sonos speakers (discover/status/play/volume/group).
Control Philips Hue lights/scenes via the OpenHue CLI.
Control Eight Sleep pods (status, temperature, alarms, schedules).
BluOS CLI (blu) for discovery, playback, grouping, and volume.
Control Home Assistant smart home devices, run automations, and receive webhook events. Use when controlling lights, switches, climate, scenes, scripts, or any HA entity. Supports bidirectional communication via REST API (outbound) and webhooks (inbound triggers from HA automations).
Use when integrating with Tesla's official Fleet API to read vehicle/energy device data or issue remote commands (e.g. start HVAC preconditioning, wake vehicle, charge controls). Covers onboarding (developer app registration, regions/base URLs), OAuth token flows (third-party + partner tokens, refresh rotation), required domain/public-key hosting, and using Tesla's official vehicle-command/tesla-http-proxy for signed vehicle commands.