ZeroChat · Auditoría del código actual · 7.11.0

Funcionalidades y madurez

Inventario comprobado de conversación, proveedores, agente, MCP y RAG.

25 de septiembre de 2026 · dev · Codex (OpenAI)

← Volver a arquitectura

Dictamen funcional

ZeroChat 7.11.0 funciona como cliente personal multiproveedor con conversación, perfiles, herramientas y RAG local. El backend local añade MCP, shell, archivos y navegador; la interfaz estática también puede usarse sin él para las funciones compatibles. Las pruebas locales respaldan flujos concretos, pero no permiten afirmar fiabilidad de cualquier proveedor, formato o equipo móvil.

1. Método y evidencia

Inventario construido desde la interfaz, adaptadores, agente, MCP, RAG, herramientas Python y tests. npm test pasa 644 casos; npm run test:browser pasa 71. No se conectaron cuentas ni modelos externos ni se midió calidad de respuestas.

2. Matriz de madurez

ÁreaImplementado y probadoLímite
Conversación y estadoSesiones, ramas, adjuntos, streaming, telemetría y exportación; pruebas de estado e interfaz.La persistencia vive en el navegador; depende del origen y de las cuotas locales.
ProveedoresBase OpenAI compatible y adaptadores Claude, Gemini, Ollama, OpenRouter y WebLLM.Compatibilidad real depende de API, CORS, modelo y navegador; los tests usan simulaciones.
Agente y herramientasBucle de tool calls, autorizaciones, búsqueda web, ejecución JavaScript, gráficos y herramientas RAG.Un modelo debe producir llamadas válidas; shell y MCP requieren backend y supervisión.
MCP localProcesos y herramientas locales mediante token HTTP; pruebas de infraestructura.No hay aislamiento de privilegios del sistema para comandos o servidores MCP.
RAG documentalIndexedDB, fragmentación, índice Orama léxico, búsqueda por documento/corpus e imágenes.Sin embeddings, OCR general o benchmark de recuperación semántica.
Interfaz y PWAES/EN, responsive, SVG, Service Worker y pruebas Chromium.La precaché puede quedar incompleta; no se verificó recarga offline real ni otros motores.

3. Conversación, proveedores y perfiles

ChatState mantiene slices de configuración, sesiones, mensajes, generación, agente, telemetría y UI. ConversationService y el almacenamiento IndexedDB conservan conversaciones. Hay bifurcación y eliminación de turnos, importación/exportación y gestión de perfiles. Los adjuntos pesados se separan de los mensajes persistidos. BaseProviderAdapter unifica endpoints, SSE, razonamiento, herramientas y métricas; WebLLM requiere recursos y compatibilidad del dispositivo.

Las claves API se cifran en el navegador. La contraseña personalizada utiliza material derivado y caché temporal; sus límites se detallan en Q1. El proveedor elegido recibe el contenido enviado a ese proveedor; el almacenamiento local no implica inferencia local.

4. Agente, MCP y ejecución

Las herramientas declarativas incluyen búsqueda web, lectura de páginas/PDF, JavaScript, gráficos, consulta RAG, checkpoint, plan y finalización. El backend ofrece lectura/escritura de archivos, búsqueda, comandos y servicios MCP gestionados en un venv. El navegador pide aprobación según la política guardada y el backend exige token en cabeceras. Las reglas de autorización viven en el cliente, de modo que un cliente con token puede invocar RPC directamente: véase Q4.

El sandbox JavaScript usa iframe de origen opaco, CSP y Worker con límites; no equivale a aislar procesos shell. Los servidores MCP y comandos operan con los privilegios del usuario. La presencia de herramientas no garantiza que todos los modelos ejecuten una tarea agéntica correctamente.

5. RAG e ingesta

La ingesta normaliza texto, procesa PDF y permite logs gzip individuales con límite de descompresión de 50 MiB; ZIP y TAR se rechazan como contenedores. Orama crea índices derivados en memoria a partir de fragmentos de IndexedDB. La búsqueda es léxica: responde bien cuando la consulta comparte términos con el corpus, pero no se ha medido recuperación de sinónimos o paráfrasis. No se observa pipeline nativo de embeddings ni OCR general. El parser PDF propio necesita validación adicional con documentos de producción complejos.

6. Uso recomendado y pendientes

Encaja en chat personal multiproveedor, consulta de corpus pequeños o medianos y experimentación supervisada con herramientas. No hay evidencia de gobierno multiusuario, aislamiento fuerte para código hostil ni fiabilidad offline bajo fallos de precaché. Para madurar el producto conviene medir recuperación con un corpus de referencia, probar APIs reales en una matriz de proveedores y ejecutar pruebas de navegador en otras plataformas.

Los fallos F1–F4 del informe anterior se revisaron: F1, F3 y F4 tienen cobertura nueva, pero F2 sigue abierto porque el validador RPC no comprueba el enum de modo. Los riesgos vigentes figuran en calidad e infraestructura.