Flags Reference
jevitate explore takes one flag set for all six modes (--strategy goal
| exploratory | adversarial | coverage | usability, plus
--feature <name>). Some flags only mean something in some modes: a few are
refused elsewhere (exit 64), the rest are accepted and do nothing. This page names them. Every flag
of every command, with its description, is in the generated
docs/cli.md.
Target & scope
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--url | req | req | req | req | req | req |
--allow | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--goal | req* | — | — | — | — | req (the job) |
--feature | — | req (selects it) | — | — | — | — |
--route | — | ✓ (replaces the scope) | ✓ (widens) | ✓ (widens) | ✓ (widens) | — |
--scope app | — | — | ✓ | ✓ | — | — |
--app-class | — | — | — | — | — | req |
* A goal with no --success is a find-out goal: it ends with an answer grounded in text the run saw, and is read-only unless you pass --allow-writes. Coverage and exploratory runs stay on the start URL's route by default.
Success checks
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--success | ✓ (repeatable) | 64 | 64 | 64 | 64 | ✓ |
--success-when | ✓ | 64 | 64 | 64 | 64 | ✓ |
--allow-vacuous-checks | ✓ | 64 | 64 | 64 | 64 | ✓ |
On a usability run, --success checks decide whether the job was done, exactly as on a goal run. Every other mode refuses them rather than silently ignoring them.
Authenticated apps & secrets
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--storage-state | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--save-storage-state | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--secret | ✓ | — | — | — | ✓ | ✓ |
--secret-field | ✓ | 64 | 64 | 64 | 64 | ✓ |
--totp | ✓ | 64 | 64 | 64 | 64 | ✓ |
--fixture | ✓ | 64 | 64 | 64 | 64 | ✓ |
--fixtures / --before / --after | ✓ | 64 | 64 | 64 | 64 | 64 |
--actor | ✓ | 64 | 64 | 64 | 64 | 64 |
--secret only redacts a value; it is never typed. --secret-field and --totp bind a login or MFA field to an environment variable that code types; under any other strategy they are refused (exit 64). --fixture is a local file for an upload control; --fixtures (and --before/--after hooks, with --allow-shell-hooks) seed and reset app state around a goal run and every replay.
Conversational pages
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--reply-wait-ms | ✓ | — | — | — | — | ✓ |
--reply-ceiling-ms | ✓ | — | — | — | — | ✓ |
--reply-max-chars | ✓ | — | — | — | — | ✓ |
Bounds
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--max-actions | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--max-decisions | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--stall-timeout | — | ✓ | ✓ | ✓ | — | — |
--hang-replays | ✓ | — | — | — | ✓ | — |
--max-actions caps executed mutations and navigations only. A wait or scroll decision never increments it; only --max-decisions and the built-in no-progress detector bound a run that keeps deciding to wait.
Adversarial thresholds (adversarial only, not coverage)
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--min-control-coverage | — | — | — | — | ✓ | — |
--no-require-form-submit | — | — | — | — | ✓ | — |
Despite the name, --min-control-coverage and --no-require-form-submit only decide whether an adversarial run that found nothing counts as clean. --strategy coverage does not read them.
Oracles
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--invariants | ✓ | ✓ | ✓ | ✓ | ✓ | budget part only |
--log-source / --log-defect | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--check-overflow | — | — | ✓ (defect) | ✓ (defect) | ✓ (defect) | ✓ (signal) |
Watch, record and capture
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--headed / --slow-mo | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--no-overlay | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--record-video | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--screenshots | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--evidence-video | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Headless by default. --headed without a display is refused (exit 64); use --record-video. --no-overlay only matters with --headed. See Demos & Environments.
Issue filing
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--file-issues | ✓ | — | — | — | ✓ | — |
--issue-repo / --jevitate-repo | ✓ | — | — | — | ✓ | — |
Every run writes redacted issue drafts; only goal and adversarial runs file them, and with --evidence-video only after their media is linked.
Emulation
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--viewport / --device | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Mutually exclusive. The emulation is recorded on the Recording, so verify-fix and regressions replay at the same size.
Gateways & output
| Flag | goal | feature | exploratory | coverage | adversarial | usability |
|---|---|---|---|---|---|---|
--real / --fake-ai | req (one) | — (model-free) | req (one) | req (one) | req (one) | req (one) |
--json | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--out | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
--real and --fake-ai together are refused (exit 64). Adversarial and feature missions plan in code: --feature needs no gateway, and on adversarial --fake-ai only replaces advisory calls (nothing it reports depends on them). Without --json every strategy prints a human summary; with it, the one-line {v, ok, data} envelope.
Every strategy
These apply to every mode (see docs/cli.md for each one's exact semantics):
--api-prefix · --settle-ignore · --long-poll-ms · --ignore-no-progress (timing & settle)
--deny · --paid · --allow-destructive · --read-rpc (click and write safety)
--repeat / --min-agreement · --persona name=storageState · --personas (repeat-and-vote, persona matrix)
--browser-executable · --browser-channel · --browser-arg (which Chromium) See the dev-server recipe for the timing and settle flags.
Other commands: environments, demo mode and capture
| Flag | Commands |
|---|---|
--env <name> / --base-url <origin> | journey run, journey annotate, journey demo, regression run, load run; demo requires --env |
--headed / --slow-mo | explore, journey run, journey demo, demo, demo approve, verify-fix, regression capture, regression run |
--record-video [dir] | explore, journey run, verify-fix (before/after clips); mission queue (a switch) |
--screenshots [screens|steps|dir] | explore, journey run, journey annotate, journey demo, verify-fix; mission queue (a mode, never a path) |
--evidence-video | explore, mission queue |
--viewport / --device | explore, journey run, journey annotate, journey demo, demo, load run, source run, verify-fix, regression capture, regression run, mission queue |
--video <file.webm> / --guide <file.md> / --pace <ms> | journey demo (demo and demo approve take --out and --pace) |
Never headed: mission run, load run and source run. See
Demos & Environments.
What --app-class does and does not control
--app-class is read in one place: the usability analyzer's calibration. It tells the
rubric what kind of app this is (consumer, admin, internal, …)
so heuristics are judged sensibly for that context. It is not a persona: the live
usability review calibrates against a default "first-time user", and only the offline
jevitate ux takes a usability --persona. explore --persona
name=storageState is something else again: it runs the same mission once per signed-in
session and diffs them for RBAC candidates. Under every strategy other than usability,
--app-class is accepted and ignored. See Usability Review.