What may be collected
At most one terminal outcome is recorded for each allowlisted, user-invoked command. It may contain:- a bounded command name, such as
setup.validateorresearch.run; - success, expected error, unexpected error, interruption, or timeout;
- rounded duration and a stable failure stage/reason code;
- CLI version, official-distribution marker, and auth state; and
- internal user and team UUIDs after login, or a random installation UUID before login.
onyx listen TUI and bounded setup
validation/preflight outcomes may also be recorded. Rendering, key presses,
rows, and polling are never recorded. Installation history is never aliased to
a user after login.
Failure stages are restricted to auth, configuration, setup, git,
provider, model, protocol, network, api, execution, interruption,
or unknown. Reason codes are restricted to authentication, invalid
configuration/setup/Git/model/protocol, provider availability, network/API,
usage, timeout, interruption, unexpected-throw, and generic command-failure
categories. The CLI never sends the underlying error message.
What is never collected
CLI analytics does not send command arguments, environment variables, local paths, repository names or URLs, refs, commit SHAs, source code, diffs, prompts, model output, hypotheses, descriptions, notes, knowledge, metric names or values, credentials, headers, request/response bodies, arbitrary error text, worker output, heartbeats, presence, provider logs, or arbitrary JSON.onyx-worker, worker environments, synthetic workers, testbed sessions, CI,
source/developer builds, and non-production API profiles do not collect
analytics.