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 |
--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/3probe 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