Connect Home Assistant to Your AI Agent

Ask for a room adjustment or an explanation of what changed at home.

28 tools API key

Try a Home Assistant Task

Copy a prompt into your agent with the oo Skill installed. Add your page links and source notes before running it.

oo Skill Home Assistant

Explain Device Changes

Compare device history with recorded events during the selected period.

/oo Home Assistant: Review [device] between [start time] and [end time]. Explain its recorded state changes and relevant events.

Adjust a Device

Apply the requested setting to a selected light or device.

/oo Home Assistant: Turn on [selected light] at [brightness]. Check the available controls and tell me the resulting state.

Start Working with Home Assistant

  1. Install OOMOL

    Set up oo CLI and the oo Skill in your agent.

    Install OOMOL →
  2. Connect Home Assistant

    Connect a long-lived Home Assistant access token and public instance root URL.

    Connect Home Assistant →
  3. Give Your Agent a Task

    Use /oo with the pages to read, the changes to make, and where to save the result.

    Connection Guide →

Choose Your Agent

  • A publicly reachable instance and a token with the permissions needed for your tasks.
  • Hosted access excludes private or local addresses and IPv6. Stored configuration changes require an admin token and apply only to UI-editable entries; saving replaces that entry.

Home Assistant Tools

Read states, recorded history, and logbook events; control supported devices; and manage editable automation configuration with the required permissions.

States, History, and Device Context

Read entity states, history, logbook entries, and device or area registries.

Services, Events, and Scripts

Call device services, fire events, render templates, and execute script sequences.

Editable Configuration

Read, save, or delete UI-editable automation, script, and scene configurations, and validate configuration.

28 tools

Get Config

Fetch the Home Assistant instance configuration.

home_assistant.get_config

List States

List all current Home Assistant entity states.

home_assistant.list_states

Get State

Fetch the current state for one Home Assistant entity.

home_assistant.get_state

List Services

List Home Assistant service domains and their available services.

home_assistant.list_services

Call Service

Call a Home Assistant service to control entities, such as light.turn_on or switch.turn_off.

home_assistant.call_service

List Events

List Home Assistant event types currently known by the instance.

home_assistant.list_events

Fire Event

Fire one Home Assistant event with optional event data.

home_assistant.fire_event

Render Template

Render a Home Assistant template against the connected instance.

home_assistant.render_template

Get History

Fetch recorded state history for one or more Home Assistant entities over a time period, for answering questions about how a value changed.

home_assistant.get_history

Get Logbook

Fetch the Home Assistant logbook: the human-readable timeline of what happened and what triggered it, for diagnosing why something changed.

home_assistant.get_logbook

List Calendars

List the calendar entities exposed by Home Assistant.

home_assistant.list_calendars

List Calendar Events

List the events on one Home Assistant calendar between a start and end time.

home_assistant.list_calendar_events

Get Error Log

Fetch the Home Assistant error log for the current session as plain text. Home Assistant serves this only when the instance runs with file logging enabled, so it can report not found on an otherwise healthy instance.

home_assistant.get_error_log

Get Registries

List Home Assistant entity, device, area, floor, and label registries over the WebSocket API.

home_assistant.get_registries

Search Related

Find Home Assistant items related to an entity, device, area, automation, or configuration entry.

home_assistant.search_related

List Device Automations

List the triggers, conditions, and actions supported by one Home Assistant device.

home_assistant.list_device_automations

Execute Script

Run a Home Assistant script sequence containing service calls, delays, and conditions.

home_assistant.execute_script

Validate Config

Validate Home Assistant trigger, condition, and action configurations before storing an automation.

home_assistant.validate_config

Get Automation Config

Fetch the stored configuration for one Home Assistant automation. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.get_automation_config

Save Automation Config

Create or replace one Home Assistant automation. Posting to an unused id creates the automation. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.save_automation_config

Delete Automation Config

Delete one Home Assistant automation. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.delete_automation_config

Get Script Config

Fetch the stored configuration for one Home Assistant script. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.get_script_config

Save Script Config

Create or replace one Home Assistant script. Posting to an unused key creates the script. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.save_script_config

Delete Script Config

Delete one Home Assistant script. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.delete_script_config

Get Scene Config

Fetch the stored configuration for one Home Assistant scene. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.get_scene_config

Save Scene Config

Create or replace one Home Assistant scene. Posting to an unused id creates the scene. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.save_scene_config

Delete Scene Config

Delete one Home Assistant scene. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.delete_scene_config

Check Config

Ask Home Assistant to validate its own configuration files and report errors and warnings. Requires an admin access token.

home_assistant.check_config

Frequently Asked Questions

Can it explain every past device change?

Only recorded history and events are available. Your instance’s recording and retention settings determine the coverage.

Can I edit every automation?

Configuration edits require administrator access and cover entries editable in Home Assistant’s interface. Automations maintained in other files may not be available.

Connect Home Assistant

About Home Assistant ↗