Por qué es posible que tus memorias no estén llegando al agente
El agente predeterminado cambió por debajo de la característica
La frase citada anteriormente hace dos cosas a la vez. Limita las memorias a "únicamente al agente heredado Cascade" y te indica qué agente estás usando realmente: "El agente Devin Local, el agente predeterminado para nuevas pestañas".
Nada se rompió. Un agente más nuevo se convirtió en el predeterminado y un mecanismo de persistencia más antiguo no se trasladó con él. Pero el efecto práctico para cualquiera que asumiera que su contexto acumulado lo seguía a todas partes es real: abre una nueva pestaña y no estará allí.
El proveedor ya recomienda no depender de ellas
Este no es un caso donde la documentación y la práctica no coincidan. La propia guía de Devin, escrita incluso antes de que surgiera la cuestión del agente, indica dónde pertenece el conocimiento duradero:
"Recomendación: Para el conocimiento que deseas que Cascade reutilice de manera confiable, escríbelo como una Rule o agrégalo a AGENTS.md en tu repositorio en lugar de depender de las Memories autogeneradas. Las Rules tienen control de versiones, se pueden compartir con tu equipo y te brindan un control explícito sobre la activación."Y la tabla de comparación de características es contundente sobre para qué sirven las memorias: "Deja que Cascade recuerde datos puntuales; para conocimiento duradero, prefiere Rules o AGENTS.md".
Así que el asistente de migración no es una solución alternativa para una regresión. Es una herramienta que te ayuda a hacer lo que la documentación ya recomendaba de todos modos.
Cuatro mecanismos de persistencia, cada uno con un activador diferente
La razón por la que "simplemente moverlo a una Rule" no es una instrucción única es que Devin Desktop distingue cuatro cosas, y el destino correcto depende de lo que tengas.
Rules "Le dicen a Cascade cómo comportarse (por ejemplo, 'usa bun, no npm')" y se activan mediante uno de estos modos: always_on, glob, model_decision o manual. Son ideales para "Convenciones de codificación, guías de estilo, restricciones del proyecto".
AGENTS.md ofrece "reglas con alcance de ubicación sin configuración", activadas automáticamente: "raíz = always-on, subdirectorio = glob". Ideal para "Convenciones específicas de directorio sin frontmatter".
Workflows son "plantillas de instrucciones para tareas repetibles de varios pasos", activadas "Únicamente de forma manual a través del comando de barra diagonal /[nombre-del-workflow]". Ideales para "Despliegues, revisiones de PR, listas de verificación de lanzamientos".
Skills son "procedimientos de varios pasos empaquetados con archivos de soporte (scripts, plantillas)", "invocados dinámicamente por el modelo o mediante @mención", y la documentación los destaca especialmente: "Tareas complejas donde Cascade necesita archivos de referencia: invierte aquí".
Esa última línea explica por qué el asistente se dirige específicamente a las skills en lugar de a las rules.
Los modos de activación tienen costos de contexto documentados
Si estás a punto de mover mucho contenido a las rules, esta tabla es lo primero que debes leer, porque Devin publica lo que cuesta cada modo.
always_on coloca el "Contenido completo de la regla... en la instrucción del sistema en cada mensaje", con un costo de "Cada mensaje". model_decision muestra "Solo la descripción... en la instrucción del sistema. Cascade lee el archivo de regla completo cuando decide que la descripción es relevante"; el costo es "Descripción siempre; contenido completo bajo demanda". glob se aplica "cuando Cascade lee o edita un archivo que coincide con el patrón de globs", costando "Solo cuando se tocan los archivos coincidentes". manual "no está en la instrucción del sistema" y se activa cuando escribes @nombre-de-regla.
Dos excepciones a recordar: "El archivo de reglas globales (global_rules.md) y los archivos AGENTS.md a nivel de raíz no utilizan frontmatter: siempre están activos".
Existen límites estrictos de caracteres
La restricción que suele atrapar a las personas a mitad de la migración:
"Los archivos de reglas del espacio de trabajo están limitados a 12,000 caracteres cada uno. El archivo de reglas globales está limitado a 6,000 caracteres."
Las reglas globales viven en un solo archivo en ~/.codeium/windsurf/memories/global_rules.md, "aplicadas en todos los espacios de trabajo", siempre activas, con un límite de 6,000 caracteres. Las reglas del espacio de trabajo son "Un archivo por regla, cada uno con su propio modo de activación", con 12,000 caracteres por archivo, en .devin/rules/*.md (preferido) o .windsurf/rules/*.md (alternativo), leyéndose también el archivo heredado de un solo archivo .windsurfrules en la raíz del espacio de trabajo.
Por lo tanto, el archivo global es el presupuesto más pequeño que tienes y al que la mayoría de la gente recurre primero. Volcar un año de memorias en él no cabrá.
Lo que la gente intenta
Asumir que las memorias siguen al nuevo agente. La suposición más común y la razón por la que existe este artículo. Se aplican únicamente al agente heredado Cascade.
Concluir que Devin no tiene contexto persistente. También es incorrecto, en la otra dirección. Las Rules, AGENTS.md, Workflows y Skills persisten, con un control de activación más explícito de lo que jamás tuvo una memoria autogenerada.
Pegar todo en global_rules.md. Comprensible: un solo archivo, siempre activo, sin frontmatter que aprender. También está limitado a 6,000 caracteres y se paga en cada mensaje en cada espacio de trabajo.
Hacer que cada regla sea always_on. La opción que parece segura pero que consume silenciosamente la ventana de contexto. model_decision existe precisamente para que una regla larga pueda describirse de forma económica y leerse bajo demanda.
Migrar las memorias una por una a mano. Innecesario. Existe un comando para esto: Devin: Open Cascade Migration Wizard.
Tratar las reglas como un archivador. Las mejores prácticas de Devin se oponen directamente a esto: "Mantén las reglas simples, concisas y específicas. Las reglas que son demasiado largas o vagas pueden confundir a Cascade", y "No es necesario agregar reglas genéricas (por ejemplo, 'escribir buen código')". Los datos del proyecto no son instrucciones de comportamiento, y ponerlos en las reglas es la razón por la que un directorio de reglas deja de funcionar; el patrón detrás de por qué Devin olvida tu estilo de programación incluso cuando el estilo está escrito en alguna parte.
La solución: clasificar las memorias y luego enviar cada tipo a su lugar correcto
Paso 1: Lee lo que realmente hay en tus memorias
Antes de ejecutar el asistente, mira lo que tienes. Las memorias son "Contexto que Cascade genera automáticamente durante las conversaciones", por lo que el contenido será una mezcla, y esa mezcla es la razón por la cual un único destino es incorrecto.
Clasifica lo que encuentres en cuatro grupos a medida que lees.
Comportamiento. "Usa bun, no npm". "Prefiere retornos tempranos". Estos se convierten en Rules, y el modo de activación es una decisión real en lugar de un mero trámite.
Convenciones específicas de la ubicación. Cualquier cosa que solo sea cierta dentro de un directorio. Estos se convierten en archivos AGENTS.md, donde obtienes el comportamiento de glob sin ningún tipo de frontmatter.
Procedimientos con archivos de soporte. Cualquier cosa de varios pasos que necesite un script o una plantilla. Estos son Skills, que es donde la documentación te indica que inviertas.
Datos. Por qué la API tiene versión en la ruta. Qué significa un término de dominio internamente. Qué servicio posee qué cola. Estos no encajan limpiamente en ninguno de los cuatro mecanismos, y volveremos a ellos.
Paso 2: Ejecuta el asistente y luego ubica el resto según el modo de activación
Abre la paleta de comandos y ejecuta Devin: Open Cascade Migration Wizard. Esta es la ruta documentada para las memorias de las que dependes, y se dirige a las skills, el mecanismo diseñado para procedimientos empaquetados con archivos de referencia.
Para todo lo que el asistente no cubra, ubícalo deliberadamente:
El comportamiento que debe mantenerse en todas partes va en ~/.codeium/windsurf/memories/global_rules.md, recordando el límite de 6,000 caracteres y que siempre está activo sin frontmatter.
El comportamiento con alcance de proyecto va en .devin/rules/*.md (la ubicación preferida, que "tiene prioridad" sobre .windsurf/). Dale a cada regla un trigger en el frontmatter. Usa glob con un patrón para reglas de tipo de archivo, model_decision para cualquier cosa lo suficientemente larga como para que prefieras pagar por una descripción en lugar de por todo el archivo, y reserva always_on para la lista corta que realmente se aplica a cada mensaje.
Las convenciones de directorio van en AGENTS.md en el directorio correspondiente, donde el nivel raíz es always-on y un subdirectorio es "auto-glob para ese directorio".
Dos detalles de descubrimiento que ahorran depuración. Devin busca "hasta el directorio raíz de git para encontrar reglas en directorios principales", y cuando hay varias carpetas abiertas, "las reglas se desduplican y se muestran con la ruta relativa más corta". Pero cuando creas una regla, esta "se guardará en el directorio .devin/rules de tu espacio de trabajo actual, no necesariamente en la raíz de git", así que verifica dónde quedó.
Sigue la guía de formato mientras estés allí. Devin solicita "viñetas, listas numeradas y markdown" en lugar de párrafos largos, y señala que "las etiquetas XML pueden ser una forma eficaz de comunicar y agrupar reglas similares".
Paso 3: Dale un lugar para vivir al cuarto grupo
Tres de los cuatro grupos ahora tienen un hogar adecuado. El cuarto no, y fingir lo contrario es lo que hace que los directorios de reglas se deterioren.
Los datos sobre tu proyecto no son instrucciones. No tienen un modo de activación natural: always_on paga de más por algo que necesitas ocasionalmente, glob necesita un patrón de archivo que los datos no tienen, manual requiere que sepas que la regla existe y la menciones con @, y model_decision se acerca más pero aún te pide que escribas una descripción de un dato en lugar del dato en sí. Mientras tanto, el archivo global tiene 6,000 caracteres y cada regla de espacio de trabajo tiene 12,000, y nada de ese presupuesto debería destinarse a conocimientos de fondo.
Una capa de memoria los contiene sin un modo de activación, porque el agente la lee cuando surge el tema en lugar de cuando coincide un patrón. MemoryLake se configura en tres pasos.
Paso 1: Crea una clave API
Inicia sesión y genera una clave API desde tu panel de control. No tiene un alcance limitado a un agente, por lo que no tiene la propiedad que dio origen a este artículo: nada en ella pertenece a Cascade en lugar de al agente Local.

Paso 2: Sube tus primeras memorias
Coloca en el cuarto grupo: decisiones arquitectónicas y las razones detrás de ellas, vocabulario del dominio, propiedad de los servicios, por qué existe una solución alternativa, las correcciones que has dado más de una vez.

Deja el comportamiento en las rules y los procedimientos en las skills. Esos mecanismos son buenos en sus trabajos y tienen semánticas de activación documentadas; esto es para el material que no tiene ninguna.
Paso 3: Conecta tu IA y agentes
Apunta Devin Desktop al almacén. Tus presupuestos de caracteres se destinan al comportamiento, tu conjunto de siempre activo se mantiene lo suficientemente corto como para ser seguido, y el conocimiento que hizo valiosas las antiguas memorias deja de depender de con qué agente se abra una pestaña, tal como se argumenta en convertir documentos de proyectos en memoria de IA.

Qué cambia esto en la práctica
El primer cambio es que la selección del agente deja de ser una decisión de conocimiento. En este momento, el hecho de que se aplique la capa autogenerada depende de si la pestaña es Cascade o Local. El conocimiento no debería depender de la pestaña.
El segundo es que los límites de caracteres dejan de ser una restricción de diseño. 6,000 caracteres globales y 12,000 por regla de espacio de trabajo es manejable para el comportamiento y muy estrecho para comportamiento más datos, y lo segundo no necesita estar allí.
El tercero es que el argumento del control de versiones finalmente se aplica a todo. La recomendación de Devin de usar Rules en lugar de Memories se basa en que son "con control de versiones, compartibles con tu equipo y te brindan un control explícito sobre la activación". Esas son las propiedades correctas, y los datos de fondo también las merecen; la preocupación detrás de mantener el contexto de IA del equipo cuando alguien se va.
Mejores prácticas para las rules y skills de Devin Desktop
- Ejecuta el asistente en lugar de migrar a mano.
Devin: Open Cascade Migration Wizardes la ruta documentada. - Asocia cada memoria con un mecanismo. Comportamiento a Rules, convenciones de directorio a
AGENTS.md, procedimientos con archivos a Skills. - Elige el
triggerdeliberadamente. La documentación publica el costo de contexto de cada modo;always_ones el costoso. - Respeta los límites. 12,000 caracteres por archivo de regla de espacio de trabajo, 6,000 para el archivo global.
- Prefiere
.devin/sobre.windsurf/. Es la ubicación preferida y tiene prioridad; el archivo heredado.windsurfrulestodavía se lee. - Verifica dónde se guardó una nueva regla. Va al
.devin/rulesdel espacio de trabajo actual, no necesariamente a la raíz de git. - Mantén las reglas cortas y específicas. Las reglas largas o vagas "pueden confundir a Cascade", y los consejos genéricos ya están en el modelo.
- Ten en cuenta que las reglas del sistema suman, no anulan. Las reglas a nivel de sistema empresarial "se fusionan con las reglas globales y del espacio de trabajo... sin anular las reglas definidas por el usuario", y llevan una etiqueta "System" que los usuarios no pueden eliminar.
Conclusión
La acción específica a realizar es pequeña y concreta: las memorias autogeneradas se aplican al agente heredado Cascade, el agente predeterminado para nuevas pestañas no las conserva y existe un asistente oficial para mover aquello de lo que dependes a las skills. Ejecútalo.
El punto más importante es el que señalan los propios documentos de Devin. La memoria autogenerada es buena para datos puntuales y una base deficiente para el conocimiento que necesitas de manera confiable. Clasifica lo que tienes, coloca el comportamiento y los procedimientos donde pertenecen con el modo de activación que se adapte, y mantén los datos de fondo en una capa que ningún agente individual posea.