Corrección de Desperdicio de Tokens en Claude Code: Deshabilitar el Encabezado de Atribución para Mejores Aciertos de Caché

✍️ OpenClawRadar📅 Publicado: 1 de abril de 2026🔗 Source
Corrección de Desperdicio de Tokens en Claude Code: Deshabilitar el Encabezado de Atribución para Mejores Aciertos de Caché
Ad

Claude Code ha estado desperdiciando tokens en cada nueva sesión desde la versión 2.1.69 debido a un encabezado de atribución de facturación que rompe el almacenamiento en caché de prompts. El problema está documentado en múltiples issues de GitHub (#40652, #34629, #40524) sin respuesta oficial de Anthropic hasta la fecha de publicación de la fuente.

Qué está sucediendo

Desde la v2.1.69, Claude Code inserta una cadena de atribución de facturación en el primer bloque de tu prompt del sistema: x-anthropic-billing-header: cc_version=2.1.88.a3f; cc_entrypoint=cli; cch=00000;

La parte .a3f es un hash de 3 caracteres calculado a partir de tu primer mensaje en cada conversación usando esta función:

function computeHash(firstUserMessage, version) {
  const chars = [4, 7, 20].map(i => firstUserMessage[i] || "0").join("");
  return sha256("59cf53e54c78" + chars + version).slice(0, 3);
}

Diferentes conversaciones con diferentes primeros mensajes generan hashes diferentes cada vez.

Por qué esto rompe el almacenamiento en caché

El almacenamiento en caché de Anthropic requiere segmentos de prompt 100% idénticos. La caché se comparte en toda tu Organización o Espacio de trabajo, no por sesión. El encabezado de facturación se sitúa al principio del prompt del sistema de ~23K tokens, y como cambia por conversación, el prefijo nunca coincide, causando fallos de caché en cada nuevo chat.

Ad

Resultados de referencia

Una prueba A/B controlada mostró:

  • Encabezado ACTIVADO (predeterminado): 48% de tasa de aciertos de caché, ~12K tokens reconstruidos por sesión
  • Encabezado DESACTIVADO: 99.98% de tasa de aciertos de caché, cero creación de caché en 3 de cada 4 sesiones

El resultado es 7 veces más barato por sesión en procesamiento de prompts del sistema.

La solución

Añade esto a tu configuración de terminal:

export CLAUDE_CODE_ATTRIBUTION_HEADER=false

Para usuarios de zsh:

echo 'export CLAUDE_CODE_ATTRIBUTION_HEADER=false' >> ~/.zshrc
source ~/.zshrc

Las nuevas sesiones lo detectan automáticamente. Las sesiones existentes no necesitan reiniciarse—el hash no cambia a mitad de la conversación, y no interfieren con nuevas sesiones.

Seguridad y antecedentes

Esto no es un hack—la variable de entorno existe en el código fuente como un interruptor de función adecuado. claude-code-router y CLIProxyAPI han estado enviándose con esto desactivado en producción sin problemas reportados.

Anthropic probablemente implementó esto para rastrear qué versión y punto de entrada (CLI vs SDK vs GitHub Action) realizó cada llamada API, colocándolo en el prompt del sistema porque Bedrock/Vertex no reenvían encabezados personalizados.

📖 Leer la fuente completa: r/ClaudeAI

Ad

👀 Ver también