Jevmem: memoria persistente para Claude Code en 0,3s

Jevmem es la memoria persistente que faltaba entre sesiones de Claude Code

Jevmem es una herramienta de código abierto, publicada por Avinash Jetwani, que captura automáticamente las decisiones, restricciones, bugs y tareas pendientes que surgen en tus chats con Claude Code y las guarda en un archivo JEVMEM.md dentro del proyecto. En la siguiente sesión, el sistema vuelve a inyectar esas líneas en el contexto del agente, de modo que el modelo "recuerda" sin que tengas que pegarle tú el historial. Cuando cambias de opinión, la línea vieja no se borra: se marca como [superseded] y queda enlazada al id de la nueva, formando un historial auditable de por qué el proyecto terminó tomando un camino u otro.

Cómo captura y recupera memoria en cada turno

El flujo técnico es simple en la superficie y estricto por debajo. Al ejecutar npm install -g jevmem y jevmem init --tool claude, la herramienta crea JEVMEM.md, un jevmem.config.json y una carpeta .jevmem/ ignorada por git, además de registrar dos hooks en .claude/settings/local.json. Uno se dispara en cada Stop (fin de turno del asistente) para capturar; el otro corre en cada UserPromptSubmit para reinyectar las líneas relevantes en el contexto antes de que el modelo responda.

Antes de mandar el turno al backend de TypeSafe AI, jevmem aplica un scrubbing local que elimina formas comunes de credenciales, emails y números de 16 dígitos. Lo que sale de tu máquina es: el mensaje del usuario (y la respuesta del asistente cuando es una pregunta o reporte de bug), los dos turnos anteriores y tus líneas de memoria guardadas. Si configuras una API key de OpenAI o Anthropic, el texto del turno guardado viaja también a ese proveedor para redactar la línea final.

🤖 La IA no es solo para leer sobre ella

En la comunidad la aplicamos: automatización, agentes IA y herramientas reales para emprender, no solo para informarte.

👥 Aplicarla en la comunidad

Los benchmarks: 0,30 s y US$0,000127 por decisión

En una batería de 66 turnos held-out fechada el 23 de septiembre, jevmem comparó siete "deciders" con el mismo estado. Los números crudos, según el README del repositorio:

Decider save/skip save+kind contradicciones p50 $/decisión
GPT-6 Astra 98,5% 98,5% 5/5 3.469 ms $0,007489
GPT-6 Luna 93,9% 93,9% 5/5 2.927 ms $0,000089
Claude Fable 5.1 95,5% 95,5% 5/5 4.290 ms $0,013256
Claude Opus 5.5 97,0% 97,0% 5/5 2.784 ms $0,005186
Gemini 3.8 Flash 92,4% 92,4% 5/5 2.850 ms $0,001174
Grok 4.7 90,9% 90,9% 4/5 3.320 ms $0,004602
jevmem auto 98,5% 95,5% 5/5 300 ms $0,000127

El sistema logra 98,5% en save/skip (empatado con GPT-6 Astra) y 95,5% en save+kind, dentro del rango 90,9%–98,5% de los seis LLMs grandes. La diferencia real está en latencia y costo: 0,30 s frente a 2,8–4,3 s, y US$0,000127 por decisión frente a entre US$0,000089 y US$0,013256. Si la prioridad es exactitud máxima, GPT-6 Astra y Claude Opus 5.5 rinden mejor en save+kind a costa de pagar 40–60× más por decisión y asumir 9–12× la latencia. El propio autor aclara que es una sola corrida y que diferencias de uno o dos turnos están dentro del ruido entre ejecuciones.

Compatibilidad: Claude Code, Codex, Cursor y Claude Desktop

La captura automática vía hook solo está disponible en Claude Code. Para los demás clientes hay niveles distintos de integración, listados por el propio repositorio:

  • Claude Code: setup, captura y recall automáticos vía hooks Stop y UserPromptSubmit.
  • Codex: setup automático. La captura corre mientras está activo jevmem watch, que hace tail del session log del proyecto; fuera de eso, depende de que el agente llame MCP add_memory siguiendo una sección en AGENTS.md. El recall también es iniciado por el agente vía search_memory.
  • Cursor: setup automático. La captura y el recall son agent-initiated: una regla en .cursor/rules/jevmem.mdc le indica al agente cuándo llamar a add_memory y search_memory. Si el agente no las dispara, no se guarda nada.
  • Claude Desktop: setup manual (hay que pegar un snippet de configuración). Tanto la captura como el recall son manuales: hay que pedírselos al chat.

El comando unificado es jevmem init [--tool claude|cursor|codex|claude-desktop|all] [--no-hooks]. La misma herramienta ofrece además subcomandos como jevmem search, jevmem list, jevmem audit (re-evalúa memorias contra el repo y marca [stale?]) y jevmem fit (reajusta pesos y umbrales desde etiquetas, necesita 40+ labels).

Limitaciones que el propio repo reconoce

El README es explícito sobre lo que todavía no se sabe:

  • Es v0.4, y ambos sets de evaluación los escribió el autor: ninguno es un benchmark independiente.
  • La calidad del recall no está medida; sí se prueba que las líneas relevantes se inyectan, pero no que las respuestas mejoren.
  • La deriva de largo plazo no está medida: el harness cubre sesiones de cinco turnos, no semanas de uso.
  • Las caídas de Jev descartan turnos: cada llamada tiene un presupuesto de 2 s, y si la API está lenta o caída, el turno se loguea en .jevmem/log.jsonl y se salta, sin reintento.
  • La captura automática funciona solo en Claude Code (y en Codex con jevmem watch); Cursor y Claude Desktop dependen de que el agente o el usuario llamen a add_memory.

El contexto: la memoria es el nuevo campo de batalla de Claude Code

La aparición de jevmem no es aislada. Según un análisis de Geeky Gadgets sobre la evolución reciente de Claude Code, la comunidad viene construyendo capas de memoria open source para suplir las limitaciones del sistema por defecto, basado en un único claw.md y un índice memory.md demasiado ralo. Herramientas como Memarch, Gbrain y Hermes ya ofrecían transcripciones completas de conversación e inyección dinámica de contexto relevante; jevmem se suma a esa línea con un enfoque minimalista (un solo archivo markdown legible por humanos, una decisión rápida por turno).

Al mismo tiempo, Anthropic mueve ficha desde el lado propietario. El 17 de septiembre de 2026 anunció la beta de Claude Code Projects, donde cada proyecto tiene un coordinador que reparte trabajo entre varios hilos (sesiones completas en la nube, cada una con su rama y copia del repo), compartiendo repositorio, instrucciones y memoria a nivel de proyecto. Como apunta ADTMag, esto vuelve al desarrollador más un gestor que un implementador: definir bien el objetivo y revisar PRs se vuelve la parte central del trabajo. TechRepublic sitúa además a OpenAI Codex, Google Antigravity CLI, GitHub Copilot, Cursor y Kiro como las cinco alternativas principales a Claude Code en lo que va de 2026, cada una con enfoques distintos de captura y memoria.

Para founders y equipos chicos, la diferencia operativa es clara: las soluciones open source como jevmem viven dentro del repo, son auditables y no dependen de un proveedor cloud para ejecutarse; Claude Code Projects apunta a equipos más grandes con trabajo paralelo y coordinación centralizada.

¿Qué significa esto para tu startup?

Si trabajas con Claude Code o Codex a diario, el problema más caro no es el código que se escribe: es el conocimiento del proyecto que se pierde entre sesiones. Cada vez que arrancas un chat nuevo, vuelves a explicar la arquitectura, las decisiones pendientes, los "no toques esto". Jevmem automatiza exactamente esa transferencia y, según los números del propio repo, lo hace a una fracción del costo y la latencia de pasarle la decisión a un LLM grande.

Acciones concretas que puedes aplicar hoy:

  • Instálalo en tu próximo proyecto y mira qué captura. Corre npm install -g jevmem, entra al directorio del proyecto y ejecuta jevmem init --tool claude. Después de unas sesiones, abre JEVMEM.md: vas a ver qué decisiones se guardaron y cuáles quedaron fuera. Es la forma más rápida de saber si la herramienta resuelve tu problema.
  • Audita tu repo antes de confiarle la memoria. El comando jevmem audit re-evalúa cada línea contra el estado actual del repo y marca [stale?] las que parecen obsoletas. Útil cuando un proyecto lleva meses y te preocupa que la memoria sea un cementerio.
  • Si tu equipo usa Cursor o Codex, no asumas captura automática. Solo Claude Code con hook activo (y Codex con jevmem watch) captura sin que el agente decida. En Cursor dependes de que el agente invoque add_memory; crea una regla en .cursor/rules/jevmem.mdc y revísala periódicamente.
  • Si vas a integrarlo en un proyecto con credenciales sensibles, lee SECURITY.md antes. El scrubber cubre API keys, pares _PASSWORD=, connection-strings, claves privadas, emails y números de 16 dígitos, pero deja pasar nombres, teléfonos y direcciones. Si tu código maneja datos personales, añade tu propio paso de redacción.

Fuentes

🤖 La IA no es solo para leer sobre ella

En la comunidad la aplicamos: automatización, agentes IA y herramientas reales para emprender, no solo para informarte.

👥 Aplicarla en la comunidad

Daily Shot: Tu ventaja táctica

Lo que pasó en las últimas 24 horas, resumido para que tú no tengas que filtrarlo.

Suscríbete para recibir cada mañana la curaduría definitiva del ecosistema startup e inversionista. Sin ruido ni rodeos, solo la información estratégica que necesitas para avanzar:

  • Venture Capital & Inversiones: Rondas, fondos y movimientos de capital.
  • IA & Tecnología: Tendencias, Web3 y herramientas de automatización.
  • Modelos de Negocio: Actualidad en SaaS, Fintech y Cripto.
  • Propósito: Erradicar el estancamiento informativo dándote claridad desde tu primer café.

📡 El Daily Shot Startupero

Noticias del ecosistema startup en 2 minutos. Gratis, todos los días.

Share to...