Back to all posts

Automatize seus agentes de IA com a integração GitHub Actions da VM0

Introdução

Hoje, compartilhamos um exemplo prático usando o vm0-ai/run-action, um GitHub Action que permite acionar workflows da VM0 diretamente dos seus pipelines de CI/CD. Essa integração traz a automação de agentes para dentro dos seus repositórios no GitHub, facilitando agendar e executar agentes de IA automaticamente.

O que é a VM0

A VM0 é um runtime de agentes para construir agentes de IA. Ela fornece a infraestrutura para orquestrar habilidades de agentes, rodar agentes em sandboxes e definir workflows de agentes usando linguagem natural.

O que é o GitHub Actions

O GitHub Actions é a plataforma de automação integrada do GitHub que permite executar workflows com base em eventos ou em um agendamento. Usando cron jobs, você pode executar tarefas automaticamente em intervalos fixos, como rodar pipelines de CI, jobs em segundo plano ou agentes de IA.

Do local para a nuvem: executando workflows da VM0 com o GitHub Actions

Antes, executar workflows da VM0 exigia rodar o comando vm0 run a partir da sua máquina local. Embora isso funcionasse bem para desenvolvimento e testes (além disso, a VM0 está em beta!), apresentava desafios para:

  • Automação agendada - Rodar agentes em horários específicos exigia intervenção manual
  • Integração com CI/CD - Incorporar agentes nos pipelines de deploy era complexo
  • Colaboração em equipe - Compartilhar e coordenar execuções de agentes entre equipes
  • Deploy em produção - Gerenciar agentes em ambientes de produção

Com o novo vm0-ai/run-action, agora você pode acionar workflows da VM0 diretamente do GitHub Actions usando uma configuração de action simples. Chega de executar comandos manualmente: basta descrever a tarefa do seu agente e deixar o GitHub cuidar do agendamento e da execução.

Primeiros passos: seu primeiro GitHub Action da VM0

Usar a VM0 no GitHub Actions é simples. Aqui está um exemplo 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 a autenticação

Para autenticar seu GitHub Actions com a VM0, você precisará configurar um secret VM0_TOKEN no seu repositório. Esse é um processo de configuração único:

# Gere um token de autenticação da VM0 e armazene-o no GitHub Secrets
vm0 auth setup-token | gh secret set VM0_TOKEN

Esse comando gera um token a partir da sua autenticação local da VM0 e o armazena com segurança nos secrets do seu repositório no GitHub, deixando-o disponível para seus workflows.

Exemplo do mundo real: publicação automatizada de conteúdo

Vamos percorrer um exemplo completo que demonstra o poder da integração da VM0 com o GitHub Actions. Vamos criar um content farm automatizado que publica diariamente artigos de notícias sobre IA no dev.to.

O cenário

Temos um workflow existente da VM0 em vm0-cookbooks/104-content-farm que coleta notícias diárias sobre IA e publica artigos. Agora, queremos que esse workflow rode automaticamente em um agendamento.

Passo 1: Crie um repositório no GitHub

Primeiro, crie um novo repositório para abrigar seu workflow automatizado:

# Crie e configure seu repositório
git clone <https://github.com/yourusername/vm0-content-farm>
cd vm0-content-farm

Passo 2: Configure o workflow

Crie .github/workflows/daily.yaml no seu repositório:

name: Content Farm

on:
  schedule:
    # Run at 10:00 AM UTC+8 (2:00 AM UTC) every day
    - 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 }}

Vamos detalhar os componentes principais:

  • schedule: Usa a sintaxe cron para rodar diariamente às 2h da manhã PST, UTC-8
  • workflow_dispatch: Permite o acionamento manual para testes
  • agent: Especifica qual agente da VM0 rodar
  • prompt: Fornece instruções sobre o que o agente deve fazer
  • secrets: Passa as chaves de API e os tokens necessários ao agente

Passo 3: Configure seus secrets

Configure os tokens de autenticação necessários no seu repositório:

# Configure a autenticação do Claude Code
claude setup-token
gh secret set CLAUDE_CODE_OAUTH_TOKEN --body "your-claude-token"

# Configure as outras chaves de API necessárias
gh secret set FAL_KEY --body "your-fal-key"
gh secret set DEVTO_API_KEY --body "your-devto-api-key"

Nota de segurança: Esses secrets são armazenados com segurança no GitHub e só ficam acessíveis aos seus workflows. Eles nunca são expostos em logs ou nas saídas de workflow.

Passo 4: Adicione o workflow de deploy automático

Crie .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 }}

Isso faz o deploy automático da configuração do seu agente a cada push para a main. Sem necessidade de um vm0 compose manual.

Passo 5: Faça o deploy e teste

  Deploy:
  # Obtenha a configuração do agente content-farm
  git clone https://github.com/vm0-ai/vm0-cookbooks
  cp -r vm0-cookbooks/104-content-farm/* ./

  # Faça o push para acionar o deploy automático
  git add .
  git commit -m "feat: add content farm agent"
  git push origin main

  Test:
  # Acione o workflow manualmente
  gh workflow run scheduled-run.yml

É isso! Seu agente agora fará deploy automático a cada push e rodará no agendamento.

Conclusão

A integração da VM0 com o GitHub Actions ajuda você a trazer agentes de IA para o seu fluxo de desenvolvimento já existente.

Em vez de rodar agentes manualmente ou tratá-los como scripts pontuais, você pode executá-los diretamente dentro dos seus pipelines de CI/CD e em um agendamento. Isso facilita:

  • Rodar tarefas recorrentes automaticamente, sem precisar ficar de babá dos jobs
  • Encaixar agentes no seu processo normal de desenvolvimento e release
  • Compartilhar e iterar workflows de agentes com sua equipe
  • Entregar automação orientada por agentes com menos surpresas

Seja para publicar conteúdo, gerar relatórios, revisar código ou automatizar workflows internos, o GitHub Actions da VM0 oferece uma forma simples e confiável de rodar agentes de IA quando eles são necessários.

Para começar, explore nosso repositório de cookbooks para exemplos funcionais e experimente o

vm0-ai/run-action nos seus próprios workflows do GitHub.

Recursos adicionais

Stay in the loop

// Get the latest insights on AI teammates and collaboration.

SubscribeJoin Discord