Install
$ agentstack add skill-bettyguo-browser-skills-detect-captcha ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Detect Captcha
When to invoke
Run any time the deterministic recipe of another skill fails on what looks like it should have worked, OR proactively before any step that involves form submission, login, or rate-sensitive interaction. The matcher runs this when known captcha markers appear in the DOM.
This skill is detect-only. It identifies captcha provider, surfaces metadata, and stops. If you need to bypass a captcha, you are out of scope of this project — see [docs/ethics.md](../../docs/ethics.md). PRs adding solving logic will be closed.
Recipe
- waitfordom_ready timeout=3s
- extracttext selector=".g-recaptcha, .h-captcha, .cf-turnstile, iframe[src='recaptcha'], iframe[src='hcaptcha'], iframe[src*='challenges.cloudflare.com']" into="$captchamarker" optional=true
Success criteria
The skill always returns success if the recipe completes. The interesting state is in the returned extracted map:
$captcha_markerpopulated → captcha detected (the value identifies the provider via its container class or iframe URL)$captcha_markernot populated → no captcha present
The caller decides what to do next: stop, prompt the user, switch to a non-captcha-protected URL, etc.
When NOT to use
- Never. This skill is cheap, deterministic, and side-effect-free. Always safe to invoke.
Known failures
- Invisible captchas (~15% of reCAPTCHA v3 deployments): the badge is hidden by default. The challenge only appears on risk-flagged sessions. Detection via the
.grecaptcha-badgeselector covers this case; it's in v0.2.0. - Custom captcha implementations (~5%): sites running bespoke "click the kittens" challenges won't match standard markers. Vision detection would help but vision fallback is forbidden for this skill (see
cost_budget.max_vision_calls: 0). - Captcha loaded post-interaction: the captcha only renders after a form-submit click. Re-invoke this skill after any submit step.
Example usage
Agent task: "Search for foo on site X and grab the first 3 results."
→ invoke_skill("verify-page-loaded") → success
→ invoke_skill("dismiss-cookie-banner") → success
→ invoke_skill("detect-captcha") → success, $captcha_marker = None
→ invoke_skill("search-and-filter") → success
...vs...
→ invoke_skill("detect-captcha") → success, $captcha_marker = ""
→ agent: "Site X is showing a reCAPTCHA. I cannot continue automatically. Switch to a different source?"
Ethical posture
This skill exists to make captcha presence visible to the agent so the agent (and the user) can make an informed decision. The decision is not "now solve it." md](../../DECISIONS.md).
Related skills
verify-page-loaded— captchas often render after page load; run loaded-check firstdetect-rate-limit(v0.2.0) — captchas often appear after rate-limit triggers
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: bettyguo
- Source: bettyguo/browser-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.