Agent skill

Windows QA Engineer

by CodeAlive-AI in CodeAlive-AI/ai-driven-development

A skill your agent uses when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP.

MITAuto-check passedTesting & QA

Install Windows QA Engineer

skills CLI
$ npx skills add CodeAlive-AI/ai-driven-development --skill windows-qa-engineer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install CodeAlive-AI/ai-driven-development windows-qa-engineer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/CodeAlive-AI/ai-driven-development.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/windows-qa-engineer .claude/skills/windows-qa-engineer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
windows-qa-engineer
GitHub stars
155
Token cost
~1.4k tokens
SKILL.md length
517 words
Files
10 (incl. scripts, references, assets)
Skills in repo
22
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP.

  • Works in 6 steps: Discover windows → Select window → Collect controls → …
  • Testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP
  • SKILL.md covers Auto-Setup (when MCP tools are…, Mandatory Workflow, Tool Reference and Example: Login Smoke Test, plus 3 more sections
  • Runs Python and PowerShell scripts from its folder; calls python

What it does

Windows QA Engineer is an agent skill from CodeAlive-AI/ai-driven-development. Use when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP. Triggers on "test this Windows app", "QA the app", "run smoke test", "click the button", "fill the form", "check the UI", "Windows automation", "UFO QA", "verify the dialog", or any Windows desktop UI testing task. Not for web/browser testing (use Playwright), mobile testing, or non-Windows platforms.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including scripts, reference files and assets (for example `README.md`, `assets/test-case.md` and `install.yaml`).

It sits in Testing & QA, covering QA and bug reports, Browser testing and Desktop control. It works with Windows, Model Context Protocol and Playwright. The repository describes itself as: Practices, protocols, and skills for AI-driven software development. Skills and safety hooks for Claude Code, Codex, OpenCode, Cursor, Antigravity, and any agent supporting the… The licence is MIT.

When your agent uses it

  • Testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP
  • Test this Windows app
  • Click the button
  • Windows automation

Example prompts

  • “test this Windows app”
  • “QA the app”
  • “run smoke test”
  • “/windows-qa-engineer”

Requirements

  • Python 3
  • PowerShell

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Discover windows
  2. Select window
  3. Collect controls
  4. Interact
  5. Assert
  6. Report

What it can do on your machine

Read from SKILL.md and the folder at commit 25b7b1d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 4 files in scripts/ (Python and PowerShell), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Windows QA Engineer loads about 1.4k tokens when it runs, and up to ~2.6k if it reads all its reference files. Until then it costs about 104 tokens; SKILL.md has 517 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~104
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from CodeAlive-AI/ai-driven-development at commit 25b7b1d, republished under its MIT licence (© CodeAlive-AI). 517 words, ~1,420 tokens.

Download SKILL.mdSave it as .claude/skills/windows-qa-engineer/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
windows-qa-engineer
description
Use when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP. Triggers on "test this Windows app", "QA the app", "run smoke test", "click the button", "fill the form", "check the UI", "Windows automation", "UFO QA", "verify the dialog", or any Windows desktop UI testing task. Not for web/browser testing (use Playwright), mobile testing, or non-Windows platforms.
metadata.compatibility
Windows 11 or Windows Server 2025 Desktop Experience, Python 3.10, UFO, fastmcp

Windows QA Engineer (UFO-powered)

You are an AI-QA operator on the same interactive Windows desktop as the SUT. All automation uses UFO's real MCP tools (UICollector, HostUIExecutor, AppUIExecutor) -- no mocks.

The agent, UFO MCP process, and SUT must run in the same logged-in interactive Windows desktop session. SSH, WinRM, CI services, and Session 0 are headless even when they can start the SUT process; use an interactive console, RDP session, or a secured virtual desktop. Never expose RDP publicly merely to satisfy this requirement.

Auto-Setup (when MCP tools are missing)

If UFO tools are NOT available as MCP tools, run setup before QA work:

  1. Run: python "<skill-dir>/scripts/skill_installer.py" --project-dir "<project-root>"
  2. Parse the JSON output — if success is true, restart the MCP client
  3. If failed, show the error and direct user to references/setup.md for manual install

Mandatory Workflow

Follow this sequence for every test run. Do not skip steps.

1. Discover windows
  • Call qa_refresh_and_list_windows()
  • Identify the SUT window by title hint from the user
2. Select window
  • Call select_application_window(id, name) (HostUIExecutor)
  • Call capture_window_screenshot() (UICollector) -- baseline screenshot
3. Collect controls
  • Call qa_refresh_controls(field_list=["label","control_text","control_type","automation_id","control_rect"])
  • Anchor on id + control_text / automation_id when the returned tree is usable
  • If control collection returns an error or an empty tree for a large/legacy WinForms window, continue with screenshot inspection and coordinate actions; do not repeatedly force full UIA subtree scans
4. Interact
  • Use click_input(id, name), set_edit_text(id, name, text), keyboard_input(id, name, keys)
  • Coordinate actions only as last resort (document why)
  • Re-collect controls after navigation or dialog open
5. Assert
  • Read with texts(id, name) and compare against expected
  • Prefer qa_wait_for_text_contains(id, name, expected, timeout_s=10) over sleeps
  • Screenshot after each major checkpoint
6. Report
  • Fill assets/test-case.md template
  • Numbered execution log (step -> tool call -> result)
  • Final PASS/FAIL with exact failing assertion if applicable
  • Attach screenshot base64 strings from capture_window_screenshot()
Show full SKILL.md (220 more words)Show less

Tool Reference

ToolServerPurpose
qa_refresh_and_list_windowsQA helperRefresh + list all windows
select_application_windowHostUIExecutorSelect SUT by id+name
get_app_window_controls_infoUICollectorRaw control tree; use only when helper output is insufficient
capture_window_screenshotUICollectorScreenshot selected window
click_inputAppUIExecutorClick control by id+name
set_edit_textAppUIExecutorType into control
keyboard_inputAppUIExecutorSend keystrokes
textsAppUIExecutorRead control text
qa_wait_for_text_containsQA helperPoll until text matches
qa_refresh_controlsQA helperRe-collect control tree with fail-soft parsing

Example: Login Smoke Test

User says: "Test the login flow on MyApp"

1. qa_refresh_and_list_windows() → find "MyApp - Login"
2. select_application_window(id="3", name="MyApp - Login")
3. capture_window_screenshot() → baseline
4. qa_refresh_controls(field_list=["label","control_text","control_type","automation_id","control_rect"])
   → find username (id=12), password (id=14), login button (id=16)
5. set_edit_text(id="12", name="Username", text="testuser")
6. set_edit_text(id="14", name="Password", text="pass123")
7. click_input(id="16", name="Login")
8. qa_wait_for_text_contains(id="20", name="WelcomeLabel", expected_substring="Welcome", timeout_s=10)
   → {"ok": true, "text": "Welcome, testuser"}
9. capture_window_screenshot() → post-login
10. Report: PASS

Error Handling

No windows found: Re-check the SUT is running. Call qa_refresh_and_list_windows() again. If still empty, ask the user to confirm the app is open.

Empty control tree: The window may not have finished loading. Wait 2-3 seconds, then qa_refresh_controls(field_list=[...]). If still empty, try CONTROL_BACKEND=win32 (see setup.md). For large or legacy WinForms apps, avoid repeated full UIA subtree scans and use screenshot plus targeted coordinates.

Control not clickable / action fails: Re-collect controls (the tree may have changed after navigation). If the control lacks a usable id, fall back to coordinate-based action and document why.

MCP tools not found: Run auto-setup first (see Auto-Setup above). If auto-setup fails, direct the user to references/setup.md and run doctor.ps1.

Detailed Workflows

See references/qa-workflows.md for more examples, locator strategy, and common patterns.

Setup

See references/setup.md for UFO installation, MCP configuration, and diagnostics.

© CodeAlive-AI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 9 other files (scripts, references, assets) in skills/windows-qa-engineer of CodeAlive-AI/ai-driven-development.

  • SKILL.md
  • README.md
  • assets/test-case.md
  • install.yaml
  • references/qa-workflows.md
  • references/setup.md
  • scripts/doctor.ps1
  • scripts/interactive_smoke_test.py
  • scripts/skill_installer.py
  • scripts/ufo_windows_qa_mcp_server.py

Open the folder on GitHubat commit 25b7b1d

Compare with similar skills

Windows QA Engineer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Windows QA Engineer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Windows QA Engineer this skillCodeAlive-AI/ai-driven-development155—~1.4kAutomated safety check: PassMIT
Mirroir Onboardjfarcand/mirroir-mcp245—~4.4kAutomated safety check: NotesApache-2.0
Agentic Browser Testingpetrkindlmann/qa-skills163—~4.5kAutomated safety check: PassMIT
Hands On Testktnyt/cclsp675—~1.7kAutomated safety check: PassMIT
Glance TestDebugBase/glance156—~827Automated safety check: PassMIT
QA TesterJocysCom/FocusLogger213—~12kAutomated safety check: PassGPL-3.0

Similar skills

  • Mirroir Onboard

    jfarcand/mirroir-mcp

    Onboard a consumer web app to mirroir's .mirroir/ dotfile by EXPLORING the running app (chrome-devtools-mcp) — derive real selectors from the accessibility tree, exercise each surface's primary…

    245 GitHub stars~4.4k tokensUpdated yesterday
    Testing & QAAuto-check: notes
  • Agentic Browser Testing

    petrkindlmann/qa-skills

    Goal-driven E2E testing where a browser agent (Playwright MCP / computer-use) reads a natural-language goal and explores the app via the accessibility tree to assert outcomes — no pre-written script.

    163 GitHub stars~4.5k tokensUpdated 3 mo ago
    Testing & QAAuto-check passed
  • Hands On Test

    ktnyt/cclsp

    Performs manual hands-on testing of a web application using playwright-cli.

    675 GitHub stars~1.7k tokensUpdated 7 mo ago
    Testing & QAAuto-check passed
  • Glance Test

    DebugBase/glance

    Run E2E browser tests on any web application using Glance MCP.

    156 GitHub stars~827 tokensUpdated 5 mo ago
    Testing & QAAuto-check passed
  • QA Tester

    JocysCom/FocusLogger

    Create and maintain automated tests in Microsoft-native/.NET projects with a minimal stack — MSTest runner, System.Windows.Automation for Windows desktop, Playwright for real browser smoke.

    213 GitHub stars~12k tokensUpdated 3 mo ago
    Testing & QAAuto-check passed
  • Playwright MCP Browser Control

    Hainrixz/editor-pro-max

    Drives a live browser through the Playwright MCP server to navigate, inspect, fill forms and screenshot pages, with snapshot-first habits and output-size care.

    260 GitHub stars~2k tokensUpdated 6 mo ago
    Testing & QAAuto-check passed

More from CodeAlive-AI/ai-driven-development

All 22 skills in this repo
  • Investigating Repository History

    CodeAlive-AI/ai-driven-development

    Investigate GitHub repository history before risky code changes using git blame/log, GitHub PRs, review comments, squash/rebase/cherry-pick/rename heuristics, and cited evidence.

    155 GitHub stars~2k tokensUpdated yesterday
    Auto-check passed
  • Plugins Management

    CodeAlive-AI/ai-driven-development

    Create, publish, delete, and submit plugins for coding agents (Claude Code, OpenCode, Devin CLI/Desktop).

    155 GitHub stars~3.1k tokensUpdated yesterday
    Auto-check: notes
  • Semantic Scholar Deep

    CodeAlive-AI/ai-driven-development

    Deep research over the Semantic Scholar Graph API. An agent skill from CodeAlive-AI/ai-driven-development.

    155 GitHub starsUsed in 1 repo~2.2k tokens
    Auto-check passed
  • Agentic Readiness

    CodeAlive-AI/ai-driven-development

    Audit and improve repositories for reliable agentic work across Codex and Codex App, Claude Code, and OpenCode.

    155 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Hooks Management

    CodeAlive-AI/ai-driven-development

    Manage hooks and automation for coding agents (Claude Code, Codex CLI, OpenCode, Devin CLI/Desktop).

    155 GitHub stars~4.8k tokensUpdated yesterday
    Auto-check: notes
  • Fetch URL As Markdown

    CodeAlive-AI/ai-driven-development

    Fetch a web page (URL) and return clean Markdown via local trafilatura, with Exa MCP as a fallback for JS-rendered or anti-bot pages.

    155 GitHub stars~906 tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Windows QA Engineer

What does Windows QA Engineer do?

A skill your agent uses when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP. Windows QA Engineer is an agent skill from CodeAlive-AI/ai-driven-development. Use when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP.

When should I use Windows QA Engineer?

Windows QA Engineer fits situations like: testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP; test this Windows app; click the button; windows automation.

How do I install Windows QA Engineer in Claude Code?

Run `npx skills add CodeAlive-AI/ai-driven-development --skill windows-qa-engineer -a claude-code`. Or copy the skill folder (skills/windows-qa-engineer in CodeAlive-AI/ai-driven-development) into .claude/skills/windows-qa-engineer in your project. Claude Code loads it when a task matches its description.

How do I install Windows QA Engineer in Codex?

Run `npx skills add CodeAlive-AI/ai-driven-development --skill windows-qa-engineer -a codex`. Or copy the skill folder (skills/windows-qa-engineer in CodeAlive-AI/ai-driven-development) into .agents/skills/windows-qa-engineer in your project. Codex loads it when a task matches its description.

Can I use Windows QA Engineer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add CodeAlive-AI/ai-driven-development --skill windows-qa-engineer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/windows-qa-engineer, .gemini/skills/windows-qa-engineer, .github/skills/windows-qa-engineer and .opencode/skills/windows-qa-engineer in your project.

What does Windows QA Engineer need to run?

Going by SKILL.md and its folder, Windows QA Engineer needs Python and PowerShell for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3; PowerShell.

Does Windows QA Engineer access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Windows QA Engineer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Windows QA Engineer use?

Windows QA Engineer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Windows QA Engineer use?

About 1.4k tokens (SKILL.md is roughly 5.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.2k tokens, read only when the agent opens those files.

What are the alternatives to Windows QA Engineer?

Skills that share tags, products or a category with Windows QA Engineer: Mirroir Onboard (jfarcand/mirroir-mcp, 245 stars), Agentic Browser Testing (petrkindlmann/qa-skills, 163 stars), Hands On Test (ktnyt/cclsp, 675 stars) and Glance Test (DebugBase/glance, 156 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Windows QA Engineer?

CodeAlive-AI (a GitHub organization) maintains it in CodeAlive-AI/ai-driven-development, which has 155 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 6, 2026.

Source: CodeAlive-AI/ai-driven-development on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.