Communitygithub.com

openinterpreter/qa-testing

Verifique seu trabalho operando de fato o aplicativo ou site que você alterou, em vez de assumir que funciona. Fortemente recomendado sempre que você construir, modificar ou depurar um aplicativo web, site ou aplicativo GUI de desktop. Utilize navegadores reais com a CLI agent-browser e aplicativos nativos de desktop com a CLI cua-driver. Esses são instalados sob demanda através do fluxo normal de aprovação de comandos do host.

O que é qa-testing?

Esta skill, QA-testing, é projetada para agentes de IA (como Claude Code, Cursor, Codex, etc.) verificarem o trabalho alterado operando realmente o aplicativo ou site, em vez de apenas assumir que funciona. Ela é particularmente útil sempre que um desenvolvedor constrói, modifica ou depura um aplicativo web, site ou aplicativo GUI de desktop. A skill suporta plataformas como macOS, Linux e Windows, e utiliza duas ferramentas principais: agent-browser para testar aplicativos web e sites, e cua-driver para testar aplicativos nativos de desktop. O processo começa verificando o acesso à rede, depois instala as ferramentas necessárias (preferencialmente binários pré-construídos no macOS/Linux ou npm no Windows) e, em seguida, orienta o usuário a tirar snapshots da interface, realizar ações e tirar novos snapshots para confirmar as mudanças. A skill também enfatiza princípios importantes como verificar a rede primeiro, usar `command -v` antes de instalar, e confirmar ações consequentes como compras ou exclusões.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/openinterpreter/openinterpreter/tree/main/codex-rs/skills/src/assets/samples/qa-testing

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Testes de QA - verifique operando de fato

Depois de construir ou alterar um aplicativo ou site, não presuma que funciona. Opere-o e verifique.

1. Rede é necessária - verifique primeiro

Instalar essas ferramentas e carregar páginas precisa de acesso à rede de saída, o que sandboxes podem bloquear. Verifique antes de qualquer outra coisa:

curl -fsI https://github.com >/dev/null 2>&1 && echo "network ok" || echo "network blocked"

Se imprimir network blocked, pare e informe ao usuário:

Preciso de acesso à rede para instalar e executar as ferramentas de teste. Execute /permissions e escolha um nível de acesso que permita rede, depois me peça novamente.

2. Aplicativos web e sites - agent-browser

No macOS/Linux, prefira o binário pré-construído diretamente:

if ! command -v agent-browser >/dev/null; then
  os=$(uname -s | tr '[:upper:]' '[:lower:]'); m=$(uname -m)
  case "$os/$m" in
    darwin/arm64)              asset=agent-browser-darwin-arm64 ;;
    darwin/x86_64)             asset=agent-browser-darwin-x64 ;;
    linux/aarch64|linux/arm64) asset=agent-browser-linux-arm64 ;;
    linux/x86_64)              asset=agent-browser-linux-x64 ;;
  esac
  mkdir -p ~/.local/bin
  curl -fL "https://github.com/vercel-labs/agent-browser/releases/latest/download/$asset" -o ~/.local/bin/agent-browser
  chmod +x ~/.local/bin/agent-browser
fi
agent-browser install
agent-browser skills get core

No Windows, use o instalador de pacotes porque ele baixa o binário nativo correspondente:

if (-not (Get-Command agent-browser -ErrorAction SilentlyContinue)) {
  npm install -g agent-browser
  $env:Path = "$env:APPDATA\npm;$env:Path"
}
agent-browser install
agent-browser skills get core

Em seguida, use o guia mantido pela ferramenta: agent-browser open <url>, tire um snapshot, aja nos refs dos elementos e tire outro snapshot.

3. Aplicativos nativos de desktop - cua-driver

macOS/Linux:

command -v cua-driver >/dev/null || /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/cua-driver/scripts/install.sh)"
cua-driver list-tools

Windows PowerShell:

if (-not (Get-Command cua-driver -ErrorAction SilentlyContinue)) {
  irm https://raw.githubusercontent.com/trycua/cua/main/libs/cua-driver/scripts/install.ps1 | iex
  $env:Path = [Environment]::GetEnvironmentVariable('Path', 'User') + ';' + [Environment]::GetEnvironmentVariable('Path', 'Machine')
}
cua-driver list-tools

Para aplicativos nativos, verifique uma mudança de estado real após a ação. Um comando de clique que reporta sucesso não é suficiente por si só. Capture um estado inicial, aja, depois capture um estado pós-ação e compare texto visível, contadores, rótulos de status, estado selecionado, valores de entrada ou evidências de captura de tela.

Higiene de comandos do Windows PowerShell

Muitos hosts Windows ainda executam o Windows PowerShell 5.1, onde && não é um separador de instruções válido. Use comandos separados, ponto e vírgula, ou verificações explícitas de if ($LASTEXITCODE -eq 0) { ... }. Coloque entre aspas os argumentos da ferramenta que começam com @, especialmente refs do agent-browser.

Princípios

  • Verifique a rede primeiro.
  • Use command -v antes de instalar.
  • Prefira binários diretos no macOS/Linux quando disponíveis.
  • Consulte a documentação de cada ferramenta: agent-browser skills get core e cua-driver list-tools.
  • Tire snapshot, aja e tire outro snapshot para confirmar cada etapa.
  • Confirme antes de ações consequentes, como compras, mensagens, envios de formulários ou exclusões.

Habilidades Relacionadas