Communitygithub.com

openinterpreter/qa-testing

Überprüfe deine Arbeit, indem du die App oder Website, die du geändert hast, tatsächlich bedienst, anstatt einfach anzunehmen, dass sie funktioniert. Wird dringend empfohlen, wenn du eine Web-App, eine Website oder eine Desktop-GUI-App erstellst, änderst oder debugst. Steuere echte Browser mit der agent-browser CLI und native Desktop-Apps mit der cua-driver CLI. Diese werden bei Bedarf über den normalen Befehlsfreigabe-Workflow des Hosts installiert.

Was ist qa-testing?

Diese Fähigkeit ermöglicht es KI-Agenten, ihre Arbeit durch tatsächliche Ausführung und Überprüfung von App- oder Website-Änderungen zuverlässig zu testen, anstatt sich auf Annahmen zu verlassen. Sie ist besonders wertvoll beim Bauen, Ändern oder Debuggen von Web-Apps, Websites und nativen Desktop-GUI-Anwendungen. Unterstützt werden macOS, Linux und Windows über die CLI-Tools `agent-browser` (für Webbrowser) und `cua-driver` (für native Desktop-Apps). Die tools werden bei Bedarf aus dem Internet installiert, daher prüft die Fähigkeit zuerst die Netzwerkverbindung und bricht bei fehlendem Zugriff ab. Nach der Installation führt der Agent eine gezielte Interaktion durch: Snapshots der aktuellen Ansicht, Ausführung von Aktionen (z. B. Klicks, Eingaben) und erneute Snapshots zur Bestätigung der Zustandsänderung. Diese Methode stellt sicher, dass jede Änderung tatsächlich wirksam ist und verhindert fatale Folgen wie unbeabsichtigte Käufe oder Nachrichten.

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

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

QA-Testing – Überprüfe durch tatsächliches Bedienen

Nachdem du eine App oder Website erstellt oder geändert hast, nimm nicht einfach an, dass sie funktioniert. Bediene sie und überprüfe.

1. Netzwerk ist erforderlich – zuerst prüfen

Die Installation dieser Tools und das Laden von Seiten benötigen ausgehende Netzwerkverbindungen, die Sandboxen blockieren können. Prüfe vor allem anderen:

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

Wenn network blocked ausgegeben wird, stoppe und teile dem Benutzer mit:

Ich benötige Netzwerkzugriff, um die Testtools zu installieren und auszuführen. Führe /permissions aus und wähle eine Zugriffsstufe, die Netzwerk erlaubt. Frage mich dann erneut.

2. Web-Apps und Websites – agent-browser

Auf macOS/Linux bevorzuge direkt das vorgefertigte Binary:

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

Unter Windows verwende den Paketinstaller, da er das passende native Binary herunterlädt:

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

Verwende dann die mitgelieferte Anleitung des Tools: agent-browser open <url>, erstelle einen Schnappschuss, führe Aktionen auf den Elementreferenzen aus und erstelle erneut einen Schnappschuss.

3. Native Desktop-Apps – 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

Für native Apps überprüfe nach der Aktion eine echte Zustandsänderung. Ein Klickbefehl, der Erfolg meldet, reicht allein nicht aus. Erfasse den Anfangszustand, führe eine Aktion aus, erfasse dann den Zustand nach der Aktion und vergleiche sichtbaren Text, Zähler, Statusbezeichnungen, Auswahlzustand, Eingabewerte oder Screenshot-Nachweise.

Windows PowerShell-Befehlshygiene

Viele Windows-Hosts laufen noch mit Windows PowerShell 5.1, wo && kein gültiger Befehlsseparator ist. Verwende separate Befehle, Semikolons oder explizite if ($LASTEXITCODE -eq 0) { ... }-Überprüfungen. Setze Tool-Argumente, die mit @ beginnen, in Anführungszeichen, insbesondere agent-browser-Referenzen.

Grundsätze

  • Prüfe zuerst das Netzwerk.
  • Verwende command -v vor der Installation.
  • Bevorzuge direkte Binaries auf macOS/Linux, wenn verfügbar.
  • Folge der jeweiligen Tool-Dokumentation: agent-browser skills get core und cua-driver list-tools.
  • Erstelle Schnappschüsse, führe Aktionen aus und wiederhole Schnappschüsse, um zu bestätigen, dass jeder Schritt angekommen ist.
  • Bestätige vor folgenschweren Aktionen wie Käufen, Nachrichten, Formularübermittlungen oder Löschungen.

Verwandte Skills