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

Cómo colocar las directrices de Junie sin desconectar tu carpeta de reglas (Guía 2026)

Abriste un proyecto en Junie CLI por primera vez, detectó los archivos de instrucciones que dejó tu agente de programación anterior y te ofreció importarlos. Aceptaste. Todo terminó en .junie/AGENTS.md, la raíz del proyecto quedó más limpia y la carpeta .junie/rules/ que habías estado manteniendo sigue ahí, aparentemente intacta y sin leer.

No hubo ningún error en la importación. Lo que ocurrió es que el descubrimiento de directrices de Junie se ejecuta como una lista ordenada de rutas, y las rutas no son equivalentes. JetBrains documenta tres de ellas, y solo una se describe como capaz de incorporar tus archivos de playbook y reglas junto con las directrices principales. Consolidar todo en la primera ruta es el movimiento que parece más ordenado y el que tiene más probabilidades de dejar aislado el resto de tu configuración.

Esta guía recorre las tres rutas en orden, muestra dónde se acoplan el playbook y la carpeta de reglas, explica cómo interactúa el nivel global con el nivel de proyecto y te ofrece una ubicación que podrás defender dentro de seis meses.

Por qué ordenar puede costarte la carpeta de reglas

Comencemos con el propósito de las directrices. JetBrains las describe como el informe permanente: "Las directrices le permiten proporcionar un contexto persistente y reutilizable al agente. Junie CLI lee las directrices del archivo AGENTS.md y añade este contexto a cada tarea en la que trabaja".

Luego, el orden de descubrimiento, citado de la documentación. "Cuando Junie CLI inicia una tarea, busca directrices en el siguiente orden:" primero, "el archivo .junie/AGENTS.md en la raíz del proyecto". Segundo, "el archivo AGENTS.md en la raíz del proyecto, combinado con .junie/playbook.md y cada archivo .junie/rules/*.md, si están presentes". Tercero, "el archivo .junie/guidelines.md o la carpeta .junie/guidelines/ – el formato heredado de Junie para las directrices (aún compatible)".

Lee esas tres líneas como una tabla en lugar de prosa y la asimetría saltará a la vista. La combinación con .junie/playbook.md y .junie/rules/*.md está documentada únicamente en la segunda ruta. La primera ruta nombra un solo archivo. La tercera nombra la ubicación heredada. Si tienes una carpeta de reglas y un playbook, la ruta que los transporta es aquella donde tus directrices principales residen en la raíz del proyecto como AGENTS.md, no la que está dentro de .junie/.

Esto importa por la forma en que la mayoría de la gente llega aquí. La importación al abrir por primera vez también está documentada: "Junie CLI comprueba si hay directrices o archivos de memoria de otros agentes de IA cuando abre el proyecto por primera vez. Si se detectan tales archivos, sugerirá importar las instrucciones en .junie/AGENTS.md". Esa sugerencia es sensata para un proyecto que no tiene nada más. Para un proyecto que ya tiene una carpeta .junie/rules/, te traslada silenciosamente a la ruta donde la documentación no describe la combinación de esos archivos.

Nada de esto produce un error. Junie sigue teniendo directrices, sigue siguiéndolas y sigue haciendo un buen trabajo. Las reglas que separaste por razones estructurales simplemente ya no forman parte del informe, y la única forma de notarlo es leer la lista ordenada.

Lo que la gente intenta en su lugar

Poner el mismo contenido en dos lugares. Copiar el contenido de la carpeta de reglas en .junie/AGENTS.md funciona en el sentido estricto de que el contenido llega. Pero también significa que cada edición futura tendrá dos hogares, y uno de ellos terminará desactualizado.

Mover todo a la ubicación heredada. .junie/guidelines.md y .junie/guidelines/ se describen como "el formato heredado de Junie para las directrices (aún compatible)", y la compatibilidad no es lo mismo que ser la ruta sobre la cual se construye la documentación. Es la tercera entrada en el orden, y es donde la gente aterriza por accidente cuando busca "directrices de Junie" y encuentra material más antiguo.

Asumir que el archivo global llena el vacío. Tiene su propia función. "Junie CLI también admite directrices globales desde ~/.junie/AGENTS.md", y en Windows "la ruta de las directrices globales es %USERPROFILE%\.junie\AGENTS.md". La documentación es específica sobre su propósito: "Este archivo le permite definir preferencias personales o reglas de toda la organización que se aplican a todos sus proyectos sin duplicarlas en cada repositorio". Las preferencias personales no sustituyen a la carpeta de reglas de un proyecto.

Duplicar las reglas del proyecto en el archivo global para estar seguros. Junie maneja el caso inofensivo con elegancia — "Si las directrices globales y de proyecto tienen un contenido idéntico, Junie elimina automáticamente los duplicados y utiliza el contenido una sola vez" — pero los casi duplicados son el verdadero riesgo, y se resuelven por precedencia en lugar de por fusión.

Decidir que el problema es la memoria. Las habilidades reutilizables y los archivos de instrucciones responden a "cómo debes trabajar", y la brecha entre eso y un registro del proyecto es una cuestión completamente distinta, tratada en por qué las habilidades de los agentes no son memoria.

La solución: Elige una ruta deliberadamente, luego adjunta el playbook y las reglas donde están documentados

Paso 1: Haz un inventario de las tres rutas y mira en cuál está tu proyecto

Busca cuatro cosas: un .junie/AGENTS.md, un AGENTS.md en la raíz del proyecto, un .junie/playbook.md y una carpeta .junie/rules/ con archivos markdown en ella. Luego, comprueba también el par heredado: un .junie/guidelines.md o una carpeta .junie/guidelines/.

Compara lo que encuentres con la lista ordenada. Si tienes un .junie/AGENTS.md, estás en la ruta uno. Si tienes un AGENTS.md en la raíz y ningún .junie/AGENTS.md, estás en la ruta dos, y la documentación describe esa ruta como la que combina el playbook y cada archivo .junie/rules/*.md "si están presentes". Si solo tienes los archivos heredados, estás en la ruta tres.

El caso al que debes prestar más atención es aquel en el que existen varios de estos a la vez; típicamente un .junie/AGENTS.md creado por la importación al abrir por primera vez, más una carpeta .junie/rules/ anterior a este, y tal vez un guidelines.md heredado que nadie ha abierto en meses. No se trata de un proyecto roto; es un proyecto cuyos archivos se acumularon más rápido de lo que nadie volvió a leer el orden de descubrimiento.

Paso 2: Coloca el informe principal en la ruta que transporta el resto de tu configuración

La decisión es sencilla una vez que tienes el inventario frente a ti.

Si tienes una carpeta .junie/rules/ o un .junie/playbook.md que deseas en cada tarea, coloca las directrices principales en el AGENTS.md de la raíz del proyecto, la ruta que la documentación describe como la que los combina. Esto también tiene un beneficio secundario digno de mención: un AGENTS.md en la raíz es el nombre de archivo multiplataforma que buscan otros agentes, por lo que un solo archivo sirve para Junie y para todo lo demás, en el espíritu de la propia descripción del formato como "un formato de archivo abierto para guiar a agentes de programación".

Si no tienes carpeta de reglas ni playbook, .junie/AGENTS.md está bien y mantiene la raíz despejada. Solo registra esa elección en algún lugar, porque el día que alguien agregue una carpeta de reglas, la ruta dejará de coincidir con la configuración.

Si estás utilizando los archivos heredados, mueve el contenido a cualquiera de las dos rutas anteriores que se adapte mejor y deja una breve nota en el repositorio que indique dónde viven ahora las directrices. Un .junie/guidelines.md que se ha vaciado sin explicación se lee, para la siguiente persona, como un archivo que alguien borró por error.

Escribe las directrices mismas en las categorías que ilustra JetBrains, porque se corresponden con las preguntas en las que los agentes suelen equivocarse: una "Lista de verificación de inicio rápido" con "las reglas más críticas que el agente debe seguir antes de hacer cualquier cosa"; "Comandos de desarrollo local" como una tabla de entradas de instalación, linter, pruebas, compilación y servidor de desarrollo; "Desarrollo de funciones y toma de decisiones"; "IU y arquitectura"; "Seguridad y manejo de datos"; "Pruebas y contribución"; y una sección de "No objetivos para los agentes", descrita como "Prohibiciones explícitas de lo que los agentes NO deben hacer". Esta última categoría es la que la gente suele omitir y luego desearía no haberlo hecho. El propósito se establece claramente: proporcionar esta información "ayuda a Junie a comprender mejor su entorno, evitar bibliotecas incompatibles y seguir los patrones arquitectónicos específicos de su proyecto".

Paso 3: Configura el nivel global con un alcance personal y deja que la precedencia haga el resto

Ahora coloca el archivo global a propósito. ~/.junie/AGENTS.md debe contener las cosas que son aplicables a ti en lugar de al proyecto: cómo te gusta que se redacten los commits, qué hábitos de revisión deseas aplicar en todas partes, convenciones de toda la organización que realmente abarquen varios repositorios.

La interacción entre los niveles está documentada en tres casos, y son tranquilizadoramente predecibles. "Si solo existen directrices globales o solo de proyecto, Junie utiliza las que estén disponibles; no se añaden anotaciones adicionales". "Si existen directrices tanto globales como de proyecto, Junie incluye ambas y las marca claramente. Las directrices a nivel de proyecto siempre tienen precedencia sobre las globales cuando entran en conflicto". Y "Si las directrices globales y de proyecto tienen un contenido idéntico, Junie elimina automáticamente los duplicados y utiliza el contenido una sola vez".

Dos consecuencias prácticas. Primero, no necesitas duplicación defensiva: el contenido idéntico se desduplica y el contenido en conflicto se resuelve a favor del proyecto. Segundo, los casi duplicados son donde viven las sorpresas. Una línea global que diga "siempre añade pruebas de integración" y una línea de proyecto que diga "solo pruebas unitarias para el trabajo de funciones" no son idénticas, por lo que ambas se incluyen y el proyecto gana, lo cual es correcto y también invisible a menos que vayas a buscarlo. Mantener los dos niveles con alcances genuinamente diferentes es lo que hace que la precedencia sea una característica en lugar de un rompecabezas. La misma disciplina da sus frutos dondequiera que intervengan archivos de instrucciones en capas, como en cómo Copilot ordena los archivos de instrucciones.

Configuración en MemoryLake

Las directrices son un informe que se incluye en cada tarea, por lo que deben ser breves, lo que significa que el razonamiento detrás de ellas debe vivir en otro lugar. Por qué el paquete heredado está fuera de los límites, qué biblioteca rechazaste y por qué motivos, qué protege una convención de nomenclatura... nada de eso pertenece a un archivo que el agente lee en cada ejecución, y todo ello es lo que necesitas al decidir si una directriz sigue siendo válida. Un almacén donde escribes entradas de MemoryLake a propósito mantiene ese registro recuperable sin inflar el informe. Tú mismo escribes las entradas, con tus propias palabras. No se lee, escribe ni elimina nada de tu directorio .junie ni de los archivos de ninguna otra herramienta.

Paso 1: Crea una clave API

Inicia sesión y genera una clave API desde la configuración de tu espacio de trabajo. Esta es la credencial que utilizan tus agentes e integraciones, así que créala antes de empezar a mover nada.

La consola de MemoryLake mostrando la pantalla de claves API, donde se crea y copia una nueva clave para su uso en un agente
La consola de MemoryLake mostrando la pantalla de claves API, donde se crea y copia una nueva clave para su uso en un agente

Paso 2: Sube tus primeras memorias

Comienza con las decisiones que asumen tus directrices: por qué el stack tiene este aspecto, qué enfoque perdió la discusión y por qué, contra qué protege realmente la sección de "no objetivos". Escribe cada una como una nota breve e independiente para que pueda recuperarse por separado.

El espacio de trabajo de MemoryLake con los primeros documentos subidos, listando cada archivo a medida que se convierte en memoria de búsqueda
El espacio de trabajo de MemoryLake con los primeros documentos subidos, listando cada archivo a medida que se convierte en memoria de búsqueda

Paso 3: Conecta tu IA y agentes

Conecta los asistentes y agentes que utilizas. El razonamiento viajará contigo, independientemente de la ruta que utilice una herramienta determinada para encontrar su archivo de instrucciones.

La pantalla de integraciones de MemoryLake que enumera los clientes de IA y los frameworks de agentes que se pueden conectar a la capa de memoria
La pantalla de integraciones de MemoryLake que enumera los clientes de IA y los frameworks de agentes que se pueden conectar a la capa de memoria

Qué cambia esto en la práctica

La importación al abrir por primera vez se convierte en una decisión en lugar de una opción por defecto. Que Junie ofrezca consolidar los archivos de otros agentes en .junie/AGENTS.md es realmente útil en un proyecto nuevo. En un proyecto con una carpeta de reglas, es el momento de hacer una pausa y comprobar en qué ruta deseas estar.

Una carpeta de reglas se convierte en una estructura real en lugar de un hábito de archivo. Dividir las directrices en .junie/rules/*.md solo da sus frutos si la ruta en la que te encuentras es la que está documentada como la que las combina; de lo contrario, la división es organizativa en lugar de funcional. Esa es la misma razón por la que vale la pena fusionar directorios de reglas dispersos de manera deliberada, como en cómo fusionar carpetas de reglas de Windsurf y Devin.

El uso compartido entre herramientas obtiene una respuesta concreta. Elegir la ruta del AGENTS.md en la raíz te brinda un archivo que Junie lee y que otros agentes reconocen, lo cual es una mejor posición que mantener un archivo específico de Junie más una copia para todos los demás.

Las revisiones de "qué está siguiendo realmente el agente" se vuelven más cortas. Con la ruta escrita, la respuesta es una ruta de acceso y una lista ordenada en lugar de una investigación, el mismo cambio descrito para una herramienta diferente en qué directrices de Tabnine están vigentes.

Buenas prácticas para directrices que sigan siendo fáciles de encontrar

Escribe la ruta dentro de las propias directrices. Una línea cerca de la parte superior — "las directrices viven en el AGENTS.md de la raíz del proyecto; las reglas en .junie/rules se combinan con él" — evita que la siguiente persona tenga que volver a deducir el orden de descubrimiento.

Mantén el archivo global como algo personal. Si una línea en ~/.junie/AGENTS.md te avergonzaría en el repositorio de otra persona, pertenece a un archivo de proyecto en su lugar.

Evita los casi duplicados entre niveles a propósito. El contenido idéntico se desduplica; el contenido casi idéntico se incluye dos veces y se resuelve por precedencia, lo cual es más difícil de razonar que cualquiera de los dos extremos.

Pon las prohibiciones por escrito. La categoría "No objetivos para los agentes" existe porque los errores más costosos de los agentes son cosas que no deberían haber hecho en absoluto, no cosas que hicieron de manera imperfecta.

Vuelve a leer el orden de descubrimiento después de cualquier reestructuración. Mover un archivo entre .junie/ y la raíz del proyecto cambia la ruta en la que te encuentras, y el cambio es silencioso.

Revisa las directrices que fueron generadas en lugar de escritas. Las reglas importadas o extraídas son un punto de partida útil y un estado final deficiente, que es el argumento en qué hacer con las reglas extraídas de Qodo.

Conclusión

Junie busca directrices a lo largo de tres rutas, y la documentación adjunta .junie/playbook.md y cada .junie/rules/*.md a exactamente una de ellas: el AGENTS.md en la raíz del proyecto. La ruta dentro de .junie/ nombra un solo archivo, y el par heredado es compatible en lugar de central.

Por lo tanto, la decisión de ubicación es sencilla una vez planteada. Si mantienes un playbook o una carpeta de reglas, coloca el informe principal en el AGENTS.md de la raíz y deja que la combinación documentada haga su trabajo. Si no es así, mantenlo en .junie/AGENTS.md y registra esa elección por escrito. Luego, configura el archivo global con un alcance personal, confía en la precedencia y guarda el razonamiento detrás de las directrices en algún lugar que no tenga que caber dentro de un archivo que el agente lee en cada tarea.

Preguntas frecuentes

¿Dónde busca Junie CLI las directrices?

En un orden documentado: primero, .junie/AGENTS.md en la raíz del proyecto; luego, el AGENTS.md de la raíz del proyecto "combinado con .junie/playbook.md y cada archivo .junie/rules/*.md, si están presentes"; luego, .junie/guidelines.md o la carpeta .junie/guidelines/, descritos como "el formato heredado de Junie para las directrices (aún compatible)".

¿Se combina .junie/rules/ con mis directrices?

La documentación describe esa combinación en la segunda ruta — el AGENTS.md en la raíz del proyecto — junto con .junie/playbook.md. Si tus directrices principales residen en .junie/AGENTS.md en su lugar, esa combinación no está descrita para esa ruta.

¿Sigue siendo compatible .junie/guidelines.md?

Sí. Aparece en el orden de descubrimiento como "el formato heredado de Junie para las directrices (aún compatible)", al igual que la carpeta .junie/guidelines/. Es la tercera ruta en lugar de la principal.

¿Cómo interactúan las directrices globales y de proyecto?

Tres casos documentados. Si solo está presente uno, "Junie utiliza el que esté disponible; no se añaden anotaciones adicionales". Con ambos, "Junie incluye ambos y los marca claramente. Las directrices a nivel de proyecto siempre tienen precedencia sobre las globales cuando entran en conflicto". Y "Si las directrices globales y de proyecto tienen un contenido idéntico, Junie elimina automáticamente los duplicados y utiliza el contenido una sola vez".

¿Dónde está el archivo de directrices globales de Junie?

En ~/.junie/AGENTS.md, y en Windows en %USERPROFILE%\.junie\AGENTS.md. Su propósito documentado es "definir preferencias personales o reglas de toda la organización que se aplican a todos sus proyectos sin duplicarlas en cada repositorio".

¿Qué debo hacer con la importación que ofrece Junie al abrir por primera vez?

Trátala como un punto de partida. Junie "comprueba si hay directrices o archivos de memoria de otros agentes de IA cuando abre el proyecto por primera vez" y sugiere importarlos en .junie/AGENTS.md. Si el proyecto también tiene un playbook o una carpeta de reglas, decide qué ruta deseas antes de aceptar, ya que la combinación está documentada en la ruta de la raíz del proyecto.