Release builds of the CLI collect anonymous usage data to guide what gets built and fixed. The first interactive run prints a one-line notice pointing here. Development builds collect nothing.
What is collected#
One event per invocation, under a random machine-scoped identifier stored in the CLI config file (telemetry_id in config.json):
- The command path (for example
repost schema deploy) and the names of flags used. - Duration, exit code, CLI version, operating system, and architecture.
- Whether the run was interactive, in CI, or driven by a coding agent (detected from agent environment variables).
- After
repost auth login, the machine identifier is linked to your account so product usage connects across the dashboard and CLI.
What is never collected#
Command arguments, flag values, webhook payloads, headers, URLs, bucket or forwarder names, file contents, tokens, and secrets. Telemetry sends command names — never data.
Delivery is best-effort and time-bounded. A slow or unreachable network cannot delay or fail a command.
Turning it off#
Any one of these disables telemetry entirely:
# For one command or your whole shell profile
export REPOST_TELEMETRY_DISABLED=1
# The cross-tool convention (consoledonottrack.com)
export DO_NOT_TRACK=1For a permanent per-machine opt-out, set "telemetry_disabled": true in config.json inside the CLI config directory (repost auth status prints its location).
Where the data goes#
Events are sent to PostHog, hosted in the European Union, and handled according to the Privacy Policy.