Las analogías que lo explican todo

Analogía 1 — Pit Crew F1

Cuando un monoplaza entra al pit stop, 21 mecánicos trabajan simultáneamente. En 2.4 segundos el coche sale con todo cambiado. Un solo mecánico en secuencia tomaría ~40 segundos — la carrera estaría perdida.

Eso es multi-agente: asignar a cada agente una pieza de trabajo especializada, ejecutar en paralelo, reunir los resultados. El Team Lead es el jefe de mecánicos que coordina sin tocar la rueda él mismo.

Analogía 2 — Control de Tráfico Aéreo

El controlador ATC no pilota ningún avión. Orquesta: conoce el estado de cada aeronave, asigna altitudes y vectores, detecta conflictos. Cada piloto (agente) ejecuta de forma autónoma en su cockpit (contexto).

Esta es la arquitectura orchestrator-subagent: el orquestador tiene visión global pero no ejecuta código directamente.

Números del mercado

1,445%
Aumento en consultas sobre multi-agente
Q1 2024 → Q2 2025 — Gartner
40%
Apps enterprise con agentes específicos
Proyección fin 2026 (vs <5% en 2025)
150+
Organizaciones en protocolo A2A
Linux Foundation — abr 2026
15×
Tokens vs. chat simple
Costo multi-agente — Anthropic 2025
⚠️ La trampa más común: Multi-agente no siempre es mejor. El 15× en tokens significa que debes justificar el costo. Para tareas simples, un agente único es más eficiente.

Los 5 niveles de paralelismo

NivelMecanismoCoordinaciónAislamiento
1Subagentes (Task tool)Dentro de 1 sesión, reportan al padreContexto propio
2Worktrees manualesTú coordinas externamenteGit worktree separado
3Agent TeamsAutomatizada por Team LeadContexto propio + directorio compartido
4Frameworks externosSegún framework (LangGraph, CrewAI…)Variable
5Protocolo A2AEstándar abierto cross-vendorPor agente (vendor-agnostic)

Los 5 patrones de orquestación

Analogía — El Detective Poirot

Poirot no recoge huellas dactilares él mismo. Envía ayudantes a cada escena. Él formula hipótesis, delega investigación, analiza reportes y llega a la conclusión. Anthropic, Cognition, OpenAI y LangChain convergieron en este patrón como arquitectura de referencia en 2026.

1. Orchestrator-Workers

Orchestrator
├── Worker A (módulo auth)
├── Worker B (módulo API)
└── Worker C (tests)
↓ consolida

Ideal: Features independientes en paralelo

Riesgo: Overhead si las tareas son simples

2. Pipeline Secuencial

Agente A → Agente B → Agente C
(analiza) (escribe) (prueba)

Salida de A es entrada de B

Ideal: Dependencias estrictas entre pasos

Riesgo: Cuello de botella si uno falla

3. Paralelo con Merge

Agente 1 ──┐
Agente 2 ──┼──→ Reducer
Agente 3 ──┘

N investigadores → 1 síntesis

Ideal: Investigación, análisis comparativo

Riesgo: Contexto de merge puede ser grande

4. Swarm Auto-coordinado

Task List compartida
├── Agente 1 (reclama T1)
├── Agente 2 (reclama T2)
└── Agente 3 (reclama T3)
Sin coordinador central

Ideal: Trabajo masivo distribuido

Riesgo: Difícil debuggear — emergente

5. Especialistas + Generalist

Security Expert ──┐
Perf Expert ───┼──→ Generalist
UX Expert ──────┘

Expertos + integrador

Ideal: Proyectos multidisciplinarios

Riesgo: El generalist puede ser bottleneck

Código: Orchestrator-Workers en Python

import anthropic import asyncio async def orchestrate_refactor(codebase_path: str): # El orquestador NO ejecuta código — solo coordina client = anthropic.Anthropic() orchestrator_prompt = f""" Eres un orquestador de refactorización. Codebase: {codebase_path} Delega en paralelo: 1. Agente explore → analiza dependencias 2. Agente security-reviewer → audita vulnerabilidades 3. Agente performance-analyzer → identifica bottlenecks Cuando todos reporten, consolida y define plan. """ # Cada subagente devuelve UN string resumido # El orquestador mantiene su contexto limpio response = client.messages.create( model="claude-sonnet-4-6", max_tokens=8096, system=orchestrator_prompt, messages=[{"role": "user", "content": "Inicia refactorización"}] ) return response async def swarm_parallel(topics: list[str]) -> list: """Swarm puro: N agentes sin coordinador central""" client = anthropic.Anthropic() async def research_agent(topic, idx): response = await asyncio.to_thread( client.messages.create, model="claude-haiku-4-5-20251001", # Haiku → velocidad/costo max_tokens=2048, messages=[{"role": "user", "content": f"Investiga: {topic}. Devuelve JSON."}] ) return {"agent": idx, "topic": topic, "findings": response.content[0].text} tasks = [research_agent(t, i) for i, t in enumerate(topics)] return await asyncio.gather(*tasks)

Anti-patrones vs Correctos

❌ Orquestador que ejecuta directamente

# El orquestador hace el trabajo del worker import subprocess result = subprocess.run(["grep", "-r", "TODO", "."]) # ❌ Mezcla responsabilidades

✅ Orquestador que siempre delega

# El orquestador coordina, no ejecuta agent.task( "Encuentra TODOs y clasifícalos por" "prioridad. Devuelve JSON." ) # ✅ Separación de responsabilidades

❌ Archivos compartidos sin coordinación

# Conflicto de merge garantizado agente_a: src/auth/login.ts agente_b: src/auth/login.ts # ❌ MISMO ARCHIVO

✅ Ownership claro + worktrees

# Cada agente dueño de sus archivos agente_a (worktree-a): src/auth/ agente_b (worktree-b): src/payments/ # ✅ Sin conflictos — merge al final

Agent Teams y Swarm Mode

Analogía — Sala de Guerra del D-Day

El General Eisenhower no disparó un solo tiro. Su cuartel recibía reportes de todos los frentes, emitía órdenes, y los generales de campo ejecutaban con autonomía. La sala de guerra = Team Lead. Los generales = Teammates.

ℹ️ Estado actual (mayo 2026): Agent Teams es research preview. Requiere CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 y Claude Code v2.1.32+. No usar en producción crítica.
// settings.json — habilitar Agent Teams { "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" }, "teammateMode": "in-process" // "split-panes" | "auto" }

Componentes del equipo

Team Lead

Sesión principal. Spawna teammates y coordina. Visión global. No ejecuta trabajo de worker.

Teammates

Instancias separadas con su propio contexto. Ejecutan de forma autónoma y reportan.

Task List

Lista compartida visible por todos. File locking previene race conditions al reclamar tareas.

Mailbox

Mensajería 1:1 entre agentes. Para broadcast: enviar uno por destinatario.

Subagentes vs Agent Teams

AspectoSubagentesAgent Teams
ComunicaciónSolo reportan al padreSe comunican directamente entre sí
CoordinaciónEl padre gestiona todoTask list compartida, auto-coordinación
Costo tokensMenor — resultados resumidosMayor — cada teammate es instancia separada
DebuggingTrazable — árbol de llamadasMás complejo — múltiples contextos
Escala óptima1–10 subagentes3–5 teammates (sweet spot)

Swarm Mode: inteligencia emergente sin coordinador central

Analogía — Colonia de Hormigas

Ninguna hormiga tiene visión global. Cada una sigue reglas locales simples. El comportamiento complejo emerge de interacciones entre miles de agentes. Swarm: inteligencia emergente sin coordinador central. Lanzado con Claude Sonnet 5 en 2026.

AspectoAgent TeamsSwarm
CoordinaciónTeam Lead centralDistribuida / emergente
ComunicaciónMailbox estructuradoTask list compartida
Escalabilidad3–5 teammatesN agentes (decenas posibles)
DebuggingRelativamente trazableComplejo — emergente

Hooks para Agent Teams

HookEventoExit code 2 =
TeammateIdleTeammate a punto de quedar idleFeedback + mantenerlo trabajando
TaskCreatedTarea siendo creadaPrevenir creación + feedback
TaskCompletedTarea marcada como completaPrevenir completar + pedir revisión

Mejores prácticas (Addy Osmani, 2026)

Protocolo A2A: interoperabilidad cross-vendor

Analogía — TCP/IP de los Agentes

Antes de TCP/IP, cada red era una isla. El protocolo A2A hace lo mismo para agentes: Claude puede hablar con un agente de Microsoft, Google o cualquier sistema compatible, sin importar quién lo construyó.

Abr 2025
Anuncio de Google
Apache-2.0 — estándar abierto
Abr 2026
Linux Foundation
Gobernanza transferida
150+
Organizaciones adheridas
En 1 año de vida

Stack de interoperabilidad

APLICACIÓN / USUARIO
El flujo de trabajo que quiere ejecutar
A2A Protocol — Agent ↔ Agent
Delegación entre agentes autónomos de distintos vendors
MCP Protocol — Agent → Tool
Acceso a herramientas pasivas: bases de datos, APIs
HTTP / Server-Sent Events / JSON-RPC 2.0
Transporte estándar — cualquier lenguaje, cualquier plataforma

MCP vs A2A — diferencia fundamental

AspectoMCPA2A
DirecciónAgente → HerramientaAgente → Agente
El peer esPasivo (provee capacidad)Activo (razona, planifica)
EjemploClaude llama a base de datosClaude delega a agente Microsoft
RelaciónComplementarios — ambos necesarios en sistemas complejos

Componentes técnicos del A2A

ComponenteDescripciónAnalogía
Agent CardJSON en /.well-known/agent.json — skills, auth, SLAsTarjeta de presentación
TaskUnidad de trabajo con estado (submitted/working/completed/failed)Ticket de soporte
MessageComunicación durante una tarea (text, file, data)Comentario en el ticket
ArtifactOutput producido por el agenteEntregable del ticket
Push NotificationsWebhook para updates async sin pollingNotificación automática

Agent Card: ejemplo real

// /.well-known/agent.json — el agente se anuncia al mundo { "name": "SecurityAuditAgent", "description": "Audits code for OWASP Top 10 vulnerabilities", "version": "2.1.0", "url": "https://security.mycompany.com/agent", "skills": [{ "id": "owasp-audit", "name": "OWASP Security Audit", "inputModes": ["text", "file"], "outputModes": ["text", "data"] }], "authentication": { "schemes": ["bearer"] }, "capabilities": { "streaming": true, "pushNotifications": true } }

Ecosistema de protocolos 2026

ProtocoloOrigenPropósitoAdopción
MCPAnthropic (nov 2024)Agent → Tool>5,000 tools, todos los vendors
A2AGoogle (abr 2025)Agent → Agent150+ orgs, Linux Foundation
ACPIBM / BeeAI (2025)REST-based agent commsEmergente
UCPMulti-vendor (2025)Universal Control PlaneExperimental

Frameworks multi-agente comparados

Analogía — Sistemas Operativos

LangGraph, CrewAI y AutoGen son como Windows, Linux y macOS: todos sirven para ejecutar programas con filosofías diferentes. Claude Code es la aplicación que corre sobre cualquiera de ellos. La elección depende del stack existente.

LangGraph
LangChain · Grafos de estado
Flujos complejos con ciclos y estado explícito
✅ Claude vía LangChain Anthropic
CrewAI
Independiente · Role-based
Equipos de agentes con roles definidos — rápido de implementar
✅ Native support
AutoGen
Microsoft · Conversacional
Diálogo multi-agente, negociación entre agentes
✅ Anthropic adapter
Google ADK
Google · Microservices
Stack Google Cloud, integración A2A nativa
✅ Vía A2A protocol
OpenAI Agents SDK
OpenAI · Handoffs nativos
Si ya usas OpenAI — handoffs entre agentes
❌ Solo modelos OpenAI
Claude Agent SDK
Anthropic · Native
Sistemas Claude-first con Skills y MCP
✅ Nativo

Claude Agent SDK vs OpenAI Agents SDK

AspectoOpenAI Agents SDKClaude Agent SDK
ModelosGPT-4o, o3, o1Claude Haiku, Sonnet, Opus
HandoffsNativo (patrón central)Via Task tool o AgentDefinition
Auth providersAzure OpenAI, OpenAI directAnthropic, Bedrock, Vertex, Azure Foundry
Skills estándar❌ Herramientas como funciones✅ SKILL.md estándar abierto
Protocolo inter-vendorEn procesoA2A compatible

Costo de tokens por arquitectura

EscenarioMultiplicador vs. chatCuándo justifica
Agente único con tools3–5×Siempre — overhead mínimo
Subagentes (1 + 3 workers)8–12×>30 min de trabajo manual ahorrado
Agent Teams (5 teammates)15–25×>2h de trabajo especializado
Swarm (10+ agentes)30–50×Trabajo masivo de días
🧮 Regla de ROI: Justifica multi-agente solo si tiempo ahorrado > costo tokens × precio. Para $0.50 en tokens → necesitas ahorrar 5+ minutos de trabajo humano a $100/hora.

Casos reales en producción

🤖 Cognition Devin — "Devin Managing Devins" (marzo 2026)
B — FlowHunt 2026

El arco completo de quien primero rechazó y luego abrazó multi-agente:

FechaHitoResultado
Sep 2024Devin lanza como agente individual$1M ARR
Jun 2025"Don't Build Multi-Agents" — abogando por single-thread$73M ARR (73× en 9 meses)
Mar 2026"Devin can now Manage Devins" — orquestador de múltiples DevinsPatrón orchestrator-workers
📐 Arquitectura final: Coordinador (scope + assign) → N Devins en VMs aisladas (ejecutan) → Coordinador (compila). Lección: Incluso quienes rechazaron multi-agente convergieron al patrón orquestador-workers al escalar.
🐜 Isara — 2,000 agentes coordinando en tiempo real
B — VKTR / MLQ.ai 2026
  • Financiamiento: $94M liderado por OpenAI a valoración de $650M
  • Arquitectura: Swarm puro — sin coordinador central, agentes con reglas locales
  • Demo: ~2,000 agentes coordinándose para forecasting de precios de oro
  • Caso de uso: Inteligencia emergente de coordinación masiva, no superinteligencia individual
🔐 Wiz — 50,000 líneas Python→Go en ~20 horas con agentes paralelos
B — Múltiples fuentes técnicas

Wiz (adquirida por Google por $32B) migró 50,000 líneas Python a Go con múltiples instancias de Claude Code en paralelo, cada una dueña de módulos distintos. Git worktrees para aislamiento completo.

50K
Líneas migradas
~20h
Tiempo total
vs. semanas manual
🔑 Lección: El aislamiento por worktrees fue crítico. Sin ownership claro de archivos, los agentes paralelos habrían colisionado.
📦 Block (Square) — 100+ skills multi-agente, 3× más rápido en incidentes
B — Anthropic customers 2026

Un agente generalista de incident response lanza simultáneamente: skill de logs, skill de alertas, skill de runbooks, skill de comunicación. El orquestador consolida y genera el plan de acción.

100+
Skills internas
Reducción tiempo incidentes
🛡️ Trail of Bits — Threat modeling paralelo por vector de ataque
C — Comunidad seguridad

Un agente por vector de ataque simultáneo: injection, authentication, authorization, cryptography, configuration. Un agente consolidador integra hallazgos y prioriza por severidad.

2–3 días
Review manual por expertos
4–6 horas
Con agentes paralelos
Hallazgos comparables

Árbol de decisión

¿Las tareas son secuenciales o paralelas? │ ├─── SECUENCIALES → Agente único con pipeline de herramientas │ └─── PARALELAS → ¿Cuánta coordinación necesitan entre sí? │ ├─── NULA (solo reportan resultado final) │ └─── Subagentes vía Task tool │ ├─── 1–3 agentes → Task tool directo │ └─── 4+ agentes → Agent Teams o Swarm │ ├─── MEDIA (comparten hallazgos, no deciden juntos) │ └─── Agent Teams │ ├─── 3–5 agentes → Agent Teams nativo (experimental) │ └─── 6+ agentes → LangGraph / CrewAI / AutoGen │ └─── ALTA (se desafían, negocian, auto-coordinan) └─── Swarm Mode ├─── Sin interop cross-vendor → Claude Swarm nativo └─── Con interop cross-vendor → Protocolo A2A + Agent Cards

Cuándo SÍ usar

🔀 Módulos independientes en paralelo 🔍 Investigación multi-ángulo 🐛 Debugging con hipótesis competidoras 🧪 Cross-layer (front + back + tests) 👁️ Code review multi-perspectiva

Cuándo NO usar

⛓️ Dependencias secuenciales fuertes 📄 Edición de los mismos archivos 💰 Tokens muy limitados 🔍 Trazabilidad perfecta requerida 📌 Overhead > beneficio para tareas simples

Limitaciones actuales confirmadas

LimitaciónDescripciónWorkaround
Sin session resumption/resume no restaura teammatesUsar split panes; guardar estado en archivos
Sin anidamiento de subagentesSubagentes no pueden lanzar subagentesOrquestador centralizado siempre
Teammates sin historial del líderEmpiezan solo con CLAUDE.mdContexto explícito en spawn prompt
Skills ignoradas en teammatesCampos skills no se aplican cuando corre como teammateConfigurar skills a nivel proyecto

Honestidad epistémica y fuentes

[A] Verificado — Docs oficiales Anthropic [B] Ampliamente reportado — Múltiples fuentes técnicas [C] Heurística comunitaria — Sin estudio controlado