visor --help, visor -h, or invoke the CLI with no command, the CLI prints a plain-text usage summary instead. If you run visor --version or visor -v, the CLI prints the package version instead.
Top-level envelope
Error payload
Run result
When a scenario run succeeds or fails,data.run contains a run result.
Step result
Map metadata
Mapped execution metadata uses these fields:
Direct action commands return this object in
data.map. Scenario runs return it in data.run.map. A routed or repaired step may also include details.map.route, an ordered list of hidden route actions Visor performed before the requested step action.
visor discover adds data.map.summary when Visor enables mapped execution and can read the persisted map file. You can safely share the summary in reviews because it does not include the host map path.
Discovery annotation result
Whenvisor discover --annotate-current <file|-> succeeds, data.annotation confirms the semantic update applied to the variant observed by that command.
The same response includes
data.screen.variant_id and data.screen.screen_id. Visor applies annotation before data.crawl when you use both options.
data.observation_token identifies the exact discovery observation. Pass it back with --observation-token to annotate without another device source read. data.memory contains the compact current-screen slice, relevant routes, and semantic gaps.
Route result
visor route returns these fields in data:
Each step reports
success, runtime_failure, or verification_failure. A path reports completed, failed, or skipped.
Assertion result
Assertion results are plain objects with these fields:Benchmark result payload
Benchmark responses store their command-specific payload indata.
Validation payload
Validation responses use thisdata structure:
Important behavior:
- schema-invalid scenarios return
status: "ok"withdata.valid: falseand a non-zero process exit code - malformed JSON or unreadable files return a failure envelope with
status: "fail"
severitycodemessagepath