Mi Plan Pro Max Duró 15 Minutos. Después Ejecuté /context

12 min read

Un tipo* instrumentó 858 sesiones de Claude Code durante 33 días. $1,619 de factura. 264 millones de tokens desperdiciados por una sola configuración mal ajustada. El 54% de sus turnos ocurrieron después de más de 5 minutos de inactividad, así que la caché expiró, así que costó x10 por nada. Un archivo leído 33 veces en la misma sesión. 19 habilidades de 42 casi nunca usadas pero cargadas al inicio. El 90% del desperdicio vino de configuraciones que ÉL controlaba. No de la facturación de Anthropic. No del modelo. De su configuración.

Ejecuté /context justo después de leer eso. 24,800 tokens cargados antes de escribir un solo carácter. 5,500 solo por mi CLAUDE.md global, el archivo que he estado arrastrando durante meses sin volver a leerlo en serio. Multiplica eso por mis sesiones diarias, por 20 días laborables, por un año. El número se vuelve incómodo. Y tú, ¿sabes cuánto cargas antes de tu primer prompt? Probablemente no. Nadie lo sabe hasta que mira.

TLDR: El costo de una sesión de Claude Code no es el volumen de tokens únicos. Es ese volumen multiplicado por la cantidad de veces que se recarga. Caché que expira, sub-agentes que recargan el contexto padre completo, más una docena de otras recargas que nunca ves. 15 trucos para atacar el multiplicador, cada uno con su pro Y su contra (porque la mitad de los "consejos" que circulan te cuestan más en tiempo de lo que ahorran en tokens). Ejecuta /context antes de terminar este artículo. Ya verás.

Dos desarrolladores en estaciones de trabajo: uno actualizando frenéticamente con múltiples pestañas del navegador y expresión preocupada, el otro programando tranquilamente con una sola ventana de terminal y sonrisa satisfecha. Fondo de sala de servidores con luces parpadeantes.
Tu cache expira más rápido que tu paciencia para depurar código.

Tu Caché Expira en 5 Minutos. Tu Pausa para Café No.

two-column diagram. Left column "What you think you pay for" with one medium bar labeled "unique tokens". Right column "What you actually pay for" with the same bar stacked vertically multiple times (reload 1, reload 2, reload 3...). Title above: "Token cost = unique tokens × reload count". Monochrome with red accent on the right column.
Costo de tokens = tokens únicos × cantidad de recargas

La caché de prompts de Anthropic dura 5 minutos. Después de eso, el siguiente turno paga precio completo para recargar todo lo que ya pagaste una vez. La auditoría de Reddit encontró que el 54% de los turnos ocurrieron después de una pausa de más de 5 minutos. Más de la mitad de la conversación fue efectivamente caché fría.

Pro: ejecutar /compact o /clear ANTES de alejarte de tu máquina es el hábito de mayor impacto en esta lista. Anuncias el descanso, colapsa el contexto, regresas a una pizarra limpia que cuesta casi nada calentar. Almuerzo, una reunión, el tipo de pausa donde vas a revisar la piscina y terminas arreglando un skimmer durante 20 minutos.

Contra: en una tarea intensa donde estás iterando rápido, romper la caché para ahorrar 5% de costos de contexto te cuesta más en recarga cognitiva que en tokens. Pierdes el hilo de tus pensamientos, Claude pierde el matiz de los últimos tres turnos, y pagas en tiempo real.

Veredicto: religioso antes de pausas anunciadas. No para ir al baño.

Tu CLAUDE.md Global Se Recarga Para Siempre

5,500 tokens. Eso es lo que pesa mi CLAUDE.md global. Recargado en cada sesión. Cada proyecto. Mientras mantenga ese archivo como está. Haz las cuentas de un año de sesiones y dejas de dormir.

Confesión: mi propio CLAUDE.md viola la regla de 200 líneas que estoy a punto de predicar. Lo sé. Soy parte del problema.

Pro: convierte el archivo en un índice que apunte a documentos de arquitectura especializados en cada proyecto, en lugar de un volcado cerebral global. Mantén solo lo que aplica al 100% de tus proyectos (tu nombre, tu shell, tus 3-4 reglas férreas). Todo lo demás vive en una carpeta docs/ que se lee bajo demanda.

Contra: un CLAUDE.md demasiado flaco significa re-explicar tus convenciones cada sesión. Las iteraciones cuestan más que los tokens de inicio que ahorraste. Especialmente doloroso en proyectos que tocas una vez al mes.

Veredicto: índice, no cajón de sastre. Apunta a 80 líneas, no 800.

Una Línea en Tu Configuración Redujo el Contexto a la Mitad

ENABLE_TOOL_SEARCH=true. Copia. Pega. Prueba. Verifica con /context.

Esa sola configuración es la que ahorró 264M tokens en la auditoría de Reddit. Con ella activada, Claude no carga todos los esquemas de herramientas al inicio. Busca la herramienta correcta cuando la necesita. En una configuración con 15+ herramientas MCP los ahorros son brutales.

Pro: reducción masiva de contexto al inicio si tienes una configuración MCP pesada. Instantáneo. Gratis. Una línea.

Contra: en una configuración con menos de 10 herramientas, Tool Search añade un viaje de ida y vuelta cada vez que Claude necesita una herramienta, lo que puede ralentizarte. También hay un quirk conocido de macOS donde la bandera automática no siempre se mantiene. Forzarla manualmente y verificar con /context que ocurrió la reducción. Pruébala en una sesión desechable primero para no arruinar una caché a mitad de tarea.

Veredicto: actívala si tienes 15+ herramientas. Omítela con menos de 10. Prueba antes de comprometerte.

Estás Cargando 42 Habilidades. Usas Seis.

La auditoría de Reddit encontró 19 habilidades de 42 que casi nunca se llamaron. Cargadas al inicio de todos modos. Cada habilidad es un esquema que cuesta contexto sin importar si la invocas o no.

Pro: auditoría rápida, deshabilita las inactivas, ahorros instantáneos en cada sesión para siempre. El tipo de limpieza que se paga a la mañana siguiente.

Contra: auditar toma 30 minutos y terminarás deshabilitando algo que usas dos veces al año, exactamente el día que lo necesitas. Murphy vive en tu carpeta de habilidades.

Veredicto: deshabilita cualquier cosa que no hayas tocado en un mes. No más estricto que eso. Las habilidades de 2 veces al año no valen la pena del dolor de limpieza.

Plan Mode Se Paga en Rerolls Evitados

Todos venden Plan Mode como una característica de calidad primero. Parece reflexivo, planifica cuidadosamente, obtén código más limpio. Claro.

Los ahorros viven en un lugar completamente diferente. Viven en las iteraciones que no tienes que ejecutar. Cada vez que Claude codifica algo incorrecto y tienes que decir "no, hazlo diferente", recargas todo el contexto para re-explicar. Plan Mode colapsa tres rondas de "casi pero no del todo" en una ronda de "acordamos antes de que empezaras". Profundicé en la misma idea en el enfoque de contratos de prompt que construí después de suficientes de estos desastres, si quieres el marco completo.

Pro: obligatorio en cualquier cosa que toque 2+ archivos. Los ahorros se componen en cada reroll evitado.

Contra: en una tarea trivial (renombrar una variable, arreglar un typo, añadir un console.log), Plan Mode solo añade latencia. No había iteración que evitar en primer lugar.

Veredicto: Plan Mode para tareas multi-archivo. Omitir para arreglos quirúrgicos.

/clear Es el Hábito Más Barato Que No Estás Haciendo

Cambio de tarea. /clear. Eso es todo. Ese es el truco.

La razón por la que nadie lo hace consistentemente es la misma razón por la que nadie usa hilo dental. Es demasiado pequeño para sentirse como una victoria y demasiado fácil de omitir "solo esta vez". Y entonces el martes pasado le pedí a Claude que redactara un email y respondió con TypeScript. Porque había estado refactorizando autenticación durante dos horas y nunca limpié. La tarea anterior seguía viviendo gratis en el contexto, pagando precio completo en cada turno, y ahora confundiendo la nueva. Veinte minutos después, aún desenredando.

/clear en cada cambio de tarea. Dos segundos. Gratis. Hecho.

El único riesgo real es presionarlo por reflejo en medio de una tarea y perder contexto que realmente necesitabas. Eso pasa una vez. Aprendes rápido.

Los Sub-Agentes Cuestan 7x. Nadie Te Dice Eso.

Cada sub-agente recarga el contexto padre completo. Los propios documentos de Anthropic lo confirman, la auditoría de Reddit lo midió, y el patrón multi-agente que todos han estado promocionando durante seis meses es, mecánicamente, una trampa de tokens disfrazada de característica.

Generas 3 sub-agentes para "paralelizar" una tarea. Cada uno hereda el contexto completo. Acabas de pagar por ese contexto 4 veces en lugar de 1. Bienvenido al club.

Pro: matar el reflejo de "enviaré esto a un sub-agente" para cada tarea pequeña. El reflejo se siente productivo.

Contra: para trabajo genuinamente paralelizable (revisar 5 archivos independientes, ejecutar 5 verificaciones aisladas), los sub-agentes siguen siendo más rápidos en tiempo real aunque cuesten más en tokens. Intercambio tiempo vs dinero. A veces el tiempo gana.

Veredicto: los sub-agentes son una herramienta de paralelismo, no una herramienta de ahorro. Úsalos cuando el reloj importe más que la factura.

La productividad se siente genial. La factura llega de todos modos. 💸

Desconecta los Servidores MCP Que Nunca Abres

Incluso con Tool Search activado, cada servidor MCP tiene un costo de inicio. Los míos, ahora mismo: Gmail, Calendar, Chrome, Context7, YouTube transcript, mi propio MCP rentierdigital. Respuesta honesta: probablemente la mitad de esos no los he tocado esta semana.

Pro: reducción inmediata de contexto de inicio. El tipo de limpieza que puedes hacer en 90 segundos.

Contra: desconectar y reconectar en cada cambio de tarea es fricción que abandonarás en 3 días. Lo intenté. Renuncié el día 4.

Veredicto: crea 2-3 perfiles de configuración (dev / escritura / investigación) y cambia por perfil, no por MCP individual. La fricción se reduce a un solo comando. Profundicé en por qué los CLIs terminan siendo más baratos que los servidores MCP para la mayoría del trabajo de agentes si quieres la perspectiva más larga.

/compact al 60%, No al 95%. (Sí, Sé Lo Que Dicen los Docs.)

Los documentos sugieren compactar tarde, cuando te estás quedando sin espacio. Consejo educado y conservador. No estoy de acuerdo.

Para el 95%, la calidad de respuesta ya ha comenzado a degradarse. Claude está pescando en un contexto saturado. Lo sientes antes de que se dispare la advertencia. Al 60%, compactas mientras todo sigue limpio y el siguiente 40% de la sesión funciona a calidad completa en un contexto mucho más ligero.

Pro: en operaciones de código del día a día, compactar al 60% te da mejor calidad Y menor costo en el mismo movimiento. Combinación rara.

Contra: en trabajo de arquitectura o debugging profundo donde NECESITAS el historial completo, compactar temprano desecha el matiz que Claude habría usado. Compactas exactamente lo que te iba a ayudar.

Veredicto: 60% para código diario. 85% para arquitectura y debug profundo.

1,122 Lecturas de Archivo Redundantes. Una Sesión Leyó el Mismo Archivo 33 Veces.

Ese número es de la auditoría de Reddit y me dolió físicamente escribirlo. 33 veces. Mismo archivo. Misma sesión. Cada lectura pagada completa.

La causa suele ser /compact borrando el archivo de la memoria de trabajo, o Claude jugando a lo seguro después de un turno largo y re-obteniendo para estar seguro. De cualquier manera, pagas.

Pro: añade una regla en tu CLAUDE.md: "no re-leas archivos que ya tienes en contexto a menos que pregunte, o a menos que el archivo pueda haber cambiado desde la última lectura". Ahorros masivos en sesiones largas.

Contra: si restringes las re-lecturas demasiado, Claude se pierde las ediciones que TÚ hiciste entre dos turnos y codifica contra una versión obsoleta. Ese es un bug peor que los tokens desperdiciados.

Veredicto: la regla con la excepción explícita es la única versión que sobrevive el contacto con la realidad.

El mismo archivo. 33 veces. En una sesión. Aún no lo supero.

Pega la Función. No el Archivo de 1,200 Líneas.

Cirugía vs granada. La mayoría de los devs lanzan todo el archivo a Claude porque es más rápido copiar. Más rápido pegar, más lento pagar.

El default debería ser: pega la función, no el archivo. Ahorros directos, sin costo cognitivo, funciona en cada prompt. La única vez que falla es cuando el bug está realmente en la interacción entre funciones, y pegar la pieza aislada significa que Claude se pierde la causa raíz. Debuggeas lo incorrecto durante 20 minutos, luego amplías el contexto de todos modos. Molesto. Aún más barato que pegar todo el archivo cada vez por defecto.

Empieza quirúrgico. Amplía solo si el primer pase falla. La mayoría de las veces, el primer pase funciona.

Referencia @auth.js, No "El Bug en Mi Repo"

Referencia dirigida (@path/to/file.js) significa una lectura precisa. Referencia vaga significa que Claude ejecuta grep, glob, ls en cascada hasta que encuentra lo que quisiste decir. Cada paso infla tu contexto.

Pro: control fino sobre lo que se carga. Sabes por lo que estás pagando.

Contra: referencia precisa asume que sabes dónde vive el bug. Si aún estás buscando, vago es necesario.

Veredicto: apunta cuando puedas. Cuando tengas que buscar, pregunta explícitamente: "encuentra el archivo, luego para y muéstramelo antes de leerlo." Búsqueda de dos pasos. Más barato que la cascada.

Edita Tu Último Mensaje. No Envíes Uno Nuevo.

Claude te da una respuesta incorrecta. Te desplazas hacia atrás, editas tu prompt original, presionas enter. Claude regenera desde el prompt corregido. La respuesta mala nunca entra al contexto. El hilo se mantiene limpio.

Versus: escribir un nuevo mensaje diciendo "no, quise decir...", que apila la respuesta mala, tu corrección, y el nuevo intento todo en la memoria de trabajo.

Pro: hilo limpio, contexto más pequeño, iteración más rápida en micro-ajustes. Especialmente bueno para arreglar typos en tu propio prompt.

Contra: pierdes el rastro de que la primera versión falló, lo que a veces es útil cuando estás debuggeando un patrón recurrente en cómo Claude te malentiende.

Veredicto: editar para micro-ajustes. Apilar para iteraciones de razonamiento real donde el intento fallido te enseña algo.

Un git log Se Comió 8,000 Tokens. No Te Diste Cuenta.

Las salidas de terminal son la aspiradora silenciosa de las sesiones de Claude Code. git log sin --oneline -20. npm install con el volcado completo de resolución de dependencias. tail -f en un log de servidor. Todo aterriza en el contexto. No lo viste pasar porque Claude colapsó la salida. Los tokens siguen ahí.

Pro: añade una lista de denegación en CLAUDE.md para comandos verbosos conocidos. Fuerza --oneline, fuerza límites de tail, fuerza niveles de log. Lista tus reincidentes.

Contra: si restringes las salidas demasiado, Claude se pierde la info necesaria para diagnosticar, ejecutas un segundo comando, y ahora pagaste dos veces.

Veredicto: lista de denegación en los verbosos conocidos. Mantén el resto permisivo. Refina mientras detectas nuevos reincidentes.

No viste esos 8,000 tokens. Tu factura sí.

Sonnet por Defecto. Haiku para Trabajo Pesado. Opus para Arquitectura.

La única regla de modelo que vale la pena estar en esta lista. Opus en un renombre de variable es desperdicio. Haiku en una decisión de arquitectura es 3x más tiempo gastado retrocediendo.

Pro: herramienta correcta para tarea correcta. Opus donde importa el razonamiento, Sonnet para el 80% diario, Haiku para el trabajo pesado aburrido (renombres, formateo, generación de docs).

Contra: cambiar modelos a mitad de sesión rompe tu caché. 4 cambios al día y has perdido más de lo que ahorraste.

Veredicto: elige el modelo al INICIO de la sesión basado en el tipo de tarea. No cambios a mitad de sesión. Si adivinaste mal, termina la tarea en el modelo actual y reajusta para la siguiente sesión.


El Truco Más Barato No Está en Esta Lista

Todos estos trucos son conjeturas hasta que mides. Dos comandos gratuitos, ya instalados en tu máquina: /context y /cost. La fórmula cabe en una línea: tokens cargados al inicio × sesiones por día × 20 días laborables. Eso es lo que pagas cada mes solo para empezar. Antes del primer prompt real.

El mercado está empezando a reaccionar. Hasan Toxr (@hasantoxr en X) lanzó un enfoque de grafo de conocimiento que afirma reducción de 8x a 49x en revisiones de código. meta_alchemist mantiene ccusage y claude-code-usage-monitor. Los dashboards están apareciendo por todas partes. Buena señal. Pero ninguna herramienta externa te dirá lo que /context te dice en dos segundos.

El truco más barato en esta lista no está en esta lista. Es ejecutar /context una vez a la semana y mirar honestamente de dónde vienen las recargas. Tu configuración, no la factura de Anthropic, es el primer lugar donde mirar.

En realidad, espera. Déjame decirlo diferente. El truco real es admitir que la mayoría de nosotros hemos estado volando a ciegas. Optimizamos para características, para velocidad, para experiencia de desarrollador. Pero nunca miramos la factura hasta que duele. Entonces culpamos al modelo, a la empresa, a la estructura de precios. Cualquier cosa excepto las 20 configuraciones que controlamos.

Dime cuál truco fue el más útil para ti. O cuál me equivoqué.


Fuentes

* La auditoría de Reddit: u/Medium_Island_2795 (aka MunchKunSter), 858 sesiones instrumentadas durante 33 días, descubierta vía @Simba_crpt y @DAIEvolutionHub en X.

  • Grafo de conocimiento de Hasan Toxr para revisión de código: @hasantoxr en X.
  • ccusage y claude-code-usage-monitor por meta_alchemist.

(*) La portada es generada por AI. Claude escribió las palabras. Una máquina diferente dibujó la imagen.