El sistema de memoria detrás de un Agentic OS
Mike Codeur
![]()
Usas Claude Code todos los días. Pero en cada nuevo proyecto, terminas re-explicándole lo mismo: convenciones, comandos, decisiones, errores que evitar.
Y cuando se habla de solucionarlo, todos buscan "la mejor memoria de IA". Pregunta equivocada.
No hay UNA memoria — hay tres problemas diferentes: dónde almacenar la memoria, cómo el agente recupera la información correcta, y cómo esa memoria se limpia con el tiempo.
En este artículo desgloso los 6 niveles de memoria para Claude Code, y sobre todo cómo organizarlos en 3 categorías para elegir el setup correcto sin acumular herramientas al azar.
El verdadero problema: la dispersión, no el olvido
Claude Code ya tiene una memoria básica hoy:
CLAUDE.md— un archivo estático que aporta reglas y contexto al inicio- Auto Memory — el sistema donde Claude escribe sus propias notas en una carpeta
/memory
Así que sí, Claude empieza a recordar. Pero en cuanto tu setup se vuelve serio, el problema cambia. La verdadera cuestión ya no es "¿Claude se olvida?" — es la dispersión.
Tienes:
- Reglas en
CLAUDE.md - Notas auto en
/memory - Decisiones en Obsidian
- Historial en las conversaciones
- Contexto en el repo
…y a veces nada de eso cuenta exactamente la misma historia.
Es exactamente el problema que tengo en mi propio setup: Claude Code, OpenClaw, Obsidian, scripts de YouTube, vigilancia tecnológica, decisiones de negocio. Si no estructuro la memoria, el agente puede recuperar trozos de información — pero no necesariamente la fuente de verdad correcta.
Las 3 capas de una memoria agéntica
Una buena memoria agéntica no se reduce a una sola herramienta. Responde a tres preguntas distintas:
| Capa | Pregunta | Niveles |
|---|---|---|
| Storage | ¿Dónde vive la memoria? | 0, 1, 2 |
| Retrieval | ¿Cómo encuentra el agente la info correcta? | 3, 4 |
| Consolidation | ¿Cómo se limpia / madura la memoria? | 5 |
Aquí está el pitch: primero eliges la categoría que necesitas, luego el nivel adecuado. No al revés.
STORAGE — ¿Dónde vive la memoria?
Nivel 0 — CLAUDE.md, la memoria estática
El baseline. Un archivo Markdown cargado en cada arranque de Claude Code, que contiene convenciones, comandos, arquitectura, reglas del proyecto.
- Robusto porque es simple
- Pero estático: si nadie lo edita, no mejora
- Cuándo basta: proyecto solo corto, 1 repo, 1 contexto
Para muchos proyectos, esto ya es suficiente. De hecho, creo que el 60% de los devs deberían empezar aquí, no con una base vectorial o una herramienta de memoria complicada.
Nivel 1 — Auto Memory: Claude toma sus propias notas
El sistema nativo de Claude Code (desde v2.1.59+). Claude escribe él mismo en ~/.claude/projects/<project>/memory/:
MEMORY.mdcomo índice- Archivos tipados (
user.md,feedback.md,project.md,reference.md) - Topic files leídos bajo demanda
Límites importantes:
- Solo las primeras 200 líneas de
MEMORY.mdo 25 KB se cargan al inicio - Auto Memory es local a la máquina — sin sync cross-device
- Todos los worktrees del mismo repo comparten la misma carpeta
Es un avance real: Claude aprende de tus correcciones. Pero sigue siendo una memoria local, simple, basada en archivos.
Nivel 2 — Obsidian (o vault externo): tu verdadero cerebro a largo plazo
⭐ Es mi patrón firma. Si ya tienes un cerebro externo (Obsidian, Notion, un vault), ¿por qué crear un segundo?
Patrón: Claude Code lee/escribe directamente en ~/repo/obsidian-mikecodeur/.
Ventajas clave:
- Visible por humanos Y la IA (graph view, backlinks)
- Versionado con Git
- Cross-máquina automáticamente
- Compartible con otros
- Fuente de verdad única para contenido, decisiones, vigilancia
Es exactamente lo que hago para este blog, mis vídeos, mi vigilancia. Claude escribe borradores, actualiza notas, referencia con [[backlinks]].
RETRIEVAL — ¿Cómo encontrar la info correcta?
Nivel 3 — RAG (retrieval sobre codebase + docs)
Indexar tu código, tus docs, tus notas en embeddings + búsqueda por similitud.
Diferencia vs memoria: no hay "hecho aprendido" — es un índice sobre contenido existente.
Herramientas concretas:
claude-contextMCP — embeddings + retrieval para Claude Coderepomix+ embeddings sobre el codebase- Cursor codebase index — referencia del mercado
- Cody (Sourcegraph) — RAG enterprise
aidersemantic add
Cuándo merece la pena: codebase > 100k LOC, o docs internas masivas. Antes de eso → over-engineering.
"Encuéntrame el archivo que maneja la auth" en un monorepo grande, sin dar el path → ese es el caso de uso perfecto del RAG.
Nivel 4 — Memoria semántica dedicada
Retrieval, pero para hechos/preferencias, no para contenido fuente.
Herramientas:
claude-mem(github.com/thedotmack/claude-mem) — plugin Claude Code de persistent memory compression- Memory tool API (Anthropic, lanzada con Sonnet 4.5) — primitiva nativa para almacenar/recuperar vía tool calls
- mem0, Letta, Cipher — alternativas open source
Diferencia vs Nivel 3: recuperas conclusiones (hechos, feedback), no contenido fuente.
RAG recupera documentos. La memoria semántica recupera conclusiones: lo que el agente ha aprendido.
claude-mem funciona vía hooks de Claude Code (SessionStart, UserPromptSubmit, PostToolUse, SessionEnd) + un worker local + SQLite/FTS5 + un índice vectorial opcional. No es solo un MCP server — es un pipeline completo de memoria.
CONSOLIDATION — ¿Cómo madura la memoria?
Nivel 5 — Dream / sleep-time compute
Concepto: mientras no trabajas, el agente re-procesa su memoria. Re-lee sus rastros, resume, fusiona, borra el ruido, transforma el historial en conocimiento.
Implementaciones:
- OpenClaw dreaming — fases
light/deep/REM, transcripts redacted, Memory Palace Diary - Letta sleep-time agents — agente secundario que consolida durante el idle
- memory-wiki + Imported Insights (OpenClaw) — ingesta ChatGPT + consolidación
Cuándo merece la pena: agentes long-running que acumulan ruido, necesidad de "refinar" la memoria. Overkill si tienes poco volumen.
A este nivel, la memoria ya no solo se almacena o se recupera. Se reelabora.
¿Qué memoria elegir?
La trampa es acumular todas las herramientas pensando que más = mejor. La estrategia correcta es elegir el nivel adaptado a tu uso.
| Perfil | Recomendación |
|---|---|
| Proyecto pequeño, dev solo | CLAUDE.md (Nivel 0) basta de sobra |
| Claude Code regular, multi-proyecto | Activa Auto Memory (Nivel 1) |
| Creador / consultor a largo plazo | Obsidian externo (Nivel 2) ⭐ |
| Codebase grande / monorepo | Añade RAG (Nivel 3) |
| Agente autónomo multi-sesión | Memoria semántica (Nivel 4) |
| Agente long-running 24/7 | Consolidación / dreaming (Nivel 5) |
Conclusión — La memoria es el OS de tus agentes
La memoria es lo que transforma Claude Code de una herramienta en un sistema que aprende de ti. Es exactamente la base de un Agentic OS personal: sin memoria estructurada, partes de cero en cada conversación.
El objetivo no es tener el stack más complicado. Es tener una memoria que realmente ayude a tu agente a trabajar mejor sin crear una fábrica de gas.
🎥 Ver el vídeo completo: El sistema de memoria detrás de un Agentic OS (16 min)
📥 Lead magnet — El pack de memoria agéntica (gratis): mkc.sh/agentic-os-memory — plantillas, patrones Obsidian, prompts listos para copiar
📬 Newsletter The Agentic Dev: cada martes, un stack agéntico desglosado. Suscribirse