/docs/telemetry

Telemetry & privacy.

Everything is off by default. Rugproof sends nothing off your machine unless you explicitly opt in. Your contract source, file paths, and findings are never transmitted.

What can be enabled

FlagDefaultIf enabled, sends
telemetry.enabledfalseplugin version + command name + success/fail outcome. Nothing else.
telemetry.crash_reportsfalseanonymized stack traces (no source, no paths).
telemetry.endpointblanknothing — a blank endpoint disables network send entirely.
update_check.enabledtruea single request to the GitHub releases API to compare versions.

The exact payload shape lives in scripts/src/telemetry.ts — read it; it is intentionally tiny.

Hard privacy switches

privacy_mode: true   # never send anything; cache in tmpfs only
offline: true        # no external API calls at all (also: RUGPROOF_OFFLINE=1)

With offline: true (or RUGPROOF_OFFLINE=1) every network path — telemetry, update check, block explorers, GitHub history — is disabled. Local analysis, local forks (anvil), and the LLM still work.

Opting out of update notifications

update_check:
  enabled: false
  notify_on_run: false

Principles