Los subagentes permiten que el agente principal cree trabajadores independientes para encargarse de subtareas. Un subagente comparte herramientas y el contexto de la base de código con el agente principal, pero opera en su propia cadena de conversación — no hereda el historial de conversación del agente principal. Esto resulta útil para tareas que se benefician de un trabajo específico e independiente — como explorar una base de código, ejecutar pruebas o implementar una funcionalidad en paralelo. Puedes pedirle al agente que use subagentes de forma explícita (p. ej., “investiga cómo funciona la autenticación en un subagente”), o el agente puede decidir delegar por su cuenta cuando determine que una tarea se beneficiaría de un trabajo independiente. Según nuestras mediciones, los subagentes mejoran el rendimiento general de programación y reducen el costo.Documentation Index
Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt
Use this file to discover all available pages before exploring further.
Cómo funcionan los subagentes
Primer plano
Se ejecuta directamente en tu sesión. El agente principal se pausa y espera a que el subagente termine antes de continuar. Puedes aprobar o rechazar llamadas a herramientas a medida que aparecen.
Segundo plano
Se ejecuta en paralelo mientras el agente principal sigue trabajando. El agente principal recibe una notificación automáticamente cuando el subagente termina. Las herramientas no aprobadas se rechazan automáticamente.
No ves directamente la salida en bruto del subagente. Cuando un subagente termina, el agente principal lee el resultado y resume los hallazgos clave y las acciones para ti.
Perfiles de subagente
| Perfil | Descripción | Acceso a herramientas |
|---|---|---|
subagent_explore | Exploración e investigación de la base de código en modo de solo lectura | Herramientas de solo lectura para la base de código, además de búsqueda web; no puede editar archivos ni obtener URL arbitrarias (tanto en primer plano como en segundo plano) |
subagent_general | Tareas generales, incluidos cambios de código | Acceso completo a las herramientas (primer plano) o solo a herramientas preaprobadas (segundo plano) |
El agente elige automáticamente el perfil adecuado según la tarea. Los subagentes de exploración son ideales para investigar y comprender, mientras que los subagentes generales pueden realizar cambios.
Permisos de herramientas
- Los subagentes en primer plano se comportan como el agente principal: se te pedirá que apruebes o rechaces las llamadas a herramientas, como de costumbre.
- Los subagentes en segundo plano heredan los permisos de herramientas que ya hayas concedido durante la sesión actual. Cualquier herramienta que no se haya aprobado previamente se rechaza automáticamente. Los subagentes en segundo plano no pueden solicitarte permisos nuevos.
Supervisión de subagentes
Indicador de subagente
Panel de subagentes
Cambio entre primer plano y segundo plano
- Pasar un subagente en primer plano a segundo plano: Pulsa Ctrl+B mientras se está ejecutando un subagente en primer plano. El subagente seguirá trabajando en segundo plano y el agente principal se reanudará.
- Pasar un subagente en segundo plano a primer plano: Abre el panel de subagentes y pulsa f sobre un subagente en segundo plano que esté en ejecución. La salida del subagente se mostrará en línea.
Cuando mueves un subagente a segundo plano, la llamada a la herramienta del agente principal ya habrá finalizado, por lo que el agente principal continúa de forma independiente. El resultado del subagente no volverá a incorporarse al pipeline actual del agente principal, pero recibirás una notificación cuando termine.
Cancelar subagentes
- Desde el panel de subagentes: Abre el panel y pulsa x sobre un subagente en ejecución.
- Subagente en primer plano: Pulsa Ctrl+C o Esc para cancelar el subagente en primer plano que se está ejecutando en ese momento.
Reanudar subagentes
- Un subagente en segundo plano falló porque se denegó una herramienta necesaria; reanúdalo en primer plano para conceder los permisos necesarios.
- Un subagente se completó, pero quieres que haga trabajo de seguimiento adicional en función de sus hallazgos.
- Un subagente se canceló antes de tiempo y quieres que continúe.
Profundidad de anidación
run_subagent y read_subagent) están deshabilitadas dentro de un subagente para evitar una anidación sin límites.
Sin embargo, los perfiles personalizados de subagentes pueden habilitar la creación anidada configurando el campo max-nesting en su frontmatter. Este valor reemplaza la profundidad máxima predeterminada y permite que los subagentes creen subagentes secundarios siempre que el árbol se mantenga dentro de ese límite.
Por ejemplo, max-nesting: 3 permite la siguiente cadena:
Subagentes personalizados
subagent_explore y subagent_general, puedes definir tus propios perfiles de subagentes personalizados. Los subagentes personalizados te permiten crear subagentes especializados con sus propios prompts de sistema, restricciones de herramientas, anulaciones del modelo y permisos, adaptados a tareas específicas de tu flujo de trabajo.
Crear un subagente personalizado
AGENT.md en un directorio con nombre propio dentro de agents/. El nombre del directorio pasa a ser el identificador del perfil.
- Específico del proyecto
- Global
Formato de AGENT.md
AGENT.md usa el mismo frontmatter YAML que las skills, seguido del prompt del sistema del subagente:
Campos del frontmatter
| Campo | Tipo | Predeterminado | Descripción |
|---|---|---|---|
name | string | nombre del directorio | Identificador del perfil (no debe entrar en conflicto con los perfiles integrados) |
description | string | ninguno | Se muestra al agente al seleccionar un perfil |
model | string | modelo predeterminado del subagente | Anula el modelo que usa este subagente |
allowed-tools | list | todas las herramientas | Restringe qué herramientas puede usar el subagente |
permissions | object | heredar | Anulaciones de permisos (allow, deny, ask) |
max-nesting | integer | ninguno | Anula la profundidad máxima de anidamiento, lo que permite que este subagente genere sus propios subagentes |
Cómo se usan los subagentes personalizados
subagent_explore, subagent_general) se omiten y se muestra una advertencia.
Importación desde otras herramientas
| Origen | Patrón de archivo |
|---|---|
.claude/agents/*.md | Cada archivo .md se convierte en un perfil de subagente |
Los archivos de agente de Claude Code usan
tools en lugar de allowed-tools en el frontmatter. Ambos formatos se admiten automáticamente.