Proactive Reliability for Mobile Apps
Version License: MIT Homebrew PyPI
Revyl is an AI-powered testing platform for mobile apps. Define tests in natural language, run them on cloud devices, and catch bugs before your users do. It works with iOS and Android, supports Expo / React Native / Flutter / native builds, and integrates with your CI pipeline and AI coding tools.
curl -fsSL https://revyl.com/install.sh | shbrew install RevylAI/tap/revyl
pipx install revyl
uv tool install revyl
Create a free account at app.revyl.ai, then log in via the CLI:
revyl auth login # Browser-based login (stores credentials locally)Or set an API key directly (generate one from your dashboard):
export REVYL_API_KEY=your-api-keycd your-app revyl doctor # Check CLI, auth, connectivity revyl auth login # Browser-based login (if not already authed) revyl init # Guided wizard: build system, apps revyl skill install --force # Install recommended agent skills revyl build upload # Build and upload a dev binary revyl dev # Launch TUI: live device + hot reload
When you're ready to run outside the dev loop:
revyl test run login-flow --build # Build, upload, and run in one step revyl workflow create smoke-tests --tests login-flow,checkout revyl workflow run smoke-tests # Run the full workflow
YAML-first creation can bootstrap local state without a pre-existing .revyl/config.yaml:
revyl test create login-flow --from-file ./login-flow.yaml revyl test create --from-session <session-id> login-flow --app <app-id>
See Creating Tests for the full authoring workflow, YAML examples, module imports, and troubleshooting.
revyl devstarts your local dev server, tunnels it to a cloud device, and installs the latest build automatically. Use--platform androidor--platform iosto pick a platform (defaults to iOS).
Interactive revyl init asks which AI coding tool you use and installs the
recommended Revyl skills for that tool automatically. Use the bundled install
for the recommended workflow bundle, or install a single skill when the agent
should focus on one intent:
revyl skill list revyl skill install --force # Install recommended skills revyl skill install --name revyl-cli-dev-loop --force # Dev loop + device exploration revyl skill install --name revyl-cli-create --force # Stable YAML test authoring revyl skill install --name revyl-cli-auth-bypass --force # Auth bypass setup revyl skill install --name revyl-cli-auth-bypass-expo --force # Expo auth bypass leaf revyl skill install --name revyl-cli-auth-bypass-react-native --force # React Native leaf revyl skill install --name revyl-cli-auth-bypass-ios --force # Native iOS leaf revyl skill install --name revyl-cli-auth-bypass-android --force # Native Android leaf revyl skill install --name revyl-cli-auth-bypass-flutter --force # Flutter leaf revyl skill install --cursor --force # Force Cursor if auto-detect is ambiguous revyl skill install --codex --force # Force Codex if auto-detect is ambiguous revyl skill install --claude --force # Force Claude Code if auto-detect is ambiguous revyl skill install --global --force # Install for all projects revyl skill show --name revyl-cli-dev-loop revyl skill export --name revyl-cli-create -o SKILL.md
Use revyl-cli-dev-loop when you want the agent to start or attach to a generic
Revyl dev loop, interact with the device, and verify with screenshots or
reports. Use revyl-cli-create when you want the agent to author or refine a
stable Revyl YAML test, validate it, push it, run it, and iterate from reports.
Use revyl-cli-auth-bypass when the agent should set up test-only auth bypass
and choose the platform recipe after inspecting the app. Use
revyl-cli-auth-bypass-* leaf skills only when the app stack is already known
or after the parent skill delegates to the matching recipe.
Example prompts:
Use the revyl-cli-dev-loop skill. Detect the app stack, start or attach to the Revyl dev loop, keep it running after Dev loop ready, and verify with revyl device screenshot before changing strategy.
Use the revyl-cli-create skill. Create a checkout smoke test from this flow, validate it, push it, and run it once.
Use the revyl-cli-auth-bypass skill. Set up test-only auth bypass for this app and verify valid and rejected links on a Revyl device.
| Feature | Command | Docs |
|---|---|---|
| Run tests | revyl test run <name> |
Commands |
| Run workflows | revyl workflow run <name> |
Commands |
| Cloud devices | revyl device start |
Commands |
| Dev loop (Expo) | revyl dev |
Commands |
| Build and upload | revyl build upload |
Commands |
| CI/CD | GitHub Actions | CI/CD |
| Device SDK | pip install revyl[sdk] |
Device SDK |
| Agent skills | revyl skill install |
Skills |
- Command Reference -- full list of every command and flag
- Creating Tests -- YAML-first workflows, modules, and troubleshooting
- Configuration --
.revyl/config.yamlreference - Agent Skills -- embedded skills for device loops and test creation
- Device SDK -- Programmatic device control
- CI/CD -- GitHub Actions integration
- Development -- internal dev workflow, hot reload,
--devmode - Releasing -- version bumping, release pipeline
- Public Docs -- full documentation site
Xcode / Command Line Tools errors during brew upgrade revyl
softwareupdate --all --install --force sudo xcode-select -s /Library/Developer/CommandLineTools brew upgrade revyl
If softwareupdate does not install Command Line Tools, reinstall them:
sudo rm -rf /Library/Developer/CommandLineTools sudo xcode-select --install
If you use full Xcode builds, install the latest Xcode version from the App Store and then run:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
Homebrew directory ownership errors
sudo chown -R "$(whoami)" /opt/homebrew /Users/"$(whoami)"/Library/Caches/Homebrew /Users/"$(whoami)"/Library/Logs/Homebrew chmod -R u+w /opt/homebrew /Users/"$(whoami)"/Library/Caches/Homebrew /Users/"$(whoami)"/Library/Logs/Homebrew
MIT