MemoryLake
Volver a todos los artículos
Tutorial3 de septiembre de 2026·11 min de lectura

Cómo migrar de Warp a Claude Code sin perder el contexto (2026)

La mayoría de las guías de migración entre agentes de programación se reducen a renombrar un archivo. La migración de Warp a Claude Code parece una de esas: ambos leen AGENTS.md, ambos admiten archivos de instrucciones anidados y ambos tienen un comando /init que genera uno por ti.

Pero una vez que pasas del archivo a las partes que no tienen equivalente, el panorama cambia. El sistema de memoria de Warp está alojado en la nube, pertenece al equipo y se comparte entre diferentes entornos de ejecución (harnesses). El de Claude Code es un directorio de archivos markdown en tu portátil. El índice del código base de Warp es un índice de embeddings local que se reconstruye. Claude Code no tiene un equivalente que reconstruir.

Ninguno de los dos enfoques es peor. Son lo suficientemente diferentes como para que cambiar de uno a otro sin un plan signifique descartar silenciosamente la mitad de tu configuración que hacía la mayor parte del trabajo.

Primero, establezcamos un límite, ya que esta transición se consulta en ambas direcciones. Esta guía cubre la salida de Warp hacia Claude Code. Si vas en la dirección opuesta, el mapeo es diferente y las pérdidas ocurren en lugares distintos; migrar de Claude Code a Warp es el artículo indicado para eso.

Qué se transfiere realmente

Las reglas del proyecto (Project Rules) se transfieren casi por completo. Las Project Rules de Warp residen en "un archivo AGENTS.md (o WARP.md para compatibilidad con versiones anteriores)" en la raíz del repositorio o en subdirectorios. Claude Code lee CLAUDE.md con la misma estructura. El contenido se mueve textualmente; solo cambian el nombre del archivo y el orden de resolución.

Un detalle en el nombre del archivo suele causar problemas. La documentación de Warp incluye una advertencia explícita: "El nombre del archivo debe estar en mayúsculas para que Warp lo reconozca (por ejemplo, AGENTS.md, no agents.md ni Agents.md)". Claude Code busca CLAUDE.md. Si copias el archivo y olvidas renombrarlo, Warp dejará de leerlo y Claude Code nunca empezará a hacerlo.

Las reglas globales (Global Rules) se convierten en instrucciones de usuario, con una salvedad. Las Global Rules de Warp "se aplican a todos los proyectos y contextos" y se gestionan en el panel Warp Drive Rules, cada una con un nombre opcional y una descripción de "qué hace la regla y cuándo aplicarla". El equivalente más cercano en Claude Code es ~/.claude/CLAUDE.md, descrito como "Preferencias personales para todos los proyectos". El contenido se mapea. Los metadatos no: no hay un campo de descripción por regla que preservar, por lo que una Global Rule de Warp que dependiera de su descripción para indicar cuándo aplicarse se convierte en una instrucción incondicional.

La precedencia de las reglas cambia de forma. Warp resuelve los conflictos en un orden establecido: "1. Reglas en el archivo de reglas del proyecto del subdirectorio actual 2. Reglas en el archivo de reglas del proyecto del directorio raíz 3. Reglas globales". Claude Code carga sus cuatro alcances "en orden de carga, desde el alcance más amplio hasta el más específico, de modo que una instrucción de proyecto aparece en el contexto después de una instrucción de usuario": política gestionada, luego usuario, luego proyecto y, por último, CLAUDE.local.md. Mismo instinto, diferente mecanismo, y la documentación de Claude Code es sincera sobre el modo de fallo: "si dos reglas se contradicen entre sí, Claude puede elegir una de forma arbitraria".

La carga de subdirectorios es similar pero no idéntica. Warp "aplica automáticamente el AGENTS.md (o WARP.md) en la raíz y en el directorio actual", y para otros subdirectorios "hace un intento de mejor esfuerzo para incluir también el archivo de reglas de ese subdirectorio". Claude Code carga los archivos "en la jerarquía de directorios por encima del directorio de trabajo" al iniciarse, mientras que "los archivos en los subdirectorios se cargan bajo demanda cuando Claude lee archivos en esos directorios". Ambos son perezosos (lazy) con respecto a los subárboles; el desencadenante difiere.

El contexto del código base (Codebase Context) no se transfiere. Warp "indexa tu código base rastreado por Git para ayudar a los agentes a entender tu código" y, en particular, "no se almacena código en los servidores de Warp". Puedes moldearlo con archivos ignore y verificar su estado en Synced, Discovering files, Failed o Codebase too large. Esto es un índice, no un documento, y no hay nada que exportar. En su lugar, Claude Code lee los archivos bajo demanda. Lo que pierdes es la calidad de recuperación que proporcionaba ese índice; lo que ganas es no tener que esperar a una sincronización.

Agent Memory es el punto clave, y el límite es muy específico. Agent Memory de Warp "proporciona a los agentes en Warp memoria persistente a través de los entornos de ejecución compatibles, incluidos Warp Agent, Claude Code y Codex". Es real, maduro y hace más que la mayoría: almacenes personales, de agentes y de equipos; "Auto-memory" activado por defecto para nuevos agentes; extracción automática tras finalizar una conversación, donde "el nuevo conocimiento se fusiona con las memorias existentes o las reemplaza en caso de conflicto"; acceso de solo lectura o lectura y escritura por almacén con instrucciones específicas; además de trazabilidad, donde "cada memoria registra de dónde proviene", y auditabilidad, donde "cada cambio en una memoria queda registrado".

Dos hechos determinan si algo de esto te acompaña. Primero, "está en fase de investigación preliminar (research preview) y está habilitado por equipo para socios de diseño", con una lista de espera, por lo que la mayoría de los lectores ni siquiera lo tienen en primer lugar. Segundo, y esto es lo que sorprende a los socios de diseño: la cobertura de entornos de ejecución de terceros se aplica "cuando se ejecutan como agentes en la nube", y la documentación establece claramente que "la ejecución local de entornos de ejecución de terceros no es compatible durante la fase de investigación preliminar".

Por lo tanto, si tenías Agent Memory y te mudas a Claude Code ejecutándose localmente en tu propia terminal, estás fuera del camino compatible. La memoria en sí se queda donde está —"La memoria permanece vinculada a su propietario (un usuario, un agente o un equipo), independientemente de qué entorno de ejecución lea o escriba"— y Warp sigue siendo el sistema que la contiene.

La migración manual

Paso 1: Mover las reglas y definir los alcances

Comienza con los archivos, ya que son la parte que realmente se copia.

Toma cada AGENTS.md (o WARP.md) en tu repositorio y crea el CLAUDE.md correspondiente en la misma ruta. El archivo raíz a la raíz CLAUDE.md, ui/AGENTS.md a ui/CLAUDE.md. El contenido no cambia.

Luego, divide por alcance en lugar de volcar todo en un solo archivo. La documentación de Claude Code recomienda apuntar a "menos de 200 líneas por archivo CLAUDE.md", porque "los archivos más largos consumen más contexto y reducen la adherencia". Si tu archivo raíz de Warp creció más allá de eso, este es el momento de dividirlo: el directorio .claude/rules/ de Claude Code acepta archivos temáticos, "todos los archivos .md se descubren de forma recursiva", y las reglas se pueden acotar con el frontmatter paths para que "solo se apliquen cuando Claude esté trabajando con archivos que coincidan con los patrones especificados".

Vale la pena hacer ese mapeo de manera deliberada. Un archivo de reglas de subdirectorio de Warp existía en parte porque Warp no tenía otra forma de acotar las directrices. En Claude Code puedes mantenerlo como un CLAUDE.md anidado o convertirlo en una regla con alcance de ruta (path-scoped), y la segunda opción suele ser la más adecuada para algo como "todos los controladores de API deben validar la entrada".

Mueve las Global Rules a ~/.claude/CLAUDE.md. Para cualquier cosa genuinamente personal de un proyecto, CLAUDE.local.md en la raíz del proyecto cumple esa función y debe incluirse en .gitignore.

Por último, verifica en lugar de asumir. Ejecuta /context en una sesión y revisa la lista bajo Memory files, la forma documentada de Claude Code para confirmar qué se cargó realmente. Cada paso de migración anterior es el tipo de cosas que a menudo funciona a medias de forma silenciosa, que es el patrón detrás de por qué Claude Code olvida el contexto del proyecto de manera más general.

Paso 2: Decidir qué pasa con el conocimiento que no tiene archivo

Ahora la parte que no se copia.

Si estabas usando Agent Memory, haz un inventario de lo que hay en esos almacenes antes de dejar de usar Warp. La trazabilidad ayuda aquí (cada memoria registra su origen) y los almacenes de equipo suelen ser donde se encuentra el material valioso: guías de despliegue (runbooks), convenciones de revisión, procedimientos de guardia (on-call). Léelos y anota lo que aún importa. No existe una ruta de exportación que convierta un almacén de Warp en un directorio de memoria de Claude Code, por lo que este es un ejercicio de lectura y reescritura, y es algo que debes hacer a mano.

Claude Code tiene su propia capa automática para recibir parte de ello. La memoria automática (Auto memory) está activada por defecto y Claude escribe cuatro tipos de notas, etiquetadas por un campo type: user para "tu rol, experiencia y preferencias de trabajo", feedback para "correcciones que le das a Claude y enfoques que confirmas", project para "trabajo en curso, plazos y decisiones que Claude no puede derivar del código o del historial de git", y reference para "dónde encontrar información fuera del proyecto".

Conoce su estructura antes de confiar en ella. Almacena archivos de texto plano bajo ~/.claude/projects/<project>/memory/ con un índice MEMORY.md, y la porción cargada está limitada: "Cada sesión (las primeras 200 líneas o 25 KB)". Su alcance es "Por repositorio, compartido entre árboles de trabajo (worktrees)", derivado del repositorio de git. Y Claude se niega deliberadamente a duplicar: "Claude omite cualquier cosa que pueda derivar del código base" y "también omite cualquier cosa que tus archivos CLAUDE.md ya digan".

La brecha entre los dos sistemas no es de calidad, sino de topología. Los almacenes de Warp están alojados en la nube, se pueden conectar a varios agentes y se pueden compartir con un equipo al conectar un almacén a un agente que usa todo el equipo. La memoria automática de Claude Code es local, por repositorio y tuya. Pasar del primero al segundo significa que el conocimiento compartido de un equipo se convierte en archivos privados de varias personas, que es el modo de fallo descrito en mantener el contexto de IA del equipo cuando alguien se va.

La mejor manera: un único almacén que ambas herramientas leen

Todo lo anterior es una conversión de una sola vez que te deja con archivos locales y una capa compartida por el equipo que ya no tienes. Existe una tercera opción que hace que la conversión sea más pequeña y el resultado más duradero: mantener el conocimiento duradero en un almacén que no pertenezca a ninguna de las dos herramientas.

Eso replantea la migración. En lugar de traducir la memoria de Warp a la memoria de Claude Code, apuntas ambas a la misma capa y dejas que los archivos específicos de la herramienta sigan siendo pequeños y específicos. También significa que la próxima migración (y la habrá) será un cambio de nombre de archivo de reglas en lugar de un proyecto de arqueología. MemoryLake se configura en tres pasos.

Paso 1: Crear una clave de API

Inicia sesión y genera una clave de API desde tu panel de control. La credencial te pertenece a ti en lugar de a un entorno de ejecución, que es la propiedad que importa aquí: Agent Memory de Warp cubre entornos de ejecución de terceros cuando se ejecutan como agentes en la nube de Warp, y esto cubre a Claude Code dondequiera que lo ejecutes, incluso localmente.

Creación de una clave de API de MemoryLake para que un único almacén de memoria sirva tanto para Warp como para Claude Code
Creación de una clave de API de MemoryLake para que un único almacén de memoria sirva tanto para Warp como para Claude Code

Paso 2: Subir tus primeras memorias

Aquí es donde va el material del Paso 2 de la migración manual. Guías de despliegue (runbooks), convenciones de revisión, decisiones arquitectónicas y sus motivos, el vocabulario del dominio que necesitaría un nuevo compañero de equipo. Cualquier cosa que hayas leído de un almacén de equipo de Warp y que no quisieras perder.

Subir el conocimiento que no tiene archivo de reglas a MemoryLake durante una migración de Warp a Claude Code
Subir el conocimiento que no tiene archivo de reglas a MemoryLake durante una migración de Warp a Claude Code

Mantén las conexiones específicas de la herramienta donde corresponden. Los comandos de compilación y la disposición de los archivos se quedan en CLAUDE.md; los hechos se mueven aquí.

Paso 3: Conectar tu IA y agentes

Apunta Claude Code al almacén, y apunta Warp a él también si todavía ejecutas ambos. Los equipos a mitad de la migración suelen hacerlo durante un tiempo, y ese período es exactamente cuando una capa compartida se gana su lugar, el mismo razonamiento detrás de la memoria entre agentes (cross-agent memory) en general.

Conectar Claude Code y Warp al mismo almacén de MemoryLake a través de MCP
Conectar Claude Code y Warp al mismo almacén de MemoryLake a través de MCP

Qué cambia esto en la práctica

El primer cambio es que la migración deja de tener pérdidas. Los archivos se copian de cualquier manera; lo que se pierde es el conocimiento que no se puede archivar, y esa es la parte que contiene un almacén compartido.

El segundo es que el conocimiento del equipo sigue siendo del equipo. Warp facilitaba el intercambio al conectar un almacén a un agente que usa todo el equipo. La memoria automática de Claude Code es por repositorio y local por diseño. Una capa compartida mantiene la primera propiedad mientras adoptas la segunda herramienta.

El tercero es que ejecutar ambas herramientas deja de ser una carga de mantenimiento. El comando /init de Warp puede incluso enlazar un archivo de reglas externo existente (la lista compatible incluye CLAUDE.md, .cursorrules, AGENT.md, GEMINI.md, .clinerules, .windsurfrules y .github/copilot-instructions.md), por lo que la capa de instrucciones puede ser genuinamente un solo archivo. La capa de conocimiento necesita el mismo tratamiento, y eso es lo que la configuración de reglas de proyecto de Warp puede y no puede hacer por sí sola.

Buenas prácticas para una migración de Warp a Claude Code

  • Renombra, no te limites a copiar. AGENTS.md debe estar en mayúsculas para Warp; Claude Code requiere CLAUDE.md. Un archivo copiado pero no renombrado no será leído por ninguno de los dos.
  • Divide antes de migrar. Apunta a menos de 200 líneas por CLAUDE.md; convierte las reglas de subdirectorio acotadas de Warp en entradas con alcance de paths bajo .claude/rules/.
  • Verifica con /context. Revisa la lista de Memory files en lugar de asumir que un archivo se cargó.
  • Lee tus almacenes de Warp antes de dejarlos. La trazabilidad te indica de dónde proviene cada memoria; nada las exportará por ti.
  • Espera que la memoria automática sea selectiva. Omite lo que tu CLAUDE.md ya dice y lo que puede derivar del código, y carga las primeras 200 líneas o 25 KB.
  • Evita las contradicciones. Claude Code puede elegir de forma arbitraria entre reglas en conflicto, así que revisa periódicamente las reglas y los archivos anidados.
  • Usa hooks para lo que deba cumplirse estrictamente. Las instrucciones son contexto, no imposición; un hook PreToolUse es la forma documentada de bloquear una acción por completo.
  • No asumas que Agent Memory te acompaña. Está en fase de investigación preliminar (research preview) habilitada por equipo para socios de diseño, y los entornos de ejecución locales de terceros están fuera del camino compatible durante esta fase.

Conclusión

La mitad de esta migración correspondiente a los archivos consiste en un cambio de nombre y una decisión de alcance, y el directorio de reglas de Claude Code es genuinamente mejor para ofrecer directrices condicionales que un montón de archivos de subdirectorio.

La mitad que duele es la mitad que nadie exporta. Warp contiene un sistema de memoria alojado en la nube, compartido por el equipo y auditado; Claude Code contiene markdown local por repositorio. Lee tus almacenes antes de irte, coloca los hechos duraderos en un lugar que ninguna de las dos herramientas posea, y la migración te costará una tarde en lugar de un trimestre de reaprendizaje.

Preguntas frecuentes

¿Puedo exportar Agent Memory de Warp a Claude Code?

No existe una ruta de exportación entre ellos. La memoria de Warp "permanece vinculada a su propietario (un usuario, un agente o un equipo), independientemente de qué entorno de ejecución lea o escriba", y la memoria automática de Claude Code es un directorio local bajo ~/.claude/projects/<project>/memory/. Migrar significa leer tus almacenes de Warp y escribir a mano en otro lugar los hechos que aún importan.

¿La memoria entre entornos de ejecución de Warp cubre a Claude Code?

Para las configuraciones compatibles, sí: Agent Memory se comparte entre "Warp Agent, Claude Code y Codex", pero los entornos de ejecución de terceros están cubiertos "cuando se ejecutan como agentes en la nube", y la documentación establece que "la ejecución local de entornos de ejecución de terceros no es compatible durante la fase de investigación preliminar". Agent Memory también se encuentra en fase de investigación preliminar y está habilitada por equipo para socios de diseño.

¿Funcionará mi AGENTS.md en Claude Code tal cual?

Renómbralo a CLAUDE.md y el contenido funcionará. Ten en cuenta que Warp requiere el nombre del archivo en mayúsculas para reconocerlo, por lo que si estás ejecutando ambas herramientas durante una transición, mantén ambos archivos o usa el comando /init de Warp para enlazar un CLAUDE.md existente (su lista compatible de archivos de reglas externos lo incluye).

¿Cómo sé qué archivos de instrucciones cargó realmente Claude Code?

Ejecuta /context en una sesión y lee la lista bajo Memory files. Los archivos en la jerarquía por encima de tu directorio de trabajo se cargan al inicio; los archivos en los subdirectorios se cargan bajo demanda cuando Claude lee archivos en esos directorios.

¿Qué reemplaza al índice del código base de Warp?

Nada directamente. Warp indexa tu código base rastreado por Git para fundamentar las respuestas del agente, y "no se almacena código en los servidores de Warp". Claude Code lee los archivos bajo demanda en lugar de mantener un índice de embeddings, por lo que en lugar de ajustar archivos ignore, escribes los hechos estructurales que deseas que estén disponibles de manera confiable.

¿La memoria automática de Claude Code se comparte con mi equipo?

No. Su alcance es "Por repositorio, compartido entre árboles de trabajo (worktrees)" y reside en archivos locales derivados del repositorio de git. Si lo que tenías en Warp era conocimiento compartido del equipo, esa propiedad debe provenir de otro lugar; consulta configurar la memoria de IA compartida para un equipo.