Blog Copilot GenAI AI/ML AgentCamp 2026 GitHub Agentic Workflows Azure OpenAI GitHub Copilot

Cómo implementar un squad de agentes autónomos al estilo Kitten Agent Blog

Ilustración de agentes autónomos trabajando en equipo

Introducción al squad de agentes autónomos

Inspirado en el workshop Kitten Agent Blog del AgentCamp 2026, este artículo te guiará paso a paso para implementar un squad de agentes autónomos que colaboran para generar contenido, imágenes y desplegar un blog en GitHub Pages. Utilizaremos GitHub Agentic Workflows (gh aw) y servicios como Azure OpenAI para enriquecer las capacidades de los agentes.

El squad estará compuesto por cuatro agentes principales:

  • Astro: Diseña la arquitectura del contenido.
  • Whiskers: Escribe artículos basados en prompts.
  • Luna: Genera imágenes personalizadas.
  • Rocket: Publica el contenido en GitHub Pages.

Requisitos previos

Antes de comenzar, asegúrate de tener los siguientes elementos configurados:

  1. GitHub CLI con soporte para Agentic Workflows (gh aw).
  2. Una suscripción activa a Azure OpenAI.
  3. Un repositorio de GitHub configurado para GitHub Pages.
  4. Node.js (v18 o superior) y Python (v3.9 o superior) instalados en tu máquina.

Note: GitHub Agentic Workflows es una extensión experimental disponible para usuarios del programa beta de GitHub CLI. Si no tienes acceso, consulta la documentación oficial para solicitarlo.

Paso 1: Configuración del repositorio y agentes

Crear el repositorio base

Crea un nuevo repositorio en GitHub para alojar tu blog. Puedes hacerlo desde la línea de comandos:

gh repo create kitten-agent-blog --public --template "actions/starter-workflows"
cd kitten-agent-blog

Configura GitHub Pages en la rama gh-pages:

  1. Ve a la configuración del repositorio en GitHub.
  2. Activa GitHub Pages seleccionando la rama gh-pages como fuente.

Definir agentes en agentic.yaml

Crea un archivo agentic.yaml en la raíz del repositorio para definir los agentes y sus roles:

agents:
  - name: Astro
    role: Architect
    capabilities:
      - "Define estructura de contenido"
      - "Generar prompts para Whiskers"
  - name: Whiskers
    role: Writer
    capabilities:
      - "Escribir artículos basados en prompts"
      - "Optimizar contenido para SEO"
  - name: Luna
    role: Image Generator
    capabilities:
      - "Crear imágenes personalizadas con DALL·E"
      - "Adaptar imágenes al formato del blog"
  - name: Rocket
    role: Publisher
    capabilities:
      - "Publicar contenido en GitHub Pages"
      - "Monitorear errores de despliegue"

Warning: Asegúrate de que los nombres de los agentes sean únicos y que sus capacidades estén alineadas con las tareas que deseas automatizar.

Paso 2: Implementar las capacidades de los agentes

Astro: Diseñando la arquitectura del contenido

Astro define la estructura del contenido y genera prompts para Whiskers. Usa un script en Python que interactúe con Azure OpenAI para generar ideas de contenido:

import openai

openai.api_key = "TU_CLAVE_DE_AZURE_OPENAI"

def generar_estructura_tema(tema):
    prompt = f"Genera una estructura detallada para un artículo sobre {tema}."
    respuesta = openai.Completion.create(
        engine="text-davinci-003",
        prompt=prompt,
        max_tokens=500
    )
    return respuesta.choices[0].text.strip()

tema = "Cómo implementar agentes autónomos"
estructura = generar_estructura_tema(tema)
print(estructura)

Guarda este script como astro.py y configúralo para ejecutarse como parte del workflow de GitHub Actions.

Whiskers: Escribiendo artículos

Whiskers utiliza GitHub Copilot para redactar contenido basado en los prompts generados por Astro. Configura un workflow en .github/workflows/whiskers.yml:

name: Whiskers Writer

on:
  workflow_dispatch:

jobs:
  write-article:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Generate article
        run: |
          python astro.py > prompts.txt
          copilot-cli generate --prompt-file prompts.txt --output article.md

Note: copilot-cli es una herramienta CLI experimental de GitHub Copilot. Instálala siguiendo las instrucciones oficiales.

Luna: Generando imágenes

Luna utiliza la API de DALL·E de Azure OpenAI para crear imágenes personalizadas. Aquí tienes un ejemplo de cómo generar una imagen:

import openai

openai.api_key = "TU_CLAVE_DE_AZURE_OPENAI"

def generar_imagen(descripcion):
    respuesta = openai.Image.create(
        prompt=descripcion,
        n=1,
        size="1024x1024"
    )
    return respuesta['data'][0]['url']

descripcion = "Un gatito espacial escribiendo código en una laptop"
url_imagen = generar_imagen(descripcion)
print(f"Imagen generada: {url_imagen}")

Rocket: Publicando contenido

Rocket despliega automáticamente el contenido generado en GitHub Pages. Configura un workflow en .github/workflows/rocket.yml:

name: Rocket Publisher

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Deploy to GitHub Pages
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: $
          publish_dir: ./public

Paso 3: Evitar conflictos entre agentes

Para evitar que los agentes trabajen en tareas conflictivas, implementa guardrails utilizando semáforos en GitHub Actions. Por ejemplo:

jobs:
  write-article:
    runs-on: ubuntu-latest
    concurrency:
      group: article-generation
      cancel-in-progress: true

Esto asegura que solo un agente pueda generar contenido a la vez.

Conclusión

Implementar un squad de agentes autónomos como el del Kitten Agent Blog no solo es una forma innovadora de automatizar tareas, sino también una excelente manera de aprender sobre tecnologías como GitHub Agentic Workflows y Azure OpenAI. Con una narrativa creativa y herramientas avanzadas, puedes transformar procesos complejos en experiencias colaborativas y eficientes.

Enlace relacionado: Si te interesa el contexto de cómo el open source evoluciona en este tipo de proyectos, consulta nuestro artículo El futuro del open source en 2026: tendencias y oportunidades.