Custom component to enable an external conversation agent

I’m in the processing about building a custom Conversation Agent. Within Home Assistant, today, that requires building a custom component. As I rarely work in Python and never in Home Assistant, I found a nodered_conversation component that was close to what I wanted and modified it.

In short, it creates a Conversation Agent with an HTTP endpoint. You get a JSON structure with the data from HA and you return a JSON structure with what you want the voice assistant to say. It supports the new continuing conversation feature…which also means, it requires 2025.4 or later.

Repository for those interested.

Note, I consider this a quick hack. I’m hoping, at some point, that something like this is a built in feature. I don’t plan on growing this code. For me, it was a means to an end and I thought others might be interested in it as well.

1 Like

Awesome, just what I’m looking for. I’ve been trying to write my own custom component to do just this. I happened to come across yours while trying to learn how to write my own.

1 Like

Thanks for putting this together, it’s exactly what I needed. I also hope this will be built in at some point, but am glad to have this example!