| name | adb-form-filler |
| description | Fill forms and interact with Android apps via ADB Wireless Debugging on user's tablet. Use when automating form input, navigating screens, or controlling Android UI elements through ADB commands. |
ADB Form Filler
Fill forms and control Android UI directly via ADB on the user's tablet device.
Context
- User has Android tablet with ADB Wireless Debugging enabled permanently
- Tablet connection is persistent - agent can fill forms on screen vs isolated browser
- Laptop in repair (not permanent) - tablet is primary control surface
- User reviews output, adjusts prices, hits "post" himself
Prerequisites
adb devices
Core Commands
Navigate
adb shell input tap <x> <y>
adb shell input swipe <x1> <y1> <x2> <y2> <duration_ms>
adb shell input keyevent 4
adb shell input keyevent 3
adb shell input text "<text>"
Form Filling
adb shell input text "Hello%World"
adb shell input tap <x> <y>
adb shell input keyevent 67
adb shell input keyevent 66
adb shell input keyevent 61
Screen Analysis
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
adb shell wm size
adb shell uiautomator dump
adb pull /sdcard/window_dump.xml
Workflow
- Verify connection -
adb devices shows device
- Screenshot current screen - identify form fields
- Plan coordinates - map out text field positions
- Fill fields sequentially - tap, type, tab/submit
- Verify completion - screenshot after submit
Pitfalls
- ADB disconnects - reconnect before starting:
adb connect <IP>:<port>
- Text encoding - special characters may fail, use ASCII where possible
- Screen rotation - coordinates change, always verify orientation
- Overlapping elements - some apps have hidden overlays, screenshot first
- Keyboard popup - may cover fields, dismiss with back button first
Common Patterns
Login Flow
adb shell input tap <username_x> <username_y>
adb shell input text "<username>"
adb shell input tap <password_x> <password_y>
adb shell input text "<password>"
adb shell input keyevent 66
Search & Select
adb shell input text "<search_term>"
adb shell input keyevent 66
adb shell input tap <result_x> <result_y>
Verification
After any form submission:
- Take screenshot
- Verify success message or next screen appears
- Check for error states (red text, popup dialogs)