AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Detect Captcha

skill-bettyguo-browser-skills-detect-captcha · by bettyguo

Detects whether the current page contains a captcha challenge (reCAPTCHA, hCaptcha, Cloudflare Turnstile, GeeTest, etc.). Reports detection and stops. Never attempts to solve. See docs/ethics.md.

No reviews yet
0 installs
27 views
0.0% view→install

Install

$ agentstack add skill-bettyguo-browser-skills-detect-captcha

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No 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.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-bettyguo-browser-skills-detect-captcha)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

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 →
Are you the author of Detect Captcha? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

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

  1. waitfordom_ready timeout=3s
  2. 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_marker populated → captcha detected (the value identifies the provider via its container class or iframe URL)
  • $captcha_marker not 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-badge selector 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 first
  • detect-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.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.