Prism Coder

Memoria de sesión persistente para agentes de codificación de IA: recuperación local-first, detección de deriva e inferencia en el dispositivo.

Documentación

Prism Coder

Dale a tu agente de IA memoria que perdura. Sesiones persistentes, grafos de conocimiento y enrutamiento de herramientas sin conexión — totalmente local y gratuito.

npm MCP Registry License: Apache-2.0 Models on HuggingFace

Prism Mind Palace dashboard v20.8.0 — project state with handoff summary, pending TODOs, intent health, neural graph, and time-travel history

Prism Coder es un servidor MCP que le da a Claude, Cursor y otras herramientas de IA memoria a largo plazo que sobrevive entre sesiones. Incluye la familia de modelos de peso abierto prism-coder (2B–27B) para enrutamiento de herramientas rápido y sin conexión — sin necesidad de nube.

No se necesita cuenta. No hay claves API. Se ejecuta en tu máquina.
Una suscripción de pago añade sincronización en la nube, niveles de modelo superiores y funciones de equipo a través del portal Synalux.


Lo que Prism te ofrece

  • Memoria de sesión que sobrevive a los reinicios — retoma proyectos con notas de traspaso, trabajo reciente, TODOs abiertos y contexto rápido, estándar o profundo configurable.
  • Inferencia local primero — el trabajo acotado se enruta primero a través de modelos locales de Ollama, con selección automática 2B/4B/9B/27B según los modelos instalados, la RAM disponible, el ajuste del contexto y los derechos de suscripción.
  • Aplicación de la salida de ruta — el modo de ruta devuelve solo llamadas bien formadas a herramientas que el host realmente anunció. Los planes estándar y superiores pueden añadir corrección determinista autenticada; route_guard: "local" mantiene el prompt y el borrador completamente en el dispositivo.
  • Una sola configuración para cada agenteprism connect configura Claude Code, Claude Desktop, Cursor, Gemini CLI y Codex preservando la configuración no relacionada.
  • Habilidades conscientes de la suscripción — las habilidades autorizadas se sincronizan antes de que el host se lance, con actualizaciones seguras, degradaciones, preservación de conflictos y recuperación sin conexión de la última versión buena.
  • Inicio sin hooks — los metadatos MCP y las instrucciones nativas solicitan el contexto de inicio de Prism sin requerir hooks de ciclo de vida ni un lanzador propiedad de Prism.
  • Escalada segura y observabilidad — los resultados de inferencia son explícitos, el contenido reservado permanece con fallo cerrado, y el uso local/nube se registra para revisión.

Comenzar

npm install -g prism-mcp-server
prism connect

Usa prism connect --dry-run para previsualizar cambios, prism connect --all para configurar cada host detectado, o prism connect --refresh para reconciliar las entradas gestionadas por Prism después de una actualización. Reinicia el host después de conectar.

Prism funciona localmente sin cuenta, clave API o suscripción en la nube. Añade una suscripción Synalux cuando quieras memoria en la nube, habilidades de nivel de pago o funciones de equipo.

Instalar como plugin

Prism también se distribuye como plugin, que registra el servidor MCP y la habilidad de inicio por ti.

Claude Code — desde el marketplace de la comunidad:

/plugin marketplace add anthropics/claude-plugins-community
/plugin install synalux-prism@claude-community

Codex — este repositorio es en sí mismo un marketplace de plugins:

codex plugin marketplace add dcostenco/prism-coder
codex plugin add synalux-prism@prism

El plugin registra prism-mcp a través de npx -y prism-mcp-server. Si ya configuraste Prism manualmente — prism connect escribe una entrada mcp_servers.prism-mcp — tienes ese servidor dos veces bajo una misma clave. Instala el plugin o ejecuta prism connect, no ambos.

Lo que prism connect cambia sobre los subagentes del host

connect dirige el trabajo acotado a prism_infer en tu máquina en lugar de a agentes generados por el host. Lo que escribe difiere según el host, y no desactiva los subagentes en todas partes — Claude Code los mantiene y se apunta a un modelo económico en su lugar. Los trabajadores locales de Prism permanecen disponibles a través de MCP en todos los casos.

HostConfiguración escritaEfecto
Claude Codeenv.CLAUDE_CODE_SUBAGENT_MODEL = "sonnet" en ~/.claude/settings.jsonLos subagentes permanecen habilitados, fijados a un modelo económico. La dispersión se desaconseja mediante texto de política, no mediante configuración
Gemini CLIexperimental.enableAgents = false en ~/.gemini/settings.jsonSubagentes desactivados. Gemini expone un solo booleano, así que eso es todo lo que hay que configurar
Codexfeatures.multi_agent = false en $CODEX_HOME/config.toml (por defecto ~/.codex), más un respaldo acotado: 2 hilos, profundidad 1, modelo de subagente económico, límite de 900sSubagentes desactivados, con un perfil acotado debajo para que una re-habilitación deliberada aterrice en un lugar sensato

Dos cosas que vale la pena saber:

  • experimental es el espacio de nombres de Gemini, no nuestro. Prism no está habilitando nada experimental — escribe false en una bandera que Gemini ya define en esa ruta. Escribir en cualquier otro lugar no tendría efecto.
  • Ese espacio de nombres es por definición temporal. Si Gemini promueve enableAgents fuera de experimental, Prism sigue escribiendo la ruta antigua, Gemini lee la nueva, y los subagentes del host se reactivan silenciosamente. Nada da error y el archivo de configuración sigue viéndose correcto. Si ves subagentes del host ejecutándose mientras enableAgents lee false, comprueba si la clave se ha movido antes de asumir que connect falló al escribirla.

Ambas escrituras son idempotentes en el sentido de que un host ya configurado de esta manera se deja intacto — pero se re-aplican en cada ejecución de prism connect, no solo en --refresh. Si re-habilitas deliberadamente los subagentes del host, la siguiente connect los desactivará de nuevo. Mantenlos activados no volviendo a ejecutar connect, o re-habilitándolos después de cada ejecución.


Historial de versiones (opcional)

Novedades en v20.12.1

  • prism connect --refresh ahora converge cada registro que posee, no solo el de nivel superior — las entradas con ámbito de directorio podrían seguir lanzando una compilación antigua indefinidamente.
  • prism update comprueba el paquete instalado, no el CLI que casualmente se está ejecutando, por lo que ya no puede informar "actual" mientras la instalación está obsoleta.
  • El actualizador programado opcional puede iniciarse de verdad — el LaunchAgent ahora lleva un PATH que incluye node y npm.

Novedades en v20.12.0

  • Prism ahora te avisa cuando está desactualizado. El inicio de sesión muestra un aviso de actualización de una línea cuando existe una versión más reciente — respaldado por caché, como máximo una comprobación de registro por día, silencioso sin conexión. PRISM_NO_UPDATE_CHECK=1 opta por no participar.
  • Actualizaciones sin intervención, si las quieres. prism autoupdate enable configura un prism update --if-idle diario: actualiza solo el paquete npm global, se aplaza mientras cualquier servidor Prism esté ejecutándose, y nunca toca la configuración del host — eso permanece detrás de un prism connect visible.

Novedades en v20.11.1

  • Guardar memoria nunca se rechaza. La ruta de guardado solía rechazar llamadas session_save_ledger/save_handoff cuando su heurística de ruta-a-proyecto discrepaba con el proyecto que declaraste — y el registro en el que la heurística confiaba podía contener basura de auto-registros anteriores, por lo que sesiones legítimas terminaban sin guardar. Tu declaración ahora siempre gana; la discrepancia se devuelve como advertencia informativa, y el auto-registro solo acepta raíces de repositorio reales.
  • Las capturas de pantalla vuelven a ser evidencia. prism browser capturas en macOS se escalaban silenciosamente al límite de tamaño, por lo que una captura ya no mostraba lo que realmente se renderizaba. Solo las capturas genuinamente sobredimensionadas se redimensionan ahora, y el límite ya no recorta una ventana estándar de 1920 de ancho.

Novedades en v20.10.0 – v20.11.0

  • El enrutamiento de habilidades ahora funciona a mitad de sesión. Los nuevos prompts se comparan en el dispositivo a medida que la conversación avanza — no solo en el primer turno — y se inyectan dentro de los límites de contexto reales de cada host (Claude Code limita la salida de hooks a 10k caracteres; Codex trunca por defecto), con entrega prioritaria de puntero cuando una carga útil no cabe en línea.
  • prism connect es un comando de convergencia. Se auto-actualiza primero, se re-ejecuta, y luego reconcilia el registro MCP, las habilidades y los hooks — no más máquinas con "configuración nueva, código obsoleto".
  • Las habilidades con ámbito se enrutan también en prompts, y la salida de inicio sobrevive a hosts que descartan contenido estructurado de herramientas.

Novedades en v20.9.0 – v20.9.3

  • Tus habilidades siguen a tu cuenta. skill_save almacena una habilidad en el ámbito que elijas: solo esta máquina (local, funciona sin conexión y con sesión cerrada), tu cuenta (user — cada máquina en la que inicies sesión la recibe), o un espacio de trabajo (team — compartida con miembros, gestionada por administradores, opcionalmente dirigida a personas específicas).

  • Recorta el catálogo que no usas. skill_manage puede liberar habilidades de plataforma que nunca tocas — liberando presupuesto del catálogo de habilidades del host — y restaurarlas en cualquier momento, sin pérdidas. Eliminar una habilidad con ámbito archiva su contenido final localmente primero, por lo que nada queda silenciosamente irrecuperable.

  • Entrega que se pone en cola en lugar de fallar. Las sesiones concurrentes ya no privan de sincronización de habilidades al almacén de configuración local (WAL + tiempo de espera de ocupado) — un fallo que antes informaba solo "parcial" donde nadie podía verlo.

  • Las reglas retenidas siguen vinculando. Cuando el presupuesto de contexto no puede incluir en línea el texto de una habilidad, el manifiesto de nombres retenidos ahora declara que esas habilidades siguen rigiendo el trabajo y nombra todas las formas de cargarlas antes de que la finalización lo reclame.

  • El presupuesto que el suelo nunca gastó. Un error contable de larga data significaba que ninguna habilidad no protegida se incluía en línea en ningún nivel de contexto normal — el suelo protegido siempre incluido estaba debitando el presupuesto destinado a todo lo demás. Las habilidades coincidentes con tareas (como la lista de verificación de evidencia de finalización) ahora llegan de verdad.

Novedades en v20.8.2

  • La entrega de habilidades ahora admite el fallo en lugar de ocultarlo. Un caso límite de permisos del sistema de archivos (un umask que elimina el bit de ejecución del propietario) podía dejar la sincronización de habilidades sin escribir nada mientras se informaba como actual — medido en nueve días en una máquina real. Los directorios gestionados rotos se reparan en su lugar, cada directorio se crea a prueba de umask, y la ruta de reparación rechaza enlaces simbólicos mediante un descriptor O_NOFOLLOW.
  • Una instalación obsoleta te lo dice al inicio. Prism ahora rastrea la generación que realmente llegó al disco por separado de la que la base de datos aceptó; si divergen, el banner de inicio lo dice en una advertencia colocada donde el truncamiento de pantalla no puede cortarla. Una sincronización exitosa la limpia automáticamente.

Novedades en v20.7 – v20.8.0

  • La primera ejecución demuestra la memoria en lugar de describirlasession_bootstrap siembra una memoria de demostración y la muestra recuperada del disco, para que el bucle guardar→recuperar se sienta en la sesión 1. De una sola vez, contenida en su propio proyecto prism-demo, eliminable con una llamada.
  • Panel corregido — un error tipográfico de comillas (publicado 2026-05-29) mató el script en línea en el momento del análisis, por lo que cada panel desde entonces renderizaba "Cargando proyectos..." para siempre. Corregido, y el lint ES5 ahora node --check el script en línea compilado para que un panel no analizable nunca pueda volver a publicarse.
  • Publicación de confianza — los lanzamientos npm se autentican mediante GitHub OIDC. Sin token almacenado que expire o se filtre, y cada lanzamiento lleva una atestación de procedencia firmada — puedes verificar que el tarball que instalas fue construido desde este repositorio por CI (npm audit signatures).
  • TLS obligatorio para la sincronización en la nube — una URL de almacenamiento http:// remota se actualiza a https:// en lugar de enviar silenciosamente el contenido de la sesión en claro.
  • Colisión de plugin de Codex + detección de estado habilitadoprism connect omite su propio registro solo cuando un plugin realmente proporciona prism-mcp (caché presente y habilitado), evitando tanto servidores duplicados como faltantes.
  • CI de Windows estabilizado; listados de registro/npm realineados y deduplicados.

Novedades en v20.6.0

La Entrega No Es Una Sugerencia

Una auditoría de un incidente real (un agente borró datos de demostración después de anunciar el borrado — con la regla de preguntar-primero confirmada, empaquetada y ausente de lo que cualquier agente realmente recibió) encontró que el suelo protegido había superado todos los presupuestos de entrega: "no protegido" había llegado silenciosamente a significar "nunca entregado".

  • ask-first y feature-preservation se unen al piso protegido (14 → 16). Las habilidades protegidas siempre se incluyen en línea; estas dos ahora llegan a cada sesión.
  • Los conflictos de sincronización son ruidosos y con nombre. El inicio solía decir "· 2 conflictos locales preservados" mientras las habilidades de seguridad permanecían meses desactualizadas; ahora nombra cada habilidad congelada y explica cómo reanudar las actualizaciones.
  • --storage acepta auto y synalux — la CLI rechazaba su propio valor predeterminado documentado y el backend de producción.
  • Divulgación: la entrega de habilidades informa; no bloquea. Una sonda en vivo mostró que un agente anfitrión aún editaba fuentes no verificadas con la regla cargada. Si tu modelo de amenazas incluye un agente que actúa contra una regla cargada bajo presión de tarea, combina este paquete con barreras mecánicas (ganchos, permisos, roles de privilegio mínimo). Cierto en cada versión anterior; declarado desde esta.

Novedades en v20.5.3

La Evidencia de Base Lleva su Edad

Las respuestas basadas en memoria etiquetaban sus fuentes pero nunca las fechaban, por lo que una nota de hace dos años y una de ayer llegaban al modelo de manera idéntica. Nada en la evidencia permitía descartar la obsoleta. Impulsado por una revisión externa que nombró el riesgo correcto para la memoria local-primero: los datos permanecen locales, pero la mala base se vuelve permanente — almacenar todo en tu máquina elimina la presión externa que de otro modo sacaría a la superficie una nota obsoleta.

La evidencia ahora dice:

[SOURCE 1: ledger:8286581d (recorded 2025-05-29, 431 days ago)]

La fecha ya existía en el almacenamiento y se descartaba en la capa de fragmentos, así que esto es plomería en lugar de nueva recopilación de datos. Las marcas de tiempo SQLite sin zona se normalizan a UTC — leídas como locales, un registro de hace diez minutos se analizaba horas en el futuro y su edad se suprimía por completo, lo que significa que la función silenciosamente no hacía nada en las memorias más frescas. Una fecha ausente o no analizable se muestra como nada en lugar de predeterminarse a ahora; predeterminarse haría que las memorias más antiguas, las más propensas a estar obsoletas, parecieran las más frescas.

tests/integration/grounding-staleness.test.ts ejecuta la propia sonda del revisor — siembra una nota deliberadamente desactualizada junto a una fresca contradictoria y afirma que el modelo recibe ambas, visiblemente fechadas. Cualquiera puede ejecutarla.

No resuelto, y no reclamado: la recuperación no pondera la actualidad. Una nota obsoleta mostrada junto a una fresca es el caso fácil — el modelo ve ambas fechas y puede ponderarlas. El caso difícil es una nota obsoleta recuperada sola, porque la clasificación es por coincidencia de palabras clave y un almacén antiguo devuelve resultados antiguos; entonces la etiqueta de edad es la única defensa y no hay un registro más fresco con el que comparar. Rastreado como TECH_DEBT.md #4.

Novedades en v20.5.0 – v20.5.2

El Primer Mensaje Nunca Sale de tu Máquina

Las habilidades activadas por síntomas — las reglas que se disparan en "no puedo ver X", "sin filas", "la lista está vacía" — están destinadas a cargarse en el turno en que llega un informe de incidente. Nunca lo hicieron: cada plantilla de anfitrión llamaba a session_bootstrap con {}, por lo que no había un aviso con el que coincidir.

Arreglar eso planteó la pregunta de dónde ocurre la coincidencia. Ahora ocurre localmente. Las 28 reglas de palabras clave ya son públicas, por lo que no había nada que una coincidencia local no pudiera calcular, y callPortal() no tiene ningún parámetro prompt en absoluto — la garantía es estructural, no una promesa. La solicitud del portal lleva el proyecto y el rol solamente.

Una regla coincidente ahora llega como contenido, no como un nombre. Los anfitriones nativos fuera del espejo de archivos de habilidades no tenían forma de leer una regla de la que solo se les informaba, por lo que el cuerpo de la regla se incluye en línea en la pantalla de inicio, limitado y dimensionado contra el presupuesto real por proyecto.

Novedades en v20.4.0

Un Backend en la Nube Explícitamente Nombrado Falla Ruidosamente

Configurar PRISM_STORAGE=synalux o =supabase con credenciales incompletas solía degradar silenciosamente a SQLite local. El cambio se registraba en stderr, que los anfitriones MCP descartan, por lo que nada lo sacaba a la superficie: las sesiones seguían sirviendo contexto local obsoleto mientras la nube tenía historial más nuevo, y context_source leía local en lugar de cualquier tipo de advertencia. Una sesión podía funcionar así durante semanas.

Nombrar un backend explícitamente es una fuerte declaración de intención, por lo que ahora lanza una excepción — nombrando las variables faltantes y la opción de exclusión PRISM_STORAGE=local — en lugar de dividir silenciosamente tu historial de sesión. auto no cambia: mantiene su degradación documentada synalux > supabase > local, fijada por una prueba.

Nota de actualización: si configuras explícitamente PRISM_STORAGE=synalux|supabase y tus credenciales están incompletas, el inicio ahora falla con un error nombrado en lugar de usar silenciosamente datos locales. Ese error es la solución — configura la variable faltante, o elige PRISM_STORAGE=local deliberadamente. Las configuraciones predeterminadas (auto) no se ven afectadas.

La excepción deliberadamente no se trata como una falla de inicio recuperable: esa ruta existe para errores transitorios (límites de tasa, 5xx, DNS), que pueden degradarse detrás de un aviso visible. Una credencial faltante es una falla de configuración y no debe encubrirse.

También: el bloque de habilidades ahora se presupuesta por defecto en lugar de solo a petición, por lo que una carga útil grande de habilidades no puede desplazar el informe y el historial.

Novedades en v20.3.2

Web Scholar: Endurecimiento SSRF

Lanzamiento de seguridad. Web Scholar extrae URLs de artículos que provienen de la salida del motor de búsqueda, por lo que el objetivo es influenciable por el atacante a través de envenenamiento SEO — y porque lo que extrae se escribe en el corpus de memoria y se pasa al LLM configurado, una redirección a una dirección local significaba leer un servicio interno y enviar el resultado.

La protección del anfitrión coincidía con prefijos de cadena en lugar de analizar la dirección, y seis ortografías de una dirección local pasaban: [::1] (URL.hostname mantiene los corchetes), 127.0.0.2 (solo .1 se enumeraba, no todos los 127.0.0.0/8), 0.0.0.0, [::ffff:127.0.0.1], localhost. (un punto final derrotaba cada verificación de sufijo a la vez), y [64:ff9b::7f00:1] (NAT64 incrusta IPv4 en sus bits bajos). La clasificación del anfitrión ahora analiza direcciones y también cubre CGNAT, benchmarking, multicast, reservado, y rangos IPv6 únicos-locales y enlace-local.

El rebinding de DNS también está cerrado. Cada verificación leía la cadena de URL, por lo que un nombre de host que el atacante controla pasaba todas ellas y aún podía resolverse a 127.0.0.1. Los objetivos ahora se resuelven primero, cada dirección devuelta se valida, y la conexión se fija a esas direcciones para que el nombre nunca se resuelva una segunda vez — lo que también cierra la ventana entre la verificación y la conexión.

Los fallos de extracción ya no desaparecen en un catch {} desnudo, una ejecución está limitada por PRISM_SCHOLAR_SCRAPE_BUDGET_MS (predeterminado 60s) en lugar de estancarse en un recuento elevado de artículos, y las respuestas están limitadas a 8 MiB.

Esto solo es alcanzable cuando el académico realmente se ejecuta — scholar_research, o el bucle en segundo plano bajo PRISM_SCHOLAR_ENABLED=true — y cuando el atacante también controla DNS o un resultado de búsqueda. Actualiza si usas Web Scholar.


Novedades en v20.3.1

Prism Browser Informa Fallos Reales

prism browser no podía fallar una prueba. eval 1 === 2 devolvía status: ok con código de salida 0, una página que servía HTTP 500 informaba status: ok, y los errores de consola y excepciones de página no capturadas se descartaban por completo. Esta versión agrega afirmaciones — assert-text, assert-visible, assert-count, assert-url, assert-title, assert-eval, assert-no-page-errors — que devuelven status: failed y un código de salida distinto de cero. open ahora informa http_status y falla en 400 o superior, las capturas de pantalla se validan en lugar de asumirse, y eval devuelve JSON nativo con su tipo en lugar de un repr de Python.

La capa de huella digital nunca se había aplicado: un argumento de palabra clave incorrecto hacía que la biblioteca sigilosa lanzara una excepción en cada lanzamiento — 1,139 fallos y 0 éxitos desde abril — mientras el ejecutor la informaba como activa. Está arreglado, y una capa que no puede aplicarse ahora falla ruidosamente. La compilación sin cabeza ya no se anuncia a través de navigator.userAgentData o el encabezado Sec-CH-UA, y un parche que corrompía Object.getOwnPropertyDescriptor en cada página bajo prueba se ha eliminado. Estos siguen siendo ayudas de prueba de mejor esfuerzo, no una garantía contra la detección de bots.

--local-only ahora realmente aísla: WebSocket, EventSource, WebRTC y el egreso sendBeacon eludían el enrutamiento de solicitudes y nunca se bloqueaban, y los trabajadores de servicio se permitían. --cleanup era una operación nula en los dos modos que los agentes usan. El aislamiento del sitio, la detección de phishing y el bloqueo de ventanas emergentes ya no están deshabilitados por defecto, ya que estos perfiles contienen cookies autenticadas en vivo.

Nuevo para ejecuciones de prueba: --ephemeral-profile y --storage-state para flujos autenticados herméticos, pages/switch-page para que las ventanas emergentes de OAuth sean alcanzables, --fail-fast, --fast, --trace/--video/--har, y profiles --prune-older-than para mantenimiento de perfiles.


Novedades en v20.2.7

Los Guardados de Sesión Sobreviven a Reinicios del Agente

Prism ahora recuerda que una conversación cargó exitosamente su contexto de proyecto cuando el servidor MCP se reinicia u otro proceso de Prism maneja la siguiente solicitud. session_save_ledger y session_save_handoff ya no fallan con un error falso context_not_loaded en ese flujo.

La recuperación sigue siendo de cierre seguro: la autorización se limita al proyecto exacto y la conversación, expira con la ventana de contexto existente, y no almacena un identificador de conversación en texto plano. Los recibos entre proyectos, falsificados, malformados, expirados, o con fecha futura aún se rechazan. La versión también actualiza PostCSS a la versión parcheada 8.5.23.


Novedades en v20.3.0

Búsqueda de Memoria Híbrida (Nivel Portal)

session_search_memory en el nivel portal (instalaciones respaldadas por Synalux) ahora fusiona la similitud semántica con la coincidencia léxica de términos exactos mediante fusión ponderada de rango recíproco. Medido en sondas ciegas contra un corpus real de 8.5k entradas: la recuperación fusionada nunca fue peor que la semántica sola en los 5 principales, y los identificadores exactos — TPNs, nombres de funciones, cadenas de error — ahora rescatan consultas que la similitud de incrustaciones difumina. Los resultados dicen cómo se encontraron — encabezados hybrid retrieval, brazos sem#/lex# por acierto — y un rescate solo léxico se etiqueta exact-term match en lugar de pretender una puntuación de similitud. Las instalaciones SQLite locales mantienen la búsqueda vectorial pura; el híbrido necesita el índice léxico del portal.

Novedades en v20.2.6

Actualizaciones de Configuración Más Seguras en Cada Agente

prism connect ahora lee la configuración de Claude, Cursor, Gemini y Codex a través de una única instantánea de archivo verificada, evitando que otro proceso intercambie un archivo entre la verificación de seguridad de Prism y su lectura. Los dotfiles con enlaces simbólicos compatibles aún funcionan, mientras que los enlaces simbólicos colgantes o plantados fallan ruidosamente en lugar de ser seguidos o sobrescritos. Esta versión también lleva las dependencias parcheadas y las verificaciones de lanzamiento multiplataforma introducidas en v20.2.5.

La alternativa en la nube ahora se documenta consistentemente como Gemini 3.6 Flash. Los techos de plan gobiernan el enrutamiento automático prism_infer; el uso directo de cualquier modelo descargado a través de Ollama local sigue siendo gratuito en cada nivel.


Novedades en v20.2.4

Memoria de Sesión Confiable que Muestra Trabajo, No Saludos

Las respuestas de asistente solo de saludo se omiten antes de las escrituras en el libro mayor. Las filas de saludo existentes se filtran en el momento de la lectura en el inicio nativo, el contexto MCP y prism load --json, mientras que las entradas que contienen decisiones, TODOs, archivos cambiados o eventos no de sesión permanecen visibles. Las filas históricas no se eliminan destructivamente. Si Synalux tiene una falla de inicio transitoria, Prism muestra una instantánea local limitada de último buen estado y la etiqueta claramente; las fallas permanentes de autorización o validación aún fallan ruidosamente, y las escrituras posteriores permanecen enrutadas a la nube.


Novedades en v20.2.2

Un flujo de trabajo local-primero en todos los agentes

prism connect ahora instala un contrato de orquestación para Claude Code, Claude Desktop, Cursor, Gemini CLI y Codex. El trabajo delegado acotado va primero a session_task_route y al trabajador local prism_infer; el trabajo rutinario no debe crear agentes host en segundo plano. Los trabajadores locales pueden recibir la memoria rápida, estándar o profunda configurada en el panel del proyecto activo y seleccionar un modelo 2B/4B/9B/27B seguro para RAM en el momento de la llamada. El enrutador reenvía la complejidad pero no elige el modelo; prism_infer posee la decisión final usando memoria y ajuste de contexto, modelos instalados, RAM en vivo, derechos y anulaciones explícitas del llamador.

La expansión de agentes nativos de Codex y Gemini se desactiva durante la conexión. Codex mantiene un perfil de respaldo Terra/bajo de dos hilos y un nivel si el desarrollador rehabilita explícitamente los agentes nativos más tarde. Claude Code mantiene los agentes nativos como una ruta de último recurso pero fija su modelo a Sonnet. Cursor y Claude Desktop no exponen un archivo de política global de subagentes compatible, por lo que reciben el mismo flujo de trabajo a través de las instrucciones del servidor MCP de Prism. Los límites de seguridad de prism_infer y la responsabilidad final de verificación del host no cambian.

Las habilidades por nivel de suscripción llegan antes del primer lanzamiento del host

prism connect ahora descarga el manifiesto de habilidades autoritativo de Synalux y materializa los paquetes con derecho en el directorio nativo ~/.agents/skills antes de que el comando salga. Por lo tanto, Codex ve el conjunto de habilidades actual en su primer lanzamiento en lugar de requerir un segundo reinicio. Prism vuelve a verificar la misma instantánea al inicio de MCP, en la carga de sesión y cada cinco minutos, sin enganches de ciclo de vida del host.

En el primer turno del usuario, la habilidad nativa de Prism, los metadatos de MCP y las instrucciones del host gestionado solicitan una llamada session_bootstrap({}). Prism luego usa el nombre del desarrollador del panel, Auto-Load Projects y la configuración rápida, estándar o profunda. La respuesta se mantiene enfocada en el saludo y el estado de la sesión porque las habilidades de nivel ya están presentes en el directorio de habilidades nativas del host.

El MCP sin enganches puede proporcionar y priorizar ese bloque listo para mostrar, pero el modelo del host aún posee el mensaje final del asistente y puede resumirlo. Prism no reclama un saludo determinista palabra por palabra en superficies de chat de terceros; eso requeriría un enganche de ciclo de vida del host, un lanzador, una extensión o un panel propiedad de Prism. La carga de contexto en sí permanece completa incluso cuando un host acorta la respuesta visible.

Las cuentas gratuitas reciben solo el paquete público sin enganches prism-startup; el servidor MCP aún proporciona un contrato compacto de seguridad y evidencia no propietario. Las cuentas de pago autenticadas reciben los paquetes protegidos de comportamiento e ingeniería más el conjunto de enrutamiento suscrito actual. El evidence-first-protocol de pago mantiene la codificación ordinaria ligera: una reproducción correlacionada es suficiente para comenzar una edición, mientras que la aceptación estricta comienza solo antes de una reclamación de finalización, push o lanzamiento e inspecciona solo los artefactos exactos utilizados como prueba. Las actualizaciones instalan paquetes recién con derecho; las degradaciones verificadas eliminan solo los paquetes propiedad de Prism mientras preservan las habilidades locales y los conflictos modificados localmente.

Al actualizar una instalación antigua de Claude Code, prism connect elimina solo las acciones exactas de enganche de inicio, sincronización de habilidades, traspaso y deriva propiedad de Prism del bootstrap heredado. También elimina las secciones de inicio heredadas reconocidas de Prism de ~/CLAUDE.md, preserva todas las demás instrucciones e instala un pequeño bloque nativo marcado como propiedad que selecciona session_bootstrap({}) en el primer turno. Los enganches de usuario, las secciones de instrucciones personalizadas y las coincidencias cercanas permanecen intactos; las habilidades nativas y los recordatorios del lado del servidor preservan esas características de Prism sin enganches de ciclo de vida del host. Debido a que los hosts no exponen una devolución de llamada nativa de fin de sesión, el traspaso al apagar se impulsa por instrucciones en lugar de un evento de ciclo de vida garantizado.

Después de que el registro de usuario nativo de Claude Code tenga éxito, el mismo comando predeterminado o --refresh verifica el .mcp.json más cercano desde el directorio actual hasta el directorio de inicio. Elimina solo la entrada heredada exacta prism-mcp { "command": "npx", "args": ["-y", "prism-mcp-server"] } que de otro modo ocultaría el registro de usuario. Las entradas personalizadas de Prism y sus campos adicionales, así como los servidores no relacionados, se preservan; los archivos malformados fallan ruidosamente sin cambios. --dry-run informa la migración reconocida sin cambiar el archivo.


Novedades en v20.2.1

Almacenamiento de memoria consciente de la suscripción

prism connect ahora lleva un PRISM_STORAGE=auto|local|synalux|supabase explícito a cada registro de host gestionado y rechaza valores inválidos antes de cambiar un archivo de configuración. En auto, un nivel gratuito confirmado por el portal usa SQLite local, mientras que Standard, Advanced y Enterprise usan memoria en la nube de Synalux. Si la resolución de derechos no está disponible, Prism falla cerrado en lugar de dividir el historial entre backends. El almacenamiento permanece independiente del enrutamiento de modelos local-primero.


Novedades en v20.2.0

Un comando conecta cada host compatible

Instala Prism globalmente y ejecuta prism connect. Detecta Claude Code, Claude Desktop en macOS, Windows y Linux (beta), Cursor, Gemini CLI y Codex, luego registra de forma segura el servidor desde el paquete instalado. Las entradas personalizadas existentes no se tocan; --dry-run previsualiza los cambios y --refresh actualiza solo las entradas gestionadas por Prism.


Novedades en v20.1.0

Cada resultado de inferencia ahora es observable

prism_infer gana un contrato de fallo: pasa escalation: "report" y cada llamada devuelve un gate_outcome estructurado — success, degraded (salida que falló la compuerta servida de todos modos, marcada explícitamente), o refused (tipado, con razón, en lugar de un error lanzado). La salida degradada ya no puede servirse en silencio.

Los prompts grandes funcionan localmente

Los prompts de más de 4000 caracteres se rechazaban de forma general cuando la nube estaba apagada. Ahora el texto completo recibe un escaneo determinista de palabras clave reservadas más una clasificación de extractos cabeza+medio+cola: los prompts sobredimensionados limpios se sirven localmente con un marcador de auditoría UNCERTAIN_LENGTH distinto. El manejo clínico/reservado no cambia (y su piso de palabras clave se fortaleció).

No más truncamiento silencioso

Los límites de contexto de nivel ahora coinciden con los Modelfiles en vivo (27b/9b son modelos de 4096 tokens; 4b/2b son 32768 — la tabla anterior lo tenía al revés). Los niveles que no pueden contener tu prompt se omiten con una razón visible ctx_insufficient; si nada encaja, obtienes el prompt completo en la nube o un error ruidoso — nunca una respuesta calculada a partir de un prompt recortado en silencio.

Sepa bajo qué plan está ejecutando realmente

Los derechos llevan un campo source: portal (real), unconfigured (gratuito por diseño), o fallback_free (portal inalcanzable — límites gratuitos ASUMIDOS). Pasa strict_entitlements: true para fallar ruidosamente en lugar de ejecutar degradado.


Novedades en v20.0.8

verify_behavior funciona de nuevo

La herramienta verify_behavior fallaba en cada llamada (-32602 expected object, received string) — el manejador devolvía una cadena simple en lugar de un objeto MCP CallToolResult. Corregido, con pruebas de regresión de contrato + fallo cerrado para que la compuerta de seguridad nunca pueda romperse silenciosamente de nuevo. Si estás en 20.0.6/20.0.7, actualiza.

Desde v20.0.7: Seguridad de contenido reservado, autenticación de habilidades, métricas de delegación

El contenido clínico reservado ahora es Claude-o-rechazar (nunca servido por un modelo más pequeño que el que lo rechazó), la entrega de habilidades ganó un respaldo de autenticación JWT (las habilidades de nivel de pago ahora llegan a máquinas usando solo PRISM_SYNALUX_API_KEY), y cada llamada prism_infer se registra en un libro mayor persistente infer_metrics. Detalles completos en CHANGELOG.md.


Novedades en v20.0.5

Delegación local-primero — 15 categorías, tasa medida

La habilidad local-inference-first cubre 15 categorías de disparo duro (generación de código, regex, conversión de formato, resumen, documentación, búsqueda factual, clasificación, comandos de shell, generación de configuración y más). Los bloques de código pegados ahora activan la delegación independientemente de la redacción de la pregunta. Tasa de delegación medida: 30-35% en sesiones de ingeniería, 40-60% en sesiones de transformación/contenido. La tasa depende de la mezcla de prompts, no de la habilidad — los instrumentos ahora se autovalidan con nonDelegatedCount para prevenir tautologías de conjuntos curados.

Reintento solo de pensamiento (v20.0.4)

Los modelos Qwen 3.5 (9B/27B) con pensamiento habilitado podían quemar todos los tokens en bloques <think> y devolver contenido vacío, causando una cascada a 4B. Ahora detecta respuestas solo de pensamiento y reintenta el mismo nivel con pensamiento deshabilitado — preservando la calidad del modelo en lugar de caer a un modelo más pequeño.


Novedades en v20.0.3

Resiliencia de modelo frío en la capa 1

El clasificador de categorías reservadas ahora reintenta una vez con un tiempo de espera más largo en fallo de modelo frío, luego cae a un respaldo determinista de palabras clave antes de rechazar. Los prompts de longitud excesiva (>4K caracteres) se clasifican como INCIERTO antes de llegar al clasificador — el relleno de prompts ya no puede forzar la rama ERROR. Esto elimina el problema de rechazo de arranque en frío sin debilitar la compuerta de seguridad.

Respaldo de palabras clave para contenido reservado

Cuando el clasificador LLM falla (tiempo de espera, inyección, presión de recursos), un piso regex determinista captura vocabulario reservado (restricción, aislamiento, autolesión, suicidio, sobredosis, desescalada de crisis, etc.) incluyendo formas flexionadas y verbales. Bloquea el relleno de prompts y los ataques de inyección al clasificador en la ruta ERROR.

Texto de seguridad de fuente única

La declaración de seguridad en el campo instructions del servidor MCP ahora se importa desde boundaries.ts — una fuente de verdad en lugar de dos copias mantenidas a mano. La versión de límites se incrementó a v3 con una decisión de entrega explícita documentada en el código.

Compuerta de seguridad de categorías reservadas — todos los niveles (v20.0.2)

El clasificador semántico de la capa 1 ahora se ejecuta para cada usuario, no solo para los niveles de pago. El contenido clínico reservado se rechaza en el nivel gratuito cuando la nube no está disponible — fallo cerrado.

Deduplicación de libro mayor (v20.0.2)

session_save_ledger deduplica entradas idénticas dentro de una ventana de 5 minutos.

Script de evidencia (v20.0.2)

scripts/generate-evidence.sh regenera los 5 archivos de evidencia con aserciones integradas. Ejecuta bash scripts/generate-evidence.sh para verificar el pipeline completo.


Novedades en v20.0.0

Licencia: AGPL-3.0 → Apache-2.0

Prism MCP ahora es Apache-2.0. La arquitectura de cliente delgado significa que todo el valor propietario (resolución de habilidades, control de niveles, facturación, inferencia en la nube) vive en el lado del servidor — el cliente abierto no lleva ningún foso que proteger. Apache-2.0 elimina la fricción de adopción empresarial que causó AGPL.

Arquitectura de cliente delgado

El enrutamiento de habilidades, la gestión de presupuesto y la resolución de contenido se han movido al lado del servidor, al portal Synalux. El cliente MCP ahora es un llamador de API delgado — más simple, más pequeño y portátil a través de cualquier host (Claude Code, Gemini, Cursor, scripts autónomos). El respaldo sin conexión lee la última respuesta exitosa de SQLite local.

Adaptador Voyage AI de sala limpia

El adaptador de incrustaciones de Voyage AI se reimplementó de forma independiente desde la documentación de la API de Voyage para garantizar un 100% de copyright propiedad del proyecto. El modelo predeterminado se actualizó a voyage-3.5. Consulta PROVENANCE.md para más detalles.

Detección de deriva en el lado del servidor

La detección de deriva de sesión (GATE 5) ya no requiere enganches de Claude Code. El temporizador se ejecuta en el lado del servidor por conversación, aprovechando cada respuesta de herramienta MCP. Funciona para cualquier host.

Requisito de CLA

Las contribuciones externas ahora requieren firmar la CLA individual. La verificación de CLA bloquea la fusión en la rama main.


Inicio rápido

El nivel gratuito no necesita cuenta, ni clave API, ni nube. Instala Prism, luego regístralo con cada host MCP compatible ya instalado en tu máquina:

npm install --global prism-mcp-server
prism connect

prism connect detecta Claude Code, Claude Desktop (macOS/Windows/Linux), Cursor, Gemini CLI y Codex. Usa prism connect --all para apuntar a los cinco, --host <name> para un solo host, o --dry-run para previsualizar los archivos que cambiarían. Las entradas existentes de prism y prism-mcp nunca se sobrescriben por defecto. --refresh actualiza solo una entrada creada previamente por Prism; las entradas personalizadas permanecen intactas. Para Claude Code, tanto el comando predeterminado como --refresh también eliminan la entrada legada exacta de npx -y prism-mcp-server con ámbito de proyecto del .mcp.json ancestro efectivo después de que el registro de usuario nativo tenga éxito. No se modifica ninguna entrada de proyecto personalizada o de coincidencia aproximada. Cierra los hosts MCP de destino antes de un registro que no sea de prueba para que no puedan editar su configuración al mismo tiempo.

La misma conexión instala el contrato de orquestación local-primero:

HostContención gestionada
Codexfeatures.multi_agent=false; se conserva un perfil de respaldo Terra/bajo de 2 hilos y profundidad 1 para re-habilitación explícita
Gemini CLIexperimental.enableAgents=false
Claude CodeCLAUDE_CODE_SUBAGENT_MODEL=sonnet; las instrucciones gestionadas lo reservan para respaldo de último recurso
CursorPolítica canónica entregada a través de instrucciones de inicialización de MCP
Claude DesktopPolítica canónica entregada a través de instrucciones de inicialización de MCP

Los cinco reciben PRISM_AGENT_POLICY=local-first en su entrada MCP gestionada de Prism. Las tareas rutinarias usan el trabajador local consciente de RAM; la expansión nativa/en segundo plano no es el flujo de trabajo predeterminado. session_task_route proporciona una pista de complejidad; prism_infer sigue siendo el único propietario de la selección de modelo y pensamiento y puede elegir 27B cuando sus puertas de viabilidad lo respalden.

Establece PRISM_STORAGE antes de ejecutar prism connect para preservar una elección explícita de almacenamiento en las entradas de host generadas. Esto no cambia el enrutamiento del modelo local; el almacenamiento en la nube de Synalux requiere por separado una habilitación activa de memoria en la nube.

El registro de Codex preserva el contenido no relacionado de ~/.codex/config.toml, agrega solo el bloque MCP marcado de Prism y actualiza solo las claves documentadas de funciones/agentes local-primero. CODEX_HOME se respeta cuando se establece y ya debe existir, coincidiendo con el propio contrato de Codex. Reinicia la CLI de Codex, la extensión del IDE o la aplicación de escritorio de ChatGPT después de conectarte.

Reinicia el host conectado y tu agente ahora tiene memoria respaldada por una base de datos SQLite local (~/.prism-mcp/data.db). Consulta Configuración del IDE para la configuración manual y las rutas específicas del host.

Opcional — flota de modelos local para enrutamiento de herramientas sin conexión. Descarga el que se ajuste a tu hardware:

ollama pull dcostenco/prism-coder:2b    # 3.3 GB  · on-device / lowest RAM · sees images (100% on our routing suite)
ollama pull dcostenco/prism-coder:4b    # 3.5 GB  · verifier · sees images (100%)
ollama pull dcostenco/prism-coder:9b    # 6.7 GB  · default router · sees images (95.7%, reasons before answering)
ollama pull dcostenco/prism-coder:27b   # 16.8 GB · complex code / quality · text only (100%)

Prism detecta automáticamente tanto las etiquetas de Ollama con espacio de nombres (dcostenco/prism-coder:9b) como las simples (prism-coder:9b).

Los niveles 2b/4b/9b llevan una torre de visión y aceptan capturas de pantalla a través de prism_infer({ images: [...] }) — pasa rutas absolutas o base64. Las solicitudes de imagen se rechazan en lugar de responderse a ciegas cuando ningún nivel (o el clasificador de seguridad de Capa 1) puede ver realmente la imagen, por lo que un modelo solo de texto nunca recibe un aviso sobre una captura de pantalla que nunca recibió. El 27b es solo texto.


Qué hace

Tu agente de IA olvida todo entre sesiones. Prism lo soluciona — y añade verificación, detección de desviación y coordinación multiagente encima.

Palacio de la Mente — memoria persistente que sobrevive entre sesiones

Cada conversación alimenta un almacén persistente. La siguiente sesión carga el contexto correcto automáticamente — sin re-explicar.

Mind Palace Dashboard — full page: session ledger, memory analytics, lifecycle controls, background scheduler

El panel muestra el estado actual de tu proyecto, TODOs pendientes, salud de intenciones y un grafo de conocimiento neuronal — todo construido automáticamente desde tus sesiones de agente.

Exportar — lee el registro fuera del agente

session_export_memory escribe tu memoria como archivos de texto plano que puedes leer, comparar y confirmar. Nada pasa por un modelo para producirlo.

markdown   human-readable — drop it in a PR to show what the agent actually did
json       machine-readable — import into another Prism instance
vault      zipped Markdown with YAML frontmatter and [[wikilinks]] (Obsidian, Logseq)

Esta es la superficie a la que recurrir cuando quieras responder "¿verificó el agente esto, o está afirmando que lo hizo?" — la exportación es un registro que revisas después del hecho, en una comparación o solicitud de extracción, en lugar de una vista en vivo que tienes que ir a abrir. Los mismos datos están disponibles desde los botones Exportar ZIP y Exportar Vault del panel.

Grafo de Conocimiento — búsqueda semántica + de palabras clave + de grafo

Pregunta "¿qué decidí sobre el flujo de autenticación el mes pasado?" y obtén una respuesta con citas, combinando similitud vectorial, búsqueda de texto completo y recorrido de grafo.

Knowledge Graph — 190 keywords, 47 edges, 12 projects visualized

Historial de Sesiones — rastro de auditoría inmutable

Cada sesión se registra con archivos cambiados, decisiones tomadas y TODOs. Busca, filtra y reproduce cualquier sesión pasada.

Session Ledger — 93 sessions, 847 decisions logged across 12 projects

Métricas de Inferencia — mira a dónde van tus tokens

Cada llamada a prism_infer rastrea qué modelo la manejó (Ollama local vs. nube) y cuántos tokens se consumieron. Cuando guardas una sesión, Prism muestra un resumen:

📊 Inference Metrics (this session):
  Total calls: 12 — Local: 10 (83%) | Cloud: 2 (17%)
  Prompt tokens: 7,840 evaluated / 8,420 submitted est.
  Completion tokens: 3,150
  Cloud tokens saved (est.): 11,570 — token volume handled locally instead of cloud
  Avg latency: 1,240ms
  By model:
    prism-coder:27b: 6 calls, 7,200 tokens, avg 1,800ms
    prism-coder:9b: 4 calls, 2,870 tokens, avg 620ms
    synalux-27b: 2 calls, 1,500 tokens, avg 1,100ms

Tokens de nube guardados es la métrica de enrutamiento honesta — se acumula solo cuando Ollama local maneja una llamada que de otro modo habría ido a la inferencia en la nube de Synalux. Una versión compacta aparece en línea después de cada 5ª llamada a prism_infer: 📊 local 10 (83%) · cloud 2 (17%) · ~11,570 tok · avg 1,240ms · 11,570 cloud tok saved.

Las llamadas locales usan recuentos reales de tokens de Ollama (prompt_eval_count / eval_count de Ollama); las llamadas en la nube usan estimaciones de char/4. Las métricas se rastrean localmente — sin dependencia del portal, sin variables de entorno, funciona sin conexión. Los datos por llamada también se reenvían al portal de Synalux como análisis de mejor esfuerzo (independiente de la visualización).

Detección de Desviación de Sesión

Las sesiones largas de agente pueden alejarse de su objetivo original. session_detect_drift compara el trabajo actual con el objetivo declarado y devuelve on_track / minor_drift / major_drift para que el agente pueda autocorregirse.

Verificación de Comportamiento — detecta ediciones incorrectas antes de que ocurran

Los agentes de IA aplican patrones de listas de verificación sin comprender el impacto en el mundo real. La herramienta verify_behavior desafía al agente con un escenario que debe responder antes de editar — forzándolo a pensar en lo que experimentará el usuario final.

Agent: "I'll revert this kitchen display change"
Prism: "⚠️ Scenario: A cook sees a 3-item ticket. One item is voided.
        What should the cook see after the void?"
Agent: "The ticket stays visible with the remaining 2 items."
Prism: "Correct — your revert would hide the ticket entirely."

17 dominios integrados (facturación, autenticación, pedidos, clínico, RRHH y más). Dominios personalizados por espacio de trabajo en Enterprise. Sin enganches necesarios — funciona en cualquier cliente MCP.

Viaje en el Tiempo

Revierte a cualquier estado de sesión anterior. Compara diferencias entre versiones. Restaura un estado conocido-bueno con un clic.

Time Travel — version timeline with diff view and one-click restore

Enrutamiento Cognitivo

Tres tipos de memoria, ordenados automáticamente: episódica (lo que pasó — registros de sesión, decisiones), semántica (lo que es verdad — hechos, arquitectura) y procedimental (cómo hacer X — flujos de trabajo, patrones). Cuando buscas, el enrutador elige el almacén correcto en lugar de volcar todo.

Mente Colmena Multiagente

Coordina múltiples agentes de IA trabajando en el mismo proyecto. Cada agente tiene su propia sesión, pero comparten memoria a través del grafo de conocimiento. El Radar de Colmena muestra el estado del agente, las tareas y la actividad en tiempo real.

Hivemind Radar — 5 agents with real-time status, tasks, and activity feed

Búsqueda Neuronal

Busca en todas las memorias con resultados resaltados, edición del grafo de conocimiento y métricas de densidad de memoria.

Neural Search with Knowledge Graph Editor and Memory Density


Local-primero y privacidad

El nivel gratuito se ejecuta completamente en tu máquina. Los niveles de pago añaden sincronización en la nube a través del portal de Synalux, que es lo que permite la memoria entre dispositivos y el intercambio en equipo.

Nivel local (gratuito)Nivel en la nube (de pago)
Almacenamiento de memoriaSQLite localPortal de Synalux (respaldado por Supabase)
InferenciaModelos Ollama localesModelos locales + respaldo Gemini 3.6 Flash
Claves API requeridasNingunaClave de suscripción de Synalux
Búsqueda web / raspadoNo incluidoVía portal de Synalux (claves de proveedor en el servidor)
Lo que sale de tu máquinaNadaTexto de memoria, rutas de archivo, consultas de búsqueda y avisos/borradores de inferencia cuando se usa su función en la nube, enviados al portal a través de TLS. Las escrituras de memoria en la nube están redactadas de PHI; las solicitudes de inferencia y enrutamiento son transitorias.
Funciona sin conexiónFunciones locales sí; sincronización/nube no

Manejo de datos sensibles. Las escrituras de memoria en la nube pasan por redacción automática (SSN, fechas de nacimiento, números de registro médico, números de teléfono, correos electrónicos e identificadores clínicos se eliminan antes del almacenamiento). La inferencia en la nube y la corrección de ruta envían la solicitud a través de TLS para su procesamiento y no la almacenan como memoria de Prism; usa route_guard: "local" o el nivel local para un aislamiento total. Enterprise incluye un Acuerdo de Asociación Comercial HIPAA.


Modelos

La flota prism-coder usa Qwen3.5 para el enrutamiento de herramientas MCP Y la inferencia general. El 9B y el 27B están ajustados con LoRA (r=128, las 64 capas incluyendo DeltaNet); el 2B y el 4B usan Qwen3.5-4B estándar en diferentes niveles de cuantización. El 27B obtuvo 100% en nuestra suite interna de 115 casos de enrutamiento de herramientas y 100% en una evaluación interna de codificación de 15 problemas, a un costo de inferencia de $0. Estas son evaluaciones auto-ejecutadas, no envíos a la tabla de clasificación BFCL.

prism_infer admite tres modos: route (enrutamiento de herramientas, rápido, sin pensar), chat (conversación con pensamiento) y code (generación de código con pensamiento). En los modos de chat/código, el modelo usa bloques <think> para el razonamiento de cadena de pensamiento, que se eliminan antes de que se sirva la respuesta. Si el modelo local falla un control de calidad (vacío, solo-pensamiento o truncado), los niveles de pago escalan automáticamente a Gemini 3.6 Flash a través del portal de Synalux.

Cada resultado del modo de ruta se analiza localmente y se verifica contra allowed_tools antes de que llegue al host. Las llamadas malformadas o no anunciadas se convierten en NO_TOOL. Con route_guard: "auto" (el predeterminado), los planes Standard y superiores también envían un borrador bien formado para una de las siete herramientas entrenadas de Prism—o un borrador no anunciado que puede necesitar corrección—a Synalux para una corrección determinista autenticada. Las herramientas de host personalizadas anunciadas permanecen locales. Establece route_guard: "local" para una ruta completamente en el dispositivo.

ModeloEtiqueta OllamaTamañoVisiónPrecisión de enrutamiento¹RolNivel de enrutamiento automático
Qwen3.5-4B Q4_K_Sprism-coder:2b3.3 GB100%En el dispositivo / RAM más baja (4.5 GiB libres)Gratuito
Qwen3.5-4B Q4_K_Mprism-coder:4b3.5 GB100%Verificador (5.2 GiB libres)Gratuito
Qwen3.5-9B (LoRA)prism-coder:9b6.7 GB95.7%²Enrutador predeterminado / caballo de batalla (9 GiB libres)Standard+
Qwen3.5-27B (LoRA)prism-coder:27b16.8 GB100%Código complejo / calidad (21 GiB libres)Advanced+

¹ Auto-ejecutado en una suite estrecha de 115 casos de selección de herramientas MCP, temperature: 0, medido a través de la ruta de llamada que prism_infer realmente usa (/api/chat, la plantilla propia de cada modelo). Dice que estos modelos eligen la herramienta correcta en nuestra propia evaluación, nada más — no es una medida de capacidad general, ni un resultado de benchmark independiente. Revisiones anteriores de esta tabla citaban 99.1–100% de un harness que improvisaba un aviso ChatML con raw: true, omitiendo la plantilla; esos números describían una ruta que ningún llamador ejercita. Advertencias completas de metodología a continuación.

² El 9B es el único nivel que razona antes de responder, y se mide con razonamiento habilitado: 95.7% con pensamiento, 83.5% sin. prism_infer establece esto por nivel (MODEL_TIERS.prefersThinking), por lo que los llamadores obtienen la ruta del 95.7% por defecto. El razonamiento cuesta aproximadamente 600 tokens, por eso el 9B también lleva un piso local de 2,048 tokens.

Visión. Las etiquetas 2B/4B/9B incluyen una capa separada de projector (0.68–0.92 GB) y leen imágenes; el 27B es solo texto. prism_infer sondea esa capa y omite un nivel sin visión en lugar de enviarle una imagen — preguntado directamente, un modelo solo de texto aún responderá con confianza sobre píxeles que nunca recibió. Ejercitado contra los modelos reales en tests/integration/visionScreenshot.test.ts.

Estos niveles controlan la selección automática de prism_infer, no a Ollama en sí. Cualquier usuario puede ejecutar cualquier modelo descargado en el dispositivo directamente a través de Ollama en cada plan. Pesos: huggingface.co/dcostenco (GGUF público). La latencia depende del tamaño del modelo y del hardware; consulta Puntos de referencia para medirla en tu propia máquina en lugar de confiar en un número impreso.

Cascade

query → prism-coder:9b (local router, default)
      → prism-coder:4b (grounding verifier)
      → prism-coder:2b (iPhone / mobile, auto-selected by RAM)
      → prism-coder:27b (complex tasks, on demand)
      → Gemini 3.6 Flash cloud fallback (paid tiers, for max quality)

Verificación multicapa

Las respuestas de salida de ruta y las basadas en evidencia utilizan compuertas separadas. Cada nivel obtiene el analizador de ruta local y el registro de herramientas anunciadas; los planes Standard y superiores pueden añadir la corrección de ruta determinista privada. La verificación de evidencia es opcional (o automática cuando se proporciona evidencia) y permanece separada de la selección de ruta.

CapaQuéModeloCosto
L1Compuerta de seguridad de crisis/médicaNinguno (regex)0 ms
L3-RegistroValidación de sobre + aplicación de herramientas anunciadas (todos los niveles)Ninguno0 ms
L3-RutaCorrección de ruta determinista autenticada (Standard+)NingunoLatencia de red
L3-Tier0Fundamentación de enteros (pertenencia a conjuntos)Ninguno (determinista)0 ms
L3-Tier2Verificador NLI (afirmación → ENTAILED/NEUTRAL/CONTRADICTED)prism-coder:2b~200 ms
L4Juez de alucinaciones (opt-out para clínico)prism-coder:4b~500 ms

Cierre ante fallo en la ruta verificada: cuando el verificador de fundamentación se ejecuta, el tiempo de espera, la ambigüedad o la falta de evidencia producen un rechazo, no un paso directo. Si la corrección de ruta de pago no está disponible, el registro local aún bloquea llamadas malformadas y no anunciadas e informa una ruta permitida preservada como degradada.


Puntos de referencia

Los números de referencia publicados son resúmenes concisos de la evaluación determinista interna. Los evaluadores, los casos exhaustivos, las matrices exactas de enrutamiento por niveles y las salidas brutas del modelo permanecen en el repositorio privado de ingeniería y no se incluyen en el paquete npm ni en el árbol de código fuente público.

Evaluación de enrutamiento. En un conjunto reducido de selección de herramientas, la flota logró resultados casi saturados en tres semillas. Esto mide la fiabilidad del enrutamiento MCP sin conexión, no la capacidad general del modelo.

ModeloPrecisión de enrutamientoNotas
prism-coder:2b (Q4_K_S)100%El 2B fue recuantizado cuando se lanzó la visión; el antiguo 99,1% era Q3_K_M
prism-coder:4b100%
prism-coder:9b95,7% con razonamiento83,5% sin — el único nivel donde esto difiere
prism-coder:27b100%
Claude (frontier, misma evaluación)~98%Más fuerte en todos lados fuera de esta tarea reducida

Medido a través de /api/chat con la plantilla propia de cada modelo — la ruta que usa prism_infer. temperature: 0, por lo que las tres semillas solo reordenan el orden de los casos y no pueden discrepar; revisiones anteriores citaron ese acuerdo como confirmación, lo que nunca fue.

Mejora de memoria (LoCoMo-Plus, autopublicado). Un punto de referencia separado de diálogo de contexto largo (dcostenco/Locomo-Plus) mide cuánto ayuda la memoria estructurada a un modelo base a retener contexto de varios días. Los resultados muestran grandes ganancias cuando un modelo se combina con la memoria de Prism en comparación con ejecutarse en bruto. Ten en cuenta que este punto de referencia es creado, ejecutado y juzgado por LLM por este proyecto — trátalo como una demostración reproducible, no como un resultado independiente de terceros, y ejecútalo tú mismo con los comandos de ese repositorio.

Evaluación de generación de código. En una pequeña comprobación de ejecución determinista de julio de 2026, el 9B local pasó 2/3 tareas; el 27B local y Gemini 3.6 Flash pasaron cada uno 3/3. Esta es una señal de regresión autopublicada, no una tabla de clasificación independiente ni una afirmación de equivalencia amplia de modelos.

Escalada en la nube (cloud_fallback: true)

Prism siempre intenta primero un modelo local elegible. Si la compuerta de calidad detecta una respuesta vacía, truncada, solo de pensamiento o en bucle, los niveles de pago pueden reintentar la solicitud a través de Gemini 3.6 Flash. El enrutamiento del nivel gratuito permanece local e informa el resultado de la compuerta de calidad sin realizar una llamada a la nube.


Por qué Prism Coder

vs asistentes de codificación con IA

Las capacidades y planes de los productos cambian con frecuencia. La comparación a continuación se limita intencionalmente a diferencias documentadas públicamente; no es una afirmación de que otro producto carezca de una característica no listada.

Leyenda: ✅ documentado, ◐ condicional o dependiente del plan, — no comparado, ? verificar con el proveedor.

CapacidadPrism CoderGitHub CopilotCursorAmazon Q Developer
Inferencia local/de peso abierto
Flujo de trabajo sin conexión??
Memoria entre sesiones◐ (documentación)
Integración MCP✅ (documentación)✅ (precios)
Enrutamiento de modelos local primero
Comprobaciones de deriva de sesión y fundamentación
Superficie de configuración✅ cinco hosts✅ CLI/IDE✅ editor/agentes✅ IDE/CLI (resumen)
Modelo de precios✅ niveles Synalux◐ (precios)✅ gratis + $19 Pro (precios)

Los términos de cumplimiento, contractuales y de precios específicos de Prism están documentados en el acuerdo de servicio de Synalux. No infiera el estado de HIPAA, BAA o manejo de datos de un competidor a partir de esta tabla.

vs herramientas locales de IA / memoria

CaracterísticaPrism CoderOllamaLM StudioMem0Zep
Cascada de inferencia local✅ tiempo de ejecución✅ aplicación
Respaldo en la nube✅ opcional◐ dependiente del proveedor
Memoria persistente◐ contexto de proyecto
Integración de conocimiento/herramientas✅ MCP + ingesta◐ APIs◐ integraciones✅ SDK/API✅ SDK/API
Servidor MCP✅ nativo◐ integración de cliente◐ integración de cliente◐ integración de cliente

Precios

Los niveles publicados actuales de Prism se enumeran a continuación. Los precios de los competidores dependen del uso y del plan, así que consulte directamente al proveedor: https://github.com/features/copilot/plans, Cursor y Amazon Q Developer.


Planes

Todos los modelos en el dispositivo son gratuitos para ejecutarse localmente a través de Ollama en todos los niveles. Una suscripción controla las funciones en la nube, los techos más altos de enrutamiento automático y los límites aumentados. Los modelos en el dispositivo se ejecutan a través de tu Ollama independientemente del plan; el techo se aplica solo a la inferencia en la nube y al enrutamiento automático de prism_infer.

GratisStandard $19/mesAdvanced $49/mesEnterprise $99/mes
Asientos11hasta 5hasta 25
Techo automático de prism_inferhasta 4bhasta 9bhasta 27bhasta 27b
Inferencia en la nube--✅ (prioridad)
Cloud Coder (IDE web)--✅ (prioridad)
Búsqueda en la nube--
Máximo de tokens de salida5121,0242,0484,096
Respaldo en la nube--Gemini 3.6 FlashGemini 3.6 FlashGemini 3.6 Flash (prioridad)
Verificador de fundamentación (verificación de hechos de la salida de IA)--
Sincronización de memoria (nube)--
Conocimiento / memoria de sesiónlimitadoilimitadoilimitadoilimitado
Panel de análisis--
HIPAA BAA------

Prueba gratuita de 14 días en planes de pago. 25+ asientos: contactar ventas


Cómo lo usan los agentes

Prism expone más de 40 herramientas MCP. El bucle de memoria central:

HerramientaQué hace
session_bootstrapSaludo de primer turno sin hooks y contexto configurado desde el panel
session_load_contextRecarga explícita de proyecto o respaldo de inicio para servidores antiguos
session_save_ledgerAgregar una entrada de registro de sesión inmutable
session_save_handoffGuardar el estado en vivo para la próxima sesión
knowledge_searchBúsqueda semántica + por palabras clave en todas las memorias
query_memory_naturalPreguntas y respuestas con prioridad de memoria y respaldo de fuente viva fundamentada en niveles de pago
session_detect_driftDetectar cuando una sesión se ha desviado de su objetivo
verify_behaviorDesafío de escenario previo a la edición: detectar cambios malos antes de que ocurran
knowledge_ingestEnseñar a Prism un código base o documento
prism_inferInferencia local primero (modos de ruta/chat/código, pensamiento, escalada en la nube)
inference_metricsDelegación de sesión o estadísticas locales/nube del panel MCP + VS Code persistido

query_memory_natural — memoria primero, fuentes actuales cuando sea necesario

Haz una pregunta en lenguaje natural en lugar de elegir herramientas separadas de memoria, búsqueda, raspado e inferencia. Prism primero busca en su memoria de proyecto acumulada. Si no existe evidencia útil, los niveles de pago ejecutan una búsqueda limitada de Synalux (Firecrawl, fundamentación de Búsqueda de Google de Gemini 3.6, luego respaldo heredado de Brave), resuelven y preservan las URL de origen, raspan la página principal y piden a un modelo local Prism Coder seguro para RAM que responda con esa evidencia. El verificador Gemini 3.6 de nivel de pago comprueba el borrador antes de servirlo. El contenido clínico reservado o incierto nunca entra en la ruta local fundamentada en la web; sigue el límite de seguridad de nube-o-rechazo de Prism.

prism_infer — inferencia local primero con escalada en la nube

prism_infer({
    prompt: "Write a binary search in Python",
    mode: "code",        // "route" | "chat" | "code"
    think: true,          // enable <think> reasoning (default: true for chat/code)
    model_ceiling: "27b", // use the quality tier
})
// → 27B generates code locally ($0), with thinking for quality
// → If quality gate fails + paid tier → auto-escalate to Gemini 3.6 Flash
ModoPensarModeloCaso de uso
routeApagado (rápido)9B predeterminadoEnrutamiento de herramientas MCP
chatEncendido27B preferidoConversación, razonamiento
codeEncendido27B preferidoGeneración de código, depuración

Las firmas completas de TypeScript viven en src/tools/; la arquitectura en docs/ARCHITECTURE.md.

inference_metrics — ve el uso de tu modelo local bajo demanda

Llama a inference_metrics en cualquier momento durante la sesión para ver cuántas llamadas de prism_infer se ejecutaron localmente vs en la nube. Usa period: "all" para importar atómicamente el spool del panel VS Code de Synalux e incluir su tasa de servicio local en los totales persistidos:

📊 Inference Metrics — local-model delegation (this session):
  Total calls: 5 — Local: 5 (100%) | Cloud: 0 (0%)
  Tokens: 1,240 in + 380 out = 1,620 total
  Avg latency: 420ms
  By model:
    prism-coder:27b: 3 calls, 1,100 tokens, avg 520ms
    prism-coder:9b: 2 calls, 520 tokens, avg 270ms

El mismo bloque también aparece automáticamente en las respuestas de session_save_ledger y session_save_handoff al final de la sesión.

Nota: La vista de sesión predeterminada rastrea la delegación de prism_infer de este proceso MCP. La vista de todos los tiempos combina llamadas MCP persistidas con inferencia del panel VS Code de Synalux. Ninguna vista incluye el gasto de tokens del propio agente anfitrión; usa el informe de uso nativo de ese anfitrión cuando esté disponible.

Delegación de modelo local (predeterminada)

Prism enruta trabajo acotado que califica (clasificación masiva, extracción de campos, formato mecánico, generación de pruebas y tareas similares) a modelos locales de Ollama antes que a cualquier subagente nativo del anfitrión. El agente verifica gate_outcome, valida el resultado y continúa en el hilo del anfitrión actual cuando el trabajador local no está disponible, se niega o está degradado.

Pasa la memoria del proyecto cuando la subtarea depende de trabajo previo:

{
  "prompt": "Generate the bounded regression-test cases.",
  "project": "prism-mcp",
  "context_depth": "standard",
  "conversation_id": "<from session_bootstrap>",
  "mode": "code",
  "cloud_fallback": false,
  "escalation": "report"
}

Omite context_depth para usar la configuración del panel. Desactiva el interruptor del Enrutador de Tareas del panel o establece PRISM_TASK_ROUTER_ENABLED=false para una exclusión explícita.

Protecciones:

  • Local por defecto — se preserva una exclusión explícita del operador
  • Nunca delega: código/texto que se envía al usuario, lógica de seguridad/protección, planificación/razonamiento, cualquier cosa donde una caída silenciosa de calidad no sea obvia
  • Siempre verifica: comprueba quality_gate_failed y used_cloud antes de confiar en la salida local
Cómo Prism sobrevive a la compactación de contexto

La ventana de contexto del LLM se trata como espacio de trabajo efímero; el estado duradero vive en el almacén persistente (SQLite localmente, el portal en la nube). Cada sesión comienza con una llamada obligatoria sin argumentos a session_bootstrap, por lo que Prism aplica la configuración de proyecto y rápida/estándar/profunda del panel antes de que el agente escriba una respuesta. Cuando un proyecto supera un umbral (predeterminado 50 entradas), session_compact_ledger resume las entradas antiguas en un resumen, archiva suavemente los originales y los enlaza en el gráfico. Ver docs/COMPACTION.md


CLI

prism load <project>      # load session context
prism save                # save ledger + handoff
prism search <query>      # search code across repos (exact / regex / symbol / semantic)
prism review <files...>   # AI code review — security, performance, style
prism scan <files...>     # security scan — secrets, licenses, Dockerfile
prism browser ...         # persistent local browser testing and structured automation
prism push                # push local SQLite to the cloud backend
prism register-models     # alias dcostenco/prism-coder:* -> prism-coder:*

prism browser — pruebas de navegador local

El paquete npm incluye el ejecutor de navegador Python/Playwright de Prism; no se requiere una aplicación Prism Browser separada ni un DMG. Añade una CLI estable orientada a agentes alrededor de Playwright con perfiles nombrados reutilizables, sesiones de pipe/REPL de múltiples acciones, registros de auditoría local redactados y scripts de precarga protegidos para aplicaciones locales. Usa el modo pipe o REPL cuando varias acciones deban compartir una sesión de página:

printf 'open http://127.0.0.1:3000\nwait-for #app\nread-dom #app\n' | \
  prism browser --headless --local-only pipe

Las aplicaciones locales pueden cargar ayudantes de prueba repetibles previos a la navegación con --inject ./tests/browser-init.js. La inyección personalizada requiere --local-only; la navegación pública y las solicitudes no loopback se rechazan en ese modo. Instale el runtime local una vez con pip3 install playwright playwright-stealth y python3 -m playwright install chromium.

Use Playwright puro para suites autorizadas que necesiten sus APIs completas de aserción, trazado, fixtures y trabajadores paralelos. Use prism browser cuando un agente de IA necesite una sesión de navegador local pequeña, persistente y auditable a través de una CLI consistente. Los parches de compatibilidad son de mejor esfuerzo; no son una garantía de evasión de CAPTCHA. Consulte Pruebas locales de Prism Browser para la superficie de comandos, el modelo de seguridad y los casos de aceptación verificados.

prism search — búsqueda semántica de código

prism search — semantic code search with relevance scores

prism review — revisión de código con IA con comprobaciones HIPAA

prism review — AI code review with security and HIPAA findings

prism scan — escáner de seguridad para secretos, Dockerfiles y licencias

prism scan — security scan finding secrets and container issues


Compañeros

Prism funciona junto con estas herramientas — use la que se adapte a su flujo de trabajo.

Web IDE — Prism Coder

Un IDE basado en navegador en synalux.ai/coder. Importe cualquier repositorio de GitHub y obtenga:

  • Editor Monaco con pestañas múltiples, vista dividida, resaltado de sintaxis y atajos de teclado de VS Code
  • Node.js en el navegador mediante WebContainer (su código se ejecuta en el sandbox del navegador, no en un servidor)
  • Terminal integrada — shell de WebContainer en el navegador; PTY de servidor opcional mediante WebSocket cuando se conecta a un servidor de desarrollo
  • Modo Agente de IA — describa una tarea y el agente crea archivos, ejecuta comprobaciones de tipos y verifica
  • Control de código fuente — commit, rama, push/pull, stash, blame, gestión de etiquetas
  • Live Share — edición colaborativa en tiempo real con enlaces de sesión
  • Depurador de Node.js mediante el Protocolo de Chrome DevTools
  • Ejecutor de tareas (compatible con tasks.json de VS Code), panel de Problemas (diagnósticos de Monaco)
  • i18n en 12 idiomas — localización completa de la interfaz

Prism Coder IDE — Agent Mode creating a component with auto-fix and type-checking

Prism Coder IDE — Live Share with team members and real-time cursor tracking

Los planes Standard+ obtienen IA en la nube y límites de tarifa más altos. El nivel gratuito funciona con Ollama local. La ejecución de código usa el WebContainer en el navegador por defecto; Live Share y la terminal PTY opcional se conectan a servidores externos cuando se habilitan explícitamente.

Extensión de VS Code — Synalux

IA con memoria aumentada dentro de VS Code con funciones de gestión de práctica clínica. Instale desde el marketplace:

code --install-extension synalux-ai.synalux

VS Marketplace

Chat de IA, entrada de voz, generador de notas SOAP, colaboración en equipo y videollamadas — todo dentro de VS Code. Enruta a través de Ollama local por defecto; nube en niveles de pago.

Detalles de funciones
  • IA: Participante de chat (@synalux), pipeline multiagente, entrada de voz, cambio de modelo, 10 tonos
  • Clínico: Generador de notas SOAP, acceso basado en roles, firma de documentos, tablero de pacientes
  • Colaboración: Chat de equipo, mensajes directos, videollamadas, tablero de clientes, constructor visual, DevContainers
  • Privacidad: Ollama local por defecto. preferLocal=true intenta local primero. BAA empresarial disponible.

Prism AAC

Aplicación de comunicación para usuarios no hablantes, impulsada por la flota prism-coder en el dispositivo para la predicción de frases. macOS / iOS / web.

Vea github.com/dcostenco/prism-aac


Hooks de Git (Portátiles)

Hooks de seguridad pre-commit y pre-push que funcionan con cualquier editor, cualquier herramienta de IA y CLI directa. Sin dependencia de Claude Code.

# Install in all repos (one-time)
bash hooks/install.sh

# Or install manually in a single repo
cp hooks/pre-commit .git/hooks/pre-commit && chmod +x .git/hooks/pre-commit
cp hooks/pre-push .git/hooks/pre-push && chmod +x .git/hooks/pre-push
HookQué compruebaModo
pre-commitCódigo muerto, servicios huérfanos, código de andamiaje, autenticación faltantePRECOMMIT_MODE=advisory|block|off
pre-pushAuditoría de seguridad de 19 reglas (SSRF, inyección SQL, secretos, IDOR, etc.)PREPUSH_MODE=advisory|block|off

El modo predeterminado es advisory (advertir pero permitir). Establezca *_MODE=block para aplicación estricta. Los hooks buscan primero scripts de auditoría completos en el repositorio (hooks/lib/), luego el respaldo ~/.claude/hooks/, y luego comprobaciones mínimas en línea.


Autoalojamiento (Empresarial)

Ejecute la pila completa de modelos en su propio hardware — sin nube, soberanía total de datos.

Requisitos: Mac M2 Pro+ (48 GB recomendados) o Linux + GPU NVIDIA, además de Ollama.

ollama pull dcostenco/prism-coder:9b       # default router
export LOCAL_LLM_URL=http://localhost:11434

El enrutamiento autoalojado permanece local: 9b → 4b en escritorio/servidor y 2b en móvil/iPhone, con 27B disponible cuando se instala y seguro para RAM. Los niveles de pago alojados por Synalux pueden usar Gemini 3.6 Flash como respaldo en la nube. Para iOS u otra máquina en la misma red, ejecute OLLAMA_HOST=0.0.0.0 ollama serve y apunte LOCAL_LLM_URL a la IP del host.


Referencia de configuración

VariablePropósitoPredeterminado
PRISM_STORAGElocal / synalux / supabase / autoauto
PRISM_SYNALUX_API_KEYClave de portal de nivel de pago (synalux_sk_...)-- (local si no se establece)
LOCAL_LLM_URLPunto de conexión de Ollamahttp://localhost:11434
PRISM_FORCE_LOCALForzar SQLite local independientemente de las credencialesfalse
TELEMETRY_WRITE_TOKENToken de análisis del portal (opcional — la visualización de métricas funciona sin él)--

Sin variables establecidas, Prism se ejecuta completamente local. Con una suscripción activa de memoria en la nube, establezca PRISM_SYNALUX_API_KEY (y deje PRISM_STORAGE=auto) para usar el backend de Synalux; un nivel gratuito confirmado por el portal permanece en SQLite local.


Pruebas

npm test                 # full suite (vitest) — 95 files, 2841 tests
npm test -- --coverage   # coverage report

La cobertura abarca la recuperación HRR, la ingesta de conocimiento, la cascada de inferencia y el verificador de fundamentos, las métricas de inferencia, la lista blanca de telemetría, la puerta de delegación, la compactación, el selector de modelos y los viajes de ida y vuelta de almacenamiento.


Migración: de local a la nube

Para mover el historial del nivel gratuito al portal de pago:

node scripts/migrate-local-to-portal.mjs --dry-run        # preview, no network
PRISM_SYNALUX_API_KEY=synalux_sk_... \
  node scripts/migrate-local-to-portal.mjs                # push ledger + handoffs

Lee ~/.prism-mcp/data.db y envía entradas al portal mediante POST. Las entradas del libro mayor son de solo añadido y se deduplican en el servidor; las transferencias usan última escritura gana por proyecto. Volver a ejecutar en la misma base de datos es seguro. Esta es una migración de una sola vez, no un demonio de sincronización — después, establezca PRISM_STORAGE=synalux (o déjelo en auto).


Licencia y niveles

Este repositorio (el cliente Prism MCP) está licenciado bajo Apache-2.0.

Gratuito (sin cuenta)

CaracterísticaDetalles
Inferencia localEl uso directo de Ollama no tiene restricciones; el enrutamiento automático prism_infer selecciona hasta 4B
Memoria de sesiónSesiones persistentes, transferencias, libro mayor — todo en SQLite local
Búsqueda de conocimientoBúsqueda semántica en el historial de sesiones
HabilidadesTodas las habilidades disponibles localmente (ejecute sync-skills.sh para poblarlas)
Detección de derivaRecordatorios GATE 5 en el servidor

De pago (suscripción a Synalux)

Todo lo del nivel gratuito, más:

CaracterísticaDetalles
Techo de modeloEnrutamiento automático prism_infer hasta 27B + respaldo de Gemini 3.6 Flash cuando el local no está disponible
Enrutamiento de habilidadesEl portal resuelve qué habilidades cargar según su proyecto y prompt
Memoria entre dispositivosSincronización en la nube de Supabase — las sesiones sobreviven entre máquinas
Verificador de fundamentosVerificación L3 NLI en las salidas del modelo
Funciones de equipoHivemind multiagente, colaboración en espacio de trabajo

El nivel de pago añade enrutamiento inteligente — el portal de Synalux determina qué habilidades son relevantes para su proyecto y prompt actuales, para que su agente obtenga experiencia de dominio (patrones de stripe, protocolos de entrenamiento, estándares clínicos) en lugar de cargar todo. Los usuarios gratuitos con el repositorio pueden ejecutar sync-skills.sh para poblar todas las habilidades localmente; el enrutamiento de pago añade selección consciente del proyecto y del prompt.

  • Las contribuciones requieren firmar el CLA.
  • "Prism" y "Synalux" son nombres comerciales de Synalux LLC; la licencia Apache no otorga derechos de marca (ver §6 de la licencia).

Cambio de licencia (v20)

A partir de esta versión, prism-mcp se relice bajo Apache-2.0 en lugar de AGPL-3.0. Las versiones anteriores permanecen bajo AGPL-3.0. Los forks existentes conservan todos los derechos recibidos bajo la licencia original.

ProductoLicencia
prism-mcp-server (este repositorio)Apache-2.0
Extensión de VS Code (synalux-ai.synalux)BSL-1.1
Web IDE (synalux.ai/coder)Términos de servicio de Synalux
Prism AACApache-2.0

Este repositorio está licenciado bajo Apache-2.0. Las funciones en la nube (inferencia alojada, memoria entre dispositivos, funciones de equipo) son proporcionadas por el servicio en la nube de Synalux bajo términos separados.

© 2026 Synalux, LLC.