En resumen
- Según la cuenta oficial de Anthropic @ClaudeDevs (publicado el 4 de noviembre, hora de EE. UU.): un subagente en segundo plano actualiza su línea de estado cada 30 segundos y cada actualización volvía a leer toda la conversación del subagente. Ahora Haiku 5.5 la escribe a partir de notas breves, así que cada actualización requiere cerca de un 99 % menos.
- Según la publicación de seguimiento: el subagente conserva su propio modelo; las sesiones con subagentes en segundo plano gastaron cerca de un 5 % menos del límite, así que el mismo límite da cerca de un 6 % más de prompts. Ya está activo para la mayoría de usuarios Pro, Max y Ultra y para todos los de Team y Enterprise, y requiere Claude Code v2.1.316 o posterior.
- Solo hay que hacer una cosa: ejecutar
claude --versiony actualizar si estás por debajo de 2.1.316. Según AlphaSignal, no hace falta cambiar la configuración. - Lo probamos el 5 de noviembre con una API Key de aicodewith en Claude Code 2.1.318. La línea de estado del subagente cambió, en efecto, cada 30 segundos aproximadamente («Reading shop and test files» → «Re-running tests on test_shop.py») y el subagente terminó en 1 min 46 s con el archivo:línea correcto. Con una API Key, las peticiones de actualización de estado que capturamos usaban el modelo del propio subagente. Para que el subagente y su línea de estado funcionen ambos con Haiku 5.5, define
CLAUDE_CODE_SUBAGENT_MODEL;/tasksmostrará «Haiku 5.5».
Crear una API Key y ejecutar subagentes en segundo plano en Claude Code →
Qué ha cambiado
| Elemento | Antes | Desde v2.1.316 (según Anthropic) |
|---|---|---|
| Intervalo | Cada 30 s aprox. mientras el subagente trabaja | Igual |
| Qué se lee | Toda la conversación del subagente, cada vez más larga | Notas breves que el subagente va tomando |
| Quién escribe la línea | El modelo del subagente | Haiku 5.5 |
| Por actualización | Crece con la conversación | Cerca de un 99 % menos |
| Sesión completa | — | Cerca de un 5 % menos de límite, cerca de un 6 % más de prompts |
| Modelo con el que trabaja el subagente | El que configuraste | Sin cambios |
La fuente son la publicación principal y la de seguimiento de @ClaudeDevs. Según METAL, Anthropic publicó además un vídeo explicativo de 6,6 segundos; según AlphaSignal, la publicación salió el 4 de noviembre, hora de EE. UU.
La «línea de estado» de la que hablamos no es la barra inferior que personalizas con /statusline, sino el texto corto «qué está haciendo ahora» que aparece tras cada subagente en segundo plano, en el panel bajo el cuadro de entrada. Según el artículo del desarrollador Gabriel Anhaia en DEV, ese texto se generaba enviando la conversación del subagente a su propio modelo y pidiéndole que resumiera su última acción en 3 a 5 palabras. Solo ocurre con subagentes en segundo plano que están trabajando. Cuantos más subagentes y más tiempo funcionen, más se acumula.
El registro de cambios de Claude Code muestra arreglos anteriores en esa misma línea: la 2.1.128 corrigió resúmenes de progreso que no aprovechaban la caché de prompts, la 2.1.274 un resumen que se convertía en una respuesta de varios párrafos, y la reciente 2.1.318 el aviso «Now using usage credits» que reaparecía cada 30 segundos aprox. mientras corría un subagente en segundo plano.
A quién afecta
| Tu caso | Efecto |
|---|---|
| Plan Pro, Max o Ultra, con subagentes en segundo plano a menudo | Activo para la mayoría según Anthropic; en 2.1.316+ el mismo límite da cerca de un 6 % más de prompts |
| Team o Enterprise | Activo para todos según Anthropic |
| Casi no usas subagentes | Prácticamente nada cambia; solo cambió la línea de estado de los subagentes en segundo plano |
| Claude Code con API Key (ANTHROPIC_BASE_URL) | Se mide por tokens, no por el límite del plan. En nuestra prueba, las actualizaciones seguían el modelo del subagente; para ahorrar tokens, pon los subagentes en Haiku 5.5 (ver abajo) |
Para entender cómo funcionan los límites (ventana de 5 horas y límite semanal), consulta Límites de uso de Claude Code y Max 20x.
Actualizar a 2.1.316+ y comprobar la versión
Comprueba tu versión actual:
claude --version
2.1.318 (Claude Code)
Si es inferior a 2.1.316, actualiza según cómo lo instalaste. Según la documentación de instalación de Claude Code, la instalación nativa se actualiza sola en segundo plano, mientras que Homebrew y WinGet no lo hacen por defecto:
# Instalación nativa o npm: actualizar a la última versión
claude update
# Homebrew: el cask claude-code sigue el canal stable, normalmente con una semana de retraso; usa @latest para recibir versiones nuevas al momento
brew upgrade claude-code@latest
# Windows WinGet
winget upgrade Anthropic.ClaudeCode
# Ver el tipo de instalación, el estado de las actualizaciones automáticas y la última actualización
claude doctor
Abre una terminal nueva y vuelve a ejecutar claude --version. Las publicaciones de Anthropic no mencionan ningún interruptor ni ajuste nuevo; tras actualizar, usa los subagentes en segundo plano como siempre.
Prueba real: un subagente en segundo plano en Claude Code con una API Key
Prueba del 5 de noviembre de 2026 con Claude Code 2.1.318 en Linux, sesión principal en Opus 5.5. Usamos un directorio HOME limpio para no tocar ninguna configuración existente.
Paso 1: crear una API Key y conectar Claude Code
- Regístrate en aicodewith.ai e inicia sesión; luego haz clic en «Gestión de claves» en la barra de navegación izquierda.
- Haz clic en «Crear clave» y ponle un nombre claro, por ejemplo «Subagentes de Claude Code».
- Copia la clave completa enseguida. Una vez cerrado el diálogo, la clave completa no se vuelve a mostrar. Más detalles en la documentación para crear una API Key.
Pon la clave en ~/.claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.aicodewith.ai",
"ANTHROPIC_AUTH_TOKEN": "TU_API_KEY"
}
}
Para otras formas de conexión, consulta Cómo usar Claude Code con una API de terceros.
Paso 2: una tarea que dure un rato
El repositorio de prueba es un pequeño proyecto de Python: 3 archivos en shop/ y 7 pruebas en tests/. El setUp de cada prueba espera 6 segundos, así que una ejecución completa tarda unos 42 segundos, y shop/pricing.py esconde un error de umbral: «10 unidades o más» escrito como qty > 10. Envía esto en Claude Code:
Use a general-purpose subagent in the background for a read-only review of this repo:
first run python3 -m unittest discover -s tests -v (about 45 seconds), then read every
file in shop/ and tests/ one by one, then run the test suite a second time, and finally
report each failing test with file:line, a one-line fix, and two other risks you notice.
The subagent must not edit any file. While it runs, just tell me it started.
Paso 3: observar la línea de estado del subagente
La sesión principal responde enseguida que ha empezado y aparece el panel de subagentes bajo el cuadro de entrada. Esta es la misma fila en distintos momentos, por orden:
● Agent(Read-only repo review)
⎿ Backgrounded agent (↓ to manage · ctrl+o to expand)
✻ Waiting for 1 background agent to finish
● main
◯ general-purpose Read-only repo review 48s · ↓ 12.0k tokens
◯ general-purpose Reading shop and test files 1m 10s · ↓ 14.0k tokens
◯ general-purpose Re-running tests on test_shop.py 1m 40s · ↓ 14.1k tokens
● Agent "Read-only repo review" finished · 1m 46s
Primero muestra el nombre de la tarea «Read-only repo review». A 1 min 10 s pasa a «Reading shop and test files» y a 1 min 40 s a «Re-running tests on test_shop.py», unos 30 segundos entre cambios, y el subagente termina a 1 min 46 s. En otra prueba que solo ejecutaba las pruebas una vez (subagente con el Opus 5.5 de la sesión principal), terminó en 59 s y la línea pasó del nombre de la tarea a «Preparing shop unittest discovery run».
El informe final del subagente (extracto):
Tests: 7 ran and 1 failed. Both runs gave the same results, so nothing looks flaky.
Failing test: test_bulk_at_threshold (tests/test_shop.py:10)
- It expects 10 units at 1.0 to total 9.5, but the code returns 10.0.
- The cause is shop/pricing.py:3, which uses if qty > 10.
- Fix: change > to >= at shop/pricing.py:3.
Two other risks:
1. Overselling (shop/inventory.py:4-7): reserve() checks stock and then sets it with no lock.
2. Missing input checks (shop/cart.py:5, shop/cart.py:9).
Tanto shop/pricing.py:3 como el cambio de > a >= son correctos, y no se modificó ningún archivo.
Paso 4: ¿qué modelo escribe la línea de estado?
Pusimos delante de la API un reenvío local que solo registraba el nombre del modelo y el número de mensajes:
| Momento | Petición | Modelo | Conversación enviada | Salida |
|---|---|---|---|---|
| Hacia 1 min 10 s | Actualización de estado | claude-haiku-5-5 (modelo del subagente) | Conversación actual del subagente, 7 mensajes | «Reading shop and test files», 10 tokens |
| Hacia 1 min 40 s | Actualización de estado | claude-haiku-5-5 (modelo del subagente) | Conversación actual del subagente, 8 mensajes | «Re-running tests on test_shop.py», 15 tokens |
Es decir, en nuestra prueba con API Key a través de ANTHROPIC_BASE_URL, la actualización seguía enviando la conversación actual del subagente a su propio modelo, igual que el método anterior descrito por Anthropic. Anthropic dice que el método nuevo está activo para la mayoría de suscriptores y no menciona las conexiones por API Key. Para quien usa API Key, lo más directo es poner los subagentes en Haiku 5.5: así tanto el trabajo como las actualizaciones de estado se ejecutan en Haiku 5.5.
Cómo configurar el modelo de los subagentes
Según la documentación de subagentes de Claude Code, el modelo de un subagente se decide en este orden:
- El parámetro
modelque Claude pasa en esa llamada; - El campo
modelde la definición del subagente (inherit= el modelo de la sesión principal); - La variable de entorno
CLAUDE_CODE_SUBAGENT_MODEL; - El modelo de la sesión principal.
Opción 1: un modelo por defecto para todos los subagentes
Añade una línea en env de ~/.claude/settings.json. Es la configuración que usamos en el paso 3:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.aicodewith.ai",
"ANTHROPIC_AUTH_TOKEN": "TU_API_KEY",
"CLAUDE_CODE_SUBAGENT_MODEL": "claude-haiku-5-5"
}
}
Es solo un valor por defecto: los subagentes cuya definición fija model, o las llamadas en las que Claude pasa un modelo, tienen prioridad. Por sí sola tampoco cambia los subagentes integrados Explore y Plan.
Opción 2: un modelo para un subagente concreto
Crea un archivo Markdown en .claude/agents/ del proyecto o en tu ~/.claude/agents/:
---
name: test-runner
description: Runs the test suite and reports failing tests with file:line. Read-only.
tools: Read, Grep, Glob, Bash
model: haiku
effort: medium
---
Run the tests, read only the files you need, and report each failing test
with file:line and a one-line fix. Never edit files.
model admite haiku, sonnet, opus, inherit o un ID completo como claude-haiku-5-5. Para un subagente de solo lectura más completo, consulta Subagentes de Claude Code con Haiku 5.5: configuración.
Opción 3: forzar un único modelo en todos los subagentes
{
"env": {
"CLAUDE_CODE_SUBAGENT_MODEL": "haiku",
"CLAUDE_CODE_SUBAGENT_MODEL_FORCE": "1",
"CLAUDE_CODE_SUBAGENT_EFFORT": "medium"
}
}
CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1 ignora el model de las definiciones (requiere v2.1.257+). CLAUDE_CODE_SUBAGENT_EFFORT es nuevo en 2.1.316 y fija el esfuerzo por defecto de los subagentes en lugar de heredar el de la sesión.
Comprobar que funciona
Mientras el subagente se ejecuta, escribe /tasks y selecciónalo para ver el modelo que usa de verdad. Nuestra salida:
/tasks
general-purpose › Read-only repo review
1m 1s · 14.0k tokens · 8 tools · Haiku 5.5
Progress
Read(shop/cart.py)
Read(shop/inventory.py)
Read(shop/pricing.py)
Read(tests/test_shop.py)
› Bash(python3 -m unittest discover -s tests -v 2>&1; echo "EXIT=$?")
«Haiku 5.5» al final de la segunda línea es el modelo con el que trabaja el subagente. Para saber qué tareas encajan con Haiku 5.5 o Sonnet 5.5, consulta Claude Haiku 5.5 vs Sonnet 5.5.
Otras formas de gastar menos
- Menos subagentes en segundo plano a la vez: la línea de estado solo se actualiza para los subagentes que trabajan; cinco a la vez son cinco bucles de actualización.
- Deja la búsqueda de archivos y las pruebas a Haiku 5.5 y reserva la sesión principal para lo que exige pensar a fondo.
- Convierte los flujos repetidos en Skills: lo que no necesita contexto propio funciona más ligero en la sesión principal, consulta Integrar los subagentes de Claude Code en Skills.
- Usuarios de Codex: para dividir el trabajo de Codex en subtareas, consulta Subagentes de Codex: estrategia de división de tareas; para ejecutar Claude Code y Codex en paralelo en directorios separados, consulta Ejecutar varios Claude Code / Codex en paralelo sin Conductor.
Preguntas frecuentes
¿Tengo que cambiar algún ajuste?
Anthropic solo pide actualizar a v2.1.316 o posterior, y sus publicaciones no mencionan ningún interruptor nuevo. Según AlphaSignal, no hace falta cambiar la configuración.
¿Mis subagentes pasarán a usar Haiku?
No. Según Anthropic, Haiku 5.5 solo escribe la línea de estado; el subagente trabaja con el modelo que configuraste. Para que el propio subagente use Haiku, define CLAUDE_CODE_SUBAGENT_MODEL o escribe model: haiku en su definición.
¿Qué relación hay entre «99 % menos» y «5 % menos»?
El 99 % es por cada actualización de la línea de estado; el 5 %, para la sesión completa. Las actualizaciones son una parte pequeña de una sesión, así que la sesión ahorra cerca de un 5 %, es decir, cerca de un 6 % más de prompts con el mismo límite.
¿Dónde veo qué está haciendo un subagente en segundo plano?
El panel bajo el cuadro de entrada muestra una fila por subagente en segundo plano con su estado, tiempo y tokens. Selecciónalo con ↓, abre su transcripción con Enter y usa /tasks para ver su modelo, llamadas a herramientas y progreso.
¿El método nuevo se aplica si me conecto con una API Key?
Las publicaciones de Anthropic solo mencionan Pro, Max, Ultra, Team y Enterprise. En nuestra prueba con API Key en 2.1.318, las actualizaciones seguían el modelo del subagente; con el subagente en Haiku 5.5, también se ejecutaban en Haiku 5.5.
Crear una API Key y empezar a usar subagentes en segundo plano en Claude Code →



