-
Notifications
You must be signed in to change notification settings - Fork 26
Home
Part of Damru — the open-source, Android-native stealth browser automation framework (Redroid + Playwright + CDP) for web scraping, automation testing, and anti-bot / fingerprinting research.
Documentation index for the Damru open-source browser automation framework.
Welcome to the Damru knowledge base. This directory holds project documentation, architecture plans, roadmaps, and research notes.
-
CLI setup: Run
python -m damru setupfor guided first-run configuration,python -m damru install-depsfor Linux/WSL dependencies,python -m damru install-imageto load the baked Redroid image,python -m damru install-apks --downloadfor raw Chrome/WebView/TTS APK assets plus Damru's shipped resetprop source when baking or using unbaked Redroid,python -m damru fix-wsl/fix-internetfor safe Docker/binderfs/netfilter/DNS repair,python -m damru force-profile --device <slug>for applying a named profile to a running worker,python -m damru check-envto verify setup details, andpython -m damru check preflight --jsonfor fast read-only readiness checks across VPS/VM fleets. Preflight checks Docker, ADB, binder/binderfs, image/assets, resources, ports, config, and WSL kernel state without installing, mounting, starting containers, or editing networking. -
APK assets: The raw APK bundle contains Chrome split-APK folders and matching per-version WebView/TTS/resetprop support APKs. Random profile actions rotate only through folders that include a matching WebView APK, and explicit
--chrome-versionselection fails if the matching WebView asset is missing. -
WebView Shell support:
python -m damru force-profile --browser-package org.chromium.webview_shellapplies the normal Damru Android profile plus WebView-specific command-line andapp_webview/pref_storehardening for WebView harness validation. For custom apps that embed system WebView, use the aligned baked image/APK bundle, applyforce-profile --no-chrome, then launch the app manually. Chrome CDP remains the primary automation path. -
Local UI:
python -m damru uistarts the experimental localhost dashboard for setup health, worker actions, Work Lab URL/screenshot/quick-check flows, browser viewer, native viewer command copy, gallery cleanup, and inline logs. Work Lab URL launch usesstealth-open-urlin defaultreattachmode: reuse/apply Damru stealth, detach CDP for first navigation, open with Android Chrome, then reattach CDP for inspection and manual automation. The backend is allowlisted and local-only by default; use it for setup/debugging/manual inspection, not as the stable automation API. -
Current validation: On June 4, 2026, disposable Ubuntu WSL2 with Damru's bundled WSL kernel and native Ubuntu 24.04 VPS were both tested with fresh/reset setup flows, preflight, unit tests, two Redroid workers,
quick-check, andopen-url https://example.com. Debian 13 VPS was tested separately; Docker worked, but Redroid multi-container support failed because the stock Debian VPS kernel hadCONFIG_ANDROID_BINDERFSdisabled. -
PROOF.md: Sanitized WSL/native Linux verification notes plus proof assets: Android screen recording, Example.com proof, and individual site screenshots for Amazon, Foot Locker/DataDome, Fingerprint Pro, Sannysoft, and CreepJS. -
BROWSERS_BENCHMARK_REPORT.md: Sanitized externaltechinz/browsers-benchmarkreport showing a 10/10 Damru Redroid proxy-mode bypass run, with proxy credentials and IPs removed. The upstream benchmark project is credited for target definitions, checker structure, and report shape; Damru provides the Redroid adapter. -
DEVICE_PROFILES.md: Full generated reference for the 155 Android device profiles available indamru/devices.py, including the latest 104-profile regional expansion validated on WSL Redroid. Default random selection uses the 100-profile premium pool; medium and experimental profiles are opt-in. -
VIEWER.md: Optional screenshot, video recording, and scrcpy live-view workflows. -
UI.md: Local dashboard guide with screenshots for Dashboard, Setup, Workers, Work Lab, Settings, and Logs. -
WSL_KERNEL.md: WSL2 kernel requirements for Docker bridge/NAT networking and Redroid binderfs. -
Image baking: Use
python -m damru install-apks --download, thenpython -m damru bake-image --image damru-redroid:latestinside Linux/WSL2, thendocker save damru-redroid:latest -o damru-redroid-latest.tar. The tarball is ignored by Git; keepdamru-redroid-latest.tar.sha256with the release artifact. The APK installer downloads the Chrome/WebView/TTS bundle to/home/damru/chrome-apkson Linux/WSL and copies Damru's shippedmagisk.apkthere when raw Redroid needs standaloneresetprop. Keep the full bundle root together; do not deduplicate version-matched Trichrome library splits across Chrome folders. The bake/install path replaces the system WebView provider with the matching version and fixes WebView APK permissions/cache so Android does not reject it as a writable dex file. -
AUTOMATION_GAPS_PLAN.md: Current automation status and roadmap, including what setup/check/repair flows already exist and what remains for later fleet or storage work. - Architecture notes: The README and Python API document the current CDP, Android prop, GPU, memory, proxy, WSL, and Redroid layers. Deeper internals should be added as focused docs when the implementation stabilizes.
-
CONTRIBUTING.md: Guidelines for contributing to the Damru ecosystem.
Keep this index focused on current user-facing docs. Historical notes should clearly say when they are no longer the recommended setup path.
What is Damru? Damru is the first open-source, Android-native browser automation framework — it runs real Android (Redroid) in Docker and drives Chrome via the Chrome DevTools Protocol (CDP) with OS-level fingerprint spoofing, for authorized web scraping, automation testing, and anti-bot / fingerprinting research.
Which platforms are supported?
Ubuntu 24.04 LTS is the only officially supported host — both native Linux and Ubuntu WSL2 with Damru's bundled WSL kernel pass all smoke tests. Debian 13 kernels currently lack CONFIG_ANDROID_BINDERFS, so they are not supported for Redroid multi-container pools.
Does Damru use JavaScript injection for spoofing?
No. Damru's "Zero JS Injection" approach applies all spoofing at the OS level (resetprop, iptables), binary level (Vulkan/GLES patching), and protocol level (CDP). No Object.defineProperty hacks are used, eliminating the most detectable fingerprinting vector.
How do I get started?
Install with pip install git+https://github.com/akwin1234/damru.git, then run python -m damru setup for guided first-run configuration. See PYTHON_API.md for the full API reference and the main README for the step-by-step deployment guide.
What anti-bot systems has Damru bypassed in documented tests? Damru achieved a 10/10 (100%) bypass rate against Google Search, Cloudflare, DataDome, Amazon, Ticketmaster/Imperva, Akamai, PerimeterX/HUMAN, Kasada, and Reddit. Full results are in the Browser Benchmark Report.
- Python API Reference
- Verification Proof
- Browser Benchmark Report
- Device Profiles
- Automation Status & Roadmap
Keywords: Android browser automation · stealth automation · antidetect · web scraping · Redroid · Playwright · CDP · fingerprinting research