Claude turned a Home Assistant helper into a controller for the real home

Giving Claude access to a Home Assistant instance helped build dashboards and automations, but also exposed how easily an AI assistant can gain influence over physical devices.

Giving Claude Code access to a Home Assistant instance can be useful, but it also changes the nature of the work. What begins as an assistant for writing YAML and shaping dashboards quickly becomes a system that can inspect entities, call services and alter the live configuration of a real home. According to the account published by MakeUseOf, that step was taken by passing a long-lived Home Assistant token into Claude, turning it from a planning tool into something able to act on the setup itself. Home Assistant’s own documentation confirms that authenticated clients can read entity states and invoke actions through its REST API, so the technical leap is real, even if it remains bounded by account permissions.

The appeal is obvious when the task is complicated. In the author’s case, the first project was a Frigate camera dashboard folded into a broader redesign of the Home Assistant interface. What looked like a simple dashboard job exposed a deeper fault line: an Nvidia driver mismatch had broken Frigate on the server, an integration had gone stale and video decoding was failing on the camera feed. Rather than treating the assistant as a detached code generator, the author kept the troubleshooting and the editing in one conversation, which made it easier to work through the layers of the problem and eventually decide that one camera no longer merited a place on the main dashboard.

The same pattern carried over into interface design. The author asked Claude to propose layouts for a primary dashboard based on previously used entities, then blended elements from several options into a final version. Once the design was fixed, Claude pushed the result into Home Assistant and produced both an office dashboard and a touch-friendly mobile view. The more unusual example was an electricity-monitoring dashboard that became a household cost-sharing tool, splitting rent, cleaning, water and power charges between flatmates using smart-plug data. It also tracked monthly usage, produced estimates for the end of the billing period and added payment prompts and overdue warnings tied to the rent due date.

The experiment became more ambitious when the assistant was used for automations. Instead of manually writing YAML, the author described desired behaviour in plain language and let Claude generate the logic. One routine turns off air conditioning, lighting and idle 3D printers when the phone is no longer connected to home Wi-Fi and GPS also indicates that the user is away. The process was not frictionless: the home zone in Home Assistant had to be corrected before the automation would behave properly. That is consistent with Home Assistant’s model, where automations rely on authenticated access to states and actions, but still depend on correct entity definitions and careful configuration.

The most technically interesting example involved the office air-conditioning unit. A simple on/off command was not enough, because the plug could be energised without the compressor actually starting. To solve that, the author and Claude built a verify-and-retry routine that switches the plug on, watches for a real power draw, and power-cycles the unit if the compressor does not engage. The script makes several attempts with pauses between them, and a separate fail-safe turns both air conditioners off if the system is disarmed or a device disappears for too long. That kind of workflow illustrates why Home Assistant’s distinction between state, actions and physical device behaviour matters: a dashboard can show a device as on, but that does not always mean the hardware has actually done what the automation intended.

The part the author would not recommend copying is the credential strategy. Home Assistant’s documentation says long-lived access tokens can remain valid for as long as ten years, which makes them a poor thing to paste casually into an AI conversation, especially one running outside the local machine. The official guidance also makes clear that these tokens are separate from passwords and from host access, so an API credential is not the same as SSH control. Home Assistant’s security notes advise limiting exposure, while Claude Code’s own permission controls allow users to keep approval prompts in place rather than granting broad autonomy. On that basis, the sensible approach is to use a dedicated token, restrict deployment rights, verify changes before they are pushed and revoke access once the work is complete.

In the end, the experiment was useful precisely because it exposed both the convenience and the risk. Claude helped transform unfinished ideas into working dashboards and automations, but it also showed how quickly an AI assistant can move from writing code to influencing physical devices. The lesson was not that the system broke, but that the boundary between assistance and authority is easy to cross. The author’s response was to tighten permissions, make approvals more deliberate and check the code more carefully before deployment.

Disclaimer: This content is intended for informational purposes only. Readers are advised to exercise their own judgement, conduct due diligence, or consult a qualified expert before acting on any information provided.