Communitygithub.com

openinterpreter/qa-testing

Verify your work by actually operating the app or website you changed, instead of assuming it works. Strongly recommended whenever you build, modify, or debug a web app, website, or desktop GUI app. Drive real browsers with the agent-browser CLI and native desktop apps with the cua-driver CLI. These are installed on demand through the host's normal command-approval flow.

qa-testing 是什麼?

qa-testing is a Claude Code agent skill that verify your work by actually operating the app or website you changed, instead of assuming it works. Strongly recommended whenever you build, modify, or debug a web app, website, or desktop GUI app. Drive real browsers with the agent-browser CLI and native desktop apps with the cua-driver CLI. These are installed on demand through the host's normal command-approval flow.

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

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

QA testing - verify by actually driving it

After you build or change an app or website, do not assume it works. Drive it and check.

1. Network is required - check it first

Installing these tools and loading pages need outbound network, which sandboxes can block. Check before anything else:

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

If it prints network blocked, stop and tell the user:

I need network access to install and run the testing tools. Run /permissions and choose an access level that allows network, then ask me again.

2. Web apps and websites - agent-browser

On macOS/Linux, prefer the prebuilt binary directly:

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

On Windows, use the package installer because it downloads the matching native binary:

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

Then use the tool's maintained guide: agent-browser open <url>, take a snapshot, act on the element refs, and snapshot again.

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

For native apps, verify a real state change after the action. A click command that reports success is not enough by itself. Capture an initial state, act, then capture a post-action state and compare visible text, counters, status labels, selected state, input values, or screenshot evidence.

Windows PowerShell command hygiene

Many Windows hosts still run Windows PowerShell 5.1, where && is not a valid statement separator. Use separate commands, semicolons, or explicit if ($LASTEXITCODE -eq 0) { ... } checks instead. Quote tool arguments that begin with @, especially agent-browser refs.

Principles

  • Check network first.
  • Use command -v before installing.
  • Prefer direct binaries on macOS/Linux when available.
  • Defer to each tool's own docs: agent-browser skills get core and cua-driver list-tools.
  • Snapshot, act, and re-snapshot to confirm each step landed.
  • Confirm before consequential actions such as purchases, messages, form submissions, or deletions.

相關技能