I’d like to share Assist Entity Manager, a new custom integration for Home Assistant.
I built it because managing which entities are exposed to Home Assistant Assist, Amazon Alexa and Google Assistant can become pretty cumbersome once a Home Assistant installation grows.
The goal is to provide one central and easy-to-use interface for managing voice assistant exposure, aliases and common naming problems.
Features
Manage entity exposure for Home Assistant Assist
Manage Amazon Alexa exposure when available
Manage Google Assistant exposure when available
Edit entity aliases directly
Detect duplicate or conflicting spoken names
Detect potentially ambiguous entity names
Detect entities that are probably unnecessary for voice control
Group entities by device
Filter or exclude integrations
Detect exposure changes made outside Assist Entity Manager
Ignore intentional conflicts per entity
JSON backup and restore
Backup schema migration support for future versions
Automatic Assist Manager sidebar panel
Optional Lovelace card using custom:assist-entity-manager
Languages
The interface follows the Home Assistant user language:
German Home Assistant → German
All other Home Assistant languages → English fallback
Installation
Assist Entity Manager can already be installed through HACS as a custom repository.
Go to Settings → Devices & services → Add integration
Add Assist Entity Manager
The Assist Manager panel will then automatically appear in the Home Assistant sidebar.
Validation
The project currently passes:
HACS validation
Home Assistant Hassfest validation
It has also been submitted for inclusion in the default HACS repository and is currently waiting for review.
Current release
v1.0.1
This is the first public release, so feedback is very welcome — especially from users with larger Home Assistant installations or multiple voice assistants.
If you find a bug or have an idea that would make managing voice assistant entities easier, feel free to open an issue on GitHub.
I’d also be interested to hear how you currently manage Assist/Alexa/Google exposure in larger Home Assistant setups.
A very interesting integration. The only issue I see personally is that the interface is in a mixture of English and German on my US English system. But, this is a very nice project for those that want the ability to more easily add and remove entities from Assist, Google, and Alexa.
Thanks for the feedback!
I actually noticed that too after switching my own Home Assistant to English for the screenshots. There are still a few German strings left in the English UI that I missed.
I’ll fix those in the next update. Glad you like the project otherwise!
A new maintenance release of Assist Entity Manager has been published.
This release focuses on the English user interface. The remaining German labels that could still appear on systems using English have now been corrected, including several dynamically rendered elements.
The localization handling was also adjusted so these translations remain correct when parts of the AEM interface refresh.
Current version: v1.1.3
The existing entity management, orphan cleanup and Semantic Control preparation are unchanged in this release.
Thanks again to @daywalker03 for pointing out the mixed-language interface. If anyone still finds untranslated text, feel free to post a screenshot here.
You’re right about “von” — I can reproduce that one on v1.1.3 as well.
“Block” and “Expose” are already translated correctly in v1.1.3, but the counter still shows “von” because that particular text is rendered separately from the number.
I’ll correct that in the next update.
I’ll also investigate the frequent sidebar refresh you mentioned, as that shouldn’t be noticeably refreshing all the time.
I can reproduce the refresh behaviour now as well.
Leaving the AEM sidebar panel open without interacting with it, I can see it visibly refresh several times. That isn’t intended.
AEM currently listens for Home Assistant entity, device and area registry changes to keep its data up to date. I’ll investigate which background event is causing the repeated refreshes and make the refresh behaviour more selective so the interface doesn’t unnecessarily reload.
I found the reason why you can still see “Sperren” and “Freigeben” while they already appear translated on my system. There is a frontend cache/version mismatch in v1.1.3, so some systems may still load an older language bundle.
I’m fixing that together with the remaining “von” translation and the unnecessary sidebar refreshes in the next bugfix release.
@famewolf Thank you very much for your detailed feedback! Feedback like this is extremely helpful, because after working on a project for a long time, it is easy to overlook certain things yourself.
A larger Assist Entity Manager update will be released tomorrow. I have corrected all remaining German text and translation issues that I could find, and I have also added several new features.
AEM’s management capabilities have been expanded and improved in multiple areas as well. Two of the new features will initially be marked as beta, since I would like to gather more real-world experience from different Home Assistant installations first.
Thanks again for testing AEM and for taking the time to provide feedback — this kind of input really helps me improve the project step by step.
A larger update for Assist Entity Manager has just been released.
Besides a number of UI, localization and usability improvements, v1.2.0 adds several new features:
Editable entity area assignments directly in AEM
Device assignment editing for administrators, with additional safety checks
Native device-area inheritance — an entity can follow the area of its assigned device without creating a permanent entity-level area override
Improved entity details and Home Assistant navigation
Additional German and English localization fixes
Manual/YAML Alexa Smart Home support
A completely revised orphaned entity detection and cleanup workflow
Beta features
Two features are intentionally marked as BETA in this release:
Manual/YAML Alexa Smart Home detection
AEM can now detect supported self-hosted/manual Alexa Smart Home configurations using Home Assistant’s loaded configuration and Alexa exposure logic. Manual YAML configuration remains read-only — AEM does not rewrite your YAML files.
Orphaned entities
AEM can observe potential orphan candidates over time, show references and safety information, allow entities to be protected, and offer explicitly confirmed cleanup. AEM will never automatically delete an entity simply because it has been unavailable for a certain amount of time.
Both features have been tested, but I’m keeping them in beta until there is more feedback from different real-world Home Assistant installations.
v1.2.0 has passed:
HACS validation
Hassfest
Unit/regression tests
Frontend JavaScript syntax checks
Real Home Assistant testing
A huge thank you to everyone who has reported issues, tested AEM, suggested improvements or contributed code. The feedback from the community has already directly influenced several parts of this release.
If you try the new beta features, feedback — especially from unusual or more complex setups — is very welcome.