Introducción
Hoy compartimos un ejemplo práctico usando vm0-ai/run-action, una GitHub Action que te permite activar flujos de trabajo VM0 directamente desde tus pipelines de CI/CD. Esta integración trae la automatización de agentes a tus repositorios de GitHub, facilitando la programación y ejecución automática de agentes de IA.
¿Qué es VM0?
VM0 es un runtime de agentes para construir agentes de IA. Proporciona la infraestructura para orquestar habilidades de agentes, ejecutar agentes en sandboxes y definir flujos de trabajo de agentes usando lenguaje natural.
¿Qué es GitHub Actions?
GitHub Actions es la plataforma de automatización integrada de GitHub que te permite ejecutar flujos de trabajo basados en eventos o en un horario. Usando trabajos cron, puedes ejecutar tareas automáticamente en intervalos fijos, como pipelines de CI, trabajos en segundo plano o agentes de IA.
De local a la nube: Ejecutando flujos de trabajo VM0 con GitHub Actions
Anteriormente, ejecutar flujos de trabajo VM0 requería ejecutar el comando vm0 run desde tu máquina local. Aunque esto funcionaba bien para desarrollo y pruebas (¡VM0 también está en beta!), presentaba desafíos para:
- Automatización programada - Ejecutar agentes en horarios específicos requería intervención manual
- Integración CI/CD - Incorporar agentes en pipelines de despliegue era complejo
- Colaboración en equipo - Compartir y coordinar ejecuciones de agentes entre equipos
- Despliegue en producción - Gestionar agentes en entornos de producción
Con la nueva vm0-ai/run-action, ahora puedes activar flujos de trabajo VM0 directamente desde GitHub Actions usando una configuración de action simple. No más ejecución manual de comandos, solo describe la tarea de tu agente y deja que GitHub maneje la programación y ejecución.
Primeros pasos: Tu primera GitHub Action de VM0
Usar VM0 en GitHub Actions es sencillo. Aquí hay un ejemplo básico:
- name: Run VM0 Agent
uses: vm0-ai/run-action@v1
with:
agent: my-agent
prompt: "Build and test the project"
artifact-name: my-artifact
vm0-token: ${{ secrets.VM0_TOKEN }}
Configurando la autenticación
Para autenticar tus GitHub Actions con VM0, necesitarás configurar un secreto VM0_TOKEN en tu repositorio. Este es un proceso de configuración único:
# Generar un token de autenticación VM0 y almacenarlo en GitHub Secrets
vm0 auth setup-token | gh secret set VM0_TOKEN
Este comando genera un token desde tu autenticación local de VM0 y lo almacena de forma segura en los secretos de tu repositorio de GitHub, haciéndolo disponible para tus flujos de trabajo.
Ejemplo del mundo real: Publicación automatizada de contenido
Veamos un ejemplo completo que demuestra el poder de la integración de VM0 con GitHub Actions. Crearemos una granja de contenido automatizada que publica artículos diarios de noticias de IA en dev.to.
El escenario
Tenemos un flujo de trabajo VM0 existente en vm0-cookbooks/104-content-farm que recopila noticias diarias de IA y publica artículos. Ahora, queremos que este flujo de trabajo se ejecute automáticamente según un horario.
Paso 1: Crear un repositorio de GitHub
Primero, crea un nuevo repositorio para alojar tu flujo de trabajo automatizado:
# Crear y configurar tu repositorio
git clone https://github.com/yourusername/vm0-content-farm
cd vm0-content-farm
Paso 2: Configurar el flujo de trabajo
Crea .github/workflows/daily.yaml en tu repositorio:
name: Content Farm
on:
schedule:
# Ejecutar a las 10:00 AM UTC+8 (2:00 AM UTC) todos los días
- cron: '0 2 * * *'
workflow_dispatch:
jobs:
run-content-farm:
runs-on: ubuntu-latest
steps:
- name: Run Content Farm Agent
uses: vm0-ai/run-action@v1
with:
agent: content-farm
prompt: "Write an article about recent AI developments, providing brief summaries of each story to help readers quickly browse the news over their morning coffee"
artifact-name: content-farm-output
vm0-token: ${{ secrets.VM0_TOKEN }}
secrets: |
CLAUDE_CODE_OAUTH_TOKEN=${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
FAL_KEY=${{ secrets.FAL_KEY }}
DEVTO_API_KEY=${{ secrets.DEVTO_API_KEY }}
Desglosemos los componentes clave:
- schedule: Usa sintaxis cron para ejecutar diariamente a las 2:00 am PST, UTC-8
- workflow_dispatch: Permite activación manual para pruebas
- agent: Especifica qué agente VM0 ejecutar
- prompt: Proporciona instrucciones sobre lo que el agente debe hacer
- secrets: Pasa las claves API y tokens requeridos al agente
Paso 3: Configurar tus secretos
Configura los tokens de autenticación necesarios en tu repositorio:
# Configurar autenticación de Claude Code
claude setup-token
gh secret set CLAUDE_CODE_OAUTH_TOKEN --body "your-claude-token"
# Configurar otras claves API requeridas
gh secret set FAL_KEY --body "your-fal-key"
gh secret set DEVTO_API_KEY --body "your-devto-api-key"
Nota de seguridad: Estos secretos se almacenan de forma segura en GitHub y solo son accesibles para tus flujos de trabajo. Nunca se exponen en logs o salidas de flujos de trabajo.
Paso 4: Agregar flujo de trabajo de auto-despliegue
Crea .github/workflows/publish.yml:
name: Publish Agent
on:
push:
branches:
- main
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: vm0-ai/compose-action@v1
with:
vm0-token: ${{ secrets.VM0_TOKEN }}
Esto despliega automáticamente la configuración de tu agente en cada push a main. No se necesita vm0 compose manual.
Paso 5: Desplegar y probar
# Desplegar:
# Obtener la configuración del agente content-farm
git clone https://github.com/vm0-ai/vm0-cookbooks
cp -r vm0-cookbooks/104-content-farm/* ./
# Push para activar el auto-despliegue
git add .
git commit -m "feat: add content farm agent"
git push origin main
# Probar:
# Activar manualmente el flujo de trabajo
gh workflow run scheduled-run.yml
¡Eso es todo! Tu agente ahora se auto-desplegará en cada push y se ejecutará según el horario programado.
Conclusión
La integración de VM0 con GitHub Actions te ayuda a incorporar agentes de IA en tu flujo de trabajo de desarrollo existente.
En lugar de ejecutar agentes manualmente o tratarlos como scripts únicos, puedes ejecutarlos directamente dentro de tus pipelines de CI/CD y según un horario. Esto facilita:
- Ejecutar tareas recurrentes automáticamente, sin supervisar trabajos
- Integrar agentes en tu proceso normal de desarrollo y release
- Compartir e iterar en flujos de trabajo de agentes con tu equipo
- Entregar automatización impulsada por agentes con menos sorpresas
Ya sea que estés publicando contenido, generando informes, revisando código o automatizando flujos de trabajo internos, VM0 GitHub Actions te ofrece una forma simple y confiable de ejecutar agentes de IA cuando se necesitan.
Para comenzar, explora nuestro repositorio de cookbooks para ejemplos funcionales, y prueba vm0-ai/run-action en tus propios flujos de trabajo de GitHub.
Recursos adicionales
- Documentación de VM0: vm0.ai
- GitHub Action: vm0-ai/run-action
- Cookbooks: vm0-ai/vm0-cookbooks
- Discord de la comunidad: discord.gg/WMpAmHFfp6
- Repositorio de GitHub: vm0-ai/vm0

