Agent skill

Prowl UI Verification

by onevcat in onevcat/Prowl

Drives and verifies the native macOS Prowl Debug UI through accessibility automation, proving behavior with before-and-after evidence instead of reasoning from code.

Custom licenceAuto-check passedTesting & QA

Install Prowl UI Verification

skills CLI
$ npx skills add onevcat/Prowl --skill prowl-ui -a claude-code

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

GitHub CLI
$ gh skill install onevcat/Prowl prowl-ui --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/onevcat/Prowl.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/prowl-ui .claude/skills/prowl-ui && 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
prowl-ui
GitHub stars
638
Token cost
~3.3k tokens
SKILL.md length
1,730 words
Files
4 (incl. scripts)
Skills in repo
10
Repo updated
First seen
Licence
Custom licence

At a glance

Drives and verifies the native macOS Prowl Debug UI through accessibility automation, proving behavior with before-and-after evidence instead of reasoning from code.

  • Works in 5 steps: Take a fresh snapshot pinned to the… → Resolve the narrowest semantic target… → Perform exactly one action. → …
  • Verifying that a Prowl Settings sheet or menu behaves as declared
  • SKILL.md covers Scope, Preflight Without Prompting, Pin the Debug Process and Observe, Act, Re-observe, plus 5 more sections
  • Runs Shell scripts from its folder

What it does

This skill uses agent-ctrl, a macOS accessibility automation tool, to exercise a specific running Prowl Debug process - its Settings, sheets, menus, popovers, view switching, repository selection, and Active Agents panel - and confirms declared behavior with the shortest interaction that proves it. It is explicit-only: it does not run automatically just because Prowl's code changed.

Before opening an accessibility session it runs a bundled preflight script that checks for the agent-ctrl binary at a minimum version, inspects its JSON info and doctor output, and exits with a READY or SKIPPED status depending on whether the macOS accessibility surface and permission are actually available; on SKIPPED it stops the scenario rather than attempting to install the tool or open System Settings itself. It also pins itself to the exact Debug process ID rather than matching by process name, since the installed and Debug builds share the same name and user data.

Responsibility is split from a companion skill: this one handles native windows and AppKit or SwiftUI controls, while the companion handles repositories, tabs, panes, and terminal content, and a screenshot is used only for visual assertions like selection appearance or layout, never to read terminal state.

When your agent uses it

  • Verifying that a Prowl Settings sheet or menu behaves as declared
  • Proving a UI fix works with recorded before-and-after evidence
  • Checking whether the macOS accessibility permission is ready for a UI test

Example prompts

  • “Verify that the new Settings sheet opens and closes correctly in Prowl.”
  • “Prove this Active Agents panel fix with before-and-after evidence.”
  • “Run the Prowl UI preflight check before I start this test.”

Requirements

  • agent-ctrl 0.1.4 or newer
  • macOS Accessibility permission

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Take a fresh snapshot pinned to the Debug PID or its already-discovered window.
  2. Resolve the narrowest semantic target with find, or inspect the tree when the useful target is a parent cell.
  3. Perform exactly one action.
  4. Wait for a concrete result or disappearance when possible.
  5. Take another snapshot and assert the resulting label, role, state, value, title, or CLI state.

What it can do on your machine

Read from SKILL.md and the folder at commit 386b8d0. 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 2 files in scripts/ (Shell), which the agent can run.

    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

Prowl UI Verification loads about 3.3k tokens when it runs. Until then it costs about 165 tokens; SKILL.md has 1,730 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~165
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k

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

Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 1,730 words (~3,334 tokens).

“Use agent-ctrl as the semantic macOS UI surface for an exact Prowl Debug process. Keep the workflow exploratory: choose the shortest interaction that proves the declared behavior, while applying the Prowl-specific constraints below.”

— opening of SKILL.md by onevcat, Custom licence
name
prowl-ui

Read the full SKILL.md on GitHub

Files

SKILL.md and 3 other files (scripts) in .claude/skills/prowl-ui of onevcat/Prowl.

  • SKILL.md
  • agents/openai.yaml
  • scripts/preflight.sh
  • scripts/preflight_test.sh

Open the folder on GitHubat commit 386b8d0

Compare with similar skills

Prowl UI Verification 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.

Prowl UI Verification compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Prowl UI Verification this skillonevcat/Prowl638—~3.3kAutomated safety check: PassCustom licence
Scoutqa Testgithub/awesome-copilot40k1 repos~3.5kAutomated safety check: PassMIT
Kb Testing StrategyCommunity-Access/accessibility-agents422—~1.4kAutomated safety check: PassMIT
QA Testingespennilsen/pi122—~2.9kAutomated safety check: PassMIT
QA Engineerdralgorhythm/claude-agentic-framework125—~631Automated safety check: PassNone
Parallels macOS VM Labsteipete/agent-scripts7.3k—~1.8kAutomated safety check: PassMIT

Similar skills

  • Scoutqa Test

    github/awesome-copilot

    Official

    This skill should be used when the user asks to "test this website", "run exploratory testing", "check for accessibility issues", "verify the login flow works", "find bugs on this page", or requests…

    40k GitHub starsUsed in 1 repo~3.5k tokens
    Testing & QAAuto-check passed
  • Kb Testing Strategy

    Community-Access/accessibility-agents

    Reference data, not a reviewer. An agent skill from Community-Access/accessibility-agents.

    422 GitHub stars~1.4k tokensUpdated 15 days ago
    Testing & QAAuto-check passed
  • QA Testing

    espennilsen/pi

    Perform QA testing on running web applications using cmuxbrowser.

    122 GitHub stars~2.9k tokensUpdated 17 days ago
    Testing & QAAuto-check passed
  • QA Engineer

    dralgorhythm/claude-agentic-framework

    Define test strategy and verify quality against WCAG and testing-pyramid criteria — a user-invoked QA Engineer workflow.

    125 GitHub stars~631 tokensUpdated 2 mo ago
    Testing & QAAuto-check passed
  • Parallels macOS VM Lab

    steipete/agent-scripts

    Uses a clean Parallels macOS VM to test GUI automation, TCC permission prompts and screenshot tools like Peekaboo, verifying results from outside the guest.

    7.3k GitHub stars~1.8k tokensUpdated 4 days ago
    Testing & QAAuto-check passed
  • Termio Bug Report

    termio-sh/termio

    Diagnose a termio hang, beachball, crash, or 'it froze again' from the evidence macOS and termio actually leave behind — live process samples, crash and CPU-burn reports, the unified log, the…

    540 GitHub stars~1.9k tokensUpdated yesterday
    Testing & QAAuto-check passed

More from onevcat/Prowl

All 10 skills in this repo
  • Prowl Self-Verify

    onevcat/Prowl

    Runs an opt-in end-to-end verification of Prowl changes in a separate debug instance, writing a verification contract first and reporting pass, fail, skipped or inconclusive for every scenario.

    638 GitHub stars~2.5k tokensUpdated 2 days ago
    Auto-check passed
  • Authors, validates, runs and participates in Prowl Agent Workflows, bundles that orchestrate several live coding agents inside the Prowl macOS app.

    638 GitHub stars~2.7k tokensUpdated 2 days ago
    Auto-check passed
  • Runs Prowl's benchmark layers for a branch or release against recorded baselines, only when explicitly asked and the machine is quiet.

    638 GitHub stars~2.4k tokensUpdated 2 days ago
    Auto-check passed
  • Catches an app's string catalog up with the code once per release: translating new text, pruning unused entries, and flagging unlocalized strings.

    638 GitHub stars~3.4k tokensUpdated 2 days ago
    Auto-check passed
  • Write AI Doc

    onevcat/Prowl

    Create and maintain curated docs-ai/ records for substantial features and non-trivial, decision-shaping fixes (numbered entries with 000-plan.md before implementation and 001-action.md after).

    638 GitHub stars~1.5k tokensUpdated 2 days ago
    Auto-check passed
  • Keeps an agent-facing documentation set accurate against the implementation through small, diff-driven edits since a committed baseline.

    638 GitHub stars~2k tokensUpdated 2 days ago
    Auto-check passed

Works with

Categories

Questions about Prowl UI Verification

What does Prowl UI Verification do?

Drives and verifies the native macOS Prowl Debug UI through accessibility automation, proving behavior with before-and-after evidence instead of reasoning from code. This skill uses agent-ctrl, a macOS accessibility automation tool, to exercise a specific running Prowl Debug process - its Settings, sheets, menus, popovers, view switching, repository selection, and Active Agents panel - and confirms declared behavior with the shortest interaction that proves it. It is explicit-only: it does not run automatically just because Prowl's code changed.

When should I use Prowl UI Verification?

Prowl UI Verification fits situations like: verifying that a Prowl Settings sheet or menu behaves as declared; proving a UI fix works with recorded before-and-after evidence; checking whether the macOS accessibility permission is ready for a UI test.

How do I install Prowl UI Verification in Claude Code?

Run `npx skills add onevcat/Prowl --skill prowl-ui -a claude-code`. Or copy the skill folder (.claude/skills/prowl-ui in onevcat/Prowl) into .claude/skills/prowl-ui in your project. Claude Code loads it when a task matches its description.

How do I install Prowl UI Verification in Codex?

Run `npx skills add onevcat/Prowl --skill prowl-ui -a codex`. Or copy the skill folder (.claude/skills/prowl-ui in onevcat/Prowl) into .agents/skills/prowl-ui in your project. Codex loads it when a task matches its description.

Can I use Prowl UI Verification 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 onevcat/Prowl --skill prowl-ui -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/prowl-ui, .gemini/skills/prowl-ui, .github/skills/prowl-ui and .opencode/skills/prowl-ui in your project.

What does Prowl UI Verification need to run?

Going by SKILL.md and its folder, Prowl UI Verification needs a shell for the scripts in its folder. Our summary lists: agent-ctrl 0.1.4 or newer; macOS Accessibility permission.

Does Prowl UI Verification 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 Prowl UI Verification 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 Prowl UI Verification use?

Prowl UI Verification has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.

How many tokens does Prowl UI Verification use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Prowl UI Verification?

Skills that share tags, products or a category with Prowl UI Verification: Scoutqa Test (github/awesome-copilot, 40k stars), Kb Testing Strategy (Community-Access/accessibility-agents, 422 stars), QA Testing (espennilsen/pi, 122 stars) and QA Engineer (dralgorhythm/claude-agentic-framework, 125 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Prowl UI Verification?

onevcat (a GitHub user) maintains it in onevcat/Prowl, which has 638 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 6, 2026.

Source: onevcat/Prowl on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.