Telemetry

What anonymous usage data the CLI collects, what never leaves your machine, and every way to turn it off.

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=1

For 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.