TIPS 13 · CONTESTO

Cuando el chat se hace demasiado largo

El prompt de resumen, el archivo de decisiones y los comandos para volver a empezar limpio: así un chat largo no te hace perder lo que habías decidido con Claude.

Qué es y por qué importa

Seguro que te ha pasado: llevas horas en el mismo chat con Claude Code y en algún momento algo se escapa. Vuelve a tomar una decisión que ya habíais descartado, olvida una regla que le diste al principio, te propone otra vez un intento que no funcionaba.

El motivo es la ventana de contexto, la memoria de trabajo de Claude. Ahí dentro está todo: tus mensajes, las respuestas, los archivos leídos, la salida de los comandos, el CLAUDE.md. Cuando se acerca al límite, Claude Code hace sitio por su cuenta: primero quita los resultados antiguos de los comandos y luego resume la conversación. Tus peticiones y el código importante se quedan. Las instrucciones detalladas que diste al principio pueden desaparecer.

Y está también el consumo: con cada mensaje, Claude Code vuelve a enviar al modelo toda la conversación. Cuanto más largo es el chat, más te cuesta cada pregunta, incluso la de una línea.

Lo que hago yo: cuando termino una parte, le pido a Claude que resuma dónde estamos, que escriba las decisiones en un archivo del proyecto, y vuelvo a empezar con un chat limpio. Lo importante está en el archivo, no en la conversación.

1. El prompt de resumen

Cuando terminas una parte del trabajo (una pantalla, una conexión, una corrección) y antes de pasar a la siguiente, escribe esto:

El prompt
Resume dónde estamos en cinco puntos: qué hemos decidido, qué está hecho, qué falta, los problemas todavía abiertos, los archivos que hemos tocado. Luego actualiza DECISIONES.md con las decisiones nuevas. Nada de código en el resumen.

Los cinco puntos te dan una foto completa del trabajo, no solo de lo último que se ha hecho. «Los archivos que hemos tocado» te sirve si algo se rompe después: sabes dónde mirar. «Nada de código en el resumen» porque el código ya está en los archivos: aquí lo que necesitas es entender en qué punto estás, no releer cien líneas.

Ese resumen léelo tú. Si hay una decisión que no recuerdas haber tomado, o un problema abierto que se te había escapado, pregunta ahora, mientras el chat sigue ahí.

2. El archivo de decisiones

Crea en la carpeta del proyecto un archivo DECISIONES.md. Corto, una línea por decisión, con el porqué. El mío es así:

El archivo
# Decisiones
## Login
- Solo con email, nada de redes sociales (menos cosas que mantener)
## Perfil
- Una sola foto, nombre visible para todos
## No tocar
- La base de datos real: solo se prueba en la de pruebas
## Preguntas abiertas
- ¿Notificaciones sí o no?

Las secciones son las partes de la app, más dos que uso siempre. «No tocar» es la lista de lo que Claude no debe cambiar sin preguntar: la base de datos real, los pagos, lo que para ti sea delicado. «Preguntas abiertas» guarda lo que aún no está decidido, así Claude no elige por ti y te encuentras esas preguntas delante cuando llega el momento.

El porqué es lo que cuenta. Dentro de una semana, una elección sin motivo parece un error, y Claude puede acabar «arreglándola». Con el motivo escrito al lado, sabe por qué es así.

Y mantenlo corto. Dentro de poco haremos que se cargue en cada sesión, y todo lo que haya dentro ocupa memoria cada vez. Nada de actas: una línea por decisión. Cuando una pregunta abierta se cierra, la pasas a la sección que toca. Cuando una decisión cambia, reescribe la línea en lugar de añadir otra.

3. Volver a empezar limpio

Con el resumen hecho y el archivo actualizado, en Claude Code tienes dos caminos.

/clear: un chat nuevo

/clear abre una conversación nueva, vacía. No toca los archivos del proyecto, y el chat anterior no desaparece: si lo necesitas, lo vuelves a abrir con /resume. En el chat nuevo escribe:

El prompt
Lee DECISIONES.md y sigue desde ahí: la siguiente parte es [lo que falta].

En lugar de los corchetes, pon la siguiente parte en una frase, por ejemplo «la página del perfil, solo la parte de la foto». Si tienes el resumen de antes, el punto «qué falta» ya te lo dice. Así el chat nuevo arranca solo con lo que necesita.

/compact: el mismo chat, más ligero

/compact resume la conversación y libera espacio sin cerrarla. Le puedes dar instrucciones para el resumen, escritas después del comando. Yo le digo qué conservar y qué tirar:

La línea
/compact conserva las decisiones, lo que está hecho y lo que falta; olvídate de los intentos fallidos

El resumen automático, el que Claude Code hace por su cuenta cuando la memoria está casi llena, funciona igual. La diferencia es quién elige: ahí decide Claude Code qué es importante; con las instrucciones, eliges tú.

Cuál de los dos

Uso /clear cuando he terminado una parte o paso a un trabajo que no tiene nada que ver: vuelve a empezar desde el archivo, sé lo que contiene y no cuesta nada. Uso /compact cuando estoy a mitad de una parte y todavía necesito el hilo de la conversación. Recuerda que /compact no es gratis: para resumir tiene que releer todo el chat, así que en un chat enorme es una petición grande.

/context: cuánto se ha llenado

Si quieres ver cuánto se ha llenado la memoria, /context te lo enseña: una cuadrícula de colores con lo que ocupa espacio, desde el CLAUDE.md hasta los archivos leídos. Yo lo miro cuando Claude empieza a perder cosas, antes de decidir si vuelvo a empezar.

4. Que lo lea cada vez

El CLAUDE.md es el archivo de instrucciones del proyecto, el que Claude Code carga al principio de cada sesión. Si no lo tienes, créalo en la carpeta principal del proyecto, o haz que lo prepare /init. Luego añade esta línea:

La línea
@DECISIONES.md

Con la @ delante, el archivo se carga junto con el CLAUDE.md, también después de un /clear. Y después de una compactación, Claude Code vuelve a leer del disco el CLAUDE.md principal del proyecto, así que las decisiones vuelven también ahí. La ruta parte de la carpeta del CLAUDE.md: si los dos archivos están juntos, basta con el nombre.

Debajo añade:

La línea
Cuando tomemos una decisión importante, escríbela en DECISIONES.md.

Así el archivo crece mientras trabajas, no solo cuando te acuerdas. El prompt de resumen al final de cada parte sigue siendo el control: ahí ves si falta algo. Y el «Lee DECISIONES.md» después de un /clear se vuelve casi innecesario, pero yo lo escribo igual: le dice a Claude desde dónde seguir.

Algo que conviene saber: con la @, DECISIONES.md entra en cada sesión, aunque no haga falta. Por eso tiene que seguir siendo corto. Lo mismo vale para el CLAUDE.md: la documentación recomienda mantenerlo por debajo de 200 líneas.

Extra: instrucciones para el resumen automático

Si quieres que también el resumen automático conserve lo que importa, puedes escribir en el CLAUDE.md una sección con instrucciones para la compactación. Claude Code la tiene en cuenta cuando resume:

La plantilla
# Compact instructions
Cuando resumas la conversación, conserva las decisiones, lo que está hecho y lo que falta; olvídate de los intentos fallidos.

La regla: chats cortos, archivos largos. El chat lo tiras, el archivo se queda.

Errores comunes

  • Esperar a que el chat se llene solo: el resumen automático elige por su cuenta qué conservar. Al final de cada parte, haz tú el resumen y vuelve a empezar.
  • Hacer /clear sin haber actualizado DECISIONES.md: lo que habéis decidido se queda solo en el chat viejo. Primero el prompt de resumen, luego /clear.
  • Escribir las decisiones sin el porqué: al cabo de una semana parecen errores y Claude puede «corregirlas». Añade el motivo entre paréntesis.
  • Dejar que DECISIONES.md crezca como un diario: con la @ entra en cada sesión y ocupa memoria. Una línea por decisión, y cuando una cambie, reescribe esa línea.
  • Usar /compact para cambiar de trabajo: arrastras un resumen que no sirve y pagas la relectura. Cuando cambias de tema, /clear.

Lista de comprobación

  • DECISIONES.md está en la carpeta del proyecto
  • Cada decisión tiene su porqué
  • El CLAUDE.md contiene la línea @DECISIONES.md
  • Al final de cada parte uso el prompt de resumen
  • Antes de /clear el archivo está actualizado
  • /clear cuando cambio de trabajo, /compact solo a mitad de una parte

Preguntas frecuentes

¿Cómo sé que es el momento de volver a empezar?

Cuando terminas una parte o pasas a un trabajo que no tiene nada que ver. O cuando Claude empieza a perder cosas: vuelve a una elección ya descartada u olvida una regla. Si quieres ver los números, /context te dice cuánto se ha llenado la memoria.

¿Con /clear pierdo el chat anterior?

No. /clear abre una conversación nueva, pero la anterior la recuperas con /resume. Los archivos del proyecto, DECISIONES.md incluido, se quedan como están.

¿Qué diferencia hay entre DECISIONES.md y el CLAUDE.md?

El CLAUDE.md guarda las reglas que valen siempre, como la forma de lanzar los tests o lo que no hay que hacer nunca. DECISIONES.md guarda las elecciones sobre este proyecto y las preguntas abiertas, y cambia a menudo. Separados, actualizas las decisiones sin tocar las reglas.

¿Tengo que llamarlo DECISIONES.md por fuerza?

No, el nombre lo eliges tú. Basta con que sea el mismo en la línea con la @, en los prompts y en el propio archivo.

← Todas las guías