Un amigo me pidió que le construyera una tienda online de cosméticos. En el trabajo solo escribía C, así que era una oportunidad para probar un stack nuevo. Toss Payments para pagos, React para el frontend. “Todos los proyectos de nueva generación en finanzas están yendo a React” — eso me rondaba la cabeza, y Toss Payments era amigable con Node. La dirección se definió rápido.

Obviamente, nunca había usado este stack. Tenía ganas, pero el plazo no daba para “estudiar primero, construir después”. Así que probé el vibe coding.

“Hazme una tienda online para vender cosméticos, la URL de referencia es ~.” Eso fue todo, y Claude se puso a trabajar solo — salió un mockup que cubría cosas que ni había pensado. Ah, el vibe coding lleva más de un año y yo estaba completamente atrasado.

Mi plan de aprender el stack nuevo leyendo el código que Claude generaba era absurdamente ingenuo. Claude producía código mucho más rápido de lo que yo podía leerlo. Así que en vez de revisarlo yo, le pedí que se revisara a sí mismo. (El fin de la era humana parecía estar llegando.)

Después de un rato usando Claude, empezó a perder el hilo del contexto anterior. Busqué “context” en Google y encontré la causa. También descubrí que dividir roles en sub-agentes era la solución. Configuré cinco: pm, dba, back, front, qa. Definí todo en CLAUDE.md — reglas de rutas, guías de gestión de sesiones, todo. El uso estaba en torno al 15%. Suficiente, pensé.

Tres horas después, vi You've hit your limit · resets 3am.

Lo del reseteo a las 3am lo entendí. Lo que no entendí fue: ¿por qué en tres horas?

Los botones estaban mal desde el principio

Al configurar los 5 agentes, tenía una hipótesis equivocada: “Cuanto más piensa Claude, más tokens consume.” Sin evidencia. Solo me parecía lógico.

Llené cada agente con reglas if-then. Si eliminaba la necesidad de que Claude razonara, el costo de inferencia bajaría — eso creía. CLAUDE.md lo llené con esa misma lógica.

Solo después de alcanzar el límite busqué en Google. Ahí supe que estaba equivocado. La mayor parte del consumo de tokens de Claude no es inferencia — es lectura. Cada vez que un agente se ejecuta, lee CLAUDE.md completo desde el inicio. El CLAUDE.md que tan diligentemente llené se cargaba entero en el contexto, cada vez.

Comprimí las explicaciones en prosa a tablas y eliminé entradas duplicadas. La velocidad de consumo bajó.

Si divido más, los tokens deberían bajar, ¿no?

Después de la optimización, Compacting conversation... apareció menos. El contexto se mantenía bien. Me sentí bien.

Pero al mirar el consumo real de tokens, estaba perdiendo aún más.

“Si divido los roles más fino, cada agente maneja un alcance más estrecho.” Ese fue el siguiente intento.

Pasé de 5 a 12. api-designer, ui-designer, performance-engineer, security-auditor… Una estructura sistemática por etapas.

El contexto se mantenía bien. Pero los tokens parecían fugarse un poco más.

Fusión con lágrimas

Le pedí a Claude que diagnosticara la causa. Se sentía como recibir un veredicto judicial. token.. my precious…

Número de agentes = número de lecturas de CLAUDE.md. Doce agentes cargándolo doce veces cada uno. Cuanto más dividía, más rápido se quemaba.

Tenía que reducir. Lo había construido con mucho esfuerzo, pero los fusioné con lágrimas en los ojos.

api-designer absorbido por backend-developer, ui-designer por frontend-developer, performance-engineer por code-reviewer.

ElementoAntesDespuésAhorro
Tamaño total archivos de agentes112KB40KB-64%
Número de agentes129-3

La velocidad de consumo cambió notablemente.

Así que me pasé a Max

Una vez armada la estructura, realmente sentí la velocidad de Claude. Sí, cuesta dinero. Pero la velocidad de procesamiento era inimaginable. Trabajo que me habría tomado días se terminó en una sesión.

Me pasé al plan Max. A usarlo bien, sin desperdicio.

El problema estructural estaba resuelto. No dejé de buscar en Google para proteger my precious. Y lo descubrí. Cuando Claude lee un archivo de 500 líneas, lee las 500. Cuando ejecuta tests, carga el resultado completo en el contexto — incluyendo los casos exitosos. No era un problema de cantidad de agentes. Era lo que Claude veía.

¿Cómo hacer que Claude vea solo lo que necesita?

Otros posts de esta serie


Referencias