No repositório vm0-ai/vm0-skills, desenvolvemos dezenas de skills para integração com diversas plataformas SaaS de terceiros. Essas skills permitem que agentes Claude Code e Codex interajam de forma fluida com serviços como GitHub, Slack, Discord e muitos outros.
Embora essas integrações sejam extremamente valiosas, elas representam um desafio significativo de testes. Sem uma infraestrutura de testes adequada, não conseguimos verificar de forma confiável se as skills funcionam como esperado nem detectar mudanças que quebram a compatibilidade quando as APIs de terceiros evoluem.
Por que testar skills de agentes de IA de terceiros é difícil
Testar integrações com terceiros é, por natureza, complicado. Cada skill depende de APIs externas que podem mudar sem aviso prévio, exigindo vigilância constante para manter a confiabilidade. Testes unitários tradicionais muitas vezes ficam aquém, porque não conseguem reproduzir o comportamento real das APIs, os fluxos de autenticação e os casos extremos que só aparecem em ambientes de produção.
Sem testes abrangentes, vários problemas críticos permanecem sem solução:
- Verificação de funcionalidade: não conseguimos confirmar se as skills funcionam como pretendido em cenários reais de uso
- Detecção de mudanças que quebram a compatibilidade: quando as APIs SaaS de terceiros evoluem, não temos uma forma automatizada de identificar problemas de compatibilidade
- Validação de autenticação: fluxos OAuth, mecanismos de renovação de tokens e escopos de permissão precisam de verificação contínua
- Tratamento de erros: precisamos garantir uma degradação controlada quando os serviços externos estão indisponíveis
Isso cria uma carga significativa de manutenção e potenciais problemas de confiabilidade que podem impactar os fluxos de trabalho em produção.
Usando agentes de IA para testar skills de agentes de IA em ambientes reais
Como essas skills são projetadas especificamente para agentes Claude Code e Codex, a abordagem mais natural e eficaz é usar esses mesmos agentes para testá-las. Isso cria um ecossistema autovalidável, em que as ferramentas testam a si mesmas no ambiente para o qual foram concebidas.
A VM0 oferece a infraestrutura em nuvem necessária para executar agentes Claude Code e Codex de forma confiável, o que a torna uma plataforma ideal para implementar essa estratégia de testes.
Um fluxo de trabalho automatizado de ponta a ponta para testar skills de agentes de IA
O fluxo de trabalho completo para o teste automatizado de skills está descrito a seguir. Esse agente testa sistematicamente cada skill do repositório, gera relatórios abrangentes e notifica a equipe por meio de múltiplos canais.
# Skills Tester Agent
## Overview
This agent performs automated testing of all skills in the vm0-skills repository.
## Critical Requirements
**MANDATORY: Complete All Tests Without Exception**
- No matter how long the task takes, it MUST be completed in full
- Continue until ALL items in `TODO.md` are tested - no early termination
- **NO skipping tasks** - every skill must be tested
- **NO selective testing** - do not cherry-pick which skills to test
- **Every example MUST have a result** - each example command in every skill's SKILL.md must be executed and recorded
- If a test fails, record the failure and continue to the next test
- Do not stop or pause until the entire test suite is complete
## Instructions
1. **Clone and Initialize**
- Clone the repo `vm0-ai/vm0-skills`
- Create a `TODO.md` file to track testing progress
2. **Generate Todo List**
- For each skill folder in the repo, add a todo item to `TODO.md`
3. **Test Each Skill**
- Create a sub-agent for each skill to test
- Each sub-agent should:
- Verify all required environment variables exist
- Test each example command in the skill's SKILL.md
- Write a temporary test result markdown file
- Record whether the test passed, and specifically note any shell command failures or jq parsing errors
4. **Summarize Results**
- Aggregate all test results into `result.md`
5. **Update README**
- Based on `result.md`, update the `README.md`
- Update or insert a skill list section with:
- Brief description of each skill's capabilities
- Test status (passed/failed)
6. **Commit and Push**
- Only commit `README.md`
- Push to the repository using `GITHUB_TOKEN` for authentication
7. **Report Issues**
- For skills with test failures, create a GitHub issue summarizing all problems
8. **Notify Slack**
- Post a message to Slack channel `#dev` with:
- Total number of skills
- Number of passed tests
- Number of failed tests
- Brief summary of issues
- Link to the GitHub issue (if created)
9. **Notify Discord**
- Post a message to the Discord `skills` channel with:
- Confirmation that routine testing is complete
- Number of skills that passed
- Total number of skills tested
Configurando o agente com vm0.yaml
Em seguida, basta agendar a VM0 para executar esse fluxo de trabalho. Crie um arquivo vm0.yaml para descrever a configuração do contêiner do agente. Esse arquivo especifica de quais skills o agente precisa, quais variáveis de ambiente injetar e como executar o fluxo de trabalho de testes.
version: "1.0"
agents:
skills-tester:
image: skills-tester:latest
provider: claude-code
instructions: AGENTS.md
skills:
- https://github.com/vm0-ai/vm0-skills/tree/main/github
- https://github.com/vm0-ai/vm0-skills/tree/main/slack
- https://github.com/vm0-ai/vm0-skills/tree/main/discord
environment:
CLAUDE_CODE_OAUTH_TOKEN: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
DISCORD_BOT_TOKEN: ${{ secrets.DISCORD_BOT_TOKEN }}
# ... additional environment variables as needed
Para o arquivo de configuração completo, consulte vm0-skills/.vm0/vm0.yaml. Algumas variáveis de ambiente foram omitidas neste exemplo para fins de brevidade.
Essa configuração do agente inclui três skills essenciais:
- GitHub skill: para operações no repositório, criação de issues e atualizações do README
- Slack skill: para publicar os resultados dos testes nos canais da equipe
- Discord skill: para notificações à comunidade sobre a conclusão dos testes
Criando a imagem Docker
Você também precisará configurar uma imagem Docker que instale as dependências necessárias, em particular a CLI do GitHub (gh), que o agente usa para as operações no repositório.
Crie um Dockerfile:
FROM node:20-slim
RUN apt-get update && apt-get install -y \\
git \\
curl \\
python3 \\
python3-pip \\
python3-venv \\
jq \\
&& rm -rf /var/lib/apt/lists/*
RUN curl -fsSL <https://cli.github.com/packages/githubcli-archive-keyring.gpg> | dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg \\
&& chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg \\
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] <https://cli.github.com/packages> stable main" | tee /etc/apt/sources.list.d/github-cli.list > /dev/null \\
&& apt-get update \\
&& apt-get install -y gh \\
&& rm -rf /var/lib/apt/lists/*
RUN npm install -g @anthropic-ai/claude-code
Esse Dockerfile cria um contêiner leve com:
- Node.js 20: ambiente de execução para o Claude Code
- Git: operações de controle de versão
- GitHub CLI: interações simplificadas com a API do GitHub
- Python 3: para executar os scripts de teste das skills
- jq: análise de JSON em comandos de shell
Montando o sistema de testes de skills de IA
É só isso de que você precisa! Com esses três arquivos no lugar — AGENTS.md, Dockerfile e vm0.yaml —, você tem um sistema completo de testes automatizados. Você pode ver a implementação completa em vm0-skills/.vm0.
Execute os seguintes comandos no diretório do seu projeto para construir e implantar o agente:
$ vm0 image build -f Dockerfile --name skills-tester
$ vm0 compose vm0.yaml
O primeiro comando constrói a imagem Docker com todas as dependências necessárias. O segundo comando registra a configuração do agente na plataforma da VM0.
Executando o fluxo de trabalho
Agora você pode executar todo o fluxo de trabalho de testes com um único comando:
$ vm0 run skills-tester "do the job"
O agente irá, de forma autônoma:
- Clonar o repositório vm0-skills
- Gerar uma lista de verificação de testes para todas as skills
- Executar os testes de cada skill de forma sistemática
- Compilar resultados abrangentes
- Atualizar o README do repositório
- Criar issues no GitHub para as falhas
- Enviar notificações para o Slack e o Discord
Depurando passo a passo
Se você quiser depurar o fluxo de trabalho de forma incremental ou testar primeiro uma única skill, pode usar prompts direcionados:
$ vm0 run skills-tester "Only do the first step, using a single skill."
Depois que o agente concluir o primeiro passo, você pode continuar a sessão com base no ID de sessão fornecido na saída:
$ vm0 run continue SESSION_ID "Do the next step."
Essa abordagem interativa permite que você:
- Verifique cada passo antes de prosseguir
- Inspecione resultados intermediários
- Ajuste o fluxo de trabalho, se necessário
- Depure problemas de forma mais eficaz
Resultados e notificações
Depois que o fluxo de trabalho é concluído, você recebe notificações em múltiplos canais confirmando os resultados dos testes.
Notificação à comunidade no Discord exibindo o resumo da conclusão dos testes
Notificação à equipe no Slack com os resultados detalhados dos testes
Para quaisquer skills que falhem nos testes, o agente cria automaticamente uma issue no GitHub com detalhes completos da falha. Consulte Skill Test Failures - Issue #2 para ver um exemplo do formato de issue gerado.
Principais lições da automação de testes de skills de agentes de IA
Implementar testes automatizados de skills com agentes da VM0 oferece vários benefícios essenciais:
- Validação contínua: detecte mudanças que quebram a compatibilidade vindas de APIs de terceiros imediatamente, antes que impactem a produção
- Ambiente de testes realista: os agentes testam as skills exatamente no contexto em que são usadas, eliminando a distância entre teste e produção
- Zero esforço manual: uma vez configurado, o fluxo de trabalho de testes é executado automaticamente em uma programação, sem exigir intervenção humana
- Cobertura abrangente: cada skill é testada de forma sistemática, garantindo que nada passe despercebido
- Conhecimento compartilhado pela equipe: notificações em múltiplos canais mantêm todos informados sobre os resultados dos testes e os problemas
Ao aproveitar a infraestrutura em nuvem da VM0 e as capacidades de agente do Claude, você pode manter integrações confiáveis com serviços externos enquanto minimiza a carga contínua de manutenção. Essa abordagem transforma o teste de skills de um processo manual e propenso a erros em um sistema de garantia de qualidade totalmente automatizado.
Comece a usar a VM0 hoje
Pronto para automatizar seus próprios fluxos de trabalho com agentes de IA? A VM0 facilita a implantação de agentes prontos para produção em minutos, não em semanas.
O que você pode construir com a VM0
-
Pipelines de testes automatizados
Execute tarefas de teste agendadas, como este testador de skills, para detectar cedo as mudanças que quebram a compatibilidade em APIs de terceiros.
-
Fluxos de trabalho de geração de conteúdo
Transforme pesquisas, anotações ou entradas brutas em posts de blog, documentação ou notas de versão sem copiar e colar manualmente.
-
Agentes de processamento de dados
Extraia dados de várias fontes, faça a limpeza e mova-os adiante no fluxo, tratando falhas e novas tentativas de forma explícita.
-
Automação de suporte ao cliente
Faça a triagem das solicitações recebidas, redija respostas e encaminhe os casos extremos para humanos quando necessário.
-
Revisão e análise de código
Revise pull requests, sinalize possíveis problemas e aplique regras básicas antes que um humano olhe o código.
Acesse vm0.ai para criar sua conta gratuita e implantar seu primeiro agente hoje mesmo. Junte-se à nossa comunidade no Discord para se conectar com outros builders, compartilhar seus fluxos de trabalho e obter ajuda da equipe.
Comece a construir o futuro dos fluxos de trabalho automatizados.


