Loading...
Loading...
Test Android apps on a rooted device. Decompile APKs, intercept traffic, parse UI, test for IDORs, bypass SSL pinning, hook methods with Frida, inspect exported components, read local storage, and find sensitive data. Use when asked to "test this app", "find bugs", "pentest", "reverse engineer", "decompile", "intercept requests", "check for IDORs", "bypass cert pinning", "hook this method", or "check deeplinks".
npx skill4agent add workersio/spec workers-app-testeradb shell pm list packages -3
adb shell dumpsys activity activities | grep -m 1 -E 'topResumedActivity=|ResumedActivity:|mFocusedApp='SESSION_DIR=/tmp/workers-app-tester-$(date +%Y%m%d-%H%M%S)
mkdir -p "$SESSION_DIR"PRESERVE_AUTH=1adb shell settings put global http_proxy 10.0.2.2:8080
ANDROID_APP_TESTER_OUT_DIR="$SESSION_DIR" \
ANDROID_APP_TESTER_PACKAGE="<package>" \
ANDROID_APP_TESTER_PRESERVE_AUTH=1 \
nohup mitmdump --set block_global=false --listen-host 0.0.0.0 --listen-port 8080 \
-s scripts/capture.py >"$SESSION_DIR/mitmdump.log" 2>&1 &
echo $! >"$SESSION_DIR/mitmdump.pid"10.0.2.2adb shell am force-stop <package> || true
adb shell monkey -p <package> -c android.intent.category.LAUNCHER 1bypass.jspython3 scripts/ui.py[1] "Sign In" btn @ (540,1200) bounds=[380,1150][700,1250] clickable
[2] "Email" input @ (540,400) bounds=[100,350][980,450] focusableadb shell input tap 540 1200adb shell input tap 540 400
adb shell input text "test@example.com"python3 scripts/traffic.py --input "$SESSION_DIR/traffic.jsonl" --since-seconds 15 --limit 10python3 scripts/traffic.py --input "$SESSION_DIR/traffic.jsonl" --since-seconds 15 --show-headers --show-bodypython3 scripts/analyze.py --input "$SESSION_DIR/traffic.jsonl" --mode fullendpointsidorauthexposureheaders| Action | Command |
|---|---|
| Tap | |
| Type | |
| Scroll down | |
| Scroll up | |
| Back | |
| Home | |
| Enter | |
| Long press | |
| Launch app | |
| Force stop | |
kill "$(cat "$SESSION_DIR/mitmdump.pid")" 2>/dev/null || true
adb shell settings delete global http_proxy
adb shell "su -c 'pkill frida-server'" 2>/dev/null || trueui.pysleepsleep 1sleep 2sleep && commandui.py&&| Script | Purpose |
|---|---|
| Smart UI parser. Filters to interactive elements with spatial dedup. |
| mitmproxy addon. Logs to JSONL. Set |
| Traffic viewer. |
| Security analyzer. Modes: |
| SSL pinning bypass. TrustManagerImpl, OkHttp3, SSLContext, Conscrypt. |