I moved ALL my helpers from WebUI to YAML like a few weeks ago.
That’s because I don’t trust the WebUI – I cannot track what it does in behind. It’s for a particular reason:
I have a device added via integration
I’ve created a “helper” via WebUI (switch as x - mentioned earlier)
I’ve removed the device
MY helper disappeared. Vanished. It wasn’t disabled, it wasn’t “broken” → it just VANISHED → without any info, warning, whatsoever.
I recovered a backup, did it again, confirmed it’s repeatable “problem”.
Actually, I call it a “bug”, other people (on discord) called it a “feature” (with the logic: you remove the device, u don’t need the helper anymore: I disagree).
I hate when stuff like that happens → with git version control of my config files I can clearly see what happens and why. Nothing disappears without my knowledge.
Thanks for replying. I never meant to mess GUI helpers with yaml written ones, @DvdNwk gave me the prspective I needed. It just seemed very strange to me that such an important feature of HA like helpers isn’t manageable outside GUI like almost everything else. You can’t even get a list of them through REST API
In yaml maybe this is the case but in core.* files are very well manageable, in terms of enabling, disabling, ignoring, entities, devices, integrations, even changing entity or device names. Also, from API, I can get and manage all kind of logs. Never tried to delete integration or device though outside GUI.
It’s strange a bit, that most of things can be yaml made/edited/duplicated and with helper you don’t have this option. However, within existing helper you can already partially edit it in yamls… Therefore, making multiple similar helpers in GUI is rather time consuming and has big potential for mistakes.
Having in mind, that integrations are going away from yamls, it would be nice to have yaml support for helpers in GUI.
Can you post an image where you’re looking. There’s one for me on all helpers that are built in the UI. Anything built in yaml will have a disabled delete button.
Automations that you edit in UI are available in automations.yaml file. You can later modify this file and reload automations in HA and have direct sync.
I am kinda sure that you can modify automations in UI and yaml.
You cannot modify automations that are included via yaml files. You can only modify automations that reside in the specifically named automations.yaml.
Thanks to clarify this. But if I create an automation in the UI, I can later open automations.yaml file and continue modifying it there. This is not possible with helpers today.
So what happens if the same group name with different entries is created in the GUI by one person and yaml by another? Yaml cannot see what the GUI has done and the GUI cannot see what the UI did.
A major part of the confusion is why the same data is being handled by 2 different processes that have no knowledge that the other exists?
I have no idea what you’re asking. The only difference between the includes this way is that you cannot modify the yaml automations in the UI. You can still see them and look at traces, you just can’t edit them via the UI.
If there are 2 people modifying groups, one by GUI and the other in YAML, you can create a data collision. For example, you could have each person creating a group FOO, but there is no way to tell the users that there are duplicate groups