Panel Web y Referencia de la API REST¶
Bruce ofrece una interfaz web de gestión intuitiva y una API REST completa para administración, auditoría e interacción directa.
1. Visión General del Panel Web¶
El panel está disponible en http://localhost:8080 (o http://<ip-del-servidor>:9090 con Docker Compose).
- Recursos Integrados: Todo el frontend (HTML, CSS, JS, iconos) se compila dentro del binario de Go con el paquete
embed. No se requiere servidor web externo. - JavaScript Vanilla: Ligero, sin frameworks pesados, con carga prácticamente instantánea.
2. Pestañas del Panel¶
1. Chat¶
Interfaz conversacional integrada: - Conversa con Bruce directamente desde tu navegador web. - Crea múltiples hilos de conversación independientes. - Soporte para markdown completo, listas, tablas y resaltado de sintaxis en bloques de código.
2. Sessions (Sesiones)¶
Inspecciona todas las conversaciones activas en cualquier conector: - Filtra sesiones por plataforma (Discord, WhatsApp, Telegram, Web). - Revisa el historial de mensajes con marcas de tiempo. - Comprueba si existe un resumen de contexto activo para cada sesión. - Elimina sesiones (borra en cascada los mensajes y tareas asociadas).
3. Schedules (Programaciones)¶
Administra tareas proactivas y monitoreos en segundo plano:
- Distintivos Visuales: Diferenciación entre modos Cron, Watch y Message directo.
- Cuenta Regresiva en Tiempo Real: Visualiza el tiempo exacto hasta la próxima ejecución.
- Disparo Manual: Botón Run Now para encolar una prueba de forma inmediata.
- Controles: Pausar, reanudar, editar o eliminar cualquier tarea.
- Editor Modal: Crea tareas con selección intuitiva de zona horaria y modo de ejecución.
4. Artifacts (Artefactos)¶
Galería de todos los documentos HTML generados por Bruce: - Tarjetas con títulos, fechas y tamaños de archivo. - Vista Previa Interactiva: Interactúa con el artefacto directamente en un iframe aislado. - Modos Adaptables: Comprueba el diseño en formatos Escritorio, Tableta y Móvil. - Copia el enlace compartible o descarga el archivo HTML.
5. Logs (Registros)¶
Registro de auditoría en tiempo real: - Filtra por ejecuciones de herramientas, envíos a conectores o errores. - Inspecciona las entradas y salidas JSON de cada herramienta invocada.
6. Settings (Ajustes)¶
Editor dinámico de configuración en caliente:
- Cambia ui.default_system_prompt sin editar ficheros de configuración.
- Alterna llm.provider entre claude, gemini y openai.
- Actualiza tokens de API y credenciales con campos protegidos.
- Configura la zona horaria de la aplicación (app.timezone).
3. Monitor de Colas Asynq (/monitor)¶
Bruce integra Asynqmon en http://localhost:8080/monitor:
- Visibilidad en tiempo real de las colas de Redis (default, low, etc.).
- Inspección de tareas activas, en espera, programadas, en reintento y archivadas.
- Cancelación manual, eliminación o reintento de tareas fallidas.
4. Referencia de Endpoints de la API REST¶
| Método | Endpoint | Descripción |
|---|---|---|
GET |
/health |
Estado de salud y tiempo en activo en segundos. |
GET |
/api/v1/sessions |
Lista las sesiones con metadatos de canal. |
GET |
/api/v1/sessions/{id} |
Obtiene una sesión concreta por ID. |
DELETE |
/api/v1/sessions/{id} |
Elimina una sesión y sus mensajes asociados. |
GET |
/api/v1/chat/sessions |
Lista sesiones creadas en el Web Chat. |
POST |
/api/v1/chat/sessions |
Crea una nueva sesión en el Web Chat. |
POST |
/api/v1/chat |
Envía un mensaje a Bruce mediante la API de chat. |
GET |
/api/v1/proactive-tasks |
Lista las tareas programadas y monitoreos. |
POST |
/api/v1/proactive-tasks |
Crea una nueva tarea programada (cron o watch). |
GET |
/api/v1/proactive-tasks/{id} |
Consulta los detalles de una tarea programada. |
PATCH |
/api/v1/proactive-tasks/{id} |
Actualiza programación, título, prompt o estado. |
POST |
/api/v1/proactive-tasks/{id}/run |
Ejecuta inmediatamente una tarea programada. |
DELETE |
/api/v1/proactive-tasks/{id} |
Elimina una tarea programada. |
GET |
/api/v1/artifacts |
Lista los artefactos HTML guardados. |
GET |
/artifacts/{id}/{filename} |
Sirve el archivo HTML del artefacto. |
DELETE |
/api/v1/artifacts/{id} |
Elimina el artefacto del disco y del registro. |
GET |
/api/v1/config |
Obtiene la configuración activa no confidencial. |
PUT |
/api/v1/config |
Actualiza un ajuste dinámicamente. |
GET |
/api/v1/connectors |
Comprueba el estado de Discord, WhatsApp y Telegram. |
GET |
/swagger/ |
Documentación interactiva Swagger / OpenAPI. |