qa-browser
Systematically QA test a web application using Playwright CLI.
Skill by aitechnerd
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/aitechnerd-qa-browser
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, testing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/qa-browser
What's inside
- Skill name
qa-browser- Description
- Systematically QA test a web application using Playwright CLI. Use when asked to "qa", "QA", "test this site", "find bugs", "dogfood", or review quality. Four modes: diff-aware (automatic on feature branches — analyzes git diff, identifies affected pages, tests them), full (systematic exploration), quick (30-second smoke test), regression (compare against baseline). Produces structured report with health score and evidence. Uses accessibility tree snapshots for 4x token efficiency vs screenshot-based approaches.
- License
- MIT
- Instructions
- 465 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Agent Skills spec issues
- allowed-tools: must be a space-separated string
Files (3)
- SKILL.md
- issue-taxonomy.md · references/
- qa-report-template.md · templates/
SKILL.md (first lines)
# /qa-browser: Systematic QA Testing with Playwright CLI
You are a QA engineer. Test web applications like a real user — click everything, fill every form, check every state. Produce a structured report with evidence. Fix obvious issues in source code directly.
## Setup
**Parse the user's request for these parameters:**
| Parameter | Default | Override example |
|-----------|---------|-----------------|
| Target URL | (auto-detect or required) | `https://myapp.com`, `http://localhost:3000` |
| Mode | full | `--quick`, `--regression .qa-reports/baseline.json` |
| Output dir | `.qa-reports/` | `Output to /tmp/qa` |
| Scope | Full app (or diff-scoped) | `Focus on the billing page` |
| Auth | None | `Sign in to user@example.com`, `Import cookies from cookies.json` |
**If no URL is given and you're on a feature branch:** Automatically enter **diff-aware mode** (see Modes below). This is the most common case — the user just shipped code on a branch and wants to verify it works.
**Browser automation approach:**
Use `playwright-cli` for all browser interactions. It runs headless Chrome and exposes an accessibility-tree-first workflow that is 4x more token-efficient than screenshot-based approaches.
```bash
# Open a page (launches headless Chrome, navigates automatically)
playwright-cli open http://localhost:3000
# Get the accessibility tree as YAML with element refs
playwright-cli snapshot
# Interact using refs from the snapshot
playwright-cli click e6
playwright-cli fill e8 "search query"
# Capture evidence
playwright-cli screenshot
playwright-cli console
# Close when done
playwright-cli close
```
All output (snapshots, screenshots, console logs) is saved to `.playwright-cli/`.
**Create output directories:**
```bash
REPORT_DIR=".qa-reports"
mkdir -p "$REPORT_DIR/screenshots"
```
---
## Modes
### Diff-aware (automatic when on a feature branch with no URL)
This is the **primary mode** for developers verifying their work. When the user says `/qa-browser` without a URL and the repo is on a feature branch, automatically:
1. **Analyze the branch diff** to understand what changed:
```bash
git diff main...HEAD --name-only
git log main..HEAD --oneline
```
2. **Identify affected pages/routes** from the changed files:
- Controller/route files -> which URL paths they serve
- View/template/component files -> which pages render them
- Model/service files -> which pages use those models (check controllers that reference them)
- CSS/style files -> which pages include those stylesheets
- API endpoints -> test them directly with `playwright-cli eval`
- Static pages (markdown, HTML) -> navigate to them directly
3. **Detect the running app** — check common local dev ports:
```bash
for port in 3000 4000 5173 8080; do
playwright-cli open "http://localhost:$port" 2>/dev/null && echo "Found app on :$port" && break
playwright-cli close 2>/dev/null
done
```
If no local app is found, check for a staging/preview URL in the PR or environment. If nothing works, ask the user for the URL.
4. **Test each affected page/route:**
- Navigate with `playwright-cli open <url>`
- Take a snapshot with `playwright-cli snapshot` to inspect the accessibility tree
- Check console with `playwright-cli console`
- If the change was interactive (forms, buttons, flows), test the interaction end-to-end using `click`, `fill`, and `snapshot` to verify state changes
- Take screenshots with `playwright-cli screenshot` for evidence
5. **Cross-reference with commit messages and PR description** to understand *intent* — what should the change do? Verify it actually does that.
6. **Report findings** scoped to the branch changes:
- "Changes tested: N pages/routes affected by this branch"
- For each: does it work? Screenshot evidence.
- Any regressions on adjacent pages?
**If the user provides a URL with diff-aware mode:** Use that URL as the base but still scope testing to the changed files.
### Full (default when URL is provided)
Systematic exploration. Visit every reachable page. Document 5-10 well-evidenced issues. Produce health score. Takes 5-15 minutes depending on app size.
### Quick (`--quick`)
30-second smoke test. Visit homepage + top 5 navigation targets. Check: page loads? Console errors? Broken links? Produce health score. No detailed issue documentation.
### Regression (`--regression <baseline>`)
Run full mode, then load `baseline.json` from a previous run. Diff: which issues are fixed? Which are new? What's the score delta? Append regression section to report.
---
## Workflow
### Phase 1: Initialize
1. Ensure `playwright-cli` is available (installed globally)
2. Create output directories
3. Copy report template from `qa-browser/templates/qa-report-template.md` to output dir
4. Start timer for duration tracking
### Phase 2: Authenticate (if needed)From aitechnerd/ai-dev-team, MIT.
More from aitechnerd/ai-dev-team
- 0.433score
git-mastery
aitechnerd
Git workflows, commit conventions, branching strategies, and safe operations.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
eval
aitechnerd
Evaluate and improve AI Dev Team skills.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
browse
aitechnerd
General-purpose browser automation using Playwright CLI.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
hipaa
aitechnerd
HIPAA compliance review for healthcare software.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
scan
aitechnerd
Run all available security and quality scanners on the codebase.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
build-phase
aitechnerd
Implement phases from the active feature's technical plan.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
qa-check
aitechnerd
Quick QA check on current changes without the full pipeline.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
retro
aitechnerd
Weekly engineering retrospective.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
revert
aitechnerd
Revert a specific phase or the entire feature by logical unit.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
review
aitechnerd
Fix-first review pipeline.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
health
aitechnerd
Run code health checks: full assessment, targeted refactoring, or dependency updates.
SkillDFreshness: D★ 1Claude Code +9 - 0.422score
features
aitechnerd
List all feature plans and their current status.
SkillDFreshness: D★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 22, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/aitechnerd/ai-dev-team
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from aitechnerd
- 0.433score
git-mastery
aitechnerd
Git workflows, commit conventions, branching strategies, and safe operations.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
hipaa
aitechnerd
HIPAA compliance review for healthcare software.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
browse
aitechnerd
General-purpose browser automation using Playwright CLI.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
eval
aitechnerd
Evaluate and improve AI Dev Team skills.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
build-phase
aitechnerd
Implement phases from the active feature's technical plan.
SkillDFreshness: D★ 1Claude Code +9 - 0.425score
health
aitechnerd
Run code health checks: full assessment, targeted refactoring, or dependency updates.
SkillDFreshness: D★ 1Claude Code +9
Cite this page
qa-browser skill. Agent Mart. https://agentmart.dev/skills/aitechnerd-qa-browser (last updated 2026-10-24)