Some features are still in development and will be available soon.

LEGAL

Telemetry

Trustabl collects anonymous usage data to improve the product. This page is the complete list of every event and every property that can be sent — updated in the same commit as any schema change.
Telemetry is on by default and opt-out.
trustabl telemetry off
TRUSTABL_TELEMETRY=0

What we never collect

Never
Repo names, org names, usernames, email addresses, IP addresses
Never
File paths, directory names, or filenames from the scanned repo
Never
Source code — no snippets in any form, including inside error messages
Never
Finding content — explanation text, fix text, matched code
Never
Tool or agent names from the scanned codebase
Never
Raw error strings — errors are bucketed into a closed enum before sending
Never
Env var values — CI provider detected by presence only, never values
Never
Exact file counts — coarse size buckets are used instead

Anonymous ID

Every event carries an anonymous_id that identifies the installation, not the person. It is never derived from machine fingerprinting — no hostname, no MAC address, no username hash.
Local
Random UUID v4 generated once, stored in ~/.config/trustabl/telemetry.json. Stable across runs on the same machine.
CI
Ephemeral UUID generated per invocation, never written to disk. CI runs are counted but not session-correlated.

Events

scan.started Fired when a scan begins, after argument validation passes
Property Type Notes
os string darwin, linux, windows
arch string arm64, amd64
target_type string "local" or "remote" (GitHub URL)
format string human, json, sarif
strict_mode bool Whether --strict was passed
flags_used []string Flag names only — never flag values
ci_provider string github_actions, gitlab_ci, circleci, jenkins, unknown, or "" (not CI)
is_new_install bool First run on this machine
scan.completed Fired on a successful scan (exit code 0 or 1)
Property Type Notes
duration_ms int Wall-clock milliseconds
repo_size_bucket string small (<20 files), medium (<200), large (≥200)
sdks_detected []string SDKs observed in code
languages_detected []string Languages recognized in the repo
tools_count int Tool definitions discovered
agents_count int Agent declarations discovered
findings_by_severity object Finding count per severity level
rule_ids_fired object Hit count per rule ID — no finding content included
rules_sha string Commit SHA of the rule pack used
schema_version int Rule schema version
exit_code int 0 (clean) or 1 (findings present)
features_used []string attest, vuln_scan, sarif_out, json_out, bom_out, no_rules_update
repo_id_hash string One-way hash of CI repo env var, used for dedup only — the repo name cannot be recovered. Empty outside CI.
scan.failed Fired when the scan exits with code 2 (scanner or I/O error)
Property Type Notes
error_category string Closed enum — raw error string is never sent. Values: rules_fetch_failed, clone_failed, parse_error, no_rules, unknown.
duration_ms int Wall-clock milliseconds until failure
command.run Fired for every non-scan subcommand invocation
Property Type Notes
command string version, mcp, enrich, attest, verify, capabilities, rules.pull, rules.validate, vulndb.pull, llm.list, llm.key.set, llm.key.get, llm.key.delete, llm.model.set, llm.provider.set, llm.provider.list

How to opt out

1
Environment variable — highest priority
Overrides the config file. Takes effect immediately, session-scoped.
export TRUSTABL_TELEMETRY=0
2
CLI command — persisted
Writes your preference to the config file. Persists across sessions.
trustabl telemetry off
3
Config file — manual
Edit ~/.config/trustabl/telemetry.json directly.
{"enabled": false, "anonymous_id": "your-uuid-here"}

Backend

PostHog
Events are sent over HTTPS to PostHog, a product analytics platform. Trustabl does not use PostHog for advertising, profiling, or any purpose other than product improvement. Events are batched and sent asynchronously — no telemetry call ever adds latency to a scan. Network errors are silently discarded and never affect the exit code. PostHog privacy policy →
Questions? Open an issue or join the Discord.
This page is updated in the same commit as any event schema change. Source: TELEMETRY.md
downloadchevron-down