Where are helpers stored when created in the gui?

Sorry, meanwhile i had found out that I could use the terminal and went into the directory but I could not even find such files mentioned above. No helper file.
core.config_entries is about
sun integration
tuya integration and
radio browser but nothing about my helpers

What is the current file where I can find more about the helper or at least the riemann sum integral needed for all the energy calculations ?

I have looked into a few of these files and I could identify what they were for but none about my helpers so far.
thanks

Yes, it’s not a helper, it’s in config_entries.

1 Like

Sorry, it was my fault.
I had opened the file and tried to scroll down with the touchpad but it did not move. Therefore I had assumed to be at the end of the file and nothing more to be find.

but here scrolling down with the cursor or rather searching backwards with ctrl + q I found my helper integral

image

and was able to edit it (carefully).

thanks, that had solved my problems and will maybe solve those of others at the same topic.

It is also important to know cause the helper only asks once about left or righ edge integration while in this file editor you can change easily afterwards. For a Riemann sum integral a lot of parameters have to be adjusted and I hated it in the past cause I had to delete the helper first and better relaunch ha after that to rebuild a new helper with all the parameters.

therefore editing here is much easier and in case something goes wrong I still have my 2 backups in the google cloud and on the NAS.

thanks a lot for your quick support !

Hi, I am working my own app based on a docker container HA Core. How can you tell that an object/record is a helper in core.config_entries file? I mean to have a process that willi search and get a list of helpers for example

Hi! Is it possible to have a script to write helpers and include it in configuration.yaml just like we do with automations ‘automation: !include automations.yaml’?

HA automation/script cannot “write a helper”.

If you want a “written” helper, you have to create it “manually” in YAML (configuration.yml or Splitting up the configuration - Home Assistant).

Once you write your helper config, u cannot edit it via GUI (you can only see it exists on the helpers list).

The exception is Change device type of a switch – it’s not a “real helper”, can only by created via GUI, but there is a working “old way”:

Thank you for your reply. I wrote script when I meant just a yaml file. Sorry, my bad
I want to create/edit helpers from my own editor in my app. Does this require a restart of HA or reload for example helpers.yaml assuming there is helper: !include helpers.yaml line in configuration.yaml?

Helper is not an integration, so you cannot have those in your yaml using helper: !include …

A helper is a way to define certain types of entities using the UI (and therefore not yaml). The same entities can be created in yaml, often with more options than the GUI will allow. But depending on the type of entity, in the place in the configuration is at the corresponding integration for that type.

Editing GUI built helpers by modifying hidden files is unsupported and at your own risk. Don’t expect us to be able to bail you out if Home Assistant won’t start. So the advice is: if you need features not a available in the GUI, then delete the helper in the GUI. Then create the specific entity in yaml in the configuration at place it belongs, for instance under sensors.

How to create entities using yaml is always described in the documentation, also for the entities you find in the helpers section. Yaml based entities need to be reloaded, either using the developer tools or restarting HA.

No problem; there is a set of concepts/terminology in HA that one learns with time and practice; it can be confusing at first :+1:

Honestly, I never know. Some changes require just “Developer Tools → YAML → Restart → Quick Reload”. Other changes require whole HA restart. I never know which :stuck_out_tongue: Most of the time I just restart the whole HA, just to be sure. I wish it was better documented…

I disagree. When you create your “entity definitions” in YAML → they do appear on the Helpers page in the WebUI. Therefore I conclude, those are Helpers, even if created via YAML.

Now you got me intrigued. Do they really? And if so, which ones? I moved my threshold sensors, before they weren’t there. Also various other types I have, in yaml, like template sensors, aren’t there. How could they? The GUI does not edit the yaml, so you cannot edit any parameters in the GUI for the entities you created in yaml.

All of them. Not all of them, see below_. They just aren’t managed by WebUI → you cannot edit/remove them via WebUI, you have to modify them just as you defined them, via YAML.

You may be right about input helpers, timers I don’t know because I never made yaml ones. My groups are old style groups, so they probably don’t count. But other examples I gave, like template sensors, and some other like integral, utility meter, definitely don’t see my yaml ones in the list. Only the ones I created in the GUI. Especially the recently added helpers. So it is definitely not all of them. A lot of other types I cannot tell, because I made all of them in the GUI and did not create yaml ones.

1 Like

yep, i guess they don’t.

but to be honest: the whole “Helpers” name is just a “I don’t know how to name it better” kind of a name for me :stuck_out_tongue: anything could be there, nothing could be there. it’s a term like “items” or “tools”, etc. As a programmer, I’m always trying to avoid such names, I consider them as “you have probably not thought enough” for this name, or “the whole concept needs rethinking” kind of name :wink:

Ah, I’ve checked now, you’re right: template sensors (defined in YAML) don’t appear on the Helpers page (while they do when created via WebUI).

That’s just sloppiness and disregard towards YAML – IMHO – judging from the community responses about YAML in general :wink:

My post above was in response to the misconception that helpers (a name for a list of useful things, as you say) are in the config as a helper integration (a “helpers:” section) or that the GUI created ones appeared in yaml. Both are not the case.

Funny though, you have many non editable helper entities and figured they were all in the GUI, I have zero non-editable ones and figured none of the yaml ones were listed.

I would have been so happy if the helpers had been hybrid, like automations, scripts and scenes. Then you could pick either way of editing depending on the situation. And you could have your GUI editing history in github, like I now have for automations and scripts.

2 Likes

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:

  1. I have a device added via integration
  2. I’ve created a “helper” via WebUI (switch as x - mentioned earlier)
  3. I’ve removed the device
  4. 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.

Yes, please <3

3 Likes

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

Thanks again, you were very helpful :pray:

Well, “everyting else” also gets less manageable outside the user interface, such as integrations. Less and less of them can be configured in yaml.

1 Like

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.