SkillAgentSearch skills...

Brotector

An advanced antibot for webdrivers

Install / Use

npx skills add ttlns/brotector

Installs into whichever agent you are using.

About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Brotector

Detects or even crashes (❌) webdrivers such as:

For the tests, each webdriver has at least to click the button with the ID clickHere

Detections

<p float="left"> <img src="assets/example_screenshot_headless.png" width="49%" /> <img src="assets/brotector_error_message.png" width="50%" /> </p>

navigator.webdriver

navigator.webdriver (JavaScript) is set to true


runtime.enabled

Runtime is enabled
score here refers to the certainty of the occurs when:

  • Runtime.enable or Console.enable (CDP) has been called (most libraries do that, type=webdriver)
  • the user opens the devtools (type=devtools)

Input.cordinatesLeak

occurs due to crbug#1477537
CDP-Patches can be used to bypass this


window.cdc

a leak specific to chromedriver (selenium)
see stackoverflow-answer


"Input.untrusted"

Mouse event not dispatched by a user detected see Event.isTrusted property


canvasMouseVisualizer

CanvasRenderingContext2D.arc has been called with

  • cordinates +-5px at current mouse position
  • canvas +-1px covers the whole page
  • canvas passes pointerEvents through

UAOverride

navigator.userAgentData.getHighEntropyValues has empty data
(type=HighEntropyValues.empty, UA meaning UserAgent)


SeleniumScriptInjection

  • Detects when selenium tries to inject a script (even used for finding elements)
  • makes selenium (any chromedriver-based framework) crash (bypassable for testing ?crash=false)
  • just don't use selenium lol

PWinitScript

  • detects playwright>=1.46.1, induced with commit

stack.signature

detects injected javascript based on the stack trace in hooks


pdfStyle

a detection regarding PDF rendering, specific to puppeteer github issue or --enable-field-trial-config
Note: There might be false-positives


popupCrash

crashes chrome when automated with playwright or puppeteer due to crbug#340836884 (bypassable for testing ?crash=false)

Contribution

feel free to

  • open [feature request]s for driver detections
  • open PRs
  • use the discussions

Licence

see LICENSE

Author & Copyright

Aurin Aegerter (aka Steve, kaliiiiiiiiii)

Thanks // References

Related Skills

View on GitHub
GitHub Stars288
CategoryDevelopment
Updated3d ago
Forks14

Languages

JavaScript

Security Score

100/100

Audited on Aug 4, 2026

No findings