While you can configure most of Home Assistant directly from the user interface under Configuration, some parts need you to edit
configuration.yaml. This file contains integrations to be loaded along with their configurations. Throughout the documentation you will find snippets that you can add to your configuration file to enable specific functionality.
The easiest option to edit
configuration.yaml is to use the Visual Studio Code add-on. VS Code offers live syntax checking and auto-fill of various Home Assistant entities (if unavailable on your system, use File Editor add-on instead).
If you prefer to use a file editor on your computer, use the Samba add-on to access the files as a network share.
The path to your configuration directory can be found in the Home Assistant frontend by going to Configuration -> Settings -> Info
Right under the version you are running, you will find what path Home Assistant has loaded the configuration from.
If you use Home Assistant Container, you can find
configuration.yaml in the config folder that you mounted in your container.
If you use Home Assistant Operating System, you can find
configuration.yaml in the
/config folder of the installation.
If you use Home Assistant Core, you can find
configuration.yaml in the config folder passed to the
hass command (default is
Most integrations in Home Assistant that do not interact with devices or services can reload changes made to their configuration in
configuration.yaml. To do this, go to Configuration -> Server Control and scroll down to the YAML configuration reloading section (alternative, hit “c” in the UI and search for it).
If you can’t see your integration listed there, you will need to restart Home Assistant for changes to take effect.
Test any changes to your configuration files from the command line check out the common tasks for operating system, supervised, container, core for how to do that. Configuration changes can also be tested using the UI by navigating to Configuration -> Server Control and clicking “Check Configuration”.
The preferred way of migrating to a new system is by making a backup.
If you run the container or core installation methods, you will need to manually make a backup of your configuration folder. Be aware that some of the files you need start with
., which is hidden by default from both
ls (in SSH), in Windows Explorer, and macOS Finder. You’ll need to ensure that you’re viewing all files before you copy them.