TL;DR El modelo no cambia dentro de una sesión; lo que cambia es cuánto contexto arrastra. A medida que la ventana se llena, Claude no solo va más lento, empieza a rendir peor (la propia guía te dice que uses
/compact"cuando el contexto empiece a afectar al rendimiento"). Higiene: mira cómo vas con/context, compacta en los cortes naturales con/compact, y/clearcuando cambies de tarea o la conversación se haya contaminado. Y comprueba con/modelque no estás en un modelo más flojo sin saberlo.
Empiezas la sesión y Claude va fino. Tres horas después falla en cosas que antes clavaba, repite un error que ya le corregiste, se deja detalles. La tentación es pensar "hoy el modelo está peor". Casi nunca lo es. El modelo no cambia a media sesión (Anthropic publica releases con semver, y /release-notes te dice si algo cambió en tu CLI). Lo que sí cambia, turno a turno, es tu contexto: cada archivo leído, cada tool result, cada ida y vuelta se queda en la ventana. Y una ventana llena se lee peor que una limpia.
Por qué una ventana llena rinde peor
No es solo que vaya más lento por procesar más tokens. La propia guía de Claude Code te dice que corras /compact "cuando el contexto empiece a afectar al rendimiento", así que la relación contexto-calidad está reconocida de fábrica. El patrón que ve todo el mundo, y que la research de atención en modelos de lenguaje respalda: un modelo presta más atención al principio y al final de lo que lee, y menos a lo del medio. Cuanto más largo y ruidoso es tu historial, más se diluye lo que importa entre cosas que ya no hacen falta (aquel dump de un tool, aquella rama que abandonaste). Claude sigue ahí, pero está leyendo tu sesión con una linterna más floja.
Qué ves
> /context (ejemplo ilustrativo)
Context ███████████████████░ 178k / 200k 89%
System prompt + tools 12k
CLAUDE.md + memoria 6k
Conversación 160k <- aquí está el peso
Cerca del límite. /compact para liberar sitio.
Cuando la barra pasa del 70-80%, esa es tu señal. No esperes a que autocompact salte solo a media tarea.
Cómo mantener la sesión sana
1. Mira cómo vas: /context
Te enseña cuánto de la ventana llevas gastado y en qué. Es el termómetro. Si vas alto y notas que rinde peor, ya sabes que es el contexto, no el modelo. Hay tip dedicado a /context.
2. Compacta en los cortes, no cuando ya duele: /compact
Al terminar una función, cerrar un bug o antes de arrancar algo largo, compacta tú en vez de esperar al autocompact. Y dile qué conservar:
/compact "conserva el plan y el diff, tira el resto"
El resumen mantiene tu intención, los archivos tocados, los errores y lo pendiente, pero suelta la conversación literal (los tool results enteros se van). Qué sobrevive y qué no, en este tip.
3. /clear cuando cambias de tarea o se contamina
Si pivotas a algo sin relación, o Claude se ancló en una mala interpretación y repite el error aunque le señales el bueno, no compactes: vacía con /clear y empieza limpio. No es destructivo, la conversación sigue en disco y vuelves con resume.
4. Saca el ruido a un subagente
Un subagente trabaja en su propia ventana: sus lecturas de archivos no llenan la tuya, solo te vuelve el resumen. Para investigar o rastrear algo largo, delégalo y tu contexto se queda fino.
5. La causa que nadie mira: ¿en qué modelo estás?
A veces no es la sesión llena. Si usas opusplan, Claude va con Opus en plan y con Sonnet en ejecución, así que la parte donde escribe código es la más floja por diseño. Y si tienes configurado un modelo de reserva para los picos (el plan B para los errores 529), puede haber saltado y dejarte en él sin que te enteres. Un /model que hiciste hace rato hace lo mismo. Compruébalo con /model: no es que Claude esté tonto, es que no estás en el modelo que crees.
Referencia
| Señal | Qué pasa | Qué haces |
|---|---|---|
| Sesión larga, respuestas peores | Contexto lleno (rinde peor, no solo más lento) | /context para ver, /compact para aligerar |
| Pivotas a una tarea nueva | Arrastras el contexto de la anterior | /clear y empiezas limpio |
| Empeora pero el contexto va bajo | Estás en un modelo o effort más flojo | /model para comprobar |
Esto asume que todo está verde: sin errores, sin caída. Si lo que sospechas es que Claude Code está roto o caído (un MCP que no conecta, el servicio abajo), ese es el árbol de diagnóstico del otro lado: ¿está caído o eres tú?.
Documentación oficial: Explore the context window