Gestionar múltiples agentes con la vista de agentes
Distribuya y gestione muchas sesiones de Claude Code desde una pantalla. La vista de agentes muestra qué está haciendo cada sesión y cuáles necesitan su entrada.
La vista de agentes, abierta con claude agents, es una pantalla para todas sus sesiones en segundo plano: qué se está ejecutando, qué necesita su entrada y qué está hecho. Distribuya nuevas sesiones, observe su estado de un vistazo en lugar de desplazarse por transcripciones, e intervenga solo cuando una lo necesite. Cada sesión en segundo plano es una conversación completa de Claude Code que sigue ejecutándose sin una terminal conectada, por lo que puede abrirla, responder y marcharse cuando quiera.
Utilice la vista de agentes cuando tenga varias tareas independientes en las que Claude pueda trabajar sin que usted observe cada paso. Distribuya una corrección de errores, una revisión de solicitud de extracción y una investigación de prueba inestable como tres filas, continúe trabajando en otra ventana y verifique cuando una fila muestre que la necesita o tenga un resultado.
Cuando desee trabajar de forma más directa en la sesión de cualquier agente, conéctese a la fila para entrar en la conversación completa.
Para comparar la vista de agentes con subagentes, equipos de agentes y worktrees, consulte Ejecutar agentes en paralelo. La vista de agentes ejecuta sesiones en su máquina y usted distribuye cada una; para que Claude inicie y rastree sesiones paralelas en la nube desde una conversación en su lugar, consulte Proyectos.
La vista de agentes está en vista previa de investigación. La interfaz y los atajos de teclado pueden cambiar a medida que la función evoluciona.
Inicio rápido
Este tutorial cubre el bucle principal de la vista de agentes: distribuir una tarea, observar cómo se actualiza su fila mientras Claude trabaja, echar un vistazo para verificar y responder, y conectarse para la conversación completa. La sesión que distribuye sigue ejecutándose después de cerrar la vista de agentes, por lo que puede irse y volver a ella.
Abrir la vista de agentes
Desde su shell, ejecute:
claude agents
Si aún no ha aceptado el diálogo de confianza del espacio de trabajo para el directorio, Claude Code lo muestra antes de que se abra la vista de agentes, el mismo diálogo que muestra claude. Acepte para guardar la confianza del espacio de trabajo y continuar. Si rechaza, Claude Code se cierra sin abrir la vista de agentes.
La vista de agentes se abre con una entrada en la parte inferior y una tabla que se completa a medida que comienzan las sesiones. Presione Esc para volver a su shell; si abrió la vista de agentes poniendo una sesión en segundo plano con ←, Esc vuelve a esa conversación en su lugar. Sus sesiones siguen ejecutándose mientras está fuera y reaparecen la próxima vez que abra la vista de agentes.
Distribuir una sesión
Escriba un mensaje describiendo una tarea y presione Enter. Una nueva sesión en segundo plano comienza en esa tarea y aparece como una fila que muestra si está funcionando, esperando su entrada o está hecha. La nueva sesión utiliza el modelo mostrado en el encabezado de la vista de agentes. El modo de permisos en el que comienza depende de cómo abrió la vista de agentes.
Cada mensaje que ingrese aquí inicia su propia sesión nueva. Escribir otro mensaje y presionar Enter lanza una segunda sesión junto a la primera en lugar de enviar una continuación a ella. Puede ejecutar varias en paralelo de esta manera.
Cada sesión utiliza su cuota de suscripción de forma independiente, así que consulte Limitaciones antes de distribuir muchas a la vez.
Echar un vistazo y responder
Seleccione una fila con las teclas de flecha y presione Space para abrir el panel de vista previa. Muestra la salida más reciente de la sesión, o la pregunta en la que está esperando, en lugar de la transcripción completa. Escriba una respuesta y presione Enter para enviarla sin salir de la vista de agentes.
Conectar y desconectar
Presione Enter o → en una fila para conectarse cuando desee la conversación completa. La sesión toma el control de la terminal como una sesión completa e interactiva de Claude Code. Presione ← en un mensaje vacío para desconectarse y volver a la tabla.
Traer una sesión existente
Este paso necesita una sesión en ejecución. Si siguió los pasos anteriores, no tiene una abierta en esta terminal, así que abra una sesión regular de claude en otra terminal y envíele un mensaje primero.
Para mover una sesión que ya tiene abierta a la vista de agentes, ejecute /bg dentro de ella, o presione ← en un mensaje vacío para enviarla al segundo plano y abrir la vista de agentes en un paso. En una sesión nueva sin mensajes aún, /bg le pide que envíe un mensaje primero, mientras que ← funciona de inmediato. La sesión sigue ejecutándose y aparece como una fila junto a las que distribuyó.
Puede usar claude agents como su punto de entrada principal en lugar de claude: distribuya cada tarea desde la vista de agentes, conéctese cuando desee la conversación completa, y presione ← para volver a la tabla.
Dentro de una sesión regular de claude, la pista ← del pie de página del mensaje cuenta los agentes en segundo plano que están esperando su entrada, como ← 2 agents, y vuelve a ← for agents cuando ninguno necesita entrada. Los conteos superiores a 99 se muestran como 99+. El conteo se actualiza aproximadamente cada diez segundos mientras la terminal está enfocada e inmediatamente cuando el enfoque regresa. Cambia brevemente de color cuando se mueve y cuando un agente se completa, y cuando una sesión en segundo plano se completa mientras ninguno necesita su entrada, muestra brevemente el número completado, como ← 2 done. Ambos destellos se desactivan cuando la configuración prefersReducedMotion está activada, y la pista se oculta en modo de lector de pantalla.
Monitorear sesiones con vista de agentes
Ejecute claude agents para abrir la vista de agentes. Toma el control de la terminal completa y enumera cada sesión agrupada por estado, con sesiones fijadas y las que necesitan su atención en la parte superior. Cada fila muestra el nombre de la sesión, la actividad actual y su antigüedad, contada desde cuándo se creó la sesión; la antigüedad de una sesión finalizada se congela en cuánto tiempo tardó la ejecución.
El nombre está teñido con el color establecido por /color en esa sesión, incluyendo cuando coloca una sesión en segundo plano con ← o /background.
De forma predeterminada, la lista muestra cada sesión en segundo plano que ha iniciado, en todos sus proyectos. Una sesión que funciona en un repositorio y otra en un worktree diferente aparecen aquí, independientemente de qué directorio abrió la vista de agentes. Para reducir la lista a un proyecto, pase --cwd:
claude agents --cwd ~/projects/my-app
Esto muestra solo las sesiones iniciadas en ese directorio. Aún enumera una sesión que se ha movido a un worktree bajo ~/projects/my-app/.claude/worktrees/.
Las sesiones interactivas que tiene abiertas en otras terminales no aparecen hasta que las coloque en segundo plano. Los subagentes y compañeros de equipo que una sesión genera no se enumeran como filas separadas.
Pinned
✽ clawd walk cycle Drawing the walk-cycle sprite frames 3m
Ready for review
∙ jump physics Opened PR with collision fix #2048 2h
Needs input
✻ power-up design double jump or wall climb? 1m
Working
✽ collision detection Adding swept-AABB checks to CollisionSystem 2m
✢ playtest level 3 run 12 · all checkpoints cleared in 4m
Completed
✻ title screen result: menu, options, and credits done 9m
∙ sound effects result: 14 SFX exported to assets/audio 4h
… 6 more
Leer el estado de la sesión
Cada fila comienza con un icono cuyo color y animación muestran el estado de la sesión:
| Estado | El icono se muestra como | Qué significa |
|---|---|---|
| Working | Animado | Claude está ejecutando activamente herramientas o generando una respuesta |
| Needs input | Amarillo | Claude está esperando algo que solo usted puede proporcionar: una respuesta a una pregunta, una decisión de permiso, u otro mensaje que solo usted puede responder, como un mensaje de sandbox para permitir un host de red o la solicitud de entrada de un servidor MCP. Un comando que necesita una terminal adjunta, como /install-github-app o la lista de configuración /mcp, también mantiene una sesión desatendida aquí |
| Idle | Atenuado | La sesión no tiene nada que hacer y está lista para su próximo mensaje |
| Completed | Verde | La tarea se completó exitosamente |
| Failed | Rojo | La tarea terminó con un error |
| Stopped | Gris | Detuvo la sesión con Ctrl+X o claude stop, su proceso fue terminado desde fuera de Claude Code, o terminó mientras el servicio en segundo plano estaba apagado |
Por separado, la forma del icono muestra si el proceso subyacente se está ejecutando:
| Forma | Qué significa |
|---|---|
✻ o ✽ animado |
El proceso de sesión está vivo y responde inmediatamente |
∙ |
El proceso ha salido. Aún puede ver la fila, y cuando responda o se adjunte, Claude reinicia desde donde lo dejó |
✢ |
Una sesión /loop durmiendo entre iteraciones. La fila muestra su recuento de ejecuciones y una cuenta regresiva |
La etiqueta #N o !N que puede aparecer en el borde derecho de una fila es un enlace al pull request o merge request de la sesión, no parte del icono de estado.
El título de la pestaña de terminal muestra el recuento de entrada pendiente mientras la vista de agentes está abierta: 2 awaiting input · claude agents cuando las sesiones necesitan entrada, o claude agents cuando no la necesitan.
Para leer el estado de la sesión desde un script u otro programa, use claude agents --json en lugar de los archivos bajo ~/.claude/jobs/.
Mientras la vista de agentes está abierta, Claude Code también envía una notificación a través de su canal de notificación de terminal configurado cuando una sesión en segundo plano local comienza a necesitar su entrada, se completa o falla. Las sesiones que se ejecutan según un cronograma, como las sesiones /loop, notifican solo cuando necesitan su entrada. Las notificaciones utilizan la misma configuración preferredNotifChannel que el resto de Claude Code e invocan el hook Notification con el tipo agent_needs_input o agent_completed.
Las sesiones en segundo plano no necesitan ninguna terminal abierta para seguir funcionando. Un proceso supervisor separado las ejecuta, por lo que puede cerrar la vista de agentes, cerrar su shell o iniciar una nueva sesión interactiva y su trabajo despachado sigue adelante.
El estado de la sesión persiste en el disco a través de actualizaciones automáticas y reinicios del supervisor. Las sesiones también se conservan cuando su máquina se duerme. Sus procesos se reanudan al despertar y el supervisor se reconecta a ellos en lugar de tratar la brecha de tiempo como inactividad. El apagado aún detiene las sesiones en ejecución; consulte Las sesiones se muestran como fallidas o detenidas después del apagado para saber cómo recuperarlas.
Una sesión que estaba en medio de una respuesta cuando la máquina se durmió puede volver sin responder. Cuando abre una sesión que ha dejado de responder, el supervisor reinicia su proceso y la sesión continúa la respuesta interrumpida desde donde la dejó.
Resúmenes de filas
El resumen de una línea en cada fila es generado por un modelo de clase Haiku para que la fila pueda decirle qué está haciendo la sesión, qué necesita o qué produjo sin abrir la transcripción. Mientras una sesión está funcionando activamente, el texto de la fila se actualiza como máximo una vez cada 15 segundos desde la salida reciente de la sesión sin enviar una solicitud de modelo, y el modelo escribe un resumen nuevo cuando cada turno termina.
Una fila de trabajo muestra lo que la sesión dice que está haciendo, y una fila bloqueada muestra la pregunta que está haciendo. Durante un turno largo, el modelo también reescribe el resumen cada pocos minutos para que una fila ocupada no siga mostrando uno desactualizado. El texto del resumen llena el ancho restante de la fila; abra el panel de vista previa para leer una oración que el borde de la terminal recorta.
Cuando la lista está agrupada por directorio, el resumen se abre con el estado de la sesión como una palabra coloreada, como Needs input · double jump or wall climb?. En la agrupación de estado predeterminada, el encabezado del grupo ya nombra el estado, por lo que la fila muestra solo el resumen.
El resumen de fin de turno y cada reescritura a mitad de turno son una solicitud corta de clase Haiku a través de su proveedor normal, facturada y manejada bajo los mismos términos de uso de datos que la sesión misma. Las actualizaciones de 15 segundos entre reescrituras de modelo reutilizan la salida de la sesión y no envían una solicitud. En un proveedor de terceros o puerta de enlace sin un modelo de clase Haiku configurado, la solicitud utiliza el modelo principal de la sesión; establezca ANTHROPIC_DEFAULT_HAIKU_MODEL para elegir uno.
Estado del pull request
Cuando una sesión abre un pull request, Claude Code agrega una etiqueta en el borde derecho de la fila, vinculada al pull request:
- Claude Code escribe la etiqueta como
#1234para un pull request y como!1234para un merge request de GitLab. - Claude Code emite el enlace incluso cuando no puede detectar soporte de hipervínculo, por ejemplo sobre SSH o tmux. Establezca
FORCE_HYPERLINK=0para renderizar la etiqueta como texto sin formato. - Después de enviar un seguimiento a la sesión, Claude Code mantiene la etiqueta mientras la fila vuelve al progreso en vivo.
Una sesión que funciona en un pull request existente está vinculada de la misma manera. Claude Code encuentra el pull request de manera diferente dependiendo del comando que ejecute Claude:
- Cuando Claude edita, comenta, cierra o marca un pull request como listo con
gh, Claude Code vincula el pull request que la salida del comando nombra. Un comandoghcuya salida capturada no nombra ningún pull request no crea un enlace;gh pr mergees el caso común, porque imprime su resultado solo en una terminal interactiva. - Cuando Claude extrae un pull request con
gh pr checkouto empuja a una rama, Claude Code busca la rama congh pr viewy vincula su pull request abierto. - El pull request no necesita existir aún cuando Claude empuja: Claude Code reintenta la búsqueda de rama después de hasta cinco comandos posteriores de
git,gh,glabocurlejecutados en el mismo directorio, por lo que un pull request creado después del empuje, incluido uno que Claude crea a través de la API REST de GitHub, se vincula cuando un reintento lo encuentra.
Cuando una sesión está vinculada a más de un pull request, la etiqueta muestra un recuento en su lugar, como 3 PRs, coloreado por el pull request abierto que más necesita atención. Abra el panel de vista previa para verlos todos.
El número del pull request está coloreado por su estado:
| Color | Estado del pull request |
|---|---|
| Amarillo | Esperando verificaciones o revisión, o las verificaciones fallaron |
| Verde | Las verificaciones pasaron y ninguna revisión está bloqueando |
| Púrpura | Fusionado |
| Gris | Borrador o cerrado |
Para una tarea que termina en un pull request, verifique esta etiqueta para el resultado: revise y fusione el pull request cuando su número se vuelva verde.
Peek and reply
Presione Space en una fila seleccionada para abrir el panel de vista previa. Se abre con la oración que la fila trunca en el borde de la terminal, y qué oración es depende del estado de la sesión:
- Una sesión que está esperando por usted: la pregunta exacta que está haciendo, encima de la entrada de respuesta
- Una sesión finalizada: su resultado
- Una sesión de trabajo: su oración de estado completa
Cualquier pull request vinculado a la sesión se enumera a continuación. Para una sesión que está esperando por usted, una línea como waiting 3m debajo de ellos muestra cuánto tiempo ha estado esperando, y es la única vez que se muestra en el panel. La antigüedad en el borde derecho de la fila es un número diferente: cuenta desde cuándo comenzó la sesión.
La mayoría de las veces el panel de vista previa es suficiente y no necesita abrir la transcripción completa.
Escriba una respuesta en el panel de vista previa y presione Enter para enviarla a esa sesión. Cuando la sesión hace una pregunta con opciones predefinidas, el panel de vista previa las muestra como una lista numerada y puede presionar una tecla numérica para elegir una. Un mensaje de permiso se muestra como texto que describe lo que la sesión quiere ejecutar, sin opciones numeradas. Escriba una respuesta para responderla, o adjúntese para responder con el mensaje estándar. Para otras sesiones bloqueadas, presione Tab para llenar la entrada con una respuesta sugerida que puede editar antes de enviar. Prefije una respuesta con ! para enviar un comando Bash en su lugar.
Cuando un hook PermissionRequest o PreToolUse devuelve una salida que Claude Code no puede validar para la llamada que la sesión está pidiendo, la fila muestra el evento del hook y hook output invalid: con el error de validación antes del texto de la solicitud pendiente. Para un hook que falla de otra manera, la fila dice que el hook falló. La sesión aún espera la misma solicitud.
Una respuesta que no se puede entregar, porque el servicio en segundo plano es inaccesible o el envío falla, se guarda y se envía a la sesión como su próximo mensaje cuando su proceso se inicia nuevamente, y el mensaje de error dice que la respuesta se guardó. Una respuesta prefijada con ! no se guarda, porque el texto guardado llegaría a la sesión como un mensaje simple en lugar de ejecutarse como un comando Bash.
Con dictado de voz habilitado, mantenga o toque su tecla de pulsar para hablar mientras la entrada de respuesta está enfocada para dictar una respuesta en lugar de escribirla. Lo mismo funciona en la entrada de envío en la parte inferior de la vista de agentes.
Use ↑ y ↓ para ver sesiones adyacentes sin cerrar el panel, o → para adjuntarse.
Adjuntarse a una sesión
Presione Enter o → en una fila seleccionada para adjuntarse. La vista de agentes es reemplazada por la sesión interactiva completa. Cuando se adjunta, Claude publica un breve resumen de lo que sucedió mientras estaba fuera.
Mientras está adjunto, la sesión se comporta como cualquier otra sesión de Claude Code: comandos, atajos de teclado y características funcionan todos, con las excepciones a continuación.
Mientras está adjunto, /install-github-app y la lista de configuración /mcp funcionan normalmente, ya que un humano en la terminal puede completar sus diálogos. Cuando nadie está adjunto, estos comandos no pueden abrir sus diálogos, por lo que la sesión aparece bajo Needs input en la vista de agentes con una fila como open this session to manage MCP servers, y la respuesta de transcripción dice lo mismo. Adjúntese y ejecute el comando nuevamente para continuar; la fila de entrada necesaria se borra cuando se adjunta. /mcp reconnect <server>, /mcp enable y /mcp disable funcionan sin adjuntarse de cualquier manera.
Las sesiones adjuntas siempre se renderizan en modo de pantalla completa, independientemente de su configuración tui, porque una sesión en segundo plano no tiene desplazamiento de terminal para adjuntar. Desplácese con PgUp, PgDn o la rueda del ratón, y presione Ctrl+O para el modo de transcripción. El desplazamiento nativo de su terminal y el modo de copia de tmux muestran solo la ventana gráfica actual, lo mismo que cuando ejecuta cualquier aplicación de pantalla completa.
Presione ← en un mensaje vacío, o ejecute /exit, para desconectarse y volver a la vista de agentes, ya sea que haya abierto la sesión desde la vista de agentes o con claude attach <id> desde su shell.
← también se desconecta mientras la superposición /btw está abierta. Requiere Claude Code v2.1.257 o posterior. Una pregunta secundaria que aún está respondiendo sigue ejecutándose mientras está fuera. La próxima vez que se adjunte, la superposición se reabre con ella, o con su respuesta.
En Windows, si presiona ← dentro de aproximadamente medio segundo de adjuntarse, Claude Code muestra Ambiguous ←, press again to detach, porque en esa ventana la terminal puede reentrega un presión de antes de que se adjuntara. Presione ← nuevamente para desconectarse.
Ctrl+Z también se desconecta pero vuelve a donde comenzó: vista de agentes si se adjuntó desde allí, o su shell si ejecutó claude attach. Use Ctrl+Z cuando un diálogo tiene el foco y no responde a ←.
Ctrl+C mantiene su comportamiento de interrupción estándar mientras está adjunto: cancela una respuesta en ejecución o un comando shell ! en lugar de desconectarse. Presionar Ctrl+C dos veces en un mensaje vacío se desconecta, lo mismo que en cualquier sesión.
Desconectarse nunca detiene una sesión en segundo plano: ←, Ctrl+Z, /exit y Ctrl+C o Ctrl+D doble dejan que siga ejecutándose. Para finalizar una sesión desde dentro de ella, ejecute /stop.
Cambiar sesiones sin dejar la terminal
En una sesión que se ejecuta en primer plano, una que inició en la terminal en lugar de adjuntarse desde la vista de agentes, presionar ← en un mensaje vacío la coloca en segundo plano y abre la vista de agentes con esa fila seleccionada, para que pueda cambiar sesiones sin dejar la terminal. El mismo presión única desconecta una sesión adjunta.
Si presiona ← justo después de eliminar el último del texto del mensaje o moverse a través del historial de mensajes, Claude Code le pide que confirme: el primer presión muestra Press ← again to open agents, o Press ← again to go back to agents en una sesión adjunta, y el segundo presión cambia.
Cuando ← coloca una sesión en primer plano en segundo plano, la vista de agentes muestra Your conversation moved to the background encima de la lista, con la fila de esa sesión ya seleccionada. Desde allí:
- Presione
Enterpara reabrir la conversación. - Presione
Escpara deshacer el cambio y volver a la conversación. SiEscmuestraStill starting — try again in a moment, la sesión en segundo plano aún no está lista, así que presioneEscnuevamente en un momento. - Presione
Ctrl+Cdos veces para salir a su shell.
Cuando Claude Code no puede reabrir la conversación, sale e imprime un comando claude --resume que la reanuda.
La lista de tareas de Claude se mueve a la sesión en segundo plano con la conversación, por lo que la lista de verificación está intacta cuando regresa a esa fila.
La fila en la que presionó ← también mantiene un nombre en negrita y sin atenuar después de mover la selección con las teclas de flecha o el ratón, para que pueda saber de qué sesión vino.
Si una herramienta se está ejecutando cuando presiona ←, Claude Code espera aproximadamente diez segundos para que se complete antes de colocar en segundo plano, y Claude continúa la respuesta en la sesión en segundo plano. Presione ← nuevamente para colocar en segundo plano inmediatamente en lugar de esperar. Cuando el trabajo en vuelo no puede trasladarse a la sesión en segundo plano, Claude Code muestra el diálogo Background this session? primero, lo mismo que con /background.
El límite de diez segundos no se aplica mientras los subagentes en primer plano que Claude inició en la conversación aún se están ejecutando. Claude Code sigue esperando para que su trabajo se traslade, y muestra un aviso Still backgrounding after the current tool mientras espera. Presione ← nuevamente para colocar en segundo plano sin esperar, lo que reinicia esos subagentes desde el principio. Claude Code no espera a los subagentes que un flujo de trabajo dinámico está ejecutando. Cuando un flujo de trabajo tiene subagentes ejecutándose, Claude Code muestra el diálogo Background this session? en su lugar.
Claude Code no coloca la sesión en segundo plano mientras tiene texto no enviado en la entrada del mensaje, porque el texto permanece en el cuadro de entrada de su terminal y no se movería a la sesión en segundo plano. Si escribe en la entrada mientras Claude Code espera para colocar la sesión en segundo plano, cancela el cambio con Backgrounding cancelled — you have unsent text in the input. Send it or clear it, then press ← again.
Presionar ← crea la fila de la sesión incluso cuando la conversación no tiene mensajes aún, por lo que → aún regresa a ella.
Puede desactivar este atajo con la configuración leftArrowOpensAgents en /config.
Organizar la lista
La vista de agentes agrupa sesiones para que las que necesitan entrada estén en la parte superior, con Ready for review y Needs input encima de Working y Completed. Estos nombres de grupo no se asignan uno a uno a los estados anteriores: una sesión se mueve a Ready for review cuando tiene un pull request abierto, y Completed recopila sesiones terminadas, fallidas y detenidas juntas.
Presione Ctrl+S para agrupar por directorio en su lugar. Su elección persiste en todas las ejecuciones.
Dentro de un grupo:
- Presione
Ctrl+Tpara fijar una sesión en la parte superior y mantener su proceso ejecutándose mientras está inactivo - Presione
Shift+↑oShift+↓para reordenar sesiones - Presione
Ctrl+Rpara renombrar una sesión - Presione
Enteren un encabezado de grupo para contraerlo
Para eliminar una sesión de la lista, presione Ctrl+X para detenerla y Ctrl+X nuevamente dentro de dos segundos para eliminarla. Presionar Ctrl+X en un encabezado de grupo elimina cada sesión en ese grupo después de la confirmación.
El segundo presión elimina la sesión incluso cuando el intento de detención falla, por ejemplo porque el servicio en segundo plano no responde: la confirmación permanece activa durante otros dos segundos, y la eliminación termina el proceso de la sesión en sí. Presione Esc para descartar la confirmación sin eliminar.
Excepto en los casos mantenidos cubiertos en Lo que elimina una sesión elimina, eliminar elimina la sesión de la lista, y un worktree que Claude creó para ella se elimina, se mantiene o se deja en su lugar dependiendo de cómo elimine y qué contenga el worktree. La transcripción de conversación siempre permanece en su máquina local, disponible a través de claude --resume.
Para traer una sesión de vuelta en Claude Code v2.1.212 o posterior, escriba /resume en la entrada de envío. Se abre un selector con sesiones pasadas del repositorio desde el que abrió la vista de agentes, más recientes primero, incluidas las sesiones que eliminó de la lista; las sesiones que ya tienen una fila no se enumeran. ↑/↓ mueven la selección, Enter reanuda la sesión seleccionada como una sesión en segundo plano para que se reúna con la lista como una fila, y Esc cierra el selector.
El selector se abre solo para un /resume simple. Un resumen dirigido, con alcance o restringido no puede ser servido por el selector, por lo que la vista de agentes muestra la sugerencia attach to a session to run it en su lugar cuando:
/resumenombra un id o un término de búsqueda- la vista está limitada con
--cwd - la vista se inició con
--safe-mode - la vista se abrió con una bandera como
--permission-modeo--settings
Las sesiones completadas que no caben en la pantalla se pliegan en una fila … N more. Los fallos y las sesiones con un pull request abierto siempre permanecen visibles. El grupo Completed llena el espacio vertical dejado después de los grupos en vivo, y en una terminal corta el encabezado se compacta en una sola línea de resumen para que las sesiones que están funcionando o necesitan entrada permanezcan visibles.
Filtrar sesiones
Escriba en la entrada de envío para filtrar en lugar de enviar:
| Filtro | Muestra |
|---|---|
a:<name> |
Sesiones que ejecutan el agente nombrado |
s:<state> |
Sesiones en el estado dado, como s:working. También acepta s:blocked para todo lo que está esperando por usted |
#<number> o una URL de pull o merge request |
La sesión que funciona en ese pull request o merge request |
| Cualquier otra URL | La sesión cuyo primer mensaje contenía esa URL |
Atajos de teclado
Presione ? en la vista de agentes para ver cada atajo en contexto. La tabla a continuación los resume.
| Atajo | Acción |
|---|---|
↑ / ↓ |
Moverse entre filas |
Enter |
Adjuntarse a la sesión seleccionada, o enviar si hay texto en la entrada |
Space |
Abrir o cerrar el panel de vista previa para la sesión seleccionada |
Shift+Enter |
Insertar una nueva línea en la entrada de envío, como en el mensaje principal |
Ctrl+Enter |
Enviar y adjuntarse inmediatamente, en terminales donde la superposición ? enumera ctrl+enter to start and open |
→ |
Adjuntarse a la sesión seleccionada |
Alt+1..Alt+9 |
Adjuntarse a la sesión 1–9 en el directorio de la sesión enfocada |
Tab |
En una entrada vacía, examinar todos los subagentes. De lo contrario, aplicar la sugerencia resaltada |
Ctrl+S |
Cambiar agrupación entre estado y directorio |
Ctrl+T |
Fijar o desfijar la sesión seleccionada |
Ctrl+R |
Renombrar la sesión seleccionada |
Ctrl+G |
Abrir el mensaje de envío en su $VISUAL o $EDITOR |
Ctrl+J |
Insertar una nueva línea en la entrada de envío |
Ctrl+X |
Detener la sesión; presione nuevamente dentro de dos segundos para eliminarla |
Shift+↑ / Shift+↓ |
Reordenar la sesión seleccionada |
Esc |
Cerrar el panel de vista previa, borrar la entrada o salir. Cuando abrió la vista de agentes colocando su sesión en segundo plano con ←, el Esc final regresa a esa conversación en lugar de salir. Con modo de editor vim activado, presionar Esc en la entrada cambia de modo INSERT a modo NORMAL y mantiene su texto, como en el mensaje principal |
Ctrl+C |
Borrar la entrada; presione dos veces para salir |
? |
Mostrar todos los atajos |
Ctrl+S, Ctrl+T y Ctrl+G siguen su keybindings.json. Reenlace o desenlace Ctrl+S y Ctrl+T con las acciones agents:switchView y agents:togglePin en el contexto Agents, y Ctrl+G a través del enlace chat:externalEditor del contexto Chat. Los otros atajos en la tabla no se pueden reenlazar.
Distribuir nuevos agentes
Puede distribuir nuevas sesiones en segundo plano desde la vista de agentes, enviar una sesión interactiva existente al segundo plano o iniciar una directamente desde el shell.
Desde la vista de agentes
Escriba un mensaje en la entrada en la parte inferior de la vista de agentes y presione Enter para iniciar una nueva sesión en segundo plano. La sesión se nombra automáticamente a partir del mensaje; renómbrela más tarde con Ctrl+R.
El nombre automático es una etiqueta corta escrita por un modelo de clase Haiku. Un nombre que la sesión obtiene más tarde también aparece en su fila, incluido el título generado que la sesión obtiene cuando acepta un plan en esa sesión.
Pegue una imagen en el mensaje para incluir una captura de pantalla o diagrama con la tarea.
El texto pegado más largo que 800 caracteres o más de tres líneas se contrae a un marcador de posición [Pasted text #N] para que la entrada permanezca en una línea; el texto completo se envía cuando distribuye. Para revisar o editar el texto contraído antes de distribuir, pegue el mismo texto nuevamente y el marcador de posición se expande nuevamente en la entrada.
Prefije o mencione partes del mensaje para controlar cómo comienza la sesión:
| Entrada | Efecto |
|---|---|
<agent-name> <prompt> |
Si la primera palabra coincide con un nombre de subagente personalizado, ese subagente se ejecuta como el agente principal de la sesión con la configuración de su frontmatter |
@<agent-name> |
Mencione un subagente personalizado en cualquier lugar del mensaje para ejecutarlo como el agente principal |
@<repo> |
Mencione un repositorio para ejecutar la sesión allí. Consulte Distribuir a un directorio específico para ver qué repositorios se enumeran |
/<command> |
Sugiera skills y commands para distribuir como el mensaje |
! <command> |
Ejecute un comando de shell como un trabajo en segundo plano en lugar de iniciar una sesión de Claude. El trabajo aparece como una fila a la que puede conectarse, observar y desconectarse |
#<number> o una URL de solicitud de extracción o fusión |
Si una sesión ya está trabajando en esa solicitud de extracción o fusión, Claude Code selecciona su fila en lugar de distribuir una nueva sesión |
Un pequeño conjunto de comandos se ejecutan en la vista de agentes en sí en lugar de distribuirse:
/exity/quitcierran la vista de agentes/logoutcierra su sesión/modelestablece el modelo de distribución/loginabre el diálogo de inicio de sesión para que pueda iniciar sesión nuevamente sin conectarse a una sesión- Un
/resumesin argumentos, o su alias/continue, abre un selector de sesiones pasadas del repositorio para traer una de vuelta como una sesión en segundo plano. Requiere Claude Code v2.1.212 o posterior
Skills, sus propios comandos y built-ins que expanden prompts como /init se envían a una nueva sesión en segundo plano como su primer mensaje. Otros comandos built-in muestran una sugerencia attach to a session to run it en su lugar. Todo lo que escribió permanece en la entrada junto a la sugerencia para que pueda editarlo.
Empaquetar una tarea recurrente como un skill le permite iniciar el mismo flujo de trabajo desde la vista de agentes repetidamente sin reescribir el mensaje.
Cuando el mismo @name coincide tanto con un subagente como con un repositorio hermano, el subagente tiene prioridad. La coincidencia de primera palabra sin @ también se aplica, por lo que un mensaje que comienza con uno de sus nombres de subagente distribuye ese subagente en lugar de tratar la palabra como texto plano. Use la forma @ cuando desee ser explícito, o comience el mensaje con una palabra diferente para evitar la coincidencia.
Distribuir a un directorio específico
Una nueva sesión se ejecuta en el directorio desde el que abrió la vista de agentes. Para dirigirse a un directorio diferente, use cualquiera de estos:
-
Abra
claude agentsen ese directorio. -
Abra
claude agentsen un directorio padre y mencione un repositorio hijo con@<repo>en el mensaje. Escribir@enumera estos objetivos:- Repositorios Git un nivel por debajo del directorio de lanzamiento
- Los git worktrees registrados del repositorio desde el que se lanzó que viven dentro de su árbol de directorios, como los que Claude crea bajo
.claude/worktrees/, etiquetados con su rama extraída. Los worktrees agregados fuera del repositorio, como congit worktree add ../feature, no se enumeran - Cualquier directorio que ya tenga una sesión en la lista
Un directorio cuyo nombre contiene un espacio no se enumera.
-
Desde el shell,
cdal directorio y ejecuteclaude --bg "<prompt>".
Cuando la vista de agentes se agrupa por directorio, distribuir envía el mensaje al directorio de la fila seleccionada, por lo que puede seleccionar un grupo y distribuir en él sin reescribir la ruta.
Desde dentro de una sesión
Dos comandos mueven el trabajo de la sesión en la que se encuentra al segundo plano: /background envía la conversación actual allí y libera su terminal, y /fork envía una copia mientras continúa trabajando donde está.
Enviar la sesión al segundo plano
Ejecute /background o su alias /bg para mover la conversación actual a una sesión en segundo plano. Pase un mensaje como /bg run the test suite and fix any failures para dar una instrucción más primero. Si Claude está respondiendo cuando ejecuta /bg, la respuesta continúa en la sesión en segundo plano.
Salir de una sesión que aún tiene trabajo en segundo plano en ejecución, como subagentes, comandos de shell en segundo plano, flujos de trabajo o monitores, muestra un diálogo Background work is running en lugar de salir inmediatamente. Elija Move to background and exit para enviar la sesión al segundo plano de la misma manera que /background lo hace y volver a su shell. La opción no se muestra cuando la vista de agentes está desactivada.
Si una sesión en segundo plano en la lista ya tiene el nombre de la conversación, Claude Code numera el nombre de la nueva fila, como my-session (2), y deja el nombre de la fila existente sin cambios. Para renombrar la nueva fila, selecciónela en la vista de agentes y presione Ctrl+R.
Copiar la sesión con /fork
Ejecute /fork para copiar la conversación actual en una nueva sesión en segundo plano mientras la original continúa ejecutándose. La copia comienza con todo en la conversación hasta ese punto; consulte los puntos a continuación para ver dónde se ejecuta la copia. También lleva el modelo, modo de permiso, nivel de esfuerzo y cualquier directorio o concesión de permiso "no preguntar de nuevo" que agregó durante la sesión. La copia aparece como su propia fila en la vista de agentes.
Después de la bifurcación, las dos conversaciones son independientes: nada de lo que hace la copia entra en la conversación original por sí solo, aunque en sesiones donde mensajería entre sesiones está habilitada, Claude en cualquiera de las sesiones puede enviar un mensaje explícitamente a la otra.
Copiar la sesión requiere Claude Code v2.1.212 o posterior; en v2.1.161 a v2.1.211, /fork inicia un subagente bifurcado en su lugar, que ahora es /subtask. Cuando la vista de agentes está desactivada, /fork mantiene el comportamiento de subagente bifurcado y /subtask no está disponible.
Pase un mensaje como /fork open a draft pull request with the work so far y la copia comienza a trabajar en él inmediatamente. Sin un mensaje, la copia espera su primera instrucción: seleccione su fila en claude agents y presione Space para enviar una, o ejecute claude attach <id>. La fila seleccionada muestra space to send it a prompt mientras espera.
La confirmación de /fork es una línea que muestra el estado de la copia, como session running, el nombre de su fila de vista de agentes y su ID de sesión para claude attach. Haga clic en el nombre para cambiar a la copia: esta sesión se mueve al segundo plano, igual que presionar ←, y la vista de agentes abre la sesión de la copia.
Excepto cuando la copia edita en su lugar, Claude Code le indica que cree su propio worktree antes de hacer cambios de código. Fuera de un repositorio git, solo una copia movida fuera de un worktree creado por hook recibe la instrucción; sin un hook WorktreeCreate, la copia edita en su lugar. Una copia movida fuera de su worktree también recibe la instrucción de nunca editar, ejecutar comandos en o entrar en ese worktree, sea cual sea la configuración de aislamiento.
Dónde comienza la copia depende de dónde se ejecuta la sesión actual:
- Como cualquier sesión distribuida, la copia se mueve a su propio worktree antes de editar archivos. En ese caso, la confirmación no menciona dónde se ejecuta la copia.
- Cuando su sesión se movió a su worktree vinculado después de que comenzó, la copia comienza de nuevo donde estaba la sesión antes del movimiento y, a menos que edite en su lugar, hace sus cambios de código en un worktree propio allí. Cuando su worktree está extraído en una rama, esa instrucción también le dice a una copia cuya tarea se basa en su trabajo que base su nueva rama en la suya, ya que su rama permanece extraída en su worktree. La confirmación termina con
runs in the origin tree. - Cuando lanzó la sesión dentro de un worktree vinculado de un repositorio que tiene un árbol de trabajo principal, la copia comienza en ese árbol de trabajo principal, con la misma regla de worktree propio pero sin instrucción de rama. La confirmación termina con
runs in the origin treeaquí también. - Una sesión lanzada dentro de un worktree de un diseño de repositorio desnudo no tiene árbol de trabajo principal al que volver, por lo que la copia permanece donde está, y la confirmación termina con
edits this checkout. La misma nota aparece cuando el aislamiento de worktree está desactivado en una sesión que no está dentro de un worktree vinculado, porque la copia entonces edita los archivos que tiene abiertos.
Las sesiones iniciadas con banderas de lanzamiento que la copia no heredaría, como un mensaje del sistema reemplazado o una lista de permitidos --tools, no se pueden bifurcar; Claude Code lo dice en lugar de hacer una copia parcial. Una sesión distribuida desde la vista de agentes se bifurca normalmente: la copia se lanza con la misma definición de agente e instrucciones añadidas que la sesión de la que proviene.
Qué se lleva cuando envía al segundo plano
Enviar al segundo plano inicia un nuevo proceso que se reanuda desde la conversación guardada, y el trabajo en vuelo se traslada a él: comandos shell en segundo plano en ejecución, subagentes en segundo plano, flujos de trabajo dinámicos, tareas programadas que creó con /loop, y respuestas automáticas de Claude a comentarios de artefactos se trasladan a la sesión en segundo plano y siguen ejecutándose allí. Un subagente se traslada junto con todo lo que inició, por lo que se traslada solo cuando todo ese trabajo puede trasladarse también. Para detener el trabajo en vuelo en lugar de trasladarlo, establezca la variable de entorno CLAUDE_DISABLE_ADOPT=1; Claude Code luego le pide que confirme antes de enviar al segundo plano.
Cuando un flujo de trabajo dinámico aún tiene subagentes en ejecución, Claude Code pregunta antes de enviar al segundo plano con el diálogo Background this session?, que dice cuántos subagentes se reiniciarían. Elija Stay para dejarlos terminar primero. Si confirma, Claude Code reproduce la ejecución en la sesión en segundo plano: los subagentes que aún se estaban ejecutando comienzan de nuevo desde el principio, por lo que los tokens que usaron hasta ahora se gastan nuevamente. Consulte Reanudar después de una pausa para ver qué subagentes completados devuelven sus resultados guardados y cuáles se ejecutan nuevamente.
Claude Code detiene el trabajo que no puede trasladarse, como un monitor en ejecución, y detiene un subagente en segundo plano que posee un monitor junto con él. Cuando algún trabajo de este tipo se está ejecutando, Claude Code muestra el diálogo Background this session? para que pueda confirmar antes de que se detenga el trabajo.
Una vez en segundo plano, la sesión puede iniciar nuevos subagentes, monitores y comandos en segundo plano, y esos continúan ejecutándose en desconexiones y reconexiones posteriores.
Las banderas de configuración del lanzamiento original se transfieren a la sesión enviada al segundo plano, por lo que sus servidores MCP, configuración y modelo de respaldo permanecen en vigor:
--mcp-configy--strict-mcp-config--settings--add-dir--plugin-dir--fallback-model--allow-dangerously-skip-permissions
Los directorios que agregó durante la sesión con /add-dir también se transfieren. Transferir --allow-dangerously-skip-permissions mantiene bypassPermissions accesible en la sesión enviada al segundo plano, pero no otorga nada nuevo: el modo aún requiere la aceptación interactiva única descrita en Modo de permiso, modelo y esfuerzo.
Desde su shell
Pase --bg o su forma larga --background para iniciar una sesión que vaya directamente al segundo plano:
claude --bg "investigate the flaky SettingsChangeDetector test"
El mensaje es el argumento posicional, no un valor -p. Claude Code rechaza --bg combinado con -p o --print antes de que se cree cualquier sesión, porque --print nunca inicia la sesión interactiva a la que claude agents se conecta.
Para ejecutar un subagente específico que haya definido, como un code-reviewer, como el agente principal de la sesión, combine --bg con --agent:
claude --agent code-reviewer --bg "address review comments on PR 1234"
Si el nombre no coincide con ninguno de sus subagentes, el lanzamiento falla: Claude Code imprime una advertencia no agent named y aún reporta la sesión como enviada al segundo plano, pero la sesión sale inmediatamente con un error --agent '<name>' not found.
Cuando la sesión enviada al segundo plano se reanuda o reinicia más tarde, Claude Code restaura el agente y sus restricciones de herramientas; para su mensaje del sistema, consulte Banderas de mensaje del sistema en conversaciones reanudadas. Busca primero el agente en el directorio de la sesión, siempre que haya confiado en ese espacio de trabajo, por lo que un agente con alcance de proyecto aún se carga cuando la sesión se reanuda desde otro directorio. Si el agente ya no existe, la sesión continúa con las herramientas predeterminadas y su transcripción se abre con una advertencia que nombra al agente.
Para continuar una conversación existente en segundo plano, pase su ID de sesión completo con --resume:
claude --resume 1f0e2c9a-6d0b-4c11-9f39-2a77c1d4e8b5 --bg "pick up where you left off and finish the migration"
En Claude Code v2.1.257 o posterior, Claude Code continúa esa sesión bajo el mismo ID, o inicia una copia bajo un nuevo ID e imprime una línea note: explicando por qué no pudo continuar en su lugar. Cuando la sesión continúa en su lugar, claude agents muestra una fila para ella.
Cuando combina --bg con --continue, un --resume sin argumentos, o --resume con un nombre o ruta de archivo, Claude Code siempre inicia una copia de este tipo. Agregue --fork-session para iniciar una copia a propósito, sin la nota.
Pase --name para establecer el nombre de visualización de la sesión en la vista de agentes en lugar del generado automáticamente:
claude --bg --name "flaky-test-fix" "investigate the flaky SettingsChangeDetector test"
Después de enviar al segundo plano, Claude imprime el ID corto de la sesión y los comandos para administrarla. Cuando el servicio que aloja sesiones en segundo plano no está ya en ejecución, --bg puede imprimir primero Starting background service… encima de esta salida. Cuando pasa --name, el nombre aparece después del ID corto:
backgrounded · 7c5dcf5d · flaky-test-fix
claude agents list sessions
claude attach 7c5dcf5d open in this terminal
claude logs 7c5dcf5d show recent output
claude stop 7c5dcf5d stop this session
Ejecutar un comando de shell
Para ejecutar un comando de shell como un trabajo en segundo plano en lugar de una sesión de Claude, pase --exec. El siguiente ejemplo ejecuta pytest -x como un trabajo en segundo plano:
claude --bg --exec 'pytest -x'
Desde la vista de agentes, distribuya el mismo tipo de trabajo escribiendo ! como el primer carácter de la entrada de distribución: el ! se muestra como un prefijo, todo lo que viene después es el comando, y Enter inicia el trabajo.
El comando se ejecuta como un trabajo respaldado por PTY y aparece como una fila en la vista de agentes, con la línea de salida más reciente como su estado. Un trabajo de shell ejecuta el comando en lugar de Claude, por lo que no se invoca ningún modelo y la salida no se envía a ninguna sesión.
Para ver la salida, conéctese a la fila, presione Space para echar un vistazo sin conectarse, o ejecute claude logs <id> desde su shell. La salida capturada permanece en la memoria y no se escribe en el disco. La fila y su salida se limpian automáticamente aproximadamente cinco minutos después de que el comando salga, así que léalo antes si necesita el resultado.
Cómo se aíslan las ediciones de archivos
Cada sesión en segundo plano, ya sea iniciada desde la vista de agentes, /bg o claude --bg, comienza en su directorio de trabajo. Antes de editar archivos, Claude mueve la sesión a un git worktree aislado bajo .claude/worktrees/, de modo que las sesiones paralelas pueden leer el mismo checkout pero cada una escribe en la suya propia. Una vez que la sesión está en su worktree, Claude Code aplica aislamiento de worktree para la sesión y para cualquier subagente que genere.
Claude omite el worktree cuando:
- La sesión ya está dentro de un git worktree vinculado, ya sea que Claude lo haya creado bajo
.claude/worktrees/o que lo haya creado congit worktree adden otro lugar - El archivo que Claude está editando está dentro de un git worktree vinculado, como uno que la sesión o su subagente creó con
git worktree add - El directorio de trabajo no es un repositorio git y no hay ningún hook
WorktreeCreateconfigurado - La escritura está fuera del directorio de trabajo
Para desactivar el aislamiento de worktree para un repositorio donde los git worktrees no son prácticos, establezca worktree.bgIsolation en "none". Las sesiones en segundo plano editarán su copia de trabajo directamente sin moverse a un worktree primero. Agregue la configuración al archivo .claude/settings.json del proyecto:
{
"worktree": {
"bgIsolation": "none"
}
}
Fuera de un repositorio git, las sesiones escriben en el directorio de trabajo directamente y no están aisladas entre sí, por lo que evite distribuir sesiones paralelas que editen los mismos archivos. Si utiliza un sistema de control de versiones diferente, configure un hook WorktreeCreate y Claude aísla las ediciones de la misma manera que lo hace para git.
Cuando el hook falla en un directorio que no es un repositorio git, Claude omite el aislamiento para ese directorio y edita el directorio de trabajo en su lugar. Dentro de un repositorio git, Claude Code bloquea las escrituras en el checkout compartido hasta que Claude mueve la sesión a un worktree.
Para encontrar la ruta del worktree de una sesión, eche un vistazo a la sesión o conéctese y verifique su directorio de trabajo.
Un subagente que la sesión en segundo plano genera hereda el directorio de trabajo de la sesión, por lo que sus ediciones de archivos se realizan en el worktree de la sesión en lugar de su copia de trabajo. Para darle a un subagente su propio worktree separado en su lugar, establezca isolation: worktree en su frontmatter o pase isolation: "worktree" al generarlo.
Cuando una sesión en segundo plano ha realizado cambios de código en un worktree que Claude ingresó, Claude Code le indica a Claude que preserve el trabajo antes de terminar, por lo que sobrevive si elimina la sesión y su worktree:
- Confirmar e insertar: Claude confirma sin preguntar e inserta la rama cuando el repositorio tiene un remoto.
- Solicitud de extracción en borrador: Claude abre una cuando la tarea lo requiere, y la etiqueta
#Naparece en la fila. - Nunca: insertar a
mainomaster, fuerza-insertar y fusionar. - Sus instrucciones de git tienen prioridad: si la tarea,
CLAUDE.mdo memoria dice que usted maneja la confirmación o inserción usted mismo, Claude deja git para usted.
Una sesión que edita un checkout que no aisló a sí misma aún pregunta antes de confirmar o cambiar de rama. Esto se aplica cuando el aislamiento se establece en "none", cuando el movimiento del worktree falló, o cuando la sesión comenzó dentro de un worktree que ya existía.
Sea cual sea la tarea, Claude termina el trabajo con un informe que dice qué hizo y dónde está el trabajo: una ruta, una rama, una solicitud de extracción o la respuesta en sí.
Qué elimina la eliminación de una sesión
Elimine una sesión con Ctrl+X dos veces en vista de agentes o con claude rm. Excepto en los casos mantenidos a continuación, la sesión deja la lista. Su transcripción permanece en su máquina a través de claude --resume, y la eliminación sobrevive a los reinicios del supervisor.
Qué sucede con un worktree que Claude creó para la sesión:
-
La vista de agentes lo elimina, incluidos los cambios sin confirmar, por lo que confirme lo que desee mantener primero.
-
claude rmlo mantiene, junto con la fila de la sesión, cuando tiene cambios sin confirmar. -
Ni la vista de agentes ni
claude rmeliminan un worktree que otra sesión en ejecución está usando o ha bloqueado, y eliminar nuevamente no cambia eso. Claude Code mantiene el worktree y la sesión, y nombra el directorio mantenido y la razón; en la vista de agentes, la fila de la sesión muestranot deleted. Cierre la otra sesión, luego elimine nuevamente. -
Cuando elimina una sesión cuyo worktree tiene commits que Claude Code no puede confirmar que se guardan en otro lugar, Claude Code mantiene el worktree y la sesión, y el mensaje nombra la rama del worktree y cuántos commits no se han insertado. El mensaje también ofrece las dos formas de avanzar: insertar los commits, o eliminar nuevamente para descartarlos.
Los commits en un remoto no bloquean la eliminación. Tampoco los commits en la copia local de la rama predeterminada de su remoto
origin, siempre que esa rama esté extraída en su checkout principal, el directorio del repositorio en sí en lugar de un worktree.Después de esa negativa, elige:
- Para mantener los commits, insértalos o fusionelos en esa rama predeterminada, luego elimina la sesión nuevamente.
- Para descartarlos, elimina la sesión nuevamente sin insertar: presione
Ctrl+Xdos veces en su fila en la vista de agentes, o ejecute el comandoclaude rm <id> --discard-unpushedque la negativa imprimió. Esto elimina la sesión y el worktree junto con su rama, descartando los commits no insertados y cualquier cambio sin confirmar.
Cuando elimina nuevamente, Claude Code descarta solo lo que mostró la negativa: si el worktree ha ganado un commit desde entonces, Claude Code lo mantiene nuevamente y muestra el estado actualizado.
Cuando los registros de otra sesión terminada también nombran el worktree, permanece cuando elimina nuevamente; inserta los commits, luego elimina nuevamente.
-
Un worktree que git ya no reconoce, por ejemplo después de
git worktree prune, no bloquea la eliminación. Claude Code elimina la sesión y deja el directorio en el disco. -
Cuando git o su hook
WorktreeRemovefalla al eliminar el worktree, Claude Code mantiene el worktree y la sesión, y el mensaje nombra la causa. Para un hook, el mensaje dice cómo terminó, comoexited 1, y cita el inicio de su stderr. El mensaje también le dice cuál de estos hacer a continuación:- Elimine la sesión nuevamente para eliminar el directorio de todas formas, presionando
Ctrl+Xdos veces en su fila en la vista de agentes o ejecutando el comandoclaude rm <id> --force-remove-worktree <worktree-id>que la negativa declaude rmimprimió. Claude Code ofrece esto solo cuando puede confirmar que el directorio es uno de los worktrees vinculados del repositorio bajo.claude/worktrees/sin cambios sin confirmar en archivos rastreados, sin repositorio anidado dentro de él, y sin registro de otra sesión nombrándolo. La rama del worktree permanece en el repositorio. - Arregle lo que se interpone en el camino, como confirmar o guardar los cambios sin confirmar, cerrar lo que está usando el directorio, o arreglar el hook, luego elimine la sesión nuevamente.
- Elimine el directorio usted mismo, luego elimine la sesión nuevamente.
- Elimine la sesión nuevamente para eliminar el directorio de todas formas, presionando
Un worktree que creó usted mismo e inició la sesión dentro se deja en su lugar de cualquier forma.
Una sesión cuyo directorio de worktree no pertenece a ningún repositorio git, porque el repositorio fue eliminado o un hook WorktreeCreate creó el directorio en otro lugar, aún se puede eliminar. Mientras los archivos permanezcan en el directorio:
- La vista de agentes pide el mismo doble presión
Ctrl+Xantes de descartarlos. Para un directorio creado por hook, ejecuta su hookWorktreeRemoveen su lugar, y sin uno rechaza la eliminación y mantiene la sesión. claude rmmantiene la sesión y el worktree, y nombra la razón.
Cualquiera de los caminos mantiene un directorio que los registros de otra sesión terminada nombran.
Establecer el modelo
El nombre del modelo mostrado en el encabezado de la vista de agentes es el valor predeterminado de distribución. Las nuevas sesiones que inicia desde la entrada utilizan este modelo, que proviene de la configuración model en su configuración de usuario. Establézcalo seleccionando un modelo en el selector /model, o edite la configuración directamente.
Para anular el valor predeterminado de distribución para toda la sesión de vista de agentes, pase --model al abrir la vista de agentes. Consulte Modo de permiso, modelo y esfuerzo.
Para cambiar el valor predeterminado de distribución desde dentro de la vista de agentes, escriba /model seguido de un nombre de modelo en la entrada de distribución y presione Enter. El encabezado se actualiza para mostrar ese modelo con un marcador (session), y las sesiones que distribuya después lo utilizan. Escriba /model default para borrar la anulación y volver al valor predeterminado de distribución. Esta anulación dura el resto de la ejecución actual de claude agents y no se escribe en su archivo de configuración. El siguiente ejemplo distribuye una sesión en Opus y la siguiente en Sonnet:
/model opus
refactor auth
/model sonnet
run the test suite
Cada sesión en segundo plano puede ejecutarse en un modelo diferente. Para anularlo para una sesión:
- Desde el shell, pase
--modelconclaude --bg. - Conéctese a una sesión en ejecución y ejecute
/modelpara cambiar: una selección del selector, o un/model <name>escrito, se guarda como su valor predeterminado para nuevas sesiones a menos que presionesen el selector para un cambio solo de sesión. Un cambio solo de sesión persiste si la sesión se reinicia. - Distribuya un subagente cuyo frontmatter establezca un campo
model.
Modo de permiso, modelo y esfuerzo
Una sesión en segundo plano toma su configuración, proveedor, modo de permiso, modelo y esfuerzo de dónde y cómo la distribuyó. Las subsecciones a continuación cubren cada fuente y qué persiste cuando el supervisor reinicia la sesión.
Configuración y proveedor
Una sesión en segundo plano lee su configuración desde el directorio en el que se ejecuta, igual que si hubiera iniciado claude allí. Esto incluye valores env en la configuración del proyecto, por lo que una variable ANTHROPIC_MODEL o de proveedor establecida allí se aplica a cada sesión en segundo plano en ese directorio.
Una sesión en segundo plano también se ejecuta con el PATH del shell desde el que la distribuyó, por lo que los comandos que ejecuta encuentran las mismas herramientas que su terminal. También mantiene la selección del proveedor en la nube de ese shell, como CLAUDE_CODE_USE_BEDROCK o CLAUDE_CODE_USE_VERTEX, junto con sus alias ANTHROPIC_DEFAULT_*_MODEL y cualquier anulación CLAUDE_CODE_EXTRA_BODY que haya exportado allí.
Puerta de enlace LLM
Si enruta Claude Code a través de una puerta de enlace LLM, coloque las variables de puerta de enlace en el bloque env de un archivo de configuración en lugar de exportarlas en su shell, y las sesiones en segundo plano las leen con el resto de su configuración. Establecer en un archivo de configuración muestra el bloque y qué archivo de configuración usar para la credencial.
Si exporta una puerta de enlace ANTHROPIC_BASE_URL solo en su shell en su lugar, llega a una sesión en segundo plano, junto con ANTHROPIC_CUSTOM_HEADERS y la credencial que exportó con ella, solo cuando el supervisor fue iniciado desde un shell que exportó la misma puerta de enlace, y solo en estos casos:
- Envía su propia sesión al segundo plano con
←o/background - Distribuye una sesión al directorio en el que está
- Despierta una sesión detenida en el directorio en el que está adjuntándose o respondiendo a ella
Claude Code reenvía una puerta de enlace frente a un proveedor en la nube. Si el shell desde el que distribuye selecciona el proveedor e exporta su punto final de puerta de enlace con su bandera de omisión de autenticación, Claude Code reenvía el par punto final-y-bandera a la sesión bajo las condiciones que se aplican a ANTHROPIC_BASE_URL, junto con ANTHROPIC_CUSTOM_HEADERS. Por ejemplo, exporte CLAUDE_CODE_USE_VERTEX=1 con ANTHROPIC_VERTEX_BASE_URL y CLAUDE_CODE_SKIP_VERTEX_AUTH=1, y Claude Code reenvía ese punto final y bandera.
Claude Code aplica una puerta de enlace reenviada solo al proceso en ejecución de esa sesión y nunca la escribe en el disco.
Modo de permiso
El modo de permiso depende de cómo inició la sesión:
- Enviado al segundo plano con
/bgo←: Claude Code mantiene el modo de permiso en el que estaba la sesión, por lo que uno que cambió aacceptEditsoautopermanece allí después de desconectarse - Distribuido desde una vista de agentes que abrió con
←: la configuración propia del objetivo viene primero, y el modo de permiso de la sesión de la que vino se aplica cuando nada más establece uno - Distribuido desde
claude agentsiniciado en un shell, o conclaude --bg: la nueva sesión comienza de la manera que lo haría una nueva sesiónclaudeen ese directorio, a menos que la haya distribuido desde una vista de agentes que abrió con valores predeterminados de distribución. Qué modo de permiso comienza una sesión enumera el orden
Para una sesión que distribuye desde una vista de agentes abierta con ←, Claude Code toma el modo de permiso del primero de estos que se aplica:
- El
permissions.defaultModedel directorio objetivo. Se aplican dos reglas de origen:autoybypassPermissionstoman efecto solo desde configuración administrada, un archivo--settingso~/.claude/settings.json.- Claude Code rechaza un
defaultModedel.claude/settings.jsono.claude/settings.local.jsondel proyecto que selecciona un modo más permisivo que el modo en el que estaba la sesión de la que vino.
- El modo de permiso de la sesión de la que vino
Cuando Claude Code rechaza el modo de una fuente como demasiado permisivo, la siguiente fuente en la lista decide. Por ejemplo, si distribuye desde una sesión en modo plan a un directorio cuya configuración verificada pide acceptEdits, la nueva sesión comienza en modo plan. Si mueve ese defaultMode a ~/.claude/settings.json, se aplica independientemente del modo de permiso de la sesión de la que vino.
La permisividad corre plan, luego Manual y dontAsk, luego acceptEdits y auto, que cada uno cuenta como más permisivo que el otro, luego bypassPermissions.
Valores predeterminados de distribución
Para establecer valores predeterminados para cada sesión que distribuya desde la vista de agentes, pase cualquiera de --permission-mode, --model, --effort o --agent al abrirla:
claude agents --permission-mode plan --model opus --effort high
--effort aquí acepta los mismos valores que la bandera --effort de nivel superior, incluido ultracode.
--agent establece el subagente utilizado cuando un mensaje de distribución no nombra uno, ya sea con @name o como la primera palabra. Por defecto es la configuración agent si se establece una, de lo contrario el agente integrado claude que lo captura todo. Nombrar un subagente en la entrada de distribución anula ambos.
claude agents también acepta --dangerously-skip-permissions como abreviatura de --permission-mode bypassPermissions, y --allow-dangerously-skip-permissions para hacer que bypassPermissions esté disponible en el ciclo Shift+Tab de cada sesión distribuida sin comenzar en ese modo. Ambos coinciden con las banderas CLI de nivel superior.
Pase --restricted para iniciar cada sesión que distribuya desde la vista en modo restringido, como si cada una se lanzara con la bandera de nivel superior --restricted. Requiere Claude Code v2.1.248 o posterior.
Los valores predeterminados activos aparecen en el pie de página debajo de la entrada de distribución.
Claude Code rechaza claude --bg --permission-mode bypassPermissions hasta que haya aceptado el descargo de responsabilidad de bypass ejecutando claude --dangerously-skip-permissions una vez de forma interactiva, ya que ese modo permite que una sesión que no está viendo actúe sin aprobación. Pasar --dangerously-skip-permissions o --permission-mode bypassPermissions a claude agents muestra el mismo descargo de responsabilidad cuando no lo ha aceptado antes, y aceptar aplica bypassPermissions a las sesiones que lanza desde la vista. Pasar --allow-dangerously-skip-permissions muestra el mismo descargo de responsabilidad también, y aceptar hace que bypassPermissions esté disponible en el ciclo Shift+Tab de esas sesiones sin iniciarlas en él.
Qué persiste en los reinicios
El modo de permiso, modelo y esfuerzo que eligió para una sesión en segundo plano, junto con las banderas de configuración que lleva, todos persisten cuando el supervisor posteriormente detiene y reinicia su proceso. Una sesión que lanzó con claude --bg --dangerously-skip-permissions o claude --bg --permission-mode bypassPermissions permanece en bypassPermissions después de ese reinicio. Un modelo o esfuerzo que cambió a mitad de sesión con /model o /effort también se mantiene.
Si la sesión tomó su esfuerzo de su configuración en lugar de --effort o /effort, Claude Code lee su configuración nuevamente cada vez que inicia un proceso para la sesión. Entonces, cuando edita el esfuerzo guardado en settings.json, el cambio llega a las sesiones que envía al segundo plano con ← o /bg, y sus reinicios posteriores. El esfuerzo guardado es la clave effortLevel o una entrada modelSettings.
Claude Code también mantiene un nombre que estableció con /rename o Ctrl+R en ese reinicio, por lo que aún puede ejecutar claude --resume <name> para llegar a la sesión.
Un mensaje que escribió se guarda con Ctrl+S mientras está adjunto se mantiene con la sesión también. Reabra la sesión después de que su proceso fue detenido o reiniciado, y Ctrl+S restaura el texto guardado. El contenido pegado en el guardado no sobrevive al reinicio.
Configuración, plugins y servidores MCP
La vista de agentes acepta las mismas banderas de configuración que claude para cargar configuración, plugins, servidores MCP y directorios adicionales. La vista de agentes aplica --settings y --plugin-dir a sí misma y pasa cada bandera de configuración a las sesiones que distribuye desde ella, por lo que un plugin o servidor MCP que cargue de esta manera está disponible en esas sesiones.
| Bandera | Efecto |
|---|---|
--settings <file-or-json> |
Anule la configuración para la vista de agentes y las sesiones distribuidas |
--add-dir <path> |
Otorgue acceso a archivos a un directorio adicional |
--plugin-dir <path> |
Cargue un plugin desde un directorio local |
--mcp-config <file-or-json> |
Cargue servidores MCP desde un archivo de configuración o cadena JSON |
--strict-mcp-config |
Use solo los servidores MCP de --mcp-config, ignorando otra configuración de MCP. Consulte Control exclusivo con managed-mcp.json para ver qué hace la bandera bajo un archivo MCP administrado |
Repita --add-dir, --plugin-dir o --mcp-config una vez por valor. claude agents no admite la forma separada por espacios, como --add-dir a b c.
Puede colocar --settings y --plugin-dir antes o después de agents. Mantenga --add-dir y --mcp-config después de agents: si coloca cualquiera de ellos antes de agents, claude agents --json falla con un error unknown option.
El siguiente ejemplo abre la vista de agentes con una anulación de configuración y un directorio adicional:
claude agents --settings ./ci-settings.json --add-dir ../shared-lib
--settings acepta una ruta de archivo o una cadena JSON en línea. Una ruta de archivo debe apuntar a un archivo existente; Claude Code sale con un error Settings file not found si no lo hace.
Gestionar sesiones desde el shell
Cada sesión en segundo plano tiene un ID corto que puede usar desde el shell. El ID se imprime cuando inicia una sesión con claude --bg, y el ID de cada sesión es su nombre de directorio bajo ~/.claude/jobs/. Estos comandos son útiles para scripting o cuando no desea abrir la vista de agentes.
| Comando | Propósito |
|---|---|
claude agents |
Abrir la vista de agentes |
claude agents --cwd <path> |
Abrir la vista de agentes limitada a sesiones iniciadas bajo <path> |
claude agents --json |
Imprimir sesiones como un array JSON y salir. Consulte Listar sesiones como JSON |
claude attach <id> |
Conectarse a una sesión en esta terminal |
claude logs <id> |
Imprimir la salida reciente de la sesión |
claude stop <id> |
Detener una sesión. También acepta claude kill |
claude respawn <id> |
Reiniciar una sesión, en ejecución o detenida, por ejemplo para usar un binario Claude Code actualizado. La sesión reiniciada reanuda su conversación guardada; cuando ninguna está en disco, ejecuta su prompt original nuevamente como una nueva conversación |
claude respawn --all |
Reiniciar cada sesión en ejecución, por ejemplo para mover todas las sesiones a un binario Claude Code actualizado a la vez |
claude rm <id> |
Eliminar una sesión de la lista, junto con un worktree que Claude creó para ella cuando es seguro eliminarlo; consulte Qué elimina la eliminación de una sesión. La transcripción de la conversación permanece en su máquina local y sigue disponible a través de claude --resume |
claude rm <id> --discard-unpushed <commit>@<worktree-id> |
Eliminar una sesión cuya eliminación fue rechazada por commits no enviados, descartando el worktree junto con su rama y commits. Pase el valor exacto que imprimió el rechazo; consulte Qué elimina la eliminación de una sesión. Requiere v2.1.260 o posterior |
claude rm <id> --force-remove-worktree <worktree-id> |
Eliminar una sesión cuya eliminación fue rechazada porque git o el hook WorktreeRemove no pudieron eliminar su worktree, eliminando el directorio worktree de todas formas y dejando su rama en el repositorio. Pase el valor exacto que imprimió el rechazo; consulte Qué elimina la eliminación de una sesión. Requiere v2.1.268 o posterior |
claude daemon status |
Imprimir el estado del supervisor, versión, directorio de socket y número de workers |
claude daemon stop --any |
Detener el proceso supervisor y las sesiones en segundo plano que aloja. Pase --keep-workers para dejar las sesiones en segundo plano en ejecución de modo que el siguiente supervisor se reconecte a ellas. El siguiente claude agents o claude --bg inicia un nuevo supervisor |
Listar sesiones como JSON
claude agents --json imprime sesiones activas como un array JSON y sale: cada sesión activa, más sesiones en segundo plano que aún están funcionando o bloqueadas incluso cuando su proceso ha salido. Agregue --all para incluir también sesiones en segundo plano completadas, y --cwd <path> para limitar la lista a sesiones iniciadas bajo ese directorio.
Cada entrada describe una sesión:
| Campo | Presente | Descripción |
|---|---|---|
cwd, kind, startedAt |
Siempre | El directorio de trabajo, interactive o background, y la hora de inicio en milisegundos Unix |
id |
Sesiones en segundo plano | ID corto, utilizable con claude attach, claude logs y claude stop |
state |
Sesiones en segundo plano | Uno de working, blocked, done, failed o stopped. Consulte Leer el estado de la sesión desde un script para saber qué significa cada valor |
pid, status |
Mientras el proceso está activo | ID del proceso y uno de busy, waiting o idle |
waitingFor |
Cuando status es waiting |
En qué está bloqueada la sesión: permission prompt para una aprobación, input needed para una pregunta de Claude o una solicitud de entrada de un servidor MCP, sandbox request, worker request o dialog open |
sessionId, name |
Cuando está configurado | sessionId es el UUID de sesión completo, utilizable con claude --resume. El name de una sesión interactiva es su nombre de visualización predeterminado hasta que nombre la sesión o acepte un plan en ella |
Leer el estado de la sesión desde un script
claude agents --json es la forma compatible para leer el estado de la sesión desde fuera de Claude Code, por ejemplo desde una barra de estado, un programador o otra sesión de Claude que supervisa el trabajo en segundo plano. Consulte claude agents --json --all, que sigue listando sesiones cuyo proceso ha salido, y lea el state, status y waitingFor de cada entrada.
state |
Qué significa |
|---|---|
working |
Se está ejecutando un turno, o la sesión está entre pasos de trabajo que impulsa por sí sola, como una iteración de /loop o una espera en CI. status le indica si su proceso está busy en este momento |
blocked |
La sesión está esperando por usted: una pregunta que hizo, una decisión de permiso o sandbox, un error que solo usted puede aclarar como un inicio de sesión expirado, o su primer prompt si la inició sin uno. Cuando la espera es un prompt abierto en un proceso activo, waitingFor lo nombra |
done |
El último turno terminó lo que pidió y la sesión está lista para su siguiente prompt, independientemente de si su proceso aún está activo |
failed, stopped |
La tarea terminó con un error, o la sesión fue detenida |
Una sesión que terminó su turno y está esperando su siguiente instrucción lee done, no blocked. blocked siempre significa que la sesión necesita algo de usted antes de poder continuar.
Los archivos bajo ~/.claude/jobs/<id>/ no son una interfaz estable. Los valores que una sesión u otro programa escribe en state, detail, tempo o needs se reemplazan en la siguiente actualización.
Si desea que una sesión informe el progreso con sus propias palabras, haga que escriba un archivo propio, por ejemplo bajo $CLAUDE_JOB_DIR/tmp, en lugar de editar state.json.
Cómo se alojan las sesiones en segundo plano
Claude Code trata cada sesión listada en la vista de agentes como una sesión en segundo plano, independientemente de si está actualmente conectado a ella. Por el contrario, una sesión iniciada ejecutando claude directamente está vinculada a esa terminal y finaliza cuando se cierra, a menos que la envíe al segundo plano.
Para verificar qué tipo de sesión está usando, ejecute /status. La fila Session kind muestra background job · attached o background job · unattended en una sesión en segundo plano, dependiendo de si una terminal está conectada, e interactive en cualquier otra sesión.
El proceso supervisor
El supervisor es un servicio en segundo plano que ejecuta sus sesiones en segundo plano para que sigan funcionando después de cerrar la vista de agentes o su terminal. Claude Code lo inicia la primera vez que envía una sesión al segundo plano o abre la vista de agentes, y no necesita administrarlo usted mismo.
Cada sesión es su propio proceso de Claude Code bajo el supervisor, y lo que sucede con ese proceso depende del estado de la sesión:
- Funcionando, pausado en un aviso de permiso u otro diálogo, o conectado: el proceso sigue ejecutándose. Un subagente, flujo de trabajo o monitor en ejecución cuenta como funcionando.
- Finalizado o esperando su próximo mensaje, y sin conectar durante aproximadamente una hora: el supervisor detiene el proceso para liberar recursos. Una sesión que terminó su turno haciéndole una pregunta cuenta como esperando su próximo mensaje. La conversación permanece en el disco, y la próxima vez que se conecte o responda, la sesión se reanuda donde se quedó. Fije una sesión con
Ctrl+Tpara mantener su proceso ejecutándose. - Salió inesperadamente mientras el supervisor está ejecutándose: el supervisor reinicia el proceso. Finalizar una sesión que envió al segundo plano usted mismo con
←o/background, por ejemplo conkill, la marca como detenida en lugar de reiniciarla. Para sesiones que finalizaron con un apagado, consulte Las sesiones se muestran como fallidas o detenidas después del apagado. - Después de una actualización automática: el supervisor se reinicia en la nueva versión y mueve las sesiones inactivas al segundo plano. Las sesiones que están funcionando, esperando su entrada o conectadas no se interrumpen.
Cuando el proceso de una sesión se detiene o se reinicia, los comandos de shell en segundo plano, los flujos de trabajo dinámicos y los subagentes en segundo plano que Claude inició en ella se transfieren al siguiente proceso; los monitores en ejecución y los comandos de shell que un subagente inició se detienen con el proceso. Eliminar la sesión detiene todo lo que se transfirió. Para detener todo con el proceso en lugar de transferirlo, establezca CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF en 1.
El supervisor y sus sesiones se autentican con las mismas credenciales almacenadas que sus sesiones interactivas. Para saber qué configuraciones y variables de shell llegan a una sesión, incluido PATH, consulte Configuración y proveedor. Para puntos finales de puerta de enlace, consulte Puerta de enlace LLM.
Dónde se almacena el estado
El estado de la sesión se almacena en su directorio de configuración de Claude Code. Si establece CLAUDE_CONFIG_DIR, el supervisor usa ese directorio en lugar de ~/.claude y se ejecuta como una instancia separada con sus propias sesiones.
| Ruta | Contenidos |
|---|---|
~/.claude/daemon.log |
Registro del supervisor |
~/.claude/daemon/roster.json |
Lista de sesiones en segundo plano en ejecución, utilizada para reconectarse después de un reinicio |
~/.claude/jobs/<id>/state.json |
Estado por sesión mostrado en la vista de agentes. Léalo a través de claude agents --json en lugar de analizar el archivo |
~/.claude/jobs/<id>/tmp/ |
Directorio de trabajo temporal por sesión. Las llamadas Write y Edit de Claude aquí no solicitan permiso. Se elimina cuando se elimina la sesión |
Cada sesión en segundo plano tiene la variable de entorno CLAUDE_JOB_DIR establecida en su directorio ~/.claude/jobs/<id>, por lo que los comandos de shell que ejecuta la sesión pueden escribir archivos temporales en $CLAUDE_JOB_DIR/tmp sin colisionar con sesiones paralelas.
Para inspeccionar este estado sin leer los archivos directamente, ejecute claude daemon status. Informa si el supervisor es accesible, su ID de proceso y versión, el directorio de socket y cuántas sesiones en segundo plano están activas.
El comando también advierte cuando el supervisor en ejecución está en una versión diferente a la de claude que invocó, lo que sucede después de una actualización en la que el supervisor aún no se ha reiniciado. La advertencia muestra ambas versiones y le indica que ejecute claude daemon stop --any para adoptar la nueva versión. Cuando Claude Code se instala como un servicio del sistema operativo, el comando sugerido es claude daemon stop sin la bandera.
Las sesiones sobreviven a ese desajuste de versión intactas: una versión anterior de Claude Code que actualiza el state.json de una sesión preserva campos que no reconoce y mantiene la sesión listada. La lista de sesiones en roster.json sigue la misma regla, por lo que las sesiones iniciadas por la versión más nueva permanecen accesibles y continúan aceptando entrada después de que el supervisor se reinicia.
Desactivar la vista de agentes
Para desactivar completamente los agentes en segundo plano y la vista de agentes, establezca la configuración disableAgentView setting en true o establezca la variable de entorno CLAUDE_CODE_DISABLE_AGENT_VIEW. Los administradores pueden aplicar esto a través de configuraciones administradas.
Solución de problemas
`claude agents` enumera subagentes en lugar de abrir la vista de agentes
Si claude agents imprime un recuento seguido de sus subagentes configurados y luego sale, la vista de agentes no está disponible en su entorno. Ejecute claude update para instalar la versión más reciente.
Si la vista de agentes aún no se abre después de actualizar, verifique si ha sido desactivada por una configuración o variable de entorno.
La vista de agentes se abre sin sesiones
Antes de distribuir su primera sesión, la vista de agentes muestra las secciones de encabezado vacías con una descripción debajo de cada una, más una explicación de una línea encima de la entrada, en lugar de la lista de sesiones. Escriba un mensaje en la entrada en la parte inferior y presione Enter para distribuir su primera sesión.
Backgrounding muestra un diálogo `Background this session?`
Si presiona ← para enviar al segundo plano la sesión actual y Claude Code muestra un diálogo Background this session?, la sesión tiene trabajo en vuelo que el backgrounding detendría, reiniciaría o dejaría ejecutándose desatendido, y Claude Code pregunta antes de hacer cualquiera de esos:
- Trabajo que no se puede mover: la sesión tiene trabajo que no se puede mover a la sesión en segundo plano, como un monitor en ejecución. El diálogo nombra el trabajo que Claude Code detendría y, por separado, cuenta las tareas que se trasladan.
- Un flujo de trabajo con subagentes en ejecución: un flujo de trabajo dinámico aún tiene subagentes en ejecución. El flujo de trabajo en sí se traslada, pero sus subagentes en ejecución se reinician desde el principio, y el diálogo dice cuántos.
- Respuestas automáticas de artefactos: Claude está respondiendo a comentarios en un artefacto por su cuenta. Esas respuestas continúan en la sesión en segundo plano, y el diálogo lo dice.
Ejecute /tasks para ver todo lo que se está ejecutando, luego confirme para enviar al segundo plano de todas formas o elija Stay para dejar que el trabajo termine primero. Consulte Qué se traslada cuando envía al segundo plano para saber qué tipos de trabajo se trasladan y cuáles Claude Code detiene.
Mensaje rechazado por ser demasiado corto
La entrada de distribución espera una descripción de tarea, no un abridor conversacional. Un mensaje más corto de cuatro caracteres se rechaza con una sugerencia Too short para que una pulsación de tecla extraviada no inicie una sesión. Describa lo que desea que haga la sesión, como investigate the flaky checkout test.
Las sesiones se muestran como fallidas o detenidas después del apagado
Apagar o reiniciar su máquina detiene las sesiones en segundo plano en ejecución. Una sesión que estaba esperando su entrada permanece bajo Needs input cuando regresa. Para cualquier otra sesión en ejecución, lo que muestra la vista de agentes depende de cuánto tiempo hace que hizo progreso por última vez:
- Dentro de 48 horas, la sesión se muestra como fallida. Conéctese, eche un vistazo o responda a ella y se reiniciará desde donde se quedó.
- Pasadas 48 horas, como después de que la máquina estuvo apagada durante días, la sesión se muestra como detenida con
ended while the background service was off. PresioneEnteren la fila y el pie de página muestraPress enter again to resume this session (it ended while the background service was off), or ctrl+x to delete it.PresioneEnteren la misma fila nuevamente para reanudar su conversación guardada. Una respuesta, oclaude attach <id>, la reanuda sin ese mensaje de pie de página.
Cuando la limpieza de transcripción ha eliminado la conversación guardada de una sesión detenida, Claude Code se niega a abrir la fila: el mensaje dice que no hay nada que reanudar. claude rm <id> elimina la fila, excepto en los casos mantenidos descritos anteriormente, y claude respawn <id> ejecuta su mensaje original nuevamente. Consulte La conversación guardada de esta sesión ya no está en el disco.
El sueño solo no detiene las sesiones. Las sesiones se conservan durante el sueño y el supervisor se reconecta a ellas al despertar.
Abrir una sesión dice que la conversación ya está abierta
Dos procesos no pueden escribir en la misma transcripción. Cuando la conversación guardada de una sesión detenida ya está abierta en otro proceso Claude Code en vivo, Claude Code se niega a iniciar el proceso de la sesión. Lo que ve depende de lo que mantenga la conversación:
- Una terminal donde reanudó la conversación, por ejemplo con
claude --resumeo/resume: la fila muestraOpen in a terminalcon una sugerencia para continuarla allí, y abrir la fila muestraCan't open — this session is running in another terminal. Continúe en esa terminal, o salga de ella y abra la fila nuevamente. - Otro proceso Claude Code no interactivo, por ejemplo un proceso de sesión en segundo plano para la misma conversación que aún no ha salido: abrir la fila muestra
This conversation is already open in another running Claude session. Use ese proceso, o espere a que salga y abra la fila nuevamente.
Claude Code guarda una respuesta que escribió con el intento rechazado y la envía la próxima vez que se inicia la sesión.
Abrir una sesión dice que no tiene transcripción guardada
Una sesión detenida que fue enviada al segundo plano desde otra conversación y se detuvo antes de que su primera respuesta terminara no tiene nada que reanudar: hasta que esa primera respuesta termine, la conversación aún vive solo en la sesión desde la que fue enviada al segundo plano. claude attach se niega a abrirla con This session has no saved transcript.
En la vista de agentes, abrir esa fila muestra Press enter again to restart this session fresh debajo de la lista. Presione Enter en la misma fila nuevamente para reiniciar la sesión con una conversación vacía, o ejecute claude respawn <id> desde el shell.
La conversación original está intacta; reanúdela con claude --resume o continúe trabajando en ella. Consulte la referencia de errores para obtener detalles.
El host de terminal murió o la sesión dejó de responder
El supervisor ejecuta la terminal de cada sesión en segundo plano en su propio proceso host. Cuando ese proceso muere o deja de responder, Claude Code muestra la razón y ofrece un reinicio; en ambos casos la conversación se guarda y el reinicio la reanuda. La referencia de errores cita los mensajes completos.
Claude Code nunca reinicia una fila que ejecuta un comando shell, desde Enter o desde claude attach, porque eso ejecutaría el comando nuevamente; el mensaje de la fila y claude attach ambos dicen que el comando no se ejecuta nuevamente.
Terminal host murió
En Linux y WSL, el supervisor verifica cada proceso host cada pocos segundos, independientemente de si abre la sesión o no, y marca la sesión como fallida cuando el proceso ha salido pero su conexión al supervisor nunca se cerró.
- En la vista de agentes, la fila muestra
terminal host process died — press Enter to restart. PresioneEnteren ella y Claude Code reinicia la sesión en un proceso host nuevo. - Desde el shell,
claude attach <id>reinicia una sesión ya marcada como fallida. De lo contrario, reporta la causa y sale, diciéndole que ejecuteclaude attach <id>nuevamente.
La sesión no está respondiendo
Cuando el supervisor acepta una apertura pero no llega salida durante aproximadamente diez segundos, Claude Code termina el intento y ofrece un reinicio. Una sesión que simplemente se estancó, por ejemplo durante el sueño de la máquina, no llega a esta oferta: el supervisor la reinicia al abrir por sí solo.
- En la vista de agentes, el pie de página muestra
Press enter again to restart this session — it isn't responding (its conversation is saved and resumes).PresioneEnteren la misma fila nuevamente y Claude Code detiene el proceso que no responde y reinicia la sesión; no detiene nada sin ese segundo press. - Desde el shell,
claude attach <id>reporta la causa y sale, diciéndole que ejecuteclaude stop <id>, luegoclaude attach <id>.
Una sesión falla antes de iniciarse con una nota `possibly low memory`
Cuando el proceso de una sesión en segundo plano sale antes de terminar de iniciarse y el host tiene poca memoria, el estado de la fila nombra la salida y añade possibly low memory — free some up and retry.
La nota es una hipótesis, no una causa confirmada. Claude Code la añade solo cuando el proceso salió silenciosamente, sin escribir un error y sin ser detenido por una señal, y el host reportó poca memoria en ese momento. Cuando el proceso escribió un error antes de salir, la fila muestra ese error en su lugar.
Libere memoria en la máquina, luego conéctese, eche un vistazo o responda a la fila y el supervisor inicia un proceso nuevo para la sesión. Cuando la memoria se mantiene baja, el supervisor también detiene las sesiones inactivas para liberar recursos por su cuenta, y detiene las sesiones fijadas inactivas también si detener las otras no liberó nada.
La vista de agentes dice que el servicio en segundo plano no respondió
Si conectarse, echar un vistazo o claude logs reporta que el servicio en segundo plano no respondió, el proceso supervisor probablemente se ha estancado. Deténgalo y deje que el siguiente claude agents inicie uno nuevo. Para mantener sus sesiones en segundo plano ejecutándose durante el reinicio, pase --keep-workers:
claude daemon stop --any --keep-workers
El nuevo supervisor se reconecta a las sesiones en ejecución. Sin --keep-workers, el comando también termina las sesiones en segundo plano. La bandera --any confirma que desea detener un supervisor que se inició bajo demanda en lugar de como un servicio instalado, que es el predeterminado.
Un supervisor que se inicia pero no puede aceptar conexiones sale y libera su bloqueo por sí solo, por lo que el siguiente claude agents inicia uno nuevo sin este detención manual. Los pasos anteriores se aplican cuando un supervisor en ejecución se estanca.
Si el comando en su lugar sale diciendo que el proceso registrado no pudo verificarse como el supervisor, verifique el ID de proceso reportado: si es un supervisor que posee, deténgalo usted mismo, luego elimine ~/.claude/daemon.lock para que el siguiente claude agents inicie nuevo.
En Windows, si el supervisor no responde a la solicitud de detención, el comando imprime su ID de proceso. Termine ese proceso con taskkill /PID <pid> para finalizar la recuperación. Las sesiones en segundo plano aún se conservan cuando pasó --keep-workers.
La distribución falla con `Could not resolve authentication method`
Si una distribución en segundo plano falla con Could not resolve authentication method mientras las sesiones interactivas se autentican normalmente, el worker que recibió la distribución no recogió las credenciales. Las sesiones en segundo plano obtienen sus credenciales del supervisor, por lo que este error significa que no había credencial almacenada disponible para el proceso supervisor en sí. Confirme que ha ejecutado /login o ha configurado una clave API, luego detenga el supervisor:
claude daemon stop --any --keep-workers
El siguiente claude agents o claude --bg inicia un supervisor nuevo que lee sus credenciales almacenadas. Si se autentica con una variable de entorno como ANTHROPIC_API_KEY en lugar de /login, ejecute ese comando siguiente desde un shell donde la variable esté configurada.
Consulte la referencia de errores para la lista completa de causas y soluciones.
Las sesiones en segundo plano no pueden leer Desktop, Documents o Downloads en macOS
En macOS, el host de sesión en segundo plano se ejecuta como su propio proceso y solicita acceso a carpetas protegidas por separado desde su terminal. Si una sesión en segundo plano reporta Operation not permitted al leer ~/Desktop, ~/Documents, ~/Downloads u otra ubicación protegida, otorgue acceso en Configuración del Sistema bajo Privacidad y Seguridad > Archivos y Carpetas, o habilite Acceso Total al Disco para la entrada.
Con el instalador nativo, la entrada aparece como Claude Code y la concesión persiste en las actualizaciones. Con otros métodos de instalación como Homebrew o npm, la entrada muestra la ruta del binario y puede necesitar ser otorgada nuevamente después de actualizar.
Las sesiones en segundo plano no pueden alcanzar hosts de red local en macOS
En macOS 15 y posterior, el sistema bloquea un proceso para que no alcance dispositivos en su red local hasta que otorgue permiso de Red Local, por lo que un comando dirigido a una dirección LAN puede fallar con connect: no route to host en una sesión en segundo plano aunque funcione en una terminal en primer plano. El primer comando en una sesión en segundo plano que se conecta a una dirección de red local activa la solicitud de permiso de Red Local de macOS para Claude Code. Otórguelo una vez y esos comandos alcanzarán hosts LAN de la misma manera que lo hacen en una terminal en primer plano.
Una sesión es lenta para responder después de conectarse
Una vez que una sesión ha terminado y se ha quedado sin conectar durante aproximadamente una hora, el supervisor detiene su proceso para liberar recursos. Conectarse inicia un proceso nuevo desde donde se quedó y cambia a la sesión inmediatamente mientras el proceso se reinicia. Las sesiones que están funcionando, esperando su entrada o fijadas no se detienen de esta manera, así que fije una sesión con Ctrl+T para mantenerla receptiva.
Mientras el proceso se inicia, Claude Code muestra la cola de la transcripción de la sesión formateada de la manera que la sesión en vivo la renderiza, con markdown, bloques de código resaltados y llamadas de herramientas como filas atenuadas, encima de un área de mensaje atenuada con una nota Session is starting. La sesión en vivo la reemplaza tan pronto como esté lista.
`.claude/worktrees/` se está llenando
Eliminar una sesión en la vista de agentes elimina el worktree que Claude creó para ella, pero algunos deletes mantienen el worktree o dejan su directorio en el disco, por lo que los directorios sobrantes pueden acumularse. Los directorios que git ya no reconoce no aparecen en git worktree list, así que elimine esos a mano.
Enumere las entradas sobrantes con git worktree list en el directorio del proyecto y elimine cada una con git worktree remove <path>. Consulte Limpiar worktrees.
Limitaciones
La vista de agentes está en vista previa de investigación con las siguientes limitaciones:
- Se aplican límites de velocidad: las sesiones en segundo plano consumen el uso de su suscripción igual que las sesiones interactivas, por lo que ejecutar diez agentes en paralelo usa cuota aproximadamente diez veces más rápido que ejecutar uno.
- Las sesiones son locales: las sesiones en segundo plano se ejecutan en su máquina. Se conservan durante el modo de suspensión pero se detienen si la máquina se apaga.
- Los worktrees creados por Claude se eliminan con la sesión en la vista de agentes: confirme los cambios antes de eliminar una sesión que editó archivos en su propio worktree. Algunos borrados mantienen el worktree en su lugar.
Recursos relacionados
Para otras formas de ejecutar Claude en paralelo, y para pasar hallazgos entre las sesiones que ejecuta, consulte:
- Ejecutar agentes en paralelo: compare la vista de agentes con subagentes, equipos de agentes y worktrees
- Mensajería entre sesiones: haga que sus sesiones se pasen hallazgos entre sí
- Equipos de agentes: coordine múltiples sesiones que se envíen mensajes entre sí
- Claude Code en la web: ejecute sesiones en un entorno en la nube administrado en lugar de localmente
- Proyectos: haga que Claude coordine sesiones en la nube en paralelo desde una conversación y le indique cuáles necesita usted
Historial de versiones
La vista de agentes ha evolucionado rápidamente durante la vista previa de investigación. Si está en una versión anterior de Claude Code, algunos comportamientos en esta página pueden diferir; en particular, claude agents rechaza banderas que aún no admite con un error unknown option. La tabla a continuación enumera cuándo se agregó cada bandera y comportamiento.
| Versión | Cambio |
|---|---|
| v2.1.268 | Cuando una eliminación se rechaza porque git o su hook WorktreeRemove no pudieron eliminar el worktree, el mensaje nombra la causa, incluyendo cómo terminó un hook y el inicio de su stderr. Para un worktree vinculado bajo el directorio .claude/worktrees/ del repositorio sin cambios sin confirmar en archivos rastreados, sin repositorio anidado dentro de él, y sin que el registro de otra sesión lo nombre, eliminar la sesión nuevamente elimina el directorio de todas formas, desde la vista de agentes o con claude rm <id> --force-remove-worktree <worktree-id>. Antes de esta versión, la fila mostraba solo worktree could not be removed (WorktreeRemove hook failed) o el error de git, el stderr del hook iba solo al registro de depuración, y eliminar nuevamente se rechazaba de la misma manera. |
| v2.1.268 | Después de que la primera ← muestra Press ← again to open agents, o Press ← again to go back to agents en una sesión adjunta, el primer presionar que llega al menos un segundo después cambia, incluso cuando los presionamientos más rápidos entre medias fueron ignorados. Antes de esta versión, cada presionar ignorado reiniciaba la espera, por lo que presionar ← nuevamente a un ritmo constante no cambiaba hasta que pausaba durante más de un segundo. |
| v2.1.260 | Cuando envía una sesión al segundo plano, el listado de agentes de sus otras sesiones muestra la conversación una vez, como su sesión de fondo, y sus mensajes a ella ya no llegan a la terminal desde la que la movió. Antes de esta versión, esa terminal podría permanecer listada como una segunda sesión interactiva bajo el nombre de la conversación, y una sesión que había enviado un mensaje a la conversación antes del movimiento continuaba entregando a esa terminal. |
| v2.1.260 | Cuando una eliminación se rechaza sobre commits sin enviar, el mensaje nombra la rama del worktree y cuántos commits no se han enviado, y eliminar la sesión nuevamente descarta el worktree y sus commits. Antes de esta versión, el rechazo decía solo worktree has commits that are not pushed anywhere, eliminar nuevamente se rechazaba de la misma manera, y eliminar la sesión requería enviar los commits o eliminar el worktree manualmente. |
| v2.1.257 | ← se desadjunta de una sesión adjunta mientras la superposición /btw está abierta, incluso a mitad de respuesta, y la superposición se reabre cuando se adjunta nuevamente. Antes de esta versión, ← no se desadjuntaba mientras la superposición estaba abierta. |
| v2.1.257 | Cuando ejecuta claude --resume <session-id> --bg, Claude Code continúa esa sesión bajo su propio ID, o inicia una copia bajo un nuevo ID e imprime una línea note: explicando por qué. --continue, un --resume desnudo, y --resume con un nombre o ruta inician una copia con la misma nota. Antes de esta versión, --resume con --bg siempre iniciaba una copia bajo un nuevo ID y no decía nada. |
| v2.1.257 | Cuando distribuye una sesión desde una vista de agentes que abrió con ←, Claude Code la inicia en el modo de permiso que el directorio de destino configura a través de permissions.defaultMode. Cuando el directorio no establece uno, se aplica el modo de permiso de la sesión de la que vino. Antes de esta versión, la sesión distribuida siempre se iniciaba en el modo de permiso de la sesión de la que vino, anulándolo. |
| v2.1.257 | Ctrl+S, Ctrl+T y Ctrl+G en la vista de agentes siguen su keybindings.json: Ctrl+S y Ctrl+T a través de las acciones agents:switchView y agents:togglePin del contexto Agents, y Ctrl+G a través del enlace chat:externalEditor del contexto Chat. Antes de esta versión, la vista de agentes ignoraba keybindings.json y estas teclas eran fijas. |
| v2.1.257 | Iniciar el servicio de fondo se recupera de dos causas de fallo. En una instalación de npm en macOS, un inicio durante una auto-actualización espera a que la instalación termine en lugar de ejecutar el marcador de posición que npm coloca mientras reemplaza el binario. En Windows, un daemon.lock obsoleto escrito antes del último arranque de la máquina, o cuyo ID de proceso registrado ahora pertenece a un proceso diferente, se reemplaza. Antes de esta versión, el inicio en macOS falló con Error: claude native binary not installed. durante la ventana de instalación, y el bloqueo en Windows hizo que cada inicio fallara con exited before it became reachable hasta que eliminó ~/.claude/daemon.lock. |
| v2.1.257 | Cuando abre o distribuye una sesión de fondo mientras otro proceso de Claude Code está descargando una actualización de npm, Claude Code continúa esperando hasta dos minutos mientras se ejecuta la instalación, luego falla diciendo Claude Code is being updated by npm on this machine. Antes de esta versión, la espera se detenía a los diez segundos, por lo que la apertura falló con Couldn't start the background service mientras la descarga aún se estaba ejecutando. |
| v2.1.257 | Una sesión de fondo que sostiene un mensaje entre sesiones para su aprobación muestra approve message from en su fila Needs input, con la dirección del remitente y el nombre que el remitente reclama. Antes de esta versión, la fila se movía a Needs input pero mantenía su texto anterior, por lo que nada en claude agents nombraba el mensaje esperado o su remitente. |
| v2.1.257 | Un prompt guardado con Ctrl+S dentro de una sesión de fondo abierta se mantiene con la sesión, por lo que Ctrl+S lo restaura después de que el proceso de la sesión se detiene e inicia nuevamente. Antes de esta versión, el almacenamiento vivía solo en el proceso en ejecución y se perdía cuando la sesión se quedaba inactiva el tiempo suficiente para que su proceso se detuviera, o cuando se detenía y luego se reabriera. |
| v2.1.251 | En una sesión de fondo que no ha entrado en un worktree, Claude y los subagentes que genera pueden editar archivos dentro de un worktree de git vinculado. |
| v2.1.251 | Claude Code reenvía una puerta de enlace de proveedor de nube exportada en el shell desde el que distribuye, como ANTHROPIC_VERTEX_BASE_URL o ANTHROPIC_BEDROCK_BASE_URL con su bandera de bypass de autenticación, al worker de la sesión bajo las mismas condiciones que ANTHROPIC_BASE_URL. Antes de esta versión, si enviaba al segundo plano o distribuía desde un shell autenticado solo a través de tal puerta de enlace, cada solicitud que la sesión realizaba fallaba, porque el punto final y la bandera se eliminaban de su entorno. |
| v2.1.251 | Cuando una sesión de fondo se inicia mientras otro proceso de Claude Code está actualizando un marketplace de plugins, como una sesión hermana ejecutando la actualización automática del marketplace, Claude Code mantiene los plugins de ese marketplace disponibles. Antes de esta versión, tal sesión podría iniciarse sin ninguna de las skills, agentes, hooks y servidores MCP de ese marketplace y permanecer así durante toda su ejecución. |
| v2.1.248 | Shift+Enter en la entrada de distribución inserta una nueva línea, coincidiendo con el prompt principal, y Ctrl+Enter distribuye y se adjunta inmediatamente en terminales donde la superposición ? enumera ctrl+enter to start and open. Antes de esta versión, Shift+Enter distribuía y se adjuntaba. |
| v2.1.248 | Eliminar una sesión tiene éxito cuando los commits del worktree ya están en la copia local de la rama predeterminada de su remoto origin y su checkout principal tiene esa rama verificada; antes de esta versión, la eliminación se rechazaba con has commits that are not pushed anywhere. |
| v2.1.248 | Una sesión enviada al segundo plano con ← o /background mantiene el git worktree lock en su worktree mientras se ejecuta; antes de esta versión, enviar al segundo plano liberaba el bloqueo, y la limpieza o git worktree remove podría eliminar el worktree bajo la sesión en ejecución. |
| v2.1.248 | Una sesión de fondo que no estaba esperando su entrada y se encuentra muerta más de 48 horas después de su última actividad, como después de que la máquina estuvo apagada durante días, se muestra como detenida con ended while the background service was off, y Enter en ella pregunta antes de reanudar su conversación guardada. Antes de esta versión, tal sesión reaparecía como un fallo nuevo ordenado en la parte superior de la lista, y un único Enter traía la conversación de hace semanas al primer plano. |
| v2.1.248 | Abrir una fila detenida cuya conversación reanudó en otra terminal se rechaza con Can't open — this session is running in another terminal, y la fila muestra Open in a terminal en lugar de mostrarse bajo Working. Antes de esta versión, abrir la fila iniciaba un segundo proceso escribiendo en la misma conversación. |
| v2.1.248 | Una sesión de fondo esperando una decisión de permiso mientras un hook PermissionRequest o PreToolUse imprimía una respuesta inválida nombra el evento del hook y el error de esquema en su fila. Antes de esta versión, la fila mostraba solo la solicitud pendiente. |
| v2.1.248 | En Windows, claude agents responde al teclado cuando se lanza en una pestaña de terminal que un programa anterior dejó en win32-input-mode. Antes de esta versión, Claude Code no decodificaba los registros de teclas que tal pestaña envía. |
| v2.1.247 | En Linux y WSL, una sesión cuyo proceso host de terminal murió falla dentro de segundos con la razón. Una apertura que no produce salida termina después de aproximadamente diez segundos con una oferta de reinicio, y Enter en la fila reinicia la sesión con su conversación; claude attach <id> reporta la causa y sale. Antes de esta versión, abrir tal sesión mostraba opening… · esc to cancel indefinidamente y claude attach <id> esperaba sin reportar un error. |
| v2.1.246 | En una instalación de npm, cuando el servicio de fondo falla al iniciarse mientras npm install -g @anthropic-ai/claude-code está reemplazando el binario, Claude Code espera hasta diez segundos a que la instalación termine y reintenta antes de reportar EACCES: permission denied. |
| v2.1.246 | Cuando el proceso del servicio de fondo muere después de imprimir un error, Claude Code reporta el fallo y cita la primera línea de error del servicio. |
| v2.1.246 | Si su máquina se duerme mientras el servicio de fondo se está iniciando, Claude Code reintenta el inicio una vez en lugar de fallar. |
| v2.1.246 | Claude Code espera aproximadamente dos minutos en lugar de 45 segundos para un servicio de fondo recién iniciado que está vivo pero lento para aceptar conexiones. |
| v2.1.246 | El servicio de fondo se inicia desde su directorio de inicio, por lo que en macOS y Linux un directorio de inicio que fue eliminado o movido ya no bloquea el inicio. |
| v2.1.246 | /fork copia la conversación completa de una sesión que ella misma se inició como una copia y no ha registrado un nuevo prompt desde: una copia /fork a la que se adjuntó, una sesión reajustada después de que ← o /background la movió al segundo plano, o una sesión iniciada con claude --resume <id> --fork-session. Antes de esta versión, si ejecutaba /fork en tal sesión antes de enviarle un nuevo prompt, Claude Code imprimía la confirmación normal pero iniciaba la copia con una conversación vacía. Mover tal sesión al segundo plano con ← o /background perdía la conversación de la misma manera. |
| v2.1.246 | Cuando abre una sesión que acaba de distribuir mientras su proceso worker aún se está iniciando, como presionando Enter en su fila, Claude Code espera al proceso y luego se adjunta. Antes de esta versión, si presionaba Enter mientras el proceso aún se estaba iniciando, Claude Code podría detener la sesión con Session <id> was stopped while the respawn was in flight. |
| v2.1.246 | Cuando envía al segundo plano una sesión nombrada, Claude Code la enumera una vez, y cuando envía al segundo plano la misma conversación nuevamente, numera el nombre de la nueva fila, como my-session (2), con la fila existente manteniendo su nombre. Antes de esta versión, la terminal en la que presionó ← podría aparecer en claude agents --json como una segunda sesión bajo el mismo nombre, y si enviaba al segundo plano la misma conversación nuevamente, Claude Code agregaba otra fila bajo el nombre idéntico. |
| v2.1.239 | Con modo de editor vim activado, presionar Esc en la entrada de la vista de agentes cambia de modo INSERT a NORMAL y mantiene su texto, coincidiendo con el prompt principal; en modo NORMAL con texto aún en la entrada, presionar Esc lo borra, y presionar Esc en una entrada vacía sale, como describe el atajo Esc. Antes de esta versión, Esc borraba la entrada. |
| v2.1.233 | Para una sesión vinculada a una solicitud de fusión de GitLab, Claude Code escribe la etiqueta de la fila en la sintaxis de referencia !1234 de GitLab. También puede pegar la URL de la solicitud de fusión en la entrada de distribución para seleccionar esa sesión. Antes de esta versión, la etiqueta se representaba como #1234, y una URL de solicitud de fusión pegada coincidía con una sesión solo cuando su primer prompt contenía la URL. |
| v2.1.227 | Eliminar una sesión mantiene la sesión y su worktree mientras otra sesión de Claude Code en vivo se ejecuta dentro de ese directorio de worktree. La vista de agentes muestra not deleted en la fila y la razón en el pie de página, y claude rm imprime kept <id> con la razón, que nombra el ID de proceso de la otra sesión. Antes de esta versión, eliminar la sesión eliminaba el worktree mientras la otra sesión aún estaba trabajando en él. |
| v2.1.225 | claude agents en un directorio que no ha confiado muestra el mismo diálogo de confianza del espacio de trabajo que claude muestra al inicio, antes de que se abra la vista de agentes. Aceptar guarda la confianza para ese espacio de trabajo; rechazar sale sin abrir la vista de agentes. Antes de esta versión, claude agents se abría sin preguntar, por lo que las sesiones que distribuía desde él se ejecutaban en un directorio en el que nunca le habían pedido que confiara.Con la lista agrupada por directorio, pasar el ratón sobre una fila la resalta sin cambiar el destino de distribución; seleccionar una fila con las teclas de flecha o un clic aún cambia el destino. Antes de esta versión, mover el ratón sobre una sesión en otro proyecto silenciosamente cambiaba el directorio en el que se iniciaba la siguiente sesión distribuida. |
| v2.1.221 | /status muestra una fila Session kind: background job · attached o background job · unattended en una sesión de fondo, dependiendo de si una terminal está adjunta, e interactive en cualquier otra sesión. Antes de esta versión, /status no reportaba el tipo de sesión./fork: Claude Code instruye a la copia para aislar su trabajo del de la sesión original: la copia crea su propio worktree antes de hacer cambios de código, se mantiene fuera del worktree de la sesión original, y basa una nueva rama en la rama de la original cuando su tarea se basa en ese trabajo. Vea la sección vinculada para las condiciones exactas. Antes de esta versión, la copia no recibía instrucción de aislamiento y podría terminar editando el worktree o verificando el checkout en el que la sesión original aún estaba trabajando.Con modo de editor vim activado, presionar ← justo después de deshacer el prompt de vuelta a vacío con u pide la misma confirmación que eliminar el texto o moverse a través del historial de prompts, y cambia solo en el segundo presionar; antes de esta versión el presionar cambiaba inmediatamente. |
| v2.1.219 | Con modo de editor vim activado, presionar ← en un prompt vacío abre la vista de agentes desde modo NORMAL así como INSERT, y la sugerencia ← del pie de página se muestra en modo NORMAL; antes de esta versión el gesto y la sugerencia eran solo INSERT, y en modo NORMAL ← en un prompt vacío no hacía nada. Escribir en la entrada mientras Claude Code espera enviar la sesión al segundo plano cancela el cambio con Backgrounding cancelled — you have unsent text in the input. Send it or clear it, then press ← again. para que un borrador escrito no se pierda. |
| v2.1.218 | Presionar ← dentro de dos segundos de una eliminación que vació el prompt, o de moverse a través del historial de prompts, muestra Press ← again to open agents, o Press ← again to go back to agents en una sesión adjunta, y cambia solo en un segundo presionar al menos un segundo después; antes de esta versión el presionar cambiaba inmediatamente. Un ← que llega dentro de entrada pegada o escrita por script ya no activa el cambio. Enviar al segundo plano una sesión en primer plano con ← muestra Your conversation moved to the background encima de la lista, y Esc en la raíz de la vista de agentes regresa a esa conversación en lugar de salir al shell, con doble Ctrl+C permaneciendo como la salida; si la conversación no se puede reabrir, Claude Code sale e imprime un comando claude --resume para ella. En Windows, un ← presionado dentro de aproximadamente medio segundo de adjuntarse muestra Ambiguous ←, press again to detach y se desadjunta en el segundo presionar. |
| v2.1.217 | La insignia de solicitud de extracción en la fila de una sesión se representa como un hipervínculo incluso cuando Claude Code no puede detectar soporte de hipervínculo de terminal, por ejemplo sobre SSH o tmux; establezca FORCE_HYPERLINK=0 para representarla como texto sin formato. Antes de esta versión, la insignia se representaba como texto sin formato cuando el soporte no se detectaba. |
| v2.1.216 | /fork: la confirmación es una línea, mostrando el estado de la copia, el nombre de su fila de vista de agentes, y su ID de sesión para claude attach, terminando con runs in the origin tree o edits this checkout solo cuando la copia se ejecuta en el árbol de trabajo principal o edita el checkout que tiene abierto. Hacer clic en el nombre envía esta sesión al segundo plano y abre la vista de agentes en la sesión de la copia. La confirmación ya no reafirma el modo de permiso heredado de la copia; las versiones anteriores imprimían una confirmación de varias líneas sin nombre clickeable.Necesita entrada: /install-github-app y la lista de configuración /mcp, ejecutadas mientras nadie está adjunto, muestran la sesión bajo Needs input con una fila que nombra el comando, y adjuntarse y re-ejecutar el comando continúa; de v2.1.208 a v2.1.215 fueron rechazadas directamente en ese estado.Restauración de --agent: reanudar o reiniciar una sesión --agent enviada al segundo plano restaura el prompt del sistema del agente y las restricciones de herramientas, buscando el agente en el directorio de la sesión primero, cuando su espacio de trabajo es confiable; una sesión cuyo agente ya no existe continúa con las herramientas predeterminadas y el prompt del sistema y se abre con una advertencia visible, en lugar de revertir silenciosamente al agente predeterminado.Ctrl+X: presionarlo dos veces elimina una sesión incluso cuando el intento de detención falla, en lugar de que una detención fallida cancele la eliminación pendiente, y una sesión eliminada cuyo proceso worker había muerto ya no reaparece en el próximo refresco.Eliminación de worktree: una sesión cuyo directorio de worktree no pertenece a ningún repositorio de git puede ser eliminada; antes de esta versión cada intento de eliminar tal sesión fue rechazado. Un directorio que ya se ha ido se borra inmediatamente. El doble presionar de la vista de agentes elimina un directorio que aún tiene archivos, ejecutando su hook WorktreeRemove para un directorio creado por hook, a menos que otra sesión también lo nombre. claude rm mantiene tal directorio siempre que los archivos permanezcan. |
| v2.1.214 | Una sesión enviada al segundo plano con ← o /background e inactiva sin nada ejecutándose tiene su proceso detenido como cualquier otra sesión inactiva, en lugar de mantener su proceso y el servicio de fondo ejecutándose indefinidamente. Una sesión completada puede ser eliminada con claude rm o desde la vista de agentes después de que el servicio de fondo se haya quedado inactivo, y una sesión que entró en un worktree después de ser distribuida desde un directorio que no es un repositorio de git, como una carpeta de espacio de trabajo multi-repo, puede ser eliminada desde la vista de agentes cuando el worktree mismo pertenece a un repositorio de git, porque la limpieza se resuelve desde el worktree en lugar del directorio desde el que se distribuyó la sesión; ambas eliminaciones fueron rechazadas en cada intento antes. Reabrir una sesión detenida restaura su conversación guardada incluso cuando una carpeta en el almacén de transcripción no se puede leer. |
| v2.1.213 | /install-github-app, la lista de configuración /mcp, y acciones de autenticación MCP funcionan en una sesión de fondo mientras una terminal está adjunta, y se rechazan solo cuando nadie está adjunto, con un mensaje diciéndole que se adjunte y ejecute el comando nuevamente; de v2.1.208 a v2.1.212 fueron rechazadas incluso con una terminal adjunta. |
| v2.1.212 | /fork en una sesión interactiva copia la conversación en una nueva sesión de fondo que aparece como su propia fila, nombrada después de la sesión de la que provino o, para un fork solicitado de una sesión sin nombre, después del prompt de fork, mientras la original continúa ejecutándose; el comportamiento anterior de subagente forked de /fork se movió a /subtask. Con vista de agentes desactivada, /fork mantiene el comportamiento de subagente forked. Una fila enfocada que está esperando su primer prompt muestra space to send it a prompt. Ctrl+J inserta una nueva línea en la entrada de distribución en terminales con reporte de tecla extendida, donde el presionar de tecla fue previamente ignorado, y la superposición ? enumera el atajo. La sugerencia de pie de página ← en una sesión interactiva brevemente muestra N done cuando una sesión de fondo termina mientras ninguna necesita su entrada. Escribir un /resume desnudo en la vista de agentes abre un selector de sesiones pasadas del repositorio desde el que abrió la vista de agentes, incluyendo sesiones eliminadas de la lista, y seleccionar una la reanuda como una sesión de fondo; antes de esta versión /resume no estaba disponible en la vista de agentes y las sesiones eliminadas eran alcanzables solo con claude --resume o /resume desde una sesión interactiva. Los formularios dirigidos, con alcance y restringidos mantienen la sugerencia attach to a session to run it que las versiones anteriores mostraban para cada formulario. Las sesiones esperando un prompt de host de red de sandbox, una solicitud de entrada MCP, o un prompt de configuración administrada se muestran como Needs input en lugar de Working, en la vista de agentes y en claude agents --json, y una pregunta de Claude reporta waitingFor: input needed en lugar de permission prompt. Adjuntarse a una sesión cuyo proceso se ha detenido muestra su transcripción formateada de la manera en que la sesión en vivo la representa, en lugar de como texto sin procesar. Una sesión detenida cuya transcripción está en un lugar inesperado se reanuda desde ella a través de un escaneo de último recurso de sus transcripciones guardadas, y abrir una fila que no tiene transcripción guardada muestra Press enter again to restart this session fresh, reiniciándola de nuevo en el segundo presionar; v2.1.211 mostró el rechazo sin forma de reiniciar desde la vista de agentes. |
| v2.1.211 | Despertar una sesión detenida adjuntándose o respondiendo desde el directorio en el que se ejecuta reenvía el ANTHROPIC_BASE_URL de puerta de enlace de su shell nuevamente, bajo las mismas condiciones que una distribución nueva, por lo que una sesión autenticada a través de un ANTHROPIC_AUTH_TOKEN de puerta de enlace se reanuda en la puerta de enlace en lugar de reportar Not logged in. Adjuntarse a una sesión detenida que fue enviada al segundo plano desde otra conversación antes de que su primera respuesta terminara se rechaza con This session has no saved transcript en lugar de silenciosamente iniciar una conversación en blanco bajo el mismo ID de sesión; abrir la misma fila desde la vista de agentes mostró el rechazo en el pie de página. Terminar el proceso de una sesión ← o /background desde fuera de Claude Code la marca como detenida en lugar de que el supervisor la reinicie, una detención ya registrada en disco se honra a menos que una respuesta que envió aún esté esperando ser entregada, una sesión reiniciada después de un fallo es informada de que fue reiniciada, y una sesión ← o /background reiniciada no reanuda una respuesta interrumpida más antigua que aproximadamente una hora. Una respuesta de sesión-nombrada que responde o rechaza el prompt en lugar de etiquetarlo, como para un prompt que es principalmente un enlace, se descarta y la fila mantiene un nombre tomado del texto del prompt. Eliminar una sesión cuyo git de worktree ya no reconoce tiene éxito, dejando el directorio de worktree en disco y nombrando su ruta, en lugar de que cada intento sea rechazado. Un rechazo de eliminación muestra la razón en la fila de la sesión, incluyendo el error de git subyacente cuando el worktree no pudo ser eliminado, en lugar de que la fila silenciosamente reaparezca. |
| v2.1.210 | claude attach espera mientras el servicio de fondo se está iniciando o reconectando en lugar de fallar con un error job not found o still starting, reporta una sesión que terminó durante el adjunto como salida, y aplica un cambio de tamaño de terminal hecho durante un adjunto lento cuando el adjunto se completa. La sugerencia de conteo de necesidades de entrada ← del pie de página del prompt aparece en cada proveedor, incluyendo proveedores de terceros que previamente mostraban la forma ← for agents simple. Enviar al segundo plano una sesión con ← lleva la lista de tareas de Claude a la sesión de fondo en lugar de descartarla. La fila en la que presionó ← mantiene un nombre en negrita, sin atenuar después de que la selección se mueve. claude agents --effort acepta ultracode en lugar de silenciosamente descartarlo. |
| v2.1.208 | Adjuntarse a una sesión cuyo proceso se ha detenido muestra la última pantalla de su transcripción mientras el proceso se inicia, en lugar de solo una nota Session is starting. Una respuesta que no se puede entregar porque el servicio de fondo es inaccesible o el envío falla se guarda y se envía como el siguiente prompt de la sesión cuando su proceso se inicia nuevamente; antes de esta versión, una respuesta perdida mientras el servicio de fondo era inaccesible se descartaba. Un proceso cuyo propio binario fue reemplazado por una actualización aún puede iniciar el supervisor, desde el lanzador claude instalado o la versión más nueva en disco, en lugar de fallar hasta que Claude Code se reiniciara. Un supervisor que ejecuta una versión anterior nunca reinicia una sesión inactiva iniciada por una versión más nueva en su propio binario más antiguo. Eliminar una sesión elimina su worktree incluso después de que la sesión movió el worktree a una rama diferente, y mantiene el worktree junto con la fila de sesión cuando el worktree tiene commits que no se han enviado a ningún lugar u otra sesión lo reclama, en lugar de destruir los commits u orfandar el worktree. /install-github-app y la lista de configuración /mcp y sus acciones de autenticación se rechazan en una sesión de fondo con un mensaje que nombra la alternativa; en v2.1.208 solamente, el selector /model fue rechazado de la misma manera y un /model <name> escrito cambió solo esa sesión en lugar de también guardar su modelo predeterminado. |
| v2.1.207 | El panel de vista previa se abre con la oración que la fila trunca, como la pregunta exacta para una sesión que lo espera a usted, y muestra cuánto tiempo una sesión bloqueada ha estado esperando como una única línea waiting 3m en lugar de prefijar la misma marca de tiempo a la oración de estado y la pregunta. Pegar el mismo texto nuevamente en la entrada de distribución expande el marcador de posición colapsado [Pasted text #N] en lugar de agregar uno segundo. Una sesión en segundo plano nombrada al aceptar un plan muestra ese nombre en su fila. Una sesión en segundo plano que se movió a un worktree mantiene su conversación cuando su proceso se reinicia desde la vista de agentes. |
| v2.1.206 | Los resúmenes de filas llenan el ancho restante de la fila y se truncan solo en el borde derecho de la terminal en lugar de en 64 columnas. Después de que el supervisor se reinicia en una nueva versión de Claude Code, reinicia las sesiones en segundo plano inactivas restantes en esa versión en el fondo en lugar de algunas por minuto. Eliminar una sesión con Ctrl+X o claude rm también la borra de la lista de sesiones del supervisor, por lo que la fila ya no reaparece después de un reinicio del supervisor. Una anulación de cuerpo de solicitud CLAUDE_CODE_EXTRA_BODY exportada en el shell de distribución llega a las sesiones de fondo en lugar de ser ignorada. |
| v2.1.205 | La sugerencia ← del pie de página del prompt en una sesión regular claude cuenta los agentes de fondo esperando por usted, como ← 2 agents. Los resúmenes de filas muestran el informe de una línea propia de la sesión, truncado en 64 columnas, en lugar de una invocación de herramienta sin procesar o un recuento done/total; las filas agrupadas por directorio se abren con una palabra de estado coloreada. El panel de vista previa se abre con la oración de estado completa y, para una sesión que espera por usted, su pregunta exacta encima de la entrada de respuesta. Las sesiones que editan, comentan, cierran o marcan una solicitud de extracción como lista con gh están vinculadas a ella, no solo las que crean o verifican una solicitud de extracción, un push vincula una solicitud de extracción incluso cuando el nombre de rama local no coincide, y una solicitud de extracción cuya salida del comando de creación excedió el límite en línea también está vinculada. Un turno sin texto legible mantiene el estado anterior de la sesión en lugar de voltearlo de nuevo a Working. claude attach espera hasta aproximadamente 60 segundos una sesión que se está reiniciando, con una línea de estado que indica por qué, en lugar de fallar. |
| v2.1.203 | Una puerta de enlace ANTHROPIC_BASE_URL exportada en el shell de distribución llega a las sesiones distribuidas desde él en ese mismo directorio cuando el supervisor comparte ese entorno de puerta de enlace, en lugar de ser descartada mientras la clave API exportada junto a ella se mantenía. El PATH del shell de distribución se aplica al worker de cada sesión. Presionar ← mientras los subagentes se están ejecutando espera a que terminen en lugar de reiniciarlos después de diez segundos. La lista vacía siempre muestra los encabezados de sección con una descripción bajo cada uno. Escribir @ en la entrada de distribución también enumera los worktrees de git registrados del repositorio de lanzamiento que viven dentro de su árbol de directorios. Un esfuerzo heredado de la configuración effortLevel sigue ediciones posteriores a esa configuración en lugar de ser fijado en la distribución. Abrir una sesión detenida cuya conversación ya está abierta en otra sesión en ejecución se rechaza con un mensaje en lugar de fallar la fila. Un comando que no está disponible en la vista de agentes deja el texto escrito en la entrada. Un hook WorktreeCreate que falla fuera de un repositorio de git ya no bloquea la sesión de editar archivos. |
| v2.1.202 | Un nombre establecido con /rename o Ctrl+R en una sesión en segundo plano persiste cuando el supervisor detiene y reinicia su proceso, en lugar de revertir al nombre con el que se distribuyó la sesión. |
| v2.1.200 | Una versión anterior de Claude Code que reescribe la lista de sesiones en roster.json preserva campos escritos por una versión más nueva, coincidiendo con la garantía existente de state.json, por lo que las sesiones iniciadas por la versión más nueva continúan aceptando entrada después de que el supervisor se reinicia. Cuando abre una sesión que ha dejado de responder, el supervisor reinicia su proceso y la sesión continúa la respuesta interrumpida desde donde se quedó. La vista de agentes aplica una bandera --plugin-dir colocada después de agents a su propio subagente y autocompletado de skills en la entrada de distribución así como sesiones distribuidas. |
| v2.1.199 | Una sesión en segundo plano cuyo proceso se cierra antes de terminar de iniciarse en un host con poca memoria muestra possibly low memory — free some up and retry en su estado de fila en lugar de solo la razón de salida desnuda. Enviar al segundo plano una sesión con ← o /background lleva su /color a la nueva fila. |
| v2.1.198 | La vista de agentes envía una notificación a través de preferredNotifChannel cuando una sesión en segundo plano necesita entrada, finaliza o falla, y dispara el hook Notification con el tipo agent_needs_input o agent_completed. ← y /exit dentro de claude attach <id> regresan a la vista de agentes en lugar de salir al shell; Ctrl+Z regresa al shell. Una sesión en segundo plano que aisló su trabajo en un worktree confirma, envía su propia rama aislada, nunca main o master, y abre una solicitud de extracción en borrador cuando finaliza en lugar de preguntar primero. /login se ejecuta en la vista de agentes y abre el diálogo de inicio de sesión. El diálogo de salida Background work is running ofrece Move to background and exit. La entrega de salida también cubre subagentes en segundo plano, que se reanudan desde su transcripción en el próximo despertar en lugar de ser reportados como fallidos. claude --bg combinado con -p o --print se rechaza con un error. El host de sesión de fondo solicita permiso de Red Local de macOS en el primer acceso LAN en lugar de fallar con connect: no route to host. |
| v2.1.196 | Un único presionar ← envía al segundo plano una sesión en primer plano; las versiones anteriores requerían dos presiones, con una sugerencia de pie de página y una confirmación. --dangerously-skip-permissions pasado a claude agents muestra el descargo de responsabilidad de bypass en lugar de ser silenciosamente descartado. Las sesiones interactivas que nunca nombró llevan un nombre predeterminado como my-app-3f en listados de sesiones y claude agents --json. Los comandos shell en segundo plano y flujos de trabajo dinámicos sobreviven al proceso de la sesión siendo detenido, reiniciado o actualizado, incluso en Windows; establezca CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF=1 para desactivar la entrega. Una transcripción malinterpretada como vacía al reiniciar se renombra con un sufijo .orphaned- en lugar de eliminarse. |
| v2.1.195 | El trabajo en vuelo se traslada cuando envía al segundo plano una sesión en Windows también; establezca CLAUDE_DISABLE_ADOPT=1 para detenerlo en su lugar. El grupo Completed llena el espacio vertical restante y el encabezado se compacta en terminales cortas. Una versión anterior de Claude Code ya no descarta campos state.json más nuevos de sesiones o oculta esas sesiones de claude agents. Conectarse a una sesión detenida cambia inmediatamente en lugar de mostrar una pantalla en blanco durante hasta cinco segundos. Un supervisor que no puede aceptar conexiones sale y libera su bloqueo por sí solo. |
| v2.1.191 | claude --bg con un nombre --agent que no coincide con ninguno de sus subagentes falla el lanzamiento: la sesión sale inmediatamente con un error --agent '<name>' not found en lugar de ejecutarse con el agente predeterminado. |
| v2.1.174 | Las sesiones en segundo plano ya no heredan variables de punto final de puerta de enlace como ANTHROPIC_BASE_URL del shell de lanzamiento del supervisor; el supervisor proporciona una instantánea de credencial nueva a workers precalentados, corrigiendo errores espurios de Could not resolve authentication method. |
| v2.1.172 | /model en la entrada de distribución establece una anulación de modelo de distribución con alcance de sesión. |
| v2.1.161 | Los resúmenes de filas muestran un recuento done/total para elementos de trabajo paralelos; el panel de vista previa nombra el elemento de trabajo paralelo que más tiempo lleva ejecutándose. |
| v2.1.157 | claude agents acepta --agent; las sesiones distribuidas honran la configuración agent. |
| v2.1.145 | Dictado de voz compatible en la entrada de respuesta del panel de vista previa y la entrada de distribución. |
| v2.1.143 | Se agregó la configuración worktree.bgIsolation; claude agents acepta --allow-dangerously-skip-permissions. |
| v2.1.142 | claude agents acepta --permission-mode, --model, --effort, --dangerously-skip-permissions, --settings, --add-dir, --plugin-dir, --mcp-config y --strict-mcp-config. |
| v2.1.141 | claude agents acepta --cwd para limitar la lista a un proyecto. |
| v2.1.139 | La vista de agentes se introdujo como una vista previa de investigación. |