WTH Are all new entities exposed to Assist by default?

I have over 6000 entities in my Home-Assistant installation, each time I add a new device or re-pair one, all entities are exposed to Assist automatically. Also meaning a lot of information gets sent to assist when I use it.

I would like to have an easy configuration switch that disables automatically exposing entities to Assist so that I can manually expose only the ones pertinent to have in the voice assistant.

I know I can disable them in the configuration, but I shouldn’t need to revisit this on a monthly basis to keep the Assist entities reasonably sized.

This is something that was also requested in the past:

Is this what you want?

This is exactly what I want but for Assist!

This seems particularly important given the guidance to limit the number of exposed entities, especially when using an LLM. Best practices with Assist - Home Assistant

1 Like

Here is an example of how fast it can make Assist unusable. I recently added my 48 port Mikrotik switch to Home-Assistant.

Well, Home-Assistant went ahead and exposed all the ports and interfaces (69 in total) to Assist by default:

While I love having those in a “Network” dashboard and have the possibility to enable/disable switch ports in the interface, it is definitely not something I will interact with by voice command and would hate for a misinterpreted command to turn off an important switch port.

Agreed, just went and cleaned up over 200 entities that did not need to be exposed to my LLM

Same, it’s especially annoying when you add a new integration and don’t check the exposed entities in Assist afterwards, sometimes it can mess up even standard speech processing engine when there are duplicate names (Google Cast integration did this with my TV recently).
Not to mention this messes up LLM pipelines, maybe even costing people more due to HA using more tokens.