roe does when you give it no command, so these
two are the same thing:
Options
Per-analysis flags —
--aggressive, --min-tokens, --max-complexity, and the
rest — aren’t accepted here, because they mean nothing to the other two
analyses. Set them in a config file — duplicate-analysis
settings under dupes, health thresholds under health — which the combined
run reads exactly once, or run the
individual command when you want to tune one analysis
for a single invocation.
Exit code
The combined run exits1 if any of the three analyses has findings, 0
only when all three are clean, and 2 on error. See
exit codes for the full rules.
JSON output
--format json prints a single JSON document rather than three concatenated
ones. Each nested field is the same v1 report the individual command emits, so
tooling written against roe dead-code --format json can consume deadCode
unchanged:
dupes.mode states the mode the run
actually used — "semantic" when the config’s dupes block says so.
A mistyped command name lands on the positional
PATH — roe dupez fails with
path not found: dupez plus a hint pointing at roe --help.