Anthropic dispone de Claude Managed Agents, una plataforma que promete cambiar la forma en que los desarrolladores construyen sistemas de IA autónomos. En este artículo te explico desde cero qué es, en qué se diferencia de lo que probablemente ya tienes, y cómo empezar a usarlo, con ejemplos concretos.
El punto de partida: cómo construimos con IA hoy
La mayoría de aplicaciones que integran IA funcionan con el mismo patrón: el usuario hace algo, tu código llama a una API de IA (OpenAI, Anthropic, Mistral...), recibes una respuesta y haces algo con ella.
Por ejemplo, en una aplicación de procesamiento de audio el flujo típico sería:
Usuario sube un archivo de audio
↓
Tu backend recibe el archivo
↓
Tu código llama a Whisper → espera la transcripción
↓
Tu código guarda el texto en la base de datos
↓
Tu código genera embeddings para búsqueda semántica
↓
Tu código indexa los vectores en pgvector
↓
Listo
Tú has programado cada flecha. Cada paso, cada gestión de errores, cada reintento, cada actualización de estado. Eso puede ser cientos de líneas de código de orquestación que no aportan lógica de negocio, solo fontanería.
Qué es un agente de IA
Antes de hablar de Managed Agents, hay que entender qué es un agente.
Un agente es un programa que puede tomar decisiones por sí solo para completar una tarea, usando herramientas. La diferencia con una llamada normal a una API de IA es fundamental:
Llamada normal a Claude:
Tú envías un mensaje → Claude devuelve una respuesta → fin
Agente con Claude:
Tú defines una tarea → Claude decide qué herramientas usar → ejecuta → ve los resultados → decide el siguiente paso → ejecuta → ... → tarea completada
La analogía más clara: es la diferencia entre darle instrucciones paso a paso a un becario, versus contratarlo, explicarle el objetivo y dejar que él organice su trabajo.
Qué es Claude Managed Agents
Es la infraestructura de Anthropic para ejecutar agentes sin que tengas que montar tú la maquinaria. Ellos se encargan de:
- El servidor donde corre el agente
- Que no pierda el estado aunque la tarea dure horas
- La seguridad y los límites de lo que el agente puede hacer
- Los reintentos automáticos si algo falla
- El streaming de progreso en tiempo real
Sin Managed Agents, si quisieras un agente tendrías que construir tú el bucle de ejecución, la gestión de estado, el sandbox seguro, etc. Con Managed Agents, todo eso está resuelto.
El coste es de $0.08 por hora de sesión, más el coste normal de tokens de Claude. Para tareas que duran minutos, estamos hablando de fracciones de céntimo por sesión.
Los tres elementos que defines para cada agente
Un agente en Managed Agents se compone de tres piezas:
1. El Agente (quién es y qué puede hacer)
json
{
"name": "Procesador de documentos",
"model": "claude-sonnet-4-6",
"system": "Eres el procesador de documentos de la plataforma.
Cuando recibas un archivo de audio:
1. Transcríbelo con la herramienta transcribe_audio
2. Guarda el resultado con save_to_database
3. Genera los embeddings con generate_embeddings
Si falla algún paso, reintenta hasta 3 veces.
Reporta el progreso tras cada paso.",
"tools": [...]
}
Lo creas una sola vez y guardas su ID. El system prompt es el mecanismo principal de ajuste: ahí defines el comportamiento, el orden de las tareas y las decisiones que puede tomar de forma autónoma.
2. El Entorno (dónde corre)
python
environment = client.beta.environments.create(
name="produccion",
config={
"type":"cloud",
"networking":{"type":"restricted"},
"env_vars":{
"INTERNAL_API_KEY":"tu-clave-interna"
}
}
)
El entorno define el contenedor donde ejecuta el agente: qué paquetes tiene instalados, a qué URLs puede acceder, qué variables de entorno están disponibles.
3. La Sesión (cada trabajo concreto)
python
# Cuando un usuario desencadena una tarea:
session = client.beta.sessions.create(
agent=AGENT_ID,
environment_id=ENVIRONMENT_ID
)
client.beta.sessions.send_event(
session_id=session.id,
event={
"type":"user.message",
"content":"Procesa el archivo audio_123.mp3 del usuario 456"
}
)
Cada vez que hay trabajo que hacer, abres una sesión. El agente la ejecuta de forma autónoma y tú recibes eventos SSE de progreso.
La pregunta clave: ¿cómo accede el agente a mis datos?
Esta es la parte que más confunde. El agente no se conecta solo a tu base de datos ni a tus archivos. No tiene acceso mágico a tu infraestructura.
La arquitectura correcta es que el agente llame a tu propia API:
Agente (servidores de Anthropic)
↕ HTTPS con token interno
Tu API (tu servidor)
↕
Tu base de datos + tus archivos
El agente usa tus endpoints como herramientas. Por ejemplo:
python
herramientas = [
{
"name":"transcribe_audio",
"description":"Transcribe un archivo de audio y devuelve el texto",
"input_schema":{
"file_path":"string",
"user_id":"integer"
}
},
{
"name":"save_to_database",
"description":"Guarda la transcripción en la base de datos",
"input_schema":{
"text":"string",
"user_id":"integer",
"metadata":"object"
}
}
]
Cuando el agente "usa" una herramienta, Anthropic envía una petición a un endpoint tuyo, que ejecuta la lógica real. Tus claves de OpenAI, tu conexión a PostgreSQL, tus archivos, nunca salen de tu servidor.
Qué cambia respecto a lo que tienes hoy
Volvamos al ejemplo de la aplicación de procesamiento de audio. Antes:
transcriptions.py
→ llama a openai_service.py (Whisper)
→ llama a indexing.py (embeddings + pgvector)
→ llama a llm_service.py (genera resumen)
→ gestiona el estado y los errores de todo esto
Con Managed Agents:
transcriptions.py
→ lanza una sesión del AgenteProcesador
→ el agente orquesta todo internamente
→ recibe SSE de progreso
Los archivos openai_service.py, indexing.py y llm_service.py no desaparecen, siguen existiendo. Lo que desaparece es el código de orquestación que los une: la secuencia hardcodeada, los reintentos manuales, la gestión de estado. Todo eso lo asume el agente.
El beneficio más importante: cambiar el comportamiento sin desplegar código
Hoy, si quieres añadir un paso al pipeline de procesamiento (por ejemplo, detectar el idioma antes de transcribir), tienes que:
- Editar Python
- Hacer build
- Subir los archivos al servidor
- Reiniciar el servicio
Con un agente, editas el system prompt y ya está. El agente adapta su comportamiento sin tocar código.
Esto es especialmente valioso para flujos complejos con múltiples llamadas a LLM encadenadas, donde la lógica de "qué hacer si el resultado no es suficientemente bueno" es difícil de codificar en Python pero muy natural de expresar en lenguaje natural.
El modo de coordinación: agentes que delegan en otros
Una de las funcionalidades más potentes es que un agente puede lanzar subagentes. Imagina esta arquitectura:
Agente Orquestador
├── Agente Transcriptor → se especializa en audio
├── Agente Indexador → se especializa en embeddings
├── Agente Resumidor → se especializa en informes
└── Agente Revisor → se especializa en control de calidad
El orquestador recibe la tarea y delega en el especialista adecuado según el tipo de archivo, el idioma, el tipo de contenido, etc. Cada subagente puede ejecutar en paralelo. Algo que con código Python requeriría threading, colas y gestión de estado compleja, con Managed Agents es configuración.
Qué necesitas tener en tu proyecto para aprovecharlo
La conclusión más importante de todo esto: Claude Managed Agents no funciona bien si tu proyecto no tiene una API bien estructurada.
El agente necesita herramientas con las que trabajar, y esas herramientas son tus endpoints. Cuanto mejor definida esté tu API (endpoints claros, bien nombrados, con comportamiento predecible), más efectivo será el agente.
Esto no es una limitación de Managed Agents, es una buena práctica general. Una API bien estructurada es el activo más valioso de cualquier producto de software moderno, no solo para agentes, sino también para:
- Apps móviles
- Integraciones con herramientas de terceros (Zapier, Make, etc.)
- Webhooks y automatizaciones
- Que otros desarrolladores construyan sobre tu plataforma
Si tu proyecto tiene una API clara y coherente, ya tienes el 80% del trabajo hecho para integrar Managed Agents.
Cuándo tiene sentido adoptar Managed Agents
Tiene sentido si:
- Tienes flujos con 3 o más llamadas a APIs de IA encadenadas
- Necesitas reintentos y gestión de errores robusta
- Los pipelines pueden tardar minutos o más
- Quieres poder cambiar el comportamiento sin desplegar código
No tiene sentido (todavía) si:
- Tu integración con IA es una sola llamada para generar texto
- Tienes un equipo pequeño y preferís estabilidad a novedad
- Estás en fases tempranas y no sabes aún cómo usarás la IA
Estado actual y recomendación práctica
La documentación de Managed Agents está creciendo, puede haber cambios en la API y los ejemplos para stacks específicos son todavía escasos.
Sí empieza a experimentar con el SDK en un proyecto paralelo o en el flujo más complejo y doloroso que tengas, ese donde tienes más código de orquestación y más gestión de errores manual. Ese es el candidato perfecto para una primera prueba.
La documentación oficial está en platform.claude.com/docs.