Cómo funciona
Qué pasa entre tu palabra y la respuesta.
Una palabra de activación en el dispositivo, voz a texto mientras hablas, vía rápida o modelo local, skills, memoria y una voz propia, todo en hardware que es tuyo.

El pipeline de voz: un turno hablado
Elige un turno real y pulsa play: cada barra es una etapa de ese turno, en el momento en que ocurrió de verdad.
Este turno: primer sonido 2,2 s después de la última palabra.
- sonido
- pensando
- vía rápida
- llamada a una skill
- fin del habla detectado
- el silencio y un modelo de turno pequeño coinciden
- primer sonido
- 2,2 s después de la última palabra
Después del turno
- El micrófono se reabre: responde sin más, sin palabra de activación.
- Si hablas mientras responde, se calla y te escucha.
- Más tarde, en reposo, reflexiona en segundo plano: ajusta su ánimo y recuerda hechos nuevos.
Los tiempos salen de la traza de cada turno capturado, en una máquina de escritorio capaz. En los benchmarks del propio proyecto en una máquina de clase hub, una conversación empieza a hablar unos 1,5 s después de que terminas, y una orden conocida en 600 a 800 ms.
- Hablas
- La palabra de activación y la detección de voz funcionan en el dispositivo; tu voz se captura hasta que se detecta una pausa. se captura en el dispositivo hasta que haces una pausa
- Te entiende
- Con un micrófono en vivo el texto se va formando mientras hablas. Estos turnos se enviaron como grabaciones, así que aquí corre justo después de la última palabra. la transcripción está lista en cuanto terminas
- Decide
- Una orden conocida se salta el modelo; lo demás va a él. La sección de enrutado, más abajo, muestra la decisión con tus propias frases. una orden conocida se ejecuta al momento; si no, la toma el modelo
- Piensa
- El prompt se arma con la persona, el ánimo actual, los hechos sobre ti, tus notas y los últimos turnos. Después las palabras salen según se generan. arma el prompt y luego escribe la respuesta
- Actúa
- El modelo ve una lista corta de las skills que encajan con la petición. Si llama a una, el nodo comprueba la política de esa skill, ejecuta la llamada (varias a la vez si hace falta) y responde con la respuesta propia de la skill o con una segunda pasada del modelo que lee el resultado. solo cuando el modelo decide llamar a una skill
- Habla
- En cuanto una frase está completa se convierte en voz, mientras el modelo sigue escribiendo la siguiente. frase a frase
- La oyes
- La reproducción empieza con la primera frase; las demás se encolan detrás sin pausas. la reproducción empieza con la primera frase
- fin del habla detectado
- el silencio y un modelo de turno pequeño coinciden
¿Vía rápida o modelo?
Toda petición busca primero una vía rápida: una orden conocida se resuelve al momento, sin ningún modelo. Todo lo demás va al modelo de lenguaje, que ve las skills que encajan y decide si usa alguna o simplemente responde. Prueba una frase y mira por dónde va.
¿Es una orden conocida?
Sí: Lo hace Home Assistant: apagar la luz de la cocina. En un nodo real el dispositivo responde al momento
Las plantillas de órdenes se comprueban contra un corpus de prueba: una frase que no es una orden nunca coincidió con ninguna.
Memoria: lo que Domia recuerda
Cinco capas, todas guardadas en el nodo. Todas pueden llegar al prompt: los turnos recientes siempre, los hechos y el conocimiento cuando son relevantes, los episodios y el modelo de usuario una vez por sesión. La reflexión escribe hechos, episodios y modelo de usuario cuando está en reposo.
Todo se queda en el nodo. Nada se persiste en otro nodo; el contexto viaja dentro de una petición delegada.
- Turnos recientes
- Una ventana deslizante con los últimos intercambios de la sesión actual. Siempre va en el prompt, así que una continuación se resuelve sin repetirte.
- Hechos
- Los extrae una pasada de reflexión en segundo plano, después del turno, nunca la propia respuesta. Se recuperan por relevancia con lo que acabas de decir.
- Base de conocimiento
- Notas que redactas en la consola o a través de la API. Se buscan por relevancia y se añaden al prompt cuando encajan con la petición.
- Episodios
- Un resumen breve que la reflexión escribe al terminar una sesión. Los más recientes se cargan en el prompt una vez por sesión, no se buscan en cada turno.
- Modelo de usuario
- Un retrato breve de ti: intereses, tendencias y preferencias. La reflexión lo actualiza entre sesiones.
Despliegues: un dispositivo, un hub o una malla
Todos los nodos Domia funcionan con el mismo software; una plantilla de la consola decide si es una compañera independiente, un hub completo para toda una propiedad o uno de varios hubs que se reparten el trabajo. Cada flecha de abajo se queda dentro de tu red.
Un hub escucha a través de un altavoz en cada habitación.
- Nodo Domia
- El mismo software que cualquier otro nodo. Su rol sale de la plantilla que aplicas en la consola, no de una compilación distinta.
- Identidad
- Una identidad tiene su propia voz, persona y memoria.
- Identidad delegada
- La persona y el contexto de Milo viajan dentro de la petición; nada se guarda en el hub B.
- Palabra de activación
- La palabra de activación se detecta antes que todo lo demás.
- Voz a texto
- En streaming, en este nodo, uno de ocho motores.
- Enrutado
- Una orden conocida va por la vía rápida y se ejecuta sin el modelo. Lo demás va al modelo, que recibe las skills que encajan y decide si llama a una o responde.
- Modelo de lenguaje
- Un modelo local servido en tu propio hardware; nada sale de tu red.
- Texto a voz
- Uno de seis motores, una voz por identidad.
- Memoria
- Memoria por identidad guardada en este nodo. Nada se guarda en un par.
- Micrófono
- Vale cualquier micrófono integrado o USB; el audio se queda en la máquina.
- Altavoz
- La respuesta se sintetiza aquí y suena en el mismo dispositivo.
- Home Assistant Voice PE
- Hardware de serie con su firmware de fábrica; no hay que cambiar nada.
- Sala de navegador
- Una sala a la que pueden unirse navegadores y apps.
- Tu propia placa
- Construida sobre el protocolo de referencia de Domia, para satélites que haces tú.
- Satélite Wyoming
- Funciona con cualquier satélite que hable Wyoming.
- Par de clase hub
- Un par con margen; los vecinos pueden tomar prestado su modelo de lenguaje.
- Una máquina más modesta
- La voz a texto y el texto a voz funcionan a bordo; su modelo de lenguaje funciona en el hub B.
- Cualquier dispositivo, mismo comportamiento
- Cada tipo de satélite se trata igual una vez conectado; cambia de hardware sin más.
- Las apps también pueden hablarle
- Las apps que hablan la API OpenAI Realtime se conectan directamente al nodo y pasan por las mismas etapas.
Satélites: un micrófono en cada habitación
Cuatro tipos de satélite, un mismo comportamiento: el dispositivo escucha y reproduce, y todo lo demás ocurre en tu nodo Domia.
Elige:
Qué hace este dispositivo
Home Assistant Voice PE
el nodo se conecta al dispositivo
En el dispositivo
- palabra de activación
- micrófono
- altavoz
- LEDs
Entre el dispositivo y el nodo
- audio del micrófono
- audio de la respuesta en el formato que anuncia el dispositivo
- anuncios
Conviene saber
- El modo de seguimiento funciona con el firmware de fábrica y viene activado por defecto.
- El dispositivo solo reproduce el formato que anuncia, así que el nodo convierte cada respuesta para él.
- El nodo detecta cuándo un dispositivo deja de responder.
- Cualquiera de estos dispositivos, mismo comportamiento
- Cada tipo de satélite se trata igual: el dispositivo escucha y reproduce, el nodo hace el resto.
Skills: lo que puede hacer
Herramientas integradas, skills listas para Home Assistant y Music Assistant, cualquier servidor MCP que añadas y rutinas que las encadenan.
Desactiva un grupo para ver qué cambia:
El rayo marca lo que la vía rápida responde sin el modelo. «Preguntar antes» marca las pocas acciones que piden confirmación antes de ejecutarse; puedes cambiarlo en cada skill.
Qué viene activado. Las herramientas integradas funcionan desde el primer turno. Home Assistant, Music Assistant y otros servidores MCP empiezan a funcionar cuando los conectas en la consola. Cada uno se puede desactivar por identidad.
- No se muestra al modelo
Los motores detrás de un turno
Cada etapa es un motor intercambiable que se elige en la configuración. Estos son los que Domia incluye o con los que habla.
Funciona con
- Home Assistant
- Music Assistant
- MCP servers
- ESPHome
- Wyoming
- LiveKit
Los motores de voz funcionan dentro del nodo o en un servidor local a su lado, y el modelo de lenguaje funciona en un servidor local.
Cómo ponerla en marcha en tu hardwareLo que se queda en tu red
Míralo en el código
Todo lo que ves en esta página es código abierto. Léelo, ejecútalo, cámbialo.