¿Qué es la programación con agentes?

La programación con agentes es un enfoque de desarrollo de software en el que los agentes de IA autónomos planifican, escriben, prueban y modifican el código con una intervención humana mínima. A diferencia de los asistentes de programación de IA tradicionales, que esperan a que el usuario escriba código o haga una pregunta, las herramientas de programación basadas en agentes toman una instrucción de alto nivel y la ejecutan. Estos agentes funcionan más como un contratista cualificado que como un asesor pasivo. Entienden el objetivo, lo dividen en pasos y ejecutan las acciones necesarias para completar el trabajo.

Mientras que las herramientas de IA estándar pueden sugerir fragmentos de código o completar funciones individuales, las soluciones de código de agentes pueden gestionar flujos de trabajo complejos. Pueden navegar por los sistemas de archivos, gestionar dependencias y ejecutar comandos de terminal. Si un agente escribe un código que provoca un error, puede leer el mensaje de error, analizar el problema y aplicar una solución automáticamente. Este cambio de "chatear con la IA" a "asignar tareas a la IA" ayuda a los desarrolladores a centrarse en la arquitectura y la lógica, mientras que el agente se encarga de los detalles de la implementación.

Programación basada en IA con Gemini CLI, la herramienta de programación con agentes de Google para terminales

¿Qué es un agente de programación?

Un agente de programación es un programa de software avanzado basado en un modelo de lenguaje extenso (LLM) que realiza tareas de desarrollo de software de forma autónoma. Estos agentes no solo generan texto, sino que también utilizan un proceso que suele denominarse "razonar y actuar". Cuando se le asigna un objetivo, el agente divide la solicitud en subtareas más pequeñas y manejables. Después, utiliza herramientas específicas para llevar a cabo estas tareas, como acceder al sistema de archivos, ejecutar comandos de Bash o interactuar con sistemas de control de versiones.

La característica que define a un agente de programación es su bucle de retroalimentación iterativo. No se limita a generar código y detenerse. En su lugar, realiza operaciones automatizadas para verificar su trabajo. Por ejemplo, un agente podría escribir un caso de prueba, ejecutar el código, observar un error y, a continuación, reescribir el código para que supere la prueba. Esta capacidad de autocorrección permite a los agentes de programación ayudar a gestionar instrucciones complejas que, de otro modo, podrían confundir a los modelos de IA basados en texto estándar.

Programación con agentes frente a programación intuitiva

La "programación intuitiva" es un término que describe una experiencia de programación caracterizada por un estado de flujo muy fluido, intuitivo y sin distracciones. Se refiere a un método de programación en el que te centras por completo en la lógica y la creatividad (el "ambiente" de la aplicación) sin quedarte atascado por errores de sintaxis o código repetitivo.

Por el contrario, la programación basada en agentes es la metodología tecnológica que suele hacer posible este estado. Es un proceso estructurado y autónomo en el que la IA se encarga de la ejecución. Mientras que la programación intuitiva es el objetivo o la sensación, la programación con agentes es el motor. La "programación intuitiva con agentes" implica usar estos agentes autónomos para encargarse del trabajo pesado, permitiéndote mantener ese estado de flujo creativo sin interrupciones.

Prácticas recomendadas para flujos de trabajo de programación con agentes seguros

Adoptar la programación basada en agentes en un entorno empresarial suele requerir medidas de seguridad y gobernanza más estrictas. Como los agentes tienen técnicamente la autonomía para editar archivos y ejecutar comandos, las organizaciones deben tratarlos con el mismo escrutinio que aplican a sus propios empleados, contratistas o secuencias de comandos automatizadas.

  • Define el alcance y las protecciones: los administradores deben limitar el acceso del agente y evitar que ejecute comandos peligrosos, como eliminar bases de datos o enviar cambios directamente al entorno de producción en directo.
  • Aplicar una gobernanza estricta de las dependencias: los equipos de seguridad deben asegurarse de que los agentes solo puedan instalar software de fuentes fiables y aprobadas para evitar la introducción de dependencias maliciosas o ataques de typosquatting.
  • Exigir pruebas de cumplimiento: las empresas deberían configurar los agentes para que registren sus acciones y procesos de toma de decisiones, creando así un registro de auditoría que demuestre que los cambios en el código cumplen los estándares de cumplimiento.
  • Añade comprobaciones humanas a los flujos de trabajo: antes de que cualquier código creado por un agente de IA se incorpore al proyecto principal, alguien del equipo debería revisarlo mediante el proceso estándar de solicitud de extracción.
  • Usar herramientas de visibilidad empresarial: las empresas pueden usar paneles de control centralizados para monitorizar la actividad de los agentes, las cuotas de uso y las métricas de rendimiento en distintos equipos de desarrollo.
  • Monitorizar nuevas clases de vulnerabilidades: los equipos de seguridad deben estar atentos a los ataques de inyección de peticiones o a las rutas de código "alucinadas" que puedan introducir errores lógicos exclusivos del software generado por IA.
  • Realizar ejercicios controlados de equipo rojo: los profesionales de la seguridad pueden simular ataques en el flujo de trabajo del agente para ver si se le puede engañar para que escriba código no seguro o revele datos sensibles.
  • Realiza pruebas de seguridad por capas: los desarrolladores deben usar herramientas de pruebas de seguridad de aplicaciones estáticas (SAST) y dinámicas (DAST) para analizar automáticamente el código generado por los agentes.
  • Perfeccionar los controles de forma continua: los equipos deben actualizar periódicamente sus políticas de seguridad y las instrucciones (peticiones de sistema) que dan a los agentes de IA, en función de lo que descubran en las comprobaciones y las pruebas.

Ventajas de usar la programación basada en agentes

Aumenta la eficiencia y la escalabilidad

Los agentes pueden encargarse rápidamente de tareas de programación repetitivas, lo que permite a los equipos crear sistemas más grandes sin aumentar el número de empleados.

Automatiza flujos de trabajo complejos de forma autónoma

Un agente puede gestionar procesos de varios pasos, como actualizar una biblioteca en varios archivos, sin necesidad de que un humano le dé instrucciones o le guíe constantemente.

Los desarrolladores pueden centrarse en tareas de alto valor

Al delegar los detalles de la implementación, los ingenieros pueden dedicar su energía mental a la resolución de problemas complejos y a la arquitectura estratégica.

Mejora de la calidad del código y las revisiones de seguridad

Los agentes pueden aplicar de forma coherente guías de estilo y prácticas recomendadas de seguridad que los humanos podrían pasar por alto en ocasiones.

Entrega más rápida de funciones y corrección de errores automatizada

Los agentes pueden identificar la causa raíz de un error y proponer una solución en cuestión de minutos, lo que ayuda a acortar el ciclo de vida de desarrollo.

Reducción de la carga de trabajo de los desarrolladores y mayor concentración en el diseño de alto nivel

Los desarrolladores pueden actuar más como arquitectos, definiendo la estructura, mientras que el agente puede sentar las bases, lo que reduce el agotamiento.

Programación basada en agentes con Google Cloud

Google Cloud ofrece herramientas que admiten el flujo de trabajo de programación con agentes, diseñado para aportar autonomía a tu entorno de desarrollo. El núcleo de esta oferta gira en torno a Gemini CLI, Google Antigravity y Gemini Enterprise, que pueden transformar la forma en que los desarrolladores interactúan con su código base.

Cómo implementa Gemini CLI la programación con agentes

Gemini CLI cambia la dinámica de pedir ayuda a asignar trabajo. Así es como gestiona las tareas de los agentes:

  • Uso de herramientas: el agente puede ejecutar comandos de forma autónoma, como ls, grep y cat. También puede escribir directamente en archivos. En lugar de sugerirte que ejecutes una prueba, ejecuta npm test y lee los registros.
  • Memoria y contexto: admite un archivo GEMINI.md en la raíz de tu proyecto. Este archivo actúa como memoria a largo plazo o como una petición del sistema en la que se definen los estándares de programación, las reglas de arquitectura o las instrucciones específicas de "no hacer esto" que el agente sigue en cada tarea.
  • Autocorrección: si el agente escribe un código que falla en una compilación, ve el mensaje de error en la terminal. Después, analiza por qué se ha producido el error e intenta aplicar otra solución automáticamente.
  • Extensibilidad (MCP): es compatible con el Model Context Protocol (MCP). Esto te permite conectar el agente a fuentes de datos externas, como PostgreSQL, GitHub o Slack, para que pueda obtener contexto de fuera de tu sistema de archivos local.

Casos prácticos de Gemini CLI

Gemini CLI se adapta a la fase del ciclo de vida de desarrollo en la que te encuentres, ofreciendo distintas ventajas tanto si estás creando un proyecto desde cero como si estás manteniendo un código base ya establecido.

Desarrollo de cero (nuevas aplicaciones)

Al iniciar un nuevo proyecto, Gemini CLI puede actuar como un multiplicador de fuerzas para crear prototipos rápidamente y configurar la arquitectura.

  • Andamiaje e inicialización: Puedes indicar al agente que configure una estructura de proyecto completa, incluyendo archivos de configuración, jerarquías de directorios y dependencias iniciales. Por ejemplo, una sola petición puede generar una aplicación de Python Flask con una base de datos conectada y un enrutamiento básico.
  • Reducción de código repetitivo: los desarrolladores pueden asignar al agente la tarea de generar estructuras de código repetitivas, como modelos de datos, endpoints de APIs o lógica de validación de formularios, lo que permite que el responsable humano se centre en la lógica empresarial única.
  • Prototipado rápido: los equipos pueden validar ideas rápidamente describiendo una función en lenguaje natural. El agente puede crear un prototipo funcional, ejecutarlo y hacer iteraciones en él basándose en los comentarios, lo que reduce significativamente el tiempo que transcurre entre el concepto y la demostración.

Modernización de brownfield (aplicaciones antiguas)

En el caso de las aplicaciones antiguas o ya consolidadas, Gemini CLI ayuda a optimizar el mantenimiento, la refactorización y la transferencia de conocimientos.

  • Refactorización y optimización: puedes pedirle al agente que modernice módulos concretos, como convertir archivos JavaScript antiguos a TypeScript o actualizar llamadas a APIs obsoletas. El agente puede leer el código actual, aplicar los cambios solicitados y verificar que la lógica sigue siendo coherente.
  • Generación y cobertura de pruebas: para mejorar la estabilidad, los desarrolladores pueden pedir al agente que analice un archivo y escriba pruebas unitarias exhaustivas. Al hacer referencia a un archivo GEMINI.md con tus convenciones de pruebas, el agente se asegura de que las nuevas pruebas se ajusten a los estándares de tu equipo.
  • Documentación e incorporación: los ingenieros nuevos pueden tener dificultades para orientarse en bases de código grandes. El agente puede analizar directorios para generar documentación actualizada, explicar funciones complejas o crear diagramas de arquitectura, lo que facilita que los equipos comprendan y mantengan el software.

Desarrollo de cero (nuevas aplicaciones)

Al iniciar un nuevo proyecto, Gemini CLI puede actuar como un multiplicador de fuerzas para crear prototipos rápidamente y configurar la arquitectura.

  • Andamiaje e inicialización: Puedes indicar al agente que configure una estructura de proyecto completa, incluyendo archivos de configuración, jerarquías de directorios y dependencias iniciales. Por ejemplo, una sola petición puede generar una aplicación de Python Flask con una base de datos conectada y un enrutamiento básico.
  • Reducción de código repetitivo: los desarrolladores pueden asignar al agente la tarea de generar estructuras de código repetitivas, como modelos de datos, endpoints de APIs o lógica de validación de formularios, lo que permite que el responsable humano se centre en la lógica empresarial única.
  • Prototipado rápido: los equipos pueden validar ideas rápidamente describiendo una función en lenguaje natural. El agente puede crear un prototipo funcional, ejecutarlo y hacer iteraciones en él basándose en los comentarios, lo que reduce significativamente el tiempo que transcurre entre el concepto y la demostración.

Modernización de brownfield (aplicaciones antiguas)

En el caso de las aplicaciones antiguas o ya consolidadas, Gemini CLI ayuda a optimizar el mantenimiento, la refactorización y la transferencia de conocimientos.

  • Refactorización y optimización: puedes pedirle al agente que modernice módulos concretos, como convertir archivos JavaScript antiguos a TypeScript o actualizar llamadas a APIs obsoletas. El agente puede leer el código actual, aplicar los cambios solicitados y verificar que la lógica sigue siendo coherente.
  • Generación y cobertura de pruebas: para mejorar la estabilidad, los desarrolladores pueden pedir al agente que analice un archivo y escriba pruebas unitarias exhaustivas. Al hacer referencia a un archivo GEMINI.md con tus convenciones de pruebas, el agente se asegura de que las nuevas pruebas se ajusten a los estándares de tu equipo.
  • Documentación e incorporación: los ingenieros nuevos pueden tener dificultades para orientarse en bases de código grandes. El agente puede analizar directorios para generar documentación actualizada, explicar funciones complejas o crear diagramas de arquitectura, lo que facilita que los equipos comprendan y mantengan el software.

Google Antigravity: la plataforma centrada en agentes

Google Antigravity supone un cambio de un IDE con un asistente a una plataforma de desarrollo de agentes específica. Gracias a Gemini 3, trata a los agentes de IA como trabajadores principales en lugar de simples ayudantes.

  • Vista de gestión (control de misiones): los desarrolladores pueden usar un panel de control centralizado para crear, coordinar y observar varios agentes que trabajan en paralelo en diferentes espacios de trabajo. Puedes asignar un agente para que investigue la documentación mientras otro refactoriza un código base.
  • Artefactos verificables: en lugar de registros opacos, los agentes de Antigravity generan "artefactos" estructurados, que son registros verificables de sus planes, cambios de código y resultados de pruebas. Esto puede proporcionar transparencia, ya que permite a los desarrolladores auditar el razonamiento del agente y la "prueba de trabajo" rápidamente.
  • Autonomía del navegador y del terminal: los agentes de Antigravity pueden controlar el navegador para realizar verificaciones visuales y ejecutar comandos de terminal complejos, lo que permite completar tareas de principio a fin, incluidas las de despliegue y prueba.

Gemini Enterprise: escalabilidad segura

Para las organizaciones que implementan agentes a gran escala, Gemini Enterprise ayuda a proporcionar la capa necesaria de gobernanza e integración.

  • Protecciones centralizadas: los administradores pueden definir políticas como código que los agentes deben cumplir, lo que garantiza que ningún flujo de trabajo de los agentes infrinja los estándares de cumplimiento o seguridad de la empresa.
  • Fundamentación en conocimientos privados: los agentes pueden fundamentarse en el código base y la documentación privados de tu organización, lo que les permite escribir código que respeta las bibliotecas internas y los patrones arquitectónicos sin filtrar datos.
  • Indemnización y cumplimiento:Gemini Enterprise puede ofrecer indemnización por propiedad intelectual y cumple certificaciones de cumplimiento rigurosas, lo que hace que sea seguro para las grandes empresas adoptar la programación basada en agentes en entornos de producción.

Usar un chatbot de IA frente a un agente de programación

Para entender el potencial de la programación basada en agentes, compara una experiencia de chat de IA estándar con el flujo de trabajo de un agente de Gemini CLI.

Experiencia de chat de IA estándar:

  1. Tú: "¿Cómo puedo añadir un limitador de frecuencia a mi aplicación Express?"
  2. IA: "Aquí tienes un fragmento de código que usa express-rate-limit...".
  3. Tú: Copias el código, abres tu editor, pegas el código y ejecutas el servidor.
  4. Tú: Ves un fallo. Copias el mensaje de error.
  5. Tú: Pegas el error en la IA...

Gemini CLI agéntica:

Tú (en el terminal): Gemini "Añade un limitador de velocidad al servidor usando express-rate-limit y asegúrate de que pase las pruebas".

Gemini CLI:

  • Lee package.json para comprobar las dependencias.
  • Ejecuta npm install express-rate-limit.
  • Edita server.js para importar y configurar el middleware.
  • Ejecuta la prueba de npm.
  • (Si la prueba falla) Lee el registro de errores, vuelve a editar el código y ejecuta la prueba de nuevo.

Resultado final: "Tarea completada. He instalado el paquete y he actualizado server.js. Las pruebas se están pasando".

Cómo obtener Gemini CLI

Gemini CLI es una herramienta de código abierto independiente del SDK de Google Cloud estándar.

Instalación: debes tener instalado Node.js (versión 18 o superior).

  • Bash
Cargando...

Autenticación: ejecuta el comando una vez para iniciar sesión con tu cuenta de Google. No se necesita ninguna clave de API para el nivel gratuito.

  • Bash
Cargando...

Soluciona los retos empresariales que se te presenten con Google Cloud

Los nuevos clientes reciben 300 USD en crédito sin coste para invertirlos en Google Cloud.

Recursos adicionales

Consulta estos recursos para empezar a crear con herramientas basadas en agentes hoy mismo.

  • Repositorio de GitHub de Google Gemini CLI: accede al código fuente, contribuye al proyecto y consulta las últimas notas de la versión del agente de código abierto.
  • Documentación de Gemini CLI: consulta la documentación oficial para ver guías de instalación, referencias de comandos y consejos para solucionar problemas.
  • Codelab de Gemini CLI: sigue un tutorial paso a paso para instalar Gemini CLI y completar tus primeras tareas de programación con agentes.
  • Presentamos Gemini CLI: lee el anuncio de lanzamiento para entender la visión que hay detrás de la herramienta y su papel en el ecosistema de programación con agentes.

Ve un paso más allá

Empieza a crear en Google Cloud con 300 USD en crédito sin coste y más de 20 productos Always Free.

Google Cloud