El mismo trabajo, el doble de ventana: por qué tu cuota de Claude Max se agota antes con Hermes

Las tres de la tarde y estás entrecerrando los ojos ante el panel de uso de Claude: unos cuantos cambios de archivo en la terminal y tu ventana de cinco horas está casi a la mitad. Sin trabajos por lotes, sin segunda sesión. Entonces, ¿a dónde se fue la cuota?
Probablemente no a cuánto hiciste, sino a bajo qué nombre lo hiciste. Claude Code estampa la identidad del invocador en la cabecera de facturación de cada petición, y las suscripciones ponderan la cuota según esa identidad: claude -p y otros invocadores no interactivos usan sdk-cli por defecto, que da la casualidad de que está en el grupo con recargo. El mismo trabajo, otro nombre, aproximadamente la mitad de la factura.
Una variable de entorno decide tu tarifa
Este es el mecanismo. Claude Code nombra a su invocador en cada petición: cc_entrypoint en la cabecera de facturación, y otra vez en el user agent. Cuando ejecutas claude -p, o llamas a través del Agent SDK, ese nombre es sdk-cli por defecto. En la medición de suscripciones, los invocadores sdk-* se cuentan con aproximadamente el doble de peso por token: mucho más que la CLI interactiva, y más que un cliente que se ejecuta bajo su propio nombre. El comportamiento se ha reportado repetidamente en el tracker de Anthropic (anthropics/claude-code#97074) y nunca se ha documentado oficialmente.
Ese es todo el problema: tu agente ejecuta el mismo modelo, con el mismo contexto, que tú escribiendo claude en una terminal, y se le cobra casi el doble porque responde al nombre sdk-cli.
El arreglo es pequeño: ejecutar el proceso hijo como hermes-agent, sobrescribiendo cualquier nombre heredado de un host (sdk-py, claude-desktop). Esto no es hacer trampa con el medidor: es presentarse con la identidad propia del cliente, que es el camino normal que Anthropic ofrece a los clientes de terceros.
Medido: los mismos 2,19 $ cuestan un 12 % frente a un 7 %
Esto no es una estimación. Es una prueba A/B sobre una suscripción Max real, con las condiciones declaradas con precisión:
- plan Max, Opus 5.5, Claude Code 2.1.316;
- cada rama envió cuatro peticiones nuevas de unos 43K tokens (escrituras de caché, nada leído de caché), salida fijada en 16 tokens, unos 1,09 $ equivalentes de tarifa por rama;
- las ramas se alternaron antes, después, antes, después; la utilización de cinco horas se leyó con una sonda Haiku 60 segundos después de cada rama;
- la ventana empezó al 3 % sin otro tráfico en la cuenta.
El resultado:
| Rama | Nombre en las peticiones | Delta de cinco horas (dos rondas) | Total por 2,19 $ |
|---|---|---|---|
| Antes | sdk-cli |
+6 % / +6 % | 12 % |
| Después | hermes-agent |
+4 % / +3 % | 7 % |
El mismo trabajo usó aproximadamente 1,7 veces menos de la ventana. Los mantenedores del plugin lo midieron el 31 de octubre de 2026 y lo escribieron en el README — una medición oficial, no un rumor de comunidad — y ellos mismos señalan la advertencia: Anthropic no ha documentado la ponderación, así que el beneficio puede cambiar sin previo aviso.
Hay un efecto secundario, y un parche para él
Renombrar no sale gratis. Cuando Claude Code ve un invocador que no es un SDK, habilita la elegibilidad nativa de artefactos, lo que añade una línea Scratchpad directory: … al mensaje de entorno de absolutamente cada petición. En una ventana por tokens, eso es puro sobrecoste, repetido en cada llamada.
El plugin define CLAUDE_CODE_DISABLE_ARTIFACT=1 para mantener esa línea fuera. Así que el cambio completo son dos cosas a la vez: ejecutarse como hermes-agent y desactivar la línea de artefactos.
Cómo conseguir el arreglo
Vive en el plugin oficial claude-subscription-directsdk, no en el core. La versión del plugin sigue siendo 0.3.3, pero el pin del catálogo pasó de 20048e6 a 01fa168, que es el PR #245 del repositorio del plugin.
Si ya lo tienes instalado, un comando vuelve a fijarlo:
hermes plugins update claude-subscription-directsdk
Las instalaciones del catálogo no hacen git pull al actualizar: reinstalan en el SHA revisado, que es exactamente cómo se sustituye el commit antiguo. Para comprobar antes qué estás ejecutando:
hermes plugins info claude-subscription-directsdk
La salida muestra la versión y el SHA fijado. Para una instalación nueva:
hermes plugins install claude-subscription-directsdk
Requiere Hermes >=0.21.4 y una CLI claude con sesión iniciada en la máquina. El plugin lo comprueba al cargar, en los selectores de modelo y antes de cada petición: si falta, se niega limpiamente con una pista de instalación en lugar de funcionar a medias.
No lo leas como “suscripción significa gratis”
Merece la pena atajar dos malinterpretaciones.
Primera: este proveedor no está penalizado. Consume cuota exactamente a la tarifa de claude -p / Agent SDK, ni un punto más. La brecha real es frente a la TUI interactiva: medido en Sonnet 5 con contexto de 1M, Claude Code interactivo consume uso a aproximadamente 0,58 veces esa tarifa. En otras palabras, el mismo trabajo escrito a mano en la terminal estira más una ventana de cinco horas; cualquier arnés tipo -p/SDK debería planificarse a alrededor del 60 % del rendimiento de la TUI.
Segunda: la ponderación está del lado del servidor; el plugin no puede cambiar la regla. Lo que puedes hacer es presentarte con la identidad correcta. Lo que no puedes hacer es fabricar cuota. Si Anthropic ajusta los pesos, ese 1,7 pasa a ser otro número: no lo incrustes en un modelo de presupuesto como constante.
Cómo medirlo tú mismo
No te fíes de las sensaciones con esto. El método es tan simple como el A/B de arriba: fija una tarea, ejecútala dos veces, lee la utilización una vez entre rondas y compara el delta porcentual con el equivalente en tarifa de lista. Así se produjeron los números del plugin, y puedes aplicar la misma comparación entre /usage de Hermes y /cost de Claude Code sobre una tarea.
Si aún no has conectado Hermes a tu suscripción, la guía del proveedor de suscripción de Claude cubre instalación y selección de modelo. Para ver uso y coste en paralelo, ventanas de uso y planes y seguimiento de costes son las continuaciones.
Una nota final honesta: un arreglo así no vale porque el número se vea bien, sino porque encontró un coste oculto que no tenía nada que ver con cuánto trabajo hiciste. Pagas una suscripción; deberían medirte a una sola tarifa.