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.


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.1
Abrir la vista de agentes
Desde su shell, ejecute: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.2
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.3
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.4
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.5
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ó.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
Ejecuteclaude 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:
~/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.
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:
Por separado, la forma del icono muestra si el proceso subyacente se está ejecutando:
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, comoNeeds 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.
- 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.
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:
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
PresioneSpace 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
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
PresioneEnter 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.
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, conReady 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
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
… 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:Atajos de teclado
Presione? en la vista de agentes para ver cada atajo en contexto. La tabla a continuación los resume.
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 presioneEnter 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:
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
/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
-
Desde el shell,
cdal directorio y ejecuteclaude --bg "<prompt>".
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.
--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
/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:
-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:
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:
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:
--bg puede imprimir primero Starting background service… encima de esta salida. Cuando pasa --name, el nombre aparece después del ID corto:
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:
! 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
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:
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.
"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 conCtrl+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.
-
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
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.
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ónmodel 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:
- 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 iniciadoclaude 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 bloqueenv 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
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
←, 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
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:
--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ó conclaude --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 queclaude 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.
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:
--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 conclaude --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.
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:
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.
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 ejecutandoclaude 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.
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 estableceCLAUDE_CONFIG_DIR, el supervisor usa ese directorio en lugar de ~/.claude y se ejecuta como una instancia separada con sus propias sesiones.
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óndisableAgentView 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 presioneEnter 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.
/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 sugerenciaToo 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 bajoNeeds 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.
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.
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, desdeEnter 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 oclaude 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:
--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 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 reportaOperation 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 conconnect: 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 conCtrl+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.