Este es el primer post que escribo sobre inteligencia artificial, ni en blogs anteriores, ni en el canal de Youtube, ni en mis redes sociales, me he prodigado mucho hablando de IA. No es que no me gustase, pero en general había exceso de información y sobre todo de Hype.

Esto sigue igual, pero desde hace unos meses empecé a usar Amazon Q Developer CLI y más recientemente Kiro, y la verdad es que me apetece hablar de estas herramientas.

Aunque he usado muchas herramientas de IA y modelos para mejorar mi día a día. Para mí tanto Amazon Q Developer CLI como Kiro son un Game Changer en la industria y esto es debido a la revolución de los Agentes de IA.

Ya sé que está muy utilizado lo de revolución de la IA y que muchos estamos cansados de escucharlo cada 5 minutos, pero sin ese gancho es difícil que leáis el artículo, aun así voy a intentar explicaros un poco en qué consiste esto de los agentes y por qué, en mi opinión, es algo que está cambiando nuestro día a día.

Este artículo va a estar dividido en 2 partes, en esta primera vamos a hablar un poco más de qué es esto de los Agentes y en la segunda nos centraremos sobre Q Developer CLI y Kiro.

En este Post vamos a ver:

  • Qué son los agentes de IA y cómo difieren de los modelos tradicionales
  • El paradigma del “Agentic Loop” y su impacto revolucionario
  • Model Context Protocol (MCP): La clave de la integración
  • Strand Agents: Framework para agentes individuales potentes
  • Por qué esta evolución cambia fundamentalmente la IA.

De Modelos a Agentes

Models vs Agents

Pregunta-Respuesta

Si habéis usado en este tiempo ChatGPT, Claude, Gemini, Copilot, Perplexity, DeepSeek, el modelo de funcionamiento tenía un patrón simple: le pedías algo y contestaba directamente.

  1. Usuario hacía una pregunta
  2. El Modelo procesaba la pregunta y respondía
  3. Fin de la interacción

Este modelo, aunque útil, tenía limitaciones fundamentales:

  • Pasividad: La IA sólo respondía cuando se le preguntaba
  • Contexto limitado: Cada interacción era independiente, podíamos darle un contexto, pero no era tan completo
  • Sin persistencia: En cada nueva sesión teníamos que cargar nuestro contexto
  • Sin acción: Solo proporcionaban información, no ejecutaban nada en nuestros equipos

Es verdad que en los últimos años estos modelos han ido evolucionando y han ido ganando profundidad, haciendo pequeños loops, que han mejorado su respuesta.

Los Agentes de IA

Los agentes de IA representan una evolución increíble:

  1. Proactividad: Pueden iniciar acciones sin necesidad de que lo pidamos explícitamente (también los podemos limitar, para que no ejecuten cosas que no queremos)
  2. Persistencia: Mantienen contexto y memoria a largo plazo
  3. Autonomía: Pueden tomar decisiones y ejecutar tareas complejas
  4. Integración: Se conectan con sistemas externos y herramientas
  5. Aprendizaje continuo: Mejoran con cada interacción

Además de esto, podemos utilizar agentes especializados, de forma que sean mucho más óptimos a la hora de ejecutar ciertas tareas. Incluso es algo muy bueno a la hora de reducir los modelos: en vez de utilizar modelos gigantescos, podemos usar modelos destilados, más pequeños pero mucho más optimizados para las tareas del agente.

Por ejemplo, un agente de optimización de recursos solo tiene que saber de ese contexto, no requiere un conocimiento profundo en otras materias, algo que es común en un LLM.

También es posible utilizar diferentes modelos por cada agente, lo que permite usar el mejor modelo para cada propósito.

Esto nos permite tener múltiples agentes coordinados que ejecuten pequeñas tareas y un orquestador que junte todo y ejecute tareas sumamente complejas.

¿Qué es un Agentic Loop?

Agentic Loop

El Agentic Loop es el concepto fundamental de lo que estamos hablando y es la mayor diferencia con el modelo tradicional.

Es un ciclo continuo y autónomo que permite a la IA operar de forma independiente, tomar decisiones y ejecutar acciones sin intervención humana constante.

Es decir, en base a algo que le pedimos, los agentes van interaccionando para llegar a una respuesta correcta, incluso son capaces de remediar errores que se produzcan a mitad de loop.

Ejemplo de Arquitectura de Agentic Loop

No existe un solo tipo de Agentic Loop, de hecho hay muchos, pero vamos a poner un ejemplo bastante habitual:

Percepción → Planificación → Acción → Evaluación → Aprendizaje → Percepción…

1. Percepción (Perception)

  • Análisis del entorno: El agente examina el contexto actual, incluyendo datos que carguemos, estado del entorno y objetivos pendientes
  • Identificación de cambios: Detecta modificaciones en el entorno que requieren atención
  • Procesamiento multimodal: Integra información de múltiples fuentes (aquí podemos llamar a herramientas externas y otros agentes)

2. Planificación (Planning)

  • Definición de objetivos: Establece metas específicas basadas en el contexto detectado
  • Descomposición de tareas: Divide una tarea compleja en múltiples tareas sencillas
  • Optimización de recursos: Planifica el uso eficiente de las herramientas a su disposición
  • Gestión de dependencias: Identifica prerrequisitos y secuencias necesarias

3. Acción (Action)

  • Ejecución de tareas: Realiza las tareas planificadas
  • Interacción con herramientas: Utiliza APIs, ejecuta comandos, modifica archivos, etc.
  • Comunicación: Interactúa con otros sistemas o agentes (MCP o Strands)
  • Monitorización: Supervisa el progreso durante la ejecución

4. Evaluación (Evaluation)

  • Análisis de resultados: Compara los resultados obtenidos con los objetivos esperados
  • Detección de errores: Identifica fallos o desviaciones del plan de tareas
  • Medición de eficiencia: Evalúa el rendimiento y uso de recursos
  • Validación de calidad: Verifica que los resultados cumplan los requisitos definidos

5. Aprendizaje (Learning)

  • Actualización de conocimientos: Incorpora nuevos aprendizajes al contexto
  • Refinamiento de estrategias: Mejora los enfoques basándose en los resultados
  • Adaptación de patrones: Ajusta comportamientos para situaciones similares futuras
  • Memoria persistente: Almacena experiencias para referencias futuras

Este modelo es infinito, es decir, le pedimos una tarea y va a repetir el loop tantas veces como sea necesario. Es verdad que si tiene algún bloqueo, los loops están diseñados para que, si no se avanza, romperlo y devolvernos el error.

La gran ventaja de este modelo es que es iterativo, es decir, va iterando acciones hasta que encuentra la respuesta correcta.

Ejemplo Práctico del Agentic Loop

Vamos a ver un ejemplo real de Amazon Q Developer CLI que utiliza este modelo.

Tengo un Problema, he levantado una máquina en AWS en la cuenta xxx y necesito acceder a ella por SSM, pero no consigo que funcione, haz todo lo necesario para solucionarlo

Ciclo 1:

  • Percepción: Analiza la configuración de AWS e identifica problemas de configuración.
  • Planificación: Decide revisar que tiene acceso a AWS.
  • Acción: Lista los perfiles configurados en local.
  • Evaluación: Revisa que tiene acceso a AWS.
  • Aprendizaje: Conoce el perfil del AWS CLI para ejecutar las acciones.

Ciclo 2:

  • Percepción: Analiza si SSM está configurado.
  • Planificación: Decide revisar si el rol de SSM está configurado en la máquina.
  • Acción: Ejecuta un describe-instance para revisar la configuración.
  • Evaluación: La máquina tiene el Rol de SSM configurado.
  • Aprendizaje: El problema no es del rol de la instancia, debe ser de comunicaciones.

Ciclo 3:

  • Percepción: Puede existir un problema de comunicaciones con los endpoints de SSM.
  • Planificación: Decide revisar la configuración de la subnet donde está desplegada la instancia.
  • Acción: Ejecuta un describe-route-tables de la tabla de rutas de la subnet.
  • Evaluación: La instancia está en una subnet privada.
  • Aprendizaje: El problema está aquí, la instancia no tiene forma de llegar a los endpoints de SSM.

Ciclo 4:

  • Percepción: Es necesario desplegar los endpoints de SSM.
  • Planificación: Decide crear los endpoints de SSM en la subnet donde está la instancia.
  • Acción: Ejecuta un create-vpc-endpoint por cada endpoint de SSM, desplegándose en la subnet indicada.
  • Evaluación: Los endpoints son necesarios para que SSM funcione.
  • Aprendizaje: El problema debería estar resuelto; hemos permitido la comunicación con los endpoints.

Ciclo 5:

  • Percepción: Hay que revisar que SSM esté operativo.
  • Planificación: Decide revisar el estado de SSM.
  • Acción: Ejecuta un describe-instance-information para ver el estado de SSM.
  • Evaluación: El agente está operativo y reporta.
  • Aprendizaje: El problema ya está resuelto, la instancia es accesible por SSM.

Este es un ejemplo pequeño y simplificado, realmente hay más pasos y en algunos casos es necesaria nuestra intervención. Lo normal (si no hubiésemos dicho que hiciese todo lo necesario para resolverlo) es que cuando detectase el problema nos diese varias alternativas para solucionarlo.

Por qué es algo que cambia la IA

  1. Autonomía Real: Los agentes pueden trabajar independientemente durante horas o días
  2. Mejora Continua: Cada ciclo hace al agente más eficiente
  3. Adaptabilidad: Se ajusta dinámicamente a cambios en el entorno
  4. Escalabilidad: Puede manejar múltiples tareas simultáneamente
  5. Persistencia: Mantiene el contexto y progreso a largo plazo

Diferencias Clave con el Modelo Anterior

Aspecto Modelo Tradicional Agentic Loop
Iniciativa Reactivo Proactivo
Duración Interacción única Proceso continuo
Memoria Sin persistencia Memoria a largo plazo
Capacidad Solo respuestas Ejecución de tareas
Aprendizaje Estático Dinámico y continuo
Integración Limitada Extensiva con herramientas

Model Context Protocol (MCP)

MCP

Hasta ahora hemos hablado de agentes, pero muchas veces necesitamos cosas más concretas o incluso conectarnos con herramientas de terceros; aquí es donde entra MCP.

¿Qué es MCP?

El Model Context Protocol (MCP) es el estándar abierto desarrollado por Anthropic que hace posible la revolución Agentic. Es el protocolo que permite a los agentes de IA integrarse de forma nativa con cualquier herramienta, API, servicio o sistema. Es un estándar abierto que permite que cualquiera genere sus propios MCP y permita la integración con otros sistemas.

A mí este modelo me encanta, porque en vez de una apuesta por un modelo propietario, en este caso se ha ido directo a un modelo Open Source que permite la integración de cualquier agente independientemente del LLM que use, quien lo desarrolle o quién sea su consumidor objetivo.

Esto es algo que no ha sido habitual en la industria, lo normal es que cada compañía diseñe su propia integración propietaria y que fuerce al resto a usarla.

Arquitectura de MCP

Componentes Principales

1. MCP Servers

  • Proporcionan herramientas específicas a los agentes
  • Pueden ser servicios AWS, otro Cloud, APIs de terceros o herramientas locales, etc.
  • Exponen capacidades de forma estandarizada

2. MCP Clients

  • Los agentes de IA que consumen las herramientas
  • Amazon Q Developer CLI y Kiro son ejemplos de clientes MCP

3. Protocol Layer

  • Capa de comunicación estandarizada
  • Garantiza interoperabilidad entre diferentes sistemas
  • Maneja autenticación, autorización y gestión de errores

MCP en la Práctica

Qué podemos hacer con un MCP

Básicamente cualquier cosa, para que os hagáis una idea, yo uso múltiples MCPs en mi día a día.

Uso MCPs que me permiten acceder a ficheros locales de mi PC, por otro lado, uso MCPs que leen la documentación de AWS, otros que me ayudan con el diseño de ciertos servicios e incluso algunos específicos de Terraform, pero las posibilidades son infinitas.

Además, desarrollar un MCP no es excesivamente complejo y nos permite que nosotros mismos podamos generar MCPs; asimismo, podemos ir iterando y mejorando nuestros propios MCPs con el tiempo.

Ejemplo Práctico: Configuración de MCP Server

Un ejemplo de cómo configurar un MCP server básico para acceder a la documentación de AWS:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
{
  "mcpServers": {
    "aws-docs": {
      "command": "uvx",
      "args": ["awslabs.aws-documentation-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR"
      },
      "disabled": false,
      "autoApprove": ["search_documentation", "read_documentation"]
    },
    "filesystem": {
      "command": "uvx",
      "args": ["mcp-server-filesystem", "--path", "/workspace"],
      "disabled": false,
      "autoApprove": ["read_file", "list_directory"]
    }
  }
}

Este archivo de configuración permite a cualquier agente MCP acceder tanto a la documentación de AWS como al sistema de archivos local de forma estandarizada.

Además, está configurando que estas herramientas de lectura estén preaprobadas.

Ventajas de MCP

  1. Interoperabilidad: Cualquier agente puede usar cualquier MCP server
  2. Extensibilidad: Fácil agregar nuevas capacidades sin modificar el agente
  3. Reutilización: Los MCP servers se pueden compartir entre diferentes proyectos
  4. Estandarización: Protocolo común que facilita el desarrollo y mantenimiento

Strand Agents

Strands Agents

Además de los MCP, existe otro framework muy interesante que es Strand Agents. Mientras que MCP se centra en la integración de herramientas individuales, Strand Agents se centra más en la propia creación de los agentes, así como en su orquestación, en integrar múltiples agentes, en permitir la persistencia de estados y contextos, etc.

¿Qué es Strand Agents?

Strand Agents es un SDK simple pero potente desarrollado por Amazon que adopta un enfoque basado en modelos para construir y ejecutar agentes de IA. Desde asistentes conversacionales más habituales (lo típico en IA) hasta flujos de trabajo autónomos complejos, permite orquestar desde un desarrollo en local hasta el despliegue en producción de la aplicación.

Características Principales del Framework

  • Ligero pero muy flexible: Permite desde un bucle de agente muy sencillo, pero que es completamente personalizable
  • Agnóstico: Tiene soporte para utilizar Amazon Bedrock y también modelos propios de Anthropic, LiteLLM, Llama, Ollama, OpenAI, Writer y proveedores personalizados
  • Capacidades Avanzadas: Permite implementar sistemas multiagente, agentes autónomos y soporte de streaming
  • MCP Integrado: Tiene soporte nativo para servidores Model Context Protocol (MCP), permitiendo acceso a miles de herramientas preconstruidas

Arquitectura de Strand Agents

Componentes Principales

1. Agent Core

  • Motor de razonamiento basado en LLM que procesa las peticiones del usuario
  • Gestión automática del ciclo de vida del agente (inicialización, ejecución, finalización)
  • Soporte para múltiples proveedores de modelos de forma intercambiable

2. Tool System

  • Sistema de herramientas nativo usando decoradores Python
  • Hot reloading automático desde directorios de herramientas
  • Integración nativa con servidores MCP para acceso a herramientas externas

3. Session Management

  • Persistencia automática de conversaciones y estado del agente
  • Soporte para almacenamiento local (FileSessionManager) y en la nube (S3SessionManager)
  • Gestión inteligente de contexto con estrategias configurables

4. Multi-Agent Orchestration

  • Coordinación de múltiples agentes especializados trabajando juntos
  • Comunicación entre agentes para resolver tareas complejas
  • Distribución automática de tareas según las capacidades de cada agente

El Poder de Strand Agents en la Práctica

Capacidades Avanzadas

Structured Output

  • Obtención de respuestas estructuradas usando modelos Pydantic
  • Validación automática de tipos y esquemas
  • Integración perfecta con sistemas de datos existentes

Sistema de Hooks Extensible

  • Callbacks configurables en diferentes puntos del ciclo de vida del agente
  • Modificación de comportamiento sin cambiar el código core
  • Monitorización y logging avanzado de las operaciones

Observabilidad Completa

  • Métricas detalladas de cada ejecución del agente
  • Trazas completas del proceso de razonamiento
  • Información sobre tokens usados, tiempo de ejecución y herramientas utilizadas

Ventajas de Strand Agents

Ventajas del Ecosistema Strand Agents

  1. Simplicidad: API basada en Python que permite desarrollar agentes de forma simple
  2. Flexibilidad: Soporte para múltiples proveedores de modelos y herramientas personalizadas
  3. Escalabilidad: Desde agentes simples hasta sistemas multiagente complejos
  4. Observabilidad: Métricas y trazas completas para debugging y optimización
  5. Persistencia: Gestión automática de estado y sesiones a largo plazo
  6. Integración: Soporte nativo para MCP y ecosistema de herramientas extenso

Combinando MCP con Strand Agents

Una de las cosas más interesantes de este enfoque es que podemos utilizar Strand Agents con MCP de forma que tengamos una orquestación de agentes y herramientas brutal.

  • MCP proporciona la integración estándar con herramientas
  • Strand Agents proporciona el framework robusto para crear agentes potentes
  • Combinándolos nos permiten crear un ecosistema completo para agentes empresariales.

Esta combinación permite crear agentes mucho más complejos, pero además orquestar estos Strand Agents y MCPs de forma que tengamos una solución mucho más optimizada, además de poder gestionar estados, contextos, etc.

Recursos Adicionales

Si queréis profundizar en estos conceptos, aquí tenéis algunos enlaces útiles:

MCP (Model Context Protocol)

Strand Agents

Herramientas Mencionadas

Conclusión de la Primera Parte

Al principio del artículo comentaba que otras veces no me apetecía escribir sobre IA, no porque no me pareciese interesante, sino porque había demasiado hype y creo que nos saturaba mucho.

Pero este cambio con el modelo Agentic no es solo una mejora incremental en el modelo de IA.

Estamos en un momento muy importante porque estas dos tecnologías juntas nos han dado dos herramientas en AWS que no hay palabras para describirlas como son Amazon Q Developer CLI y Kiro, que han venido a cambiar cómo trabajamos hasta ahora.


En la segunda parte explicaremos cómo Amazon Q Developer CLI y Kiro están aplicando estos conceptos para revolucionar el desarrollo de software, y qué significa esto para el futuro de nuestra industria.

👉 Próximo: “Kiro y Amazon Q Developer CLI: La revolución Agentic en nuestro día a día”