Subagentes
Los subagentes son "ayudantes especializados" que Claude Code puede lanzar para trabajar en paralelo: uno revisa código, otro investiga, otro escribe tests... mientras el agente principal coordina y tú solo revisas resultados.
¿Para qué sirven?
En tareas grandes, en vez de hacerlo todo de forma lineal, Claude Code puede repartir el trabajo entre varios subagentes con roles concretos (revisor, planificador, depurador, investigador). Ventajas:
- Paralelismo: varios trabajando a la vez = más rápido.
- Contexto limpio: cada subagente tiene su propia "memoria", sin mezclar.
- Especialización: cada uno con sus instrucciones y herramientas.
- Background: pueden correr de fondo sin bloquearte.
Un patrón muy comentado en 2026: lanzar 7 o más subagentes en paralelo (imágenes, auditoría de seguridad, importación de datos, tests...) mientras tú solo asignas tareas y revisas los diffs. El rol del programador cambia: de escribir código a asignar y revisar.
Crear un subagente
Un subagente es un archivo Markdown con frontmatter YAML (configuración) y un cuerpo que es su system prompt (sus instrucciones de personalidad y rol).
.claude/agents/
├── revisor.md
├── depurador.md
└── investigador.mdEjemplo: un subagente revisor de código
---
name: revisor
description: Revisa código en busca de bugs y malas prácticas. Úsalo tras escribir o cambiar código.
tools: Read, Grep, Glob
model: sonnet
color: blue
---
Eres un revisor de código senior. Tu trabajo es leer los cambios y encontrar:
- Bugs potenciales y casos límite no cubiertos.
- Nombres poco claros y código difícil de mantener.
- Problemas de seguridad.
No edites archivos: solo informa de lo que encuentres, ordenado por gravedad.
Sé directo pero constructivo.Campos del frontmatter
| Campo | Para qué sirve |
|---|---|
name | Nombre del subagente. Obligatorio. |
description | Cuándo usarlo. El agente principal lo lee para delegar. Obligatorio. |
tools | Lista blanca de herramientas que puede usar (p. ej. Read, Grep). Limítalas por seguridad. |
model | Modelo a usar: sonnet, opus, fable o inherit (heredar del principal). |
permissionMode | Modo de permisos para este subagente. |
color | Color con el que se muestra en la interfaz. |
hooks | Hooks específicos de este subagente. |
skills | Skills que se precargan al lanzarlo. |
background | Si es true, corre en segundo plano. |
effort | Nivel de esfuerzo/razonamiento. |
Dónde se guardan
- Proyecto (recomendado):
.claude/agents/<nombre>.md - Personal:
~/.claude/agents/<nombre>.md - Vía plugin: dentro del plugin (
agents/...) - Solo para una sesión: con el flag
--agents '{...}'(no se guarda en disco)
Cómo invocarlos
Delegación natural
Simplemente pídeselo al agente principal:
Escribe esto a Claude Code
Usa el subagente "revisor" para revisar los cambios que acabas de hacer y dime qué encuentra.
Mención directa
@"revisor (agent)" revisa src/pagos.tsAsistente interactivo
Usa el comando /agents para abrir un asistente que te guía en la creación y gestión de subagentes sin escribir el YAML a mano.
Desde la terminal
# Lanzar con un subagente concreto
claude --agent revisor
# Ver, monitorizar y gestionar subagentes en paralelo
claude agentsCrear uno sin saber YAML
Escribe esto a Claude Code
Quiero crear un subagente para mi proyecto que se dedique solo a escribir tests. Debe poder leer y editar archivos, usar el modelo sonnet, y centrarse en cubrir casos límite. Créalo en .claude/agents/ y explícame cómo lanzarlo.
Subagentes en paralelo (ejemplo real)
Escribe esto a Claude Code
Tengo que añadir una función de notificaciones a la app. Reparte el trabajo en subagentes en paralelo: uno que investigue cómo está montado el sistema actual, otro que escriba el código, y otro que prepare los tests. Coordínalos tú y al final enséñame un resumen con los cambios para que los revise.
Consejo de seguridad: limita el campo
tools de cada subagente a lo mínimo. Un revisor solo necesita leer (Read, Grep); no le des permiso para editar o ejecutar comandos si no hace falta.