Web Application Testing
anthropics/skills
Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.
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.
$ npx skills add onevcat/Prowl --skill self-verify-prowl -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install onevcat/Prowl self-verify-prowl --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/onevcat/Prowl.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/self-verify-prowl .claude/skills/self-verify-prowl && rm -rf skills-srcUse ~/.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/
Install the "self-verify-prowl" agent skill from https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowl into .claude/skills/self-verify-prowl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-verify-prowl", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowlType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add onevcat/Prowl --skill self-verify-prowl -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install onevcat/Prowl self-verify-prowl --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/onevcat/Prowl.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/self-verify-prowl .agents/skills/self-verify-prowl && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "self-verify-prowl" agent skill from https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowl into .agents/skills/self-verify-prowl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-verify-prowl", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add onevcat/Prowl --skill self-verify-prowl -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install onevcat/Prowl self-verify-prowl --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/onevcat/Prowl.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/self-verify-prowl .cursor/skills/self-verify-prowl && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "self-verify-prowl" agent skill from https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowl into .cursor/skills/self-verify-prowl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-verify-prowl", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/onevcat/Prowl.git --path .claude/skills/self-verify-prowl--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add onevcat/Prowl --skill self-verify-prowl -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install onevcat/Prowl self-verify-prowl --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/onevcat/Prowl.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/self-verify-prowl .gemini/skills/self-verify-prowl && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "self-verify-prowl" agent skill from https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowl into .gemini/skills/self-verify-prowl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-verify-prowl", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install onevcat/Prowl self-verify-prowlInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add onevcat/Prowl --skill self-verify-prowl -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/onevcat/Prowl.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/self-verify-prowl .github/skills/self-verify-prowl && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "self-verify-prowl" agent skill from https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowl into .github/skills/self-verify-prowl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-verify-prowl", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add onevcat/Prowl --skill self-verify-prowl -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install onevcat/Prowl self-verify-prowl --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/onevcat/Prowl.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/self-verify-prowl .opencode/skills/self-verify-prowl && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "self-verify-prowl" agent skill from https://github.com/onevcat/Prowl/tree/main/.claude/skills/self-verify-prowl into .opencode/skills/self-verify-prowl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "self-verify-prowl", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
self-verify-prowlRuns 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.
This skill only runs after an explicit user request; implementing, fixing, testing or building Prowl does not by itself authorize it, since it launches a real GUI app, reads shared user data, and is slower and less deterministic than focused tests or the project's own make targets. Before building or launching anything, the agent writes a small verification contract covering the setup, the exact action, the observable assertions, the evidence source and the cleanup, and keeps scenarios narrow; a vague assertion like the app launched or the UI looks correct does not count.
Four outcomes are the only ones allowed: pass with direct evidence for every assertion, fail when the result contradicts an assertion, skipped when a needed capability is unavailable, and inconclusive when the action ran but the evidence cannot prove or disprove it; missing evidence is never turned into a pass. The agent picks the smallest control surface that can prove the assertion, preferring CLI state for terminal content, a UI accessibility skill once its preflight reports ready, and a screenshot only for pixel-level geometry, since a screenshot alone cannot prove a control is wired to the intended behavior.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3a1e42b. It shows what the files ask for, not the result of running them.
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.
Ships 2 files in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
jqmakebashFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Prowl Self-Verify loads about 2.5k tokens when it runs. Until then it costs about 98 tokens; SKILL.md has 1,154 words of instructions outside code blocks.
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.
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.
Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 1,154 words (~2,471 tokens).
“Run this skill only after an explicit user request. A request to implement, fix, test, or build Prowl does not by itself authorize this workflow.”
SKILL.md and 3 other files (scripts) in .claude/skills/self-verify-prowl of onevcat/Prowl.
Open the folder on GitHubat commit 3a1e42b
Prowl Self-Verify 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Prowl Self-Verify this skillonevcat/Prowl | 640 | — | ~2.5k | Automated safety check: Pass | Custom licence | |
| Web Application Testinganthropics/skills | 180k | 51 repos | ~966 | Automated safety check: Pass | Apache-2.0 | |
| TDD WorkflowhellangleZ/burn-in-cceverywhere-ralph | 112 | 11 repos | ~2.4k | Automated safety check: Pass | None | |
| Uloop Replay Inputkurotu/VRCQuestTools | 373 | 3 repos | ~615 | Automated safety check: Pass | MIT | |
| Ui4 Convert Testspayloadcms/payload | 45k | — | ~3.5k | Automated safety check: Pass | MIT | |
| E2Estackia/rtp2httpd | 2.2k | — | ~517 | Automated safety check: Pass | GPL-2.0 |
anthropics/skills
Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.
hellangleZ/burn-in-cceverywhere-ralph
A skill your agent uses when writing new features, fixing bugs, or refactoring code.
kurotu/VRCQuestTools
Replay recorded PlayMode keyboard and mouse input. An agent skill from kurotu/VRCQuestTools.
payloadcms/payload
A skill your agent uses when UI changes are complete and e2e tests need updating.
stackia/rtp2httpd
Write, run, review, or debug rtp2httpd E2E tests and their harness in e2e/ and scripts/run-e2e.sh.
MotherofallVPNs/MoaV
Run and debug MoaV's end-to-end tests — real protocol connectivity (client-test.sh) and the moav CLI smoke test — against a LIVE server, via the self-hosted e2e workflow or a local test VPS.
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.
onevcat/Prowl
Authors, validates, runs and participates in Prowl Agent Workflows, bundles that orchestrate several live coding agents inside the Prowl macOS app.
onevcat/Prowl
Runs Prowl's benchmark layers for a branch or release against recorded baselines, only when explicitly asked and the machine is quiet.
onevcat/Prowl
Catches an app's string catalog up with the code once per release: translating new text, pruning unused entries, and flagging unlocalized strings.
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).
onevcat/Prowl
Keeps an agent-facing documentation set accurate against the implementation through small, diff-driven edits since a committed baseline.
Categories
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. This skill only runs after an explicit user request; implementing, fixing, testing or building Prowl does not by itself authorize it, since it launches a real GUI app, reads shared user data, and is slower and less deterministic than focused tests or the project's own make targets. Before building or launching anything, the agent writes a small verification contract covering the setup, the exact action, the observable assertions, the evidence source and the cleanup, and keeps scenarios narrow; a vague assertion like the app launched or the UI looks correct does not count.
Prowl Self-Verify fits situations like: the user explicitly asks to self-verify a Prowl change end to end; running a real GUI end-to-end check on top of existing Prowl tests; confirming a UI control is actually enabled and wired, not just visible in a screenshot.
Run `npx skills add onevcat/Prowl --skill self-verify-prowl -a claude-code`. Or copy the skill folder (.claude/skills/self-verify-prowl in onevcat/Prowl) into .claude/skills/self-verify-prowl in your project. Claude Code loads it when a task matches its description.
Run `npx skills add onevcat/Prowl --skill self-verify-prowl -a codex`. Or copy the skill folder (.claude/skills/self-verify-prowl in onevcat/Prowl) into .agents/skills/self-verify-prowl in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add onevcat/Prowl --skill self-verify-prowl -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/self-verify-prowl, .gemini/skills/self-verify-prowl, .github/skills/self-verify-prowl and .opencode/skills/self-verify-prowl in your project.
Going by SKILL.md and its folder, Prowl Self-Verify needs a shell for the scripts in its folder and the command-line tools its instructions call (jq, make and bash). Our summary lists: A separate Prowl Debug instance with its own PROWL_CLI_SOCKET; The prowl CLI.
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.
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.
Prowl Self-Verify has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.
About 2.5k tokens (SKILL.md is roughly 9.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Prowl Self-Verify: Web Application Testing (anthropics/skills, 180k stars), TDD Workflow (hellangleZ/burn-in-cceverywhere-ralph, 112 stars), Uloop Replay Input (kurotu/VRCQuestTools, 373 stars) and Ui4 Convert Tests (payloadcms/payload, 45k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
onevcat (a GitHub user) maintains it in onevcat/Prowl, which has 640 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 9, 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.