WebChat (UI del WebSocket del Gateway)
Estado: la UI de chat SwiftUI de macOS/iOS se comunica directamente con el WebSocket del Gateway.
Qué es
- Una UI de chat nativa para el gateway (sin navegador embebido ni servidor estático local).
- Usa las mismas sesiones y reglas de enrutamiento que otros canales.
- Enrutamiento determinista: las respuestas siempre vuelven a WebChat.
Inicio rápido
- Inicia el gateway.
- Abre la UI de WebChat (app macOS/iOS) o la pestaña de chat del Control UI.
- Asegúrate de que la auth del gateway esté configurada (requerida por defecto, incluso en loopback).
Cómo funciona (comportamiento)
- La UI se conecta al WebSocket del Gateway y usa
chat.history,chat.sendychat.inject. chat.historytiene límites de tamaño para estabilidad: el Gateway puede truncar campos de texto largos, omitir metadata pesada y reemplazar entradas sobredimensionadas con[chat.history omitted: message too large].chat.injectagrega una nota del asistente directamente a la transcripción y la transmite a la UI (sin ejecución del agente).- Las ejecuciones abortadas pueden mantener la salida parcial del asistente visible en la UI.
- El Gateway persiste el texto parcial del asistente abortado en el historial de transcripción cuando existe salida en buffer, y marca esas entradas con metadata de aborto.
- El historial siempre se obtiene del gateway (sin observación de archivos locales).
- Si el gateway es inaccesible, WebChat es de solo lectura.
Panel de herramientas de agentes en Control UI
- El panel de herramientas de
/agentsdel Control UI obtiene un catálogo en runtime víatools.catalogy etiqueta cada herramienta comocoreoplugin:<id>(másoptionalpara herramientas opcionales de plugin). - Si
tools.catalogno está disponible, el panel recurre a una lista estática integrada. - El panel edita la configuración de perfil y sobreescrituras, pero el acceso efectivo en runtime sigue la precedencia de
políticas (
allow/deny, sobreescrituras por agente y por proveedor/canal).
Uso remoto
- El modo remoto tuneliza el WebSocket del gateway sobre SSH/Tailscale.
- No necesitas ejecutar un servidor WebChat separado.
Referencia de configuración (WebChat)
Configuración completa: Configuración
Opciones de canal:
- No hay bloque
webchat.*dedicado. WebChat usa el endpoint del gateway + los ajustes de auth indicados abajo.
Opciones globales relacionadas:
gateway.port,gateway.bind: host/puerto del WebSocket.gateway.auth.mode,gateway.auth.token,gateway.auth.password: auth del WebSocket (token/contraseña).gateway.auth.mode: "trusted-proxy": auth por reverse-proxy para clientes de navegador (consulta Auth de proxy de confianza).gateway.remote.url,gateway.remote.token,gateway.remote.password: destino del gateway remoto.session.*: almacenamiento de sesión y valores por defecto de clave principal.