llms.txt Content
# Drengr
> AI-native mobile testing. No selectors, no XPath, no flaky locators.
Drengr is an MCP server that gives AI agents eyes and hands on mobile
devices. It connects to Android, iOS, and cloud device farms, exposing
3 tools: drengr_look (observe), drengr_do (act), drengr_query (query).
## Docs
- [Website](https://drengr.dev)
- [Install](https://drengr.dev): `npm install -g drengr`
## Tools
- drengr_look: Observe the device screen (annotated image or ~300-token text)
- drengr_do: Execute actions (tap, type, swipe, long_press, back, home, launch, wait, key, install, clear_and_type, scroll_to_top, scroll_to_bottom) with automatic situation reports
- drengr_query: Query device state (connect, devices, activity, crash, find, explore, session, network, logcat, keyboard, app_state, assert, diff, ui_dump, analyze)
## Platforms
- Android via ADB (physical devices and emulators)
- iOS via simctl (booted simulators on macOS)
- Cloud: BrowserStack, SauceLabs, AWS Device Farm, LambdaTest, Perfecto, Kobiton, any Appium hub
## LLM Providers
Gemini (default), OpenAI, Anthropic, Groq, Together, Fireworks, Ollama (local/offline)
## Install
```
npm install -g drengr
curl -fsSL https://drengr.dev/install.sh | bash
```
## CLI
```
drengr mcp Start MCP server (stdio)
drengr devices List connected devices
drengr run Run AI agent task on device
drengr test Run YAML test suite
drengr explore BFS app screen mapping
drengr setup Generate MCP config for Claude/Cursor/Windsurf/VS Code
drengr doctor Check system health
```
## Key Capabilities
- Text-only mode: ~300 tokens per screen (100x cheaper than vision)
- Vision escalation: auto-switches to screenshots when elements lack labels
- Situation reports: structured diffs after every action (new/disappeared elements, navigation, crash, stuck detection)
- Screen maps: BFS exploration builds navigation graphs cached at ~/.drengr/maps/
- Network capture: HTTP calls from device logs returne