fallow | Run full codebase analysis: cleanup + duplication + health (default) | --only, --skip, --production, --production-dead-code, --production-health, --production-dupes, --ci, --fail-on-issues, --group-by, --summary, --fail-on-regression, --tolerance, --regression-baseline, --save-regression-baseline, --score, --trend, --save-snapshot, --include-entry-exports |
dead-code | Dead code analysis (check is an alias) | --unused-exports, --changed-since, --changed-workspaces, --production, --file, --include-entry-exports, --stale-suppressions, --ci, --group-by, --summary, --fail-on-regression, --tolerance, --regression-baseline, --save-regression-baseline |
dupes | Code duplication detection | --mode, --threshold, --top, --changed-since, --workspace, --changed-workspaces, --skip-local, --cross-language, --ignore-imports, --explain-skipped, --fail-on-regression, --tolerance, --regression-baseline, --save-regression-baseline |
fix | Auto-remove unused exports/deps | --dry-run, --yes (required in non-TTY) |
init | Generate config file or pre-commit hook | --toml, --hooks, --branch |
migrate | Convert knip/jscpd config | --dry-run, --from PATH |
list | Inspect project structure | --files, --entry-points, --plugins, --boundaries, --workspaces |
workspaces | Inspect monorepo workspaces + discovery diagnostics (shorthand for list --workspaces) | (no flags) |
health | Function complexity analysis (also covers Angular templates as synthetic <template> findings: external .html files via templateUrl AND inline @Component({ template: \...` })literals; suppress external withat the top of the.htmlfile, suppress inline with// fallow-ignore-next-line complexitydirectly above the@Component` decorator) | --complexity, --max-cyclomatic, --max-cognitive, --max-crap, --top, --sort, --file-scores, --hotspots, --ownership, --ownership-emails, --targets, --effort, --score, --min-score, --since, --min-commits, --save-snapshot, --trend, --coverage-gaps, --coverage, --coverage-root, --runtime-coverage, --min-invocations-hot, --min-observation-volume, --low-traffic-threshold, --workspace, --changed-workspaces, --baseline, --save-baseline |
audit | Combined dead-code + complexity + duplication for changed files | --base, --gate, --production, --production-dead-code, --production-health, --production-dupes, --workspace, --changed-workspaces, --ci, --fail-on-issues, --explain, --explain-skipped, --dead-code-baseline, --health-baseline, --dupes-baseline, --max-crap, --coverage, --coverage-root, --include-entry-exports |
flags | Detect feature flag patterns (env vars, SDK calls, config objects) | --top |
security | Surface opt-in local security candidates for agent verification (not confirmed vulnerabilities). Two rule families: the graph rule client-server-leak (a "use client" file reaching a non-public process.env secret) and a data-driven tainted-sink catalogue across 9 CWE categories (dangerous-html, command-injection, code-injection, sql-injection, ssrf, path-traversal, open-redirect, weak-crypto, unsafe-deserialization). Conservative non-literal trigger; parameterized SQL not flagged. Rules default off; suppress a file with // fallow-ignore-file security-sink; scope categories with security.categories. | `--format human |
explain | Explain one issue type without running analysis | <issue-type>, --format json |
license | Manage the local license JWT for continuous/cloud runtime monitoring (activate, status, refresh, deactivate) | activate --trial --email <addr>, activate --from-file, activate --stdin, status, refresh, deactivate |
telemetry | Manage opt-in, off-by-default product telemetry (never collects code, paths, or names). Agents must not enable it; only the user may | status, enable, disable, inspect --example |
coverage | Runtime coverage setup, focused analysis, and cloud inventory workflow helper | setup, setup --yes, setup --non-interactive, analyze --runtime-coverage <path>, analyze --cloud --repo owner/repo, upload-inventory |
coverage upload-source-maps | Upload build source maps from CI so bundled runtime coverage resolves to original source paths. Retries 429 Retry-After and transient gateway failures. Use FALLOW_CA_BUNDLE for complete custom PEM trust bundles. | --dir dist, --git-sha <sha>, --repo <name>, --strip-path=false, --dry-run |
ci reconcile-review | Resolve stale review threads on a PR/MR by joining a typed review envelope (--format review-github / review-gitlab) against the provider's existing comments + threads. Posts an idempotent "Resolved in <sha>" follow-up per stale fingerprint, marker keyed on (fingerprint, short-sha) so re-runs on the same commit don't duplicate. Provider mutations are fail-fast; JSON can include apply_hint, failed_fingerprints, and unapplied_fingerprints when apply_errors is non-empty. | --provider, --pr (GH) / --mr (GL), --repo / --project-id, --api-url, --envelope, --dry-run |
schema | Dump CLI definition as JSON | |
config | Show the loaded config path and resolved config (verifies which .fallowrc.json is in effect) | --path |