00:00:00GitHub acaba de lanzar una herramienta muy interesante. Se llama "agentic workflows" y su objetivo es simplificar
00:00:05la gestión del flujo de CI/CD al permitir orquestar flujos de trabajo mediante programación
00:00:12en lenguaje natural. Es una idea genial que podría modernizar la forma en que mantenemos y moderamos
00:00:18nuestros repositorios. En este vídeo, analizaremos de cerca cómo funcionan estos flujos de trabajo
00:00:24y te enseñaré a configurarlos en tu propio repositorio. Va a ser muy divertido,
00:00:28así que vamos a ello.
00:00:30GitHub Agentic Workflows es un nuevo proyecto de GitHub Next y Microsoft Research como parte de
00:00:40una visión más amplia que llaman "Inteligencia Artificial Continua". El objetivo es ir más allá de la automatización básica
00:00:47hacia un concepto que denominan "Ambigüedad Productiva". La idea es que las GitHub Actions tradicionales son deterministas.
00:00:54Si ocurre X, se hace Y. Pero tareas como clasificar un error, actualizar documentación
00:01:00o detectar fallos de arquitectura requieren cierto criterio. Los flujos de trabajo de agentes permiten
00:01:06describir ese criterio en un simple Markdown y ejecutarlo. Pero eso también significa que
00:01:11deben existir límites de control, por lo que se adopta un enfoque centrado en las acciones.
00:01:16Básicamente, hereda todo el ecosistema de GitHub Actions, como registros visibles para el equipo, gestión de secretos
00:01:23y permisos auditables. Así, obtienes la inteligencia de un agente con las protecciones
00:01:29de un flujo de CI/CD estándar. Estos agentes funcionan con permisos mínimos por defecto, lo que significa que
00:01:35pueden analizar el código y sugerir mejoras, pero no pueden realizar operaciones de escritura sin
00:01:41una aprobación explícita mediante rutas predefinidas y seguras. Básicamente, la idea es crear
00:01:46un asistente de IA para DevOps pero con medidas de seguridad. Y configurarlo es sumamente
00:01:52sencillo. Solo tienes que añadirlo usando la extensión de la CLI de GitHub y listo.
00:01:57El flujo de trabajo consta de un proceso de dos pasos. Primero, creas un archivo Markdown con las
00:02:03instrucciones para tu agente, luego ejecutas "gh-aw-compile" en ese archivo, y el sistema lee
00:02:10tus instrucciones en lenguaje natural y las transforma en un flujo de GitHub Actions robusto y seguro,
00:02:16almacenado en un archivo ".log.yaml" específico. Luego subes esos cambios a tu repo y el
00:02:22agente se activa automáticamente. Hagamos una pequeña demostración para ver cómo funciona. Aquí
00:02:29he creado un proyecto vacío y primero voy a crear un archivo Python sencillo con algunas
00:02:34variables de datos por ahora. Volveremos a este archivo en un momento, pero por ahora es todo lo que necesitamos.
00:02:39Ahora necesitamos crear una carpeta ".github" y luego una subcarpeta "workflows" dentro de ella. Y
00:02:46asegúrate de seguir esta convención de nombres para que Agentic Workflows sepa dónde buscar al
00:02:51compilar los archivos Markdown. Creemos un archivo Markdown llamado "agent.md". Este archivo
00:02:57consta básicamente de dos partes. La primera es el encabezado donde especificas qué permisos tendrá el agente.
00:03:03También debes especificar qué proveedor de IA vas a utilizar. En mi caso, usaré
00:03:09Copilot. Todo lo que sigue es de interpretación libre. Simplemente usas lenguaje natural
00:03:15para describir lo que el agente debe hacer. En esta demo, crearé este "auditor Big O" cuyo trabajo
00:03:21es revisar los commits, calcular la complejidad Big O de cualquier código nuevo y, si es ineficiente,
00:03:27identificar y sugerir una mejor forma de optimizarlo. También le pediré que muestre los resultados
00:03:33en una tabla en formato Markdown para una revisión rápida. Ahora volveré al directorio raíz y ejecutaré
00:03:38"gh-aw-compile". Si todo es correcto, recibiremos un mensaje indicando que hemos compilado
00:03:45un nuevo flujo de trabajo. Si observamos ahora nuestro árbol de archivos, verás que tenemos un archivo
00:03:51".log.yaml", compilado automáticamente por el script, y también una nueva carpeta llamada "aw",
00:03:57que contiene un archivo de registro de GitHub Actions. Ya podemos subir estos cambios a nuestro repositorio. Lo
00:04:03último que debes hacer es configurar la clave de API del proveedor de IA elegido como un secreto, para que
00:04:10Agentic Workflows pueda acceder a ella. Como elegí Copilot como motor, proporcionaré aquí mi token de GitHub Copilot.
00:04:15Ahora que todo está listo, subiré todos estos cambios a GitHub. En este punto, el
00:04:21flujo de trabajo del agente debería estar listo para activarse. Dado que configuré mi flujo para
00:04:26que se active con cualquier nueva pull request, vamos a crear una para probarlo.
00:04:32Crearé una nueva rama en mi repositorio. En esta rama, añadiré una nueva función
00:04:37a nuestro archivo "main.py" que buscará registros coincidentes. Pero escribiré esta función
00:04:44deliberadamente con una complejidad Big O muy ineficiente de O(n²). Si abro una pull request con este código,
00:04:50nuestro agente debería identificar que la función es ineficiente y sugerir mejoras. Así que
00:04:56probémoslo ahora. He añadido el código, subido los cambios y, de vuelta en GitHub, abramos una
00:05:02nueva pull request. Verás que en cuanto abra la solicitud, el flujo de Agentic Workflows
00:05:08se activará inmediatamente y empezará a procesar nuestros cambios de código. El proceso tardó
00:05:13aproximadamente tres minutos en terminar. Y ahora vemos que nuestro auditor Big O ha identificado,
00:05:20efectivamente, nuestra función como ineficiente. Nos da una explicación detallada del porqué con una tabla bien
00:05:26formateada, como pedí, seguida de una sección donde propone una solución mejor. Y fíjate,
00:05:33incluso calcula el impacto en el rendimiento que ganaríamos al implementar la solución optimizada. Espero que
00:05:39este ejemplo demuestre cómo, con una configuración mínima, podemos usar Agentic Workflows para añadir
00:05:44controles de seguridad adicionales a nuestra base de código. Aquí es donde entra en juego la ambigüedad productiva:
00:05:51podemos pedir al agente que use su criterio para resolver objetivos de alto nivel, como mantener la calidad y el rendimiento.
00:05:56Obviamente, esto sigue siendo un prototipo de investigación de GitHub Next, por lo que es probable que
00:06:01haya algo de latencia. Y definitivamente sigues necesitando a un humano para verificar las comprobaciones finales.
00:06:07Pero esta es la visión más amplia de la IA continua, donde aprovechamos el poder de los agentes de IA
00:06:14para monitorizar y gestionar nuestros flujos de CI/CD de forma autónoma. Y hablando de sistemas autónomos,
00:06:19si gestionas entornos de producción, sabes que mantener todo funcionando sin problemas es un trabajo
00:06:25de 24 horas al día. Por eso recomiendo echar un vistazo a Better Stack, porque acabamos de lanzar nuestro propio
00:06:31SRE con IA que te ayuda a gestionar incidentes de guardia mientras duermes. Así podrás
00:06:38dejar de apagar fuegos y centrarte en enviar código. Eso es todo por hoy, amigos. Si este vídeo te ha
00:06:42parecido útil e informativo, házmelo saber haciendo clic en el botón de "me gusta". Y no olvides
00:06:47suscribirte a nuestro canal. Soy Andris, de Better Stack, y nos vemos en los próximos
00:06:52vídeos.