CLI Reference
Commands
Section titled “Commands”| Command | Description |
|---|---|
probe init |
Scaffold probe.yaml and tests/ directory |
probe test [path] |
Run .probe test files |
probe lint [path] |
Validate .probe files for syntax errors |
probe device list |
List connected devices/simulators |
probe device start |
Start an emulator/simulator |
probe record |
Record user interactions as ProbeScript |
probe report |
Generate HTML report from test results |
probe migrate |
Convert Maestro YAML flows to ProbeScript |
probe generate |
AI-assisted test generation |
probe studio |
Launch interactive test studio |
probe test
Section titled “probe test”Run .probe test files against a connected device.
probe test [path] [flags]| Flag | Default | Description |
|---|---|---|
--device <serial> |
auto | Target device UDID or serial |
--host <ip> |
127.0.0.1 |
Agent host IP (use device IP for WiFi testing) |
--token <string> |
— | Agent auth token (skip auto-detection; for WiFi testing) |
--parallel |
false |
Run tests in parallel across all connected devices |
--devices <serials> |
— | Comma-separated device serials for parallel execution |
--tag <tag> |
— | Run only tests matching this tag |
--timeout <duration> |
30s |
Per-step timeout |
--format <fmt> |
terminal |
Output format: terminal, junit, json |
-o, --output <path> |
— | Output file path for reports |
-v, --verbose |
false |
Verbose output |
-y, --yes |
false |
Auto-confirm destructive ops + auto-grant permissions |
--watch |
false |
Watch mode — re-run on file changes |
--video |
false |
Enable video recording per test |
--video-resolution |
720x1280 |
Android screenrecord resolution |
--video-framerate |
2 |
Video framerate (fps) |
--visual-threshold |
0.5 |
Max allowed pixel diff % for visual regression |
--visual-pixel-delta |
8 |
Pixel color delta tolerance |
--port <int> |
48686 |
Agent WebSocket port |
--dial-timeout |
30s |
WebSocket connection timeout |
--token-timeout |
30s |
Agent auth token wait timeout |
--reconnect-delay |
2s |
Post-restart reconnect delay |
--app-path <path> |
— | Install app before testing |
--adb <path> |
adb |
Override ADB binary path |
--flutter <path> |
flutter |
Override Flutter binary path |
--config <path> |
probe.yaml |
Config file path |
--shard <N/M> |
— | Run shard N of M (for parallel CI) |
--dry-run |
false |
Parse and validate without executing |
Examples
Section titled “Examples”# Run all tests verboselyprobe test tests/ -v
# Run with custom timeout and auto-confirmprobe test tests/ --device emulator-5554 --timeout 60s -y
# Generate JUnit report for CIprobe test tests/ --format junit -o reports/results.xml
# Parallel CI shardingprobe test tests/ --shard 1/3probe test tests/ --shard 2/3probe test tests/ --shard 3/3
# WiFi testing on physical iOS deviceprobe test tests/ --host 192.168.1.100 --token abc123... --device <UDID>
# Parallel across multiple devicesprobe test tests/ --parallelprobe test tests/ --devices emulator-5554,<iOS-UDID>probe lint
Section titled “probe lint”Validate .probe files without executing them.
probe lint tests/probe lint tests/smoke/login.probeprobe record
Section titled “probe record”Record user interactions and generate ProbeScript.
probe record --device <UDID> --output tests/my_flow.probeprobe record --timeout 60s -o tests/flow.probeprobe report
Section titled “probe report”Generate an HTML report from JSON test results.
probe report --input reports/results.json -o reports/report.htmlprobe report --input reports/results.json -o reports/report.html --openprobe device
Section titled “probe device”Manage connected devices and emulators.
probe device listprobe device start --platform androidprobe device start --platform iosprobe-convert
Section titled “probe-convert”Standalone tool for converting tests from other frameworks. See probe-convert for full documentation.
probe-convert <file|dir> [flags]probe-convert catalog [lang]probe-convert formats