skills/jb-pinchtab-testing/SKILL.md
Use when smoke-testing a local web app, reproducing frontend bugs, verifying browser flows, or gathering evidence through PinchTab.
npx skillsauth add bjesuiter/skills jb-pinchtab-testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Private higher-level workflow skill for browser testing through the PinchTab CLI.
Use this skill when the task is not “control one browser action” but “test the app well”.
Before using this skill:
pinchtab must be installed.pinchtab health --json
pinchtab profiles --json
Before the first browser-affecting pinchtab command in a session:
pinchtab profiles --json
pinchtab instances --json
--server on every command. Example: if instances --json shows auth-headful on port 9871, use:pinchtab --server http://127.0.0.1:9871 tab --json
pinchtab --server http://127.0.0.1:9871 snap --full --tab <tab-id>
pinchtab --server http://127.0.0.1:9871 console --tab <tab-id> --limit 100
pinchtab --server http://127.0.0.1:9871 click <ref> --tab <tab-id> --snap --json
pinchtab instances --json to discover its instance port:pinchtab instance start --profile <profile-id-or-name>
pinchtab instances --json
Do not silently choose a profile when multiple profiles exist. Do not assume plain pinchtab ... targets the visible browser or the desired profile; plain commands may target the default/current CLI instance instead. Do not use raw HTTP/curl endpoints unless the user explicitly approves bypassing the CLI.
Default loop:
pinchtab profiles --json and ask the user which profile to use.pinchtab instance start --profile <profile-id-or-name>.pinchtab nav <url> --snap --json to open the page.pinchtab find <query> --json for focused target discovery.pinchtab snap --full or pinchtab snap --text for more structure.pinchtab click, pinchtab fill, pinchtab type, or pinchtab press.pinchtab wait --text ...pinchtab wait --url ...pinchtab wait <selector>pinchtab text --jsonpinchtab snap --fullpinchtab text --jsonpinchtab screenshot --output ...pinchtab network --jsonpinchtab consolePrefer this order:
pinchtab instances --json when multiple profiles may be runningpinchtab --server <instance-url> tab --json if tab context is unclearpinchtab --server <instance-url> navpinchtab --server <instance-url> findpinchtab --server <instance-url> snapclick, type, fill, press) with --server <instance-url> and, when known, --tab <tab-id>pinchtab --server <instance-url> waittext, screenshot, network, console) with --server <instance-url>Rules:
pinchtab find + ref reuse over repeated giant snapshots.--json when the output should be parsed or quoted back precisely.Health:
pinchtab health --json
List profiles and running instances before the first request in a session:
pinchtab profiles --json
pinchtab instances --json
Start the chosen profile if needed, then rediscover its port:
pinchtab instance start --profile clean-headless
pinchtab instances --json
Target a running named profile by its instance port:
pinchtab --server http://127.0.0.1:9871 tab --json
Open page and capture an immediate snapshot on the chosen instance:
pinchtab --server http://127.0.0.1:9871 nav http://localhost:3000 --snap --json
Find an element:
pinchtab find "login button" --json
Capture interactive structure:
pinchtab --server http://127.0.0.1:9871 snap --full --tab <tab-id>
Click and capture the next state:
pinchtab --server http://127.0.0.1:9871 click e5 --tab <tab-id> --snap --json
Fill input directly:
pinchtab fill e7 "[email protected]" --snap --json
Press Enter:
pinchtab press Enter --snap --json
Wait for success text:
pinchtab wait --text "Saved successfully" --timeout 10000 --json
Extract readable text:
pinchtab text --json
Capture screenshot evidence:
pinchtab screenshot --output tmp/pinchtab-failure.jpg
Check recent network activity:
pinchtab network --json
Goal: prove the main path is alive.
Goal: follow reported steps exactly.
Goal: confirm a claimed fix.
Goal: probe an uncertain UI area.
Always report in this shape:
pinchtab eval only when simpler commands are insufficient.pinchtab instances --json to map that profile to its instance URL/port, then pass --server http://127.0.0.1:<port> on subsequent CLI commands.pinchtab --server http://127.0.0.1:<port> tab --json before snapshot/click/console commands.--tab <tab-id> for snap, console, click, and similar commands when more than one instance/tab may exist.testing
Use when the user mentions Clawpatch/clawpatch.ai, semantic feature review, repo-wide AI audit, persistent findings, or clawpatch init/map/review/report/fix/revalidate.
development
Use when the user asks for autoreview, Codex/Claude second-model review, or final review of dirty changes, a branch, commit, or PR before ship.
testing
Use when the user asks to cut, prepare, publish, tag, or verify a release, especially npm/package releases.
tools
Use when adding, writing, fixing, or exposing a script for the Tuna macOS launcher.