Telemetry¶
ravix can send product-usage and exception data to PostHog to help prioritize improvements. It's off by default and opt-in.
Events are keyed to your Ravi identity UUID once you log in, or a per-machine UUID before that.
What it collects (when enabled)¶
| Category | Detail |
|---|---|
| CLI command invocations | Command name + flag names only — never flag values. |
| Daemon handler executions | Action type, rule name, outcome (ok / error), duration. |
| Lifecycle events | Login, onboard, daemon install/start/stop. |
| Exceptions | Unhandled panics and handler errors as PostHog $exception events. |
Every event carries: version, commit, os, arch, go_version, surface.
What it never collects¶
- Email bodies, subjects, or to/from addresses
- File paths under
root_dir(which may contain your inbox name) - Config file contents (which contain API tokens)
- Template output, API keys, device codes, management keys, or identity keys
Opt in¶
ravix telemetry enable # persists telemetry_enabled=true in ~/.ravi/config.json
ravix telemetry disable # turn it back off
ravix telemetry status # show current state + your distinct_id
Local dev builds¶
make build injects no PostHog project key, so local builds are silent regardless of opt-in state. Only release builds (CI) carry the key — local dev is always a no-op.