alineo telemetry
Show, enable, or disable anonymous CLI usage telemetry.
bunx alineo-cli telemetry status|enable|disableArguments
| Argument | Description |
|---|---|
status (default if omitted) | Print whether telemetry is enabled and this machine's anonymous ID. |
enable | Turn telemetry on. |
disable | Turn telemetry off. |
What it does
alineo can send small, anonymous usage events — which subcommand ran, a per-command allowlist of boolean flag presence, success/failure, and timing — to help prioritize development. alineo telemetry reads and writes the local config file that controls this (~/.config/alineo/telemetry.json), created on first use with a random anonymousId.
Default-on, sent to https://telemetry.alineo.tech. See Opting out below.
What's collected
Never anything beyond this:
| Field | Example |
|---|---|
command | "spawn" |
flags | { "json": true, "prompt": false } — presence only, never values |
specProvider | "nvidia" — spawn/fork only, read from the target spec's own provider field |
outcome | "success" or "error" |
errorClass | "CommandError" — the error's constructor name only, never its message |
durationMs | 842 |
cliVersion, osPlatform, osArch, bunVersion, isCI | environment metadata |
anonymousId | a random UUID generated once per machine |
Never collected: raw argv, flag values, file paths, spec contents, prompts, sandbox output, or anything else that could identify you or your code.
Example
bunx alineo-cli telemetry status[alineo] telemetry: enabled
anonymous id: 3f2e9c1a-8b7d-4e6f-a1c2-9d8e7f6a5b4cbunx alineo-cli telemetry disable
# [alineo] telemetry disabledOpting out
Telemetry is on by default. Turn it off any time with:
bunx alineo-cli telemetry disableor by setting either env var, which take priority over the persisted config and require no config file read at all:
ALINEO_TELEMETRY_DISABLED=1 alineo spawn ./agents/my-agent.json
# or the cross-tool convention:
DO_NOT_TRACK=1 alineo spawn ./agents/my-agent.jsonNotes
- A one-time notice is printed to stderr the first time an event would actually send, naming both opt-out mechanisms — never mixed into
--jsonoutput. - Sending is bounded: a 500ms timeout races the request, and a failed or slow send never delays or fails the real command it's attached to.
- Scoped to the
alineoCLI only —alineo/alineo/@alineo-labs/workflowused as libraries in your own code are never instrumented.