Pruebas de 36 ejecuciones revelan cómo los cambios de esquema de herramientas derriban distintos marcos de agentes
Un experimento con Strands, LangGraph y CrewAI muestra que una simple renombrar de argumento pasa bien, pero cambiar tipos, eliminar o añadir requisitos provoca fallos silenciosos, crasheos o interrupciones completas.

Si ejecutas agentes con herramientas, siempre llega el día de:
“Necesito cambiar los argumentos de esta herramienta — ¿sobrevivirá el agente?”
Los cambios de esquema son rutina en el desarrollo de agentes. En un experimento previo se comparó a Strands, LangGraph y CrewAI con una tarea idéntica: renombrar el argumento text → content. Todos pasaron.
Para profundizar, el autor dividió los cambios en cuatro niveles de severidad y repitió la medición 36 veces: 3 marcos × 4 niveles × 3 repeticiones.
| Nivel | Acción | Resultado Strands | Resultado LangGraph | Resultado CrewAI |
|---|---|---|---|---|
| rename | text → content | ✅ 3/3 verificado | ✅ 3/3 verificado | ✅ 3/3 verificado |
| type | str → int | ⚠️ 0/3 verificado (silencioso) ❌ 3/3 crash | ❌ 3/3 crash | dead (error JSON → 400 provider) |
| remove | eliminar text | ⚠️ 0/3 verificado (silencioso) ❌ 3/3 crash | ❌ 3/3 crash | silent exit 0 (placeholder aceptado) |
| add | nuevo argumento requerido "note" | ✅ 3/3 verificado | ❌ 3/3 crash | ✅ 3/3 verificado |
¿Qué significa cada fallo?
- Strands: falla silenciosa. El modelo sigue generando el digest, la herramienta devuelve “document not found” o un marcador de posición, y el proceso termina con éxito sin comprobar el conteo de palabras. El consumo de tokens crece de 2.4× en el nivel de tipo.
- LangGraph: error explícito. La llamada a la herramienta se hace dentro de código Python; al cambiar la firma aparece un
TypeErroren el nodo de verificación y la ejecución se detiene. No se produce salida alguna. - CrewAI: falla de ida y vuelta. Al cambiar tipo, la herramienta devuelve un error de parseo JSON y el siguiente request es rechazado con 400, terminando la ejecución. Al eliminar argumento, acepta un placeholder y finaliza sin validar.
El nivel add muestra que si el nuevo argumento está bien descrito y el modelo puede inferirlo a partir del esquema, el agente puede rellenarlo y continuar.
Lecciones prácticas
- Los cambios de tipo y la eliminación de argumentos tienden a causar fallos silenciosos o crasheos, dependiendo del marco. No basta con actualizar la llamada; es necesario revisar el flujo completo.
- Añadir un argumento requerido con una descripción que permita inferencia puede ser una forma viable de extender la funcionalidad sin romper el agente.
- La detección de fallos varía: Strands necesita trazas de ejecución, LangGraph muestra un error explícito, CrewAI puede requerir inspección de logs de provider.
En resumen, el experimento cuantifica cómo cada marco reacciona ante alteraciones de esquema, ofreciendo un mapa de riesgo que ayuda a decidir qué tipo de cambio aplicar y cómo mitigarlo.


