I've used Home Assistant Voice (Preview Edition) and ESP32-S3-BOX-3 alongside Home Assistant 's Voice capabilities - by default there are phrases included, and you can add your own, but you have to be precise - "turn off the lights" and "turn off the lamp" are two separate phrases (or a variable one, which can be expanded by a locally (or not) hosted LLM.
Voice detection is pretty good, especially on the Voice, even from across a room. Not 100% (especially with higher pitched voices), but definitely high and usable. The main downside is the fact that you either need to host a local LLM, which isn't cheap, or predefine all phrases you want.