Skip to main content

Anti-detection & Blocking

Use environment, execution, and human handoff layers to handle anti-bot blocking.

Written by Maggie

Browser-act gives agents a practical escalation path for sites that block basic fetchers or standard browser automation.

flowchart TD
  Env["Environment"] --> Exec["Execution"]
  Exec --> Human["Human handoff"]

Three-layer strategy

Layer

Purpose

Key capabilities

Environment

Prevent challenges from appearing

stealth fingerprints, TLS rotation, proxy switching, privacy mode

Execution

Solve challenges after they appear

solve-captcha, stealth-extract

Human

Resolve cases automation cannot handle

remote-assist

Environment layer

The stealth browser is designed to look like a normal browser session instead of a script.

Capability

What it does

Fingerprint masking

Keeps Canvas, WebGL, fonts, plugins, and related signals consistent

Navigator normalization

Normalizes webdriver, chrome.runtime, plugin arrays, and related browser properties

TLS signature rotation

Matches realistic browser TLS signatures

Headless concealment

Keeps headless mode from exposing common automation signals

Proxy system

Supports hosted dynamic proxies or your own static proxy

Privacy mode

Starts each session with a fresh fingerprint and empty profile

Dynamic proxy

browser-act browser create \
  --type stealth \
  --name "jp-research" \
  --desc "Research browser using Japan dynamic proxy" \
  --dynamic-proxy JP

List available regions:

browser-act browser regions

Custom proxy

browser-act browser create \
  --type stealth \
  --name "custom-proxy" \
  --desc "Stealth browser with a fixed custom proxy" \
  --custom-proxy socks5://user:pass@host:port

Custom proxies support HTTP and SOCKS5. You own the proxy quality, identity, and rotation strategy.

Proxy option

Best for

Operational note

Dynamic proxy

Regional rotation and one-off collection

Browser-act rotates hosted IPs by region

Custom proxy

Stable identity and bring-your-own infrastructure

You manage proxy quality and reputation

Privacy mode

Use privacy mode when each session should start clean:

browser-act browser create \
  --type stealth \
  --name "ephemeral" \
  --desc "One-time collection jobs" \
  --private true

Tip: Use privacy mode for one-off scraping, avoiding fingerprint buildup, and separating account identities. The trade-off is that login state is not preserved.

Execution layer

stealth-extract

Use stealth-extract when the task is read-only:

browser-act stealth-extract https://example.com

It opens a stealth browser, renders the page, returns Markdown or HTML, and closes the browser.

# Return HTML
browser-act stealth-extract https://example.com --content-type html# Use a regional dynamic proxy
browser-act stealth-extract https://example.com --dynamic-proxy US# Use a custom proxy
browser-act stealth-extract https://example.com --custom-proxy socks5://user:pass@host:port# Save the result
browser-act stealth-extract https://example.com --output ./result.md

Use stealth-extract for reading. Use a browser session when you need interaction.

solve-captcha

Use solve-captcha when a session reaches a supported CAPTCHA challenge:

browser-act --session s1 solve-captcha

A successful result returns solved=True.

Escalation flow

flowchart TD
  Blocked["Challenge"] --> Captcha["CAPTCHA"]
  Captcha --> Debug["Headed mode"]
  Debug --> Handoff["Remote assist"]

Human layer

When automation cannot move forward, remote-assist creates a live URL. A human can open the link on any device, complete the challenge, and let the agent continue in the same session.

Recommended escalation

  1. Start with chrome or chrome-direct for ordinary logged-in work.

  2. Move to stealth with a proxy when blocking appears.

  3. Use solve-captcha if a supported CAPTCHA appears.

  4. Use remote-assist when human judgment, 2FA, hardware tokens, or unsupported challenges are required.

Compared with basic tools

Capability

curl / WebFetch

Standard Puppeteer / Playwright

Browser-act

JavaScript rendering

No

Yes

Yes

Anti-bot handling

No

Limited

Yes

CAPTCHA solving

No

No

Yes, when supported

Human takeover

No

Manual setup required

Built in with remote-assist

Stealth headless

Not applicable

Often detectable

Supported

Learn more

Better Headless Browser

Run silently while keeping stealth and handoff available.

Browser Modes

Choose the right browser identity for the job.

Skill Forge

Turn site-specific knowledge into a reusable skill.

Did this answer your question?