Radar · 12/07/2026 · coding

Claude Code envía 33k tokens antes de leer tu prompt, OpenCode envía 7k

Una prueba controlada puso Claude Code y OpenCode en el mismo modelo y con las mismas tareas. Resultado: cuando le pides a ambos una respuesta de una línea, Claude Code envía aproximadamente 33.000 tokens de system prompt, esquemas de herramientas y scaffolding antes de que tu prompt llegue al modelo. OpenCode envía alrededor de 7.000. Con Claude Fable 5 la brecha se reduce (aproximadamente 3,3x), porque Claude Code envía un system prompt más corto a los modelos nuevos, pero sigue siendo mucho más pesado.

Por qué te importa. Cada token de overhead es costo, latencia y espacio restado del contexto útil. Si usas agentes en producción, o si la línea «prompt cache» en tu dashboard crece sin que entiendas por qué, este análisis explica dónde van los tokens. Claude Code reescribe decenas de miles de tokens de caché en cada ronda, mientras OpenCode mantiene un prefijo estable que se paga una sola vez por sesión. En una tarea pequeña ejecutada con dos subagentes, el costo pasó de 121.000 a 513.000 tokens, porque cada subagente repaga su propio costo de bootstrap y el padre luego consume la transcripción completa.

Una nota de continuidad. Como contábamos el 12 de julio, Claude Code acaba de recibir el navegador integrado; este análisis muestra el costo oculto de ese poder adicional. La prueba no mide la calidad del resultado final, solo cuánto pesa llevar consigo la infraestructura en cada solicitud.

En detalle

El método

La medición se hizo interceptando cada solicitud entre el harness y la API: un proxy de logging captura el payload JSON completo (bloques de sistema, esquemas de herramientas, mensajes) y el bloque usage devuelto por la API (tokens de entrada, escritura de caché, lectura de caché, salida). Pruebas en Claude Sonnet 4.5, luego repetidas en Claude Fable 5 para verificar si el modelo cambia el panorama.

Condiciones de aislamiento: configuración vacía, sin servidores MCP, sin archivo de instrucciones (AGENTS.md), workspace vacío, permisos omitidos. Tres tareas: T1 (“Responde exactamente: OK”), T2 (leer un archivo y resumirlo), T3 (ciclo escribir-ejecutar-probar-corregir en FizzBuzz). Una variante sin herramientas para separar el peso del system prompt del peso de los esquemas.

Los números sobre la mesa

En la tarea mínima (T1), Claude Code comienza con 33.000 tokens antes de leer el prompt del usuario. OpenCode con 7.000. Con Fable 5 Claude Code baja alrededor de 10.000-11.000 (Anthropic redujo el system prompt para modelos nuevos), pero la brecha sigue siendo 3,3x. El sistema más ligero siempre es OpenCode, independientemente del modelo.

Los multiplicadores

Este es el baseline con configuración vacía. En un repositorio de producción, cada componente agrega su propio peso:

  • Archivo de instrucciones (AGENTS.md o CLAUDE.md): un archivo de 72KB agrega aproximadamente 20.000 tokens a cada solicitud.
  • Servidores MCP: cinco servidores moderados (calendario, correo, filesystem, búsqueda, base de datos) agregan 5.000-7.000 tokens de esquemas.
  • Subagente: una tarea que cuesta 121.000 tokens hecha directamente cuesta 513.000 tokens cuando se divide en dos subagentes, porque cada subagente tiene su propio overhead y el padre luego consume la transcripción completa.

Con una configuración real, el contador comienza en 75.000-85.000 tokens antes de que el usuario haya escrito una palabra.

El caché: donde se juega el partido

OpenCode mantiene un prefijo de solicitud idéntico byte por byte en cada ejecución de la misma sesión: se paga la escritura de caché una vez, luego se lee por pocos centavos. Claude Code, en cambio, reescribe decenas de miles de tokens de caché mid-sesión, ronda tras ronda. En una de las tareas de la prueba, Claude Code escribió 54 veces más tokens de caché que OpenCode. Las escrituras de caché se facturan con una prima, y explican por qué el dashboard crece incluso cuando crees que estás reutilizando el contexto.

Una nota a favor de Claude Code

En una tarea de múltiples pasos, Claude Code resultó con un total inferior al de OpenCode, porque agrupa las llamadas de herramientas en menos solicitudes, mientras OpenCode repaga su baseline (más pequeño) en cada turno. El medidor comienza más alto, pero cómo se desarrolla la sesión decide quién gasta más al final.

Qué falta

Esta prueba no mide la calidad del resultado final: solo mide el costo de la infraestructura. Un harness más costoso puede producir mejores resultados, más rápidamente, o con menos necesidad de correcciones. La pregunta correcta es: para mi caso de uso, ¿vale ese poder adicional el sobreprecio en tokens?

La fuente completa (Systima) publica los datos sin procesar y el método de medición, permitiendo a cualquiera reproducir la prueba en su propia configuración. Es el tipo de transparencia que necesitas cuando tienes que justificar una línea de gasto creciente en producción.

Escribe para buscar en curso, playbooks, skills, papers…