Phrony collects coarse operational telemetry from the runtime daemon and operator CLI so we can understand adoption and reliability. Telemetry is enabled by default (opt-out). The legal basis is legitimate interest in improving the product—not consent-based tracking of individuals.
What is collected
Each batch includes only:
| Field | Example | Purpose |
|---|---|---|
install_id | Random UUID in your config file | Distinguish installs without identity |
app_version | 0.1.2 | Know which runtime release is in use |
platform | darwin/arm64 | Coarse OS and CPU architecture |
Event counts | daemon_started: 1, session_completed: 7 | Whitelisted counters only |
Whitelisted event names: daemon_started, session_started, session_completed, session_failed, agent_deployed, tool_dispatched, migrate_run, cli_command.
What is never collected
Telemetry never includes:
- IP addresses, hostnames, or usernames
- File paths, project names, or repository metadata
- Agent names, namespaces, session IDs, or tool arguments
- Model prompts, completions, or any free-form content
- API keys or secrets
The ingestion endpoint does not read or store client IP addresses.
Where data goes
Batches are sent over HTTPS to a Supabase Edge Function (telemetry), which validates the payload against a strict schema and inserts rows into a Postgres table (telemetry_events). Row Level Security is enabled with default-deny for anonymous and authenticated roles; only the server-side function writes data.
How to disable
You can turn telemetry off in three ways:
-
Environment variable (applies immediately, no config file change):
Shell$ export DO_NOT_TRACK=1
# or DISABLE_TELEMETRY=1 or PHRONY_DISABLE_TELEMETRY=1 -
CLI (persists to your user config):
Shell$ phrony telemetry disable
$ phrony telemetry status # install_id, config, and effective state
$ phrony telemetry enable # re-enable in config -
Config file:
~/.config/phrony/telemetry.json(or the platform equivalent fromUserConfigDir), fieldenabled: false.
Endpoint
Batches are sent to:
https://hxybgqfxykmxdhyqsvlh.supabase.co/functions/v1/telemetryOverride for staging or air-gapped environments:
$ export PHRONY_TELEMETRY_ENDPOINT="https://<project-ref>.supabase.co/functions/v1/telemetry"