Skip to content

Commit 4e601db

Browse files
committed
docs: add comprehensive guides documentation for all BotBrowser features, cross-link from existing docs
1 parent 89da507 commit 4e601db

71 files changed

Lines changed: 9755 additions & 101 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

ADVANCED_FEATURES.md

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ Technical architecture and implementation details behind BotBrowser's fingerprin
1616

1717
BotBrowser offers three configuration interfaces with a clear priority order:
1818

19-
1. **CLI `--bot-config-*` flags** (highest priority) [CLI Flags Reference](CLI_FLAGS.md)
20-
2. **Profile `configs` JSON** (medium priority) [Profile Configuration Guide](profiles/PROFILE_CONFIGS.md)
21-
3. **CDP commands** (runtime, per-context) [Per-Context Fingerprint](PER_CONTEXT_FINGERPRINT.md) | [CDP Quick Reference](#cdp-quick-reference)
19+
1. **CLI `--bot-config-*` flags** (highest priority): [CLI Flags Reference](CLI_FLAGS.md)
20+
2. **Profile `configs` JSON** (medium priority): [Profile Configuration Guide](profiles/PROFILE_CONFIGS.md)
21+
3. **CDP commands** (runtime, per-context): [Per-Context Fingerprint](PER_CONTEXT_FINGERPRINT.md) | [CDP Quick Reference](#cdp-quick-reference)
2222

2323
Smart auto-configuration: timezone, locale, and languages derive from your proxy IP. Override only when your scenario requires it.
2424

@@ -46,6 +46,8 @@ Smart auto-configuration: timezone, locale, and languages derive from your proxy
4646
4747
For proxy configuration syntax and examples, see [CLI Flags: Enhanced Proxy Configuration](CLI_FLAGS.md#enhanced-proxy-configuration).
4848

49+
**Related guides:** [Proxy Configuration](docs/guides/network/PROXY_CONFIGURATION.md) · [DNS Leak Prevention](docs/guides/network/DNS_LEAK_PREVENTION.md) · [UDP over SOCKS5](docs/guides/network/UDP_OVER_SOCKS5.md) · [WebRTC Leak Prevention](docs/guides/network/WEBRTC_LEAK_PREVENTION.md) · [Port Protection](docs/guides/network/PORT_PROTECTION.md) · [Dynamic Proxy Switching](docs/guides/network/DYNAMIC_PROXY_SWITCHING.md)
50+
4951
<a id="port-protection"></a>
5052
### Port Protection (PRO)
5153

@@ -89,9 +91,9 @@ await page.goto('https://example.co.uk');
8991
**Supported protocols:** `socks5://`, `socks5h://`, `http://`, `https://`, all with embedded authentication (`user:pass@host:port`).
9092

9193
**Optional parameters:**
92-
- `proxyIp` provides the proxy's exit IP to skip automatic IP detection, resulting in faster geo-based timezone and language adaptation.
93-
- `proxyBypassList` semicolon-separated list of hosts/patterns that should bypass the proxy (e.g., `localhost;*.internal.com`).
94-
- `proxyBypassRgx` regex pattern (RE2 syntax) for URLs that should bypass the proxy. Supports `|` for multiple patterns (e.g., `cdn\.example\.com|/api/health`).
94+
- `proxyIp`: provides the proxy's exit IP to skip automatic IP detection, resulting in faster geo-based timezone and language adaptation.
95+
- `proxyBypassList`: semicolon-separated list of hosts/patterns that should bypass the proxy (e.g., `localhost;*.internal.com`).
96+
- `proxyBypassRgx`: regex pattern (RE2 syntax) for URLs that should bypass the proxy. Supports `|` for multiple patterns (e.g., `cdn\.example\.com|/api/health`).
9597

9698
---
9799

@@ -116,6 +118,8 @@ Protection model:
116118

117119
For noise configuration flags, see [CLI Flags: Rendering, Noise & Media/RTC](CLI_FLAGS.md#profile-configuration-override-flags).
118120

121+
**Related guides:** [Canvas](docs/guides/fingerprint/CANVAS.md) · [WebGL](docs/guides/fingerprint/WEBGL.md) · [Audio](docs/guides/fingerprint/AUDIO.md) · [Noise Seed Reproducibility](docs/guides/fingerprint/NOISE_SEED_REPRODUCIBILITY.md) · [Font](docs/guides/fingerprint/FONT.md)
122+
119123
<a id="active-window-emulation"></a>
120124
### Active Window Emulation
121125

@@ -155,6 +159,8 @@ Complete WebRTC fingerprint protection and network privacy.
155159
- ICE server presets and custom lists via [`--bot-webrtc-ice`](CLI_FLAGS.md#behavior--protection-toggles) (ENT Tier1) to standardize STUN and TURN endpoints observed by page JavaScript
156160
- Combined with [UDP-over-SOCKS5](CLI_FLAGS.md#udp-over-socks5-ent-tier3) (ENT Tier3) for Chromium-level QUIC and STUN tunneling
157161

162+
**Related guides:** [WebRTC Leak Prevention](docs/guides/network/WEBRTC_LEAK_PREVENTION.md) · [Incognito Fingerprinting](docs/guides/fingerprint/INCOGNITO.md)
163+
158164
<a id="chrome-behavior-emulation"></a>
159165
### Chrome Behavior Emulation
160166

@@ -205,6 +211,8 @@ Advanced font rendering with consistent results across hosts.
205211

206212
> **Implementation Detail:** Low-level rendering paths in Skia (2D/Canvas) and HarfBuzz (text shaping) are tuned to align metrics and glyph shaping across OS targets. Targeted WebGL/WebGPU parameter controls keep visual output stable across contexts.
207213
214+
**Related guides:** [Font Fingerprinting](docs/guides/fingerprint/FONT.md) · [CJK Font Rendering](docs/guides/platform/CJK_FONT_RENDERING.md)
215+
208216
### Cross-Platform Consistency
209217

210218
Maintains fingerprint and behavior consistency across different host systems.
@@ -221,6 +229,8 @@ Maintains fingerprint and behavior consistency across different host systems.
221229
- Maintains identical touch and mouse event patterns
222230
- Emulates authentic device behavior across platforms
223231

232+
**Related guides:** [Cross-Platform Profiles](docs/guides/platform/CROSS_PLATFORM_PROFILES.md) · [Windows on Mac/Linux](docs/guides/platform/WINDOWS_ON_MAC_LINUX.md) · [Android Emulation](docs/guides/platform/ANDROID_EMULATION.md) · [Device Emulation](docs/guides/platform/DEVICE_EMULATION.md)
233+
224234
### Touch & Input Reliability
225235

226236
- Pointer/touch bridging fixes ensure `Input.dispatchMouseEvent` and synthesized taps land reliably, even in nested iframe trees
@@ -272,6 +282,8 @@ Comprehensive hardware emulation and fingerprint management.
272282

273283
**CPU Core Scaling Protection**: When `navigator.hardwareConcurrency` is set by the profile, Worker threads are automatically constrained to match the claimed core count via CPU affinity on Linux and Windows. This ensures parallel computation scaling curves align with the claimed value.
274284

285+
**Related guides:** [Performance](docs/guides/fingerprint/PERFORMANCE.md) · [Stack Depth](docs/guides/fingerprint/STACK_DEPTH.md) · [FPS Control](docs/guides/fingerprint/FPS_CONTROL.md) · [Navigator Properties](docs/guides/fingerprint/NAVIGATOR_PROPERTIES.md)
286+
275287
<details>
276288
<summary><strong>Full details: Deep System Integration</strong></summary>
277289

@@ -408,11 +420,11 @@ Comprehensive hardware emulation and fingerprint management.
408420

409421
Execute JavaScript with privileged `chrome.debugger` access, with no framework dependencies.
410422

411-
- **Earlier intervention** Execute before page navigation
412-
- **Privileged context** Full `chrome.debugger` API access
413-
- **Isolated execution** Framework artifacts do not appear in page context
423+
- **Earlier intervention.** Execute before page navigation.
424+
- **Privileged context.** Full `chrome.debugger` API access.
425+
- **Isolated execution.** Framework artifacts do not appear in page context.
414426

415-
Documentation: [Bot Script Examples](examples/bot-script)
427+
Documentation: [Bot Script Examples](examples/bot-script) · [Guide](docs/guides/getting-started/BOT_SCRIPT.md)
416428

417429
<a id="playwright-puppeteer-integration"></a>
418430
### Playwright/Puppeteer Integration
@@ -424,14 +436,16 @@ Privacy-preserving integration with popular frameworks.
424436
- Eliminates framework-specific fingerprint signatures
425437
- ChromeDriver compatibility and Selenium Grid integration support
426438

439+
**Related guides:** [Playwright](docs/guides/getting-started/PLAYWRIGHT.md) · [Puppeteer](docs/guides/getting-started/PUPPETEER.md) · [Automation Consistency](docs/guides/getting-started/AUTOMATION_CONSISTENCY.md)
440+
427441
---
428442

429443
<a id="mirror-distributed-privacy-consistency"></a>
430444
## Mirror: Distributed Privacy Consistency (ENT Tier3)
431445

432446
Verify that privacy protection works consistently across platforms and networks. Run a controller instance and multiple clients to ensure all instances maintain identical privacy defenses.
433447

434-
**[Complete Mirror documentation](tools/mirror/)** including setup, CLI flags, CDP examples, and troubleshooting.
448+
**[Complete Mirror documentation](tools/mirror/)** including setup, CLI flags, CDP examples, and troubleshooting. See also the [deployment guide](docs/guides/deployment/MIRROR_DISTRIBUTED.md).
435449

436450
---
437451

@@ -473,6 +487,7 @@ All commands live under the `BotBrowser` CDP domain. Send them through a CDP ses
473487
- [CLI Flags Reference](CLI_FLAGS.md) - Complete command-line options and usage examples
474488
- [Profile Configuration](profiles/PROFILE_CONFIGS.md) - Profile JSON field reference
475489
- [Installation Guide](INSTALLATION.md) - Platform-specific setup
490+
- [Guides](docs/guides/) - Step-by-step guides for proxy, fingerprint, identity, platform emulation, and deployment
476491
- [Per-Context Fingerprint](PER_CONTEXT_FINGERPRINT.md) - Independent fingerprint per BrowserContext
477492
- [Validation Results](VALIDATION.md) - Research and testing data
478493
- [Mirror](tools/mirror/) - Distributed privacy consistency verification

BENCHMARK.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,12 +284,15 @@ For enterprise users running concurrent fingerprint profiles, Per-Context Finger
284284

285285
## Related Documentation
286286

287+
- [Guides](docs/guides/) - Comprehensive guides for all BotBrowser features
287288
- [Main README](README.md) - Project overview and quick start
288289
- [Per-Context Fingerprint](PER_CONTEXT_FINGERPRINT.md) - Architecture and API details
289290
- [Validation Results](VALIDATION.md) - Research data across 31+ tracking scenarios
290291
- [Advanced Features](ADVANCED_FEATURES.md) - Comprehensive technical capabilities
291292
- [CLI Flags Reference](CLI_FLAGS.md) - Complete command-line options
292293

294+
Related guides: [Performance Optimization](docs/guides/deployment/PERFORMANCE_OPTIMIZATION.md)
295+
293296
---
294297

295298
**[Legal Disclaimer & Terms of Use](https://github.com/botswin/BotBrowser/blob/main/DISCLAIMER.md)[Responsible Use Guidelines](https://github.com/botswin/BotBrowser/blob/main/RESPONSIBLE_USE.md)**. BotBrowser is for authorized fingerprint protection and privacy research only.

CHANGELOG.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@
247247
- **Custom public IP service**: Added `--bot-ip-service` so you can point BotBrowser at your own IP lookup endpoint when you want full control over how the public egress IP is detected. Multiple endpoints can be provided as a comma-separated list, and BotBrowser will race them and use the fastest successful response.
248248

249249
### Improvements
250-
- **Proxy auth parsing**: Proxy credentials now support additional separators in the username field, including `,` and `|`. This makes structured usernames work reliably with common proxy provider formats, for example `socks5://user_abc,type_mobile,country_GB,session_1234:11111@portal.proxy.io:1080`.
250+
- **Proxy auth parsing**: Proxy credentials now support additional separators in the username field, including `,` and `|`. This makes structured usernames work reliably with common proxy provider formats, for example `socks5://user_abc,type_mobile,country_GB,session_1234:11111@portal.proxy.example.com:1080`.
251251
- **Extension sync (ENT Tier2)**: Updated extension `ghbmnnjooekpmoecnnnilnnbdlolhkhi` to version 1.98.1 to match the latest Chrome Stable packaging and behavior.
252252

253253
### Fixes
@@ -285,7 +285,7 @@
285285
- **Screen metrics from profile**: `screen.width/height` now reliably come from the profile on every path, avoiding one-off host reads in edge cases.
286286

287287
### Improvements
288-
- **SOCKS5H support**: Added robust support for SOCKS5H protocol across platforms and failure modes. Hostname resolution remains within proxy tunnels, avoiding DNS exposure, with improved connection setup on flaky endpoints.
288+
- **SOCKS5H support**: Added full support for SOCKS5H protocol across platforms and failure modes. Hostname resolution remains within proxy tunnels, avoiding DNS exposure, with improved connection setup on flaky endpoints.
289289
- **Noise-seed stability**: Noise seeds adapt more naturally to environment changes so fingerprints remain protected across runs while keeping per-profile diversity.
290290

291291
---
@@ -358,7 +358,7 @@ Example (Edge browser emulation):
358358
### Fixes
359359
- **Ubuntu Bluetooth emulation leakage**: Fixed a Linux/Ubuntu-specific issue where emulated Bluetooth properties could leak protection-breaking state. Bluetooth emulation exposure is now unified so websites can't infer environment details from mismatched availability/signaling.
360360
- **Media types (expand) default**: Resolved an issue where `--bot-config-media-types=expand` (and the default behavior) could be ignored in some scenarios. With this fix, local decoders are correctly surfaced so users can **select resolutions** on major video sites.
361-
- **WebRTC SDP negotiation**: Corrected edge cases where SDP **audio codec selection or direction attributes** failed to negotiate. More robust media negotiation prevents call/setup loops and reduces tracking surface from abnormal SDP.
361+
- **WebRTC SDP negotiation**: Corrected edge cases where SDP **audio codec selection or direction attributes** failed to negotiate. Reliable media negotiation prevents call/setup loops and reduces tracking surface from abnormal SDP.
362362

363363
---
364364

@@ -1025,7 +1025,7 @@ Refined per-OS rendering differences (fonts, CSS, anti-aliasing, text sizing) so
10251025
### Improved
10261026
- **On-Demand Proxy Geo & Timezone Fetch**
10271027
- Shifted proxy geolocation, timezone, and public IP retrieval from browser startup to page load via a request interceptor.
1028-
- Eliminates startup delays while proxy is initializing and enables each `BrowserContext` to use a different proxy seamlessly for testing tasks.
1028+
- Eliminates startup delays while proxy is initializing and enables each `BrowserContext` to use a different proxy for testing tasks without restart.
10291029
10301030
10311031
---
@@ -1413,7 +1413,7 @@ Example:
14131413
14141414
### Improved
14151415
- **Removed RLZ Support:** RLZ support has been removed as it is unnecessary for our product and caused issues in some scenarios.
1416-
- **AdInterest Group Support:** Enhanced support for **AdInterest**, specifically `getInterestGroupAdAuctionData` in Chrome, which now functions seamlessly in **BotBrowser**, improving resilience against tracking checks.
1416+
- **AdInterest Group Support:** Enhanced support for **AdInterest**, specifically `getInterestGroupAdAuctionData` in Chrome, which now works correctly in **BotBrowser**, improving resilience against tracking checks.
14171417
- **Fingerprint Caching:** Introduced caching for specific fingerprints to improve overall performance.
14181418
14191419
### Added

0 commit comments

Comments
 (0)