Truero CLI
Understand and clean your data before it causes problems.
Run data-quality and ML validation checks on your machine, then optionally upload the report (not your raw file) to the Truero dashboard.
Prerequisites & Python Setup
- Python Version: Python 3.11+ is recommended (Python 3.10+ supported).
- macOS Note: Avoid the default system Python 3.9 (its bundled LibreSSL causes SSL warnings and syntax incompatibilities with modern libraries). Use Homebrew Python (
brew install python@3.11),pyenv, orpipx.
Need to install Python 3.11?
| OS | Recommended Method | Command / Link |
|---|---|---|
| macOS | Homebrew / Official PKG | • brew install python@3.11 (Homebrew)• Official macOS Installer |
| Windows | Official Installer / Winget | • Official Windows Installer (Check "Add python.exe to PATH") • winget install Python.Python.3.11• Microsoft Store Python 3.11 |
| Linux (Ubuntu/Debian) | APT | sudo apt update && sudo apt install python3.11 python3.11-venv python3-pip |
| Linux (Fedora/RHEL) | DNF | sudo dnf install python3.11 python3.11-pip |
| Cross-Platform / Fast | uv / pyenv |
• astral.sh/uv (uv python install 3.11)• github.com/pyenv/pyenv ( pyenv install 3.11) |
Install
Recommended (Isolated CLI via pipx):
pipx install truero
With Python 3.11+ directly:
python3.11 -m pip install --upgrade truero
In a virtual environment:
python3.11 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
python -m pip install --upgrade truero
Authentication & Identity
Truero CLI requires a one-time login to link your terminal session with your Truero Dashboard account.
🔑 Login Commands
# Log in via your browser (starts local loopback handshake)
truero login
# Check active session and machine telemetry status
truero whoami
# Sign out and remove local credentials
truero logout
🤖 Automated CI/CD Pipelines (Headless Execution)
In automated CI/CD pipelines (GitHub Actions, GitLab CI, Jenkins, Docker containers), provide your credentials via environment variables so scans run completely unattended:
export TRUERO_USER_ID="YOUR-USER-UUID"
export TRUERO_API_KEY="YOUR-API-KEY" # Optional
truero scan data/dataset.csv --no-upload --accept-terms
GitHub Actions Example:
- name: Run Truero Data Validation
env:
TRUERO_USER_ID: ${{ secrets.TRUERO_USER_ID }}
run: truero scan data/training_dataset.csv --no-upload --accept-terms
Quick start
In the same environment where you installed Truero:
truero scan data.csv
Supported files: CSV, JSON, Excel (.xlsx / .xls), Parquet.
Optional browser wizard (same checks, GUI):
truero web
Custom rules
Custom rules are optional and run in addition to the normal Truero checks. Pass --custom-rules and the CLI asks which rules apply to which columns:
truero scan data.csv --custom-rules
Reuse those picks on a later scan with a saved profile:
truero scan data.csv --profile NAME
Write the rows a custom rule flagged to a CSV:
truero scan data.csv --custom-rules --export-flags flags.csv
See the rule list:
truero rules list
Upload to the dashboard
After a scan, the CLI asks:
Upload report to Truero dashboard? [Y/n]:
- Type
Y(or press Enter) to upload, ornto skip. - Since you are authenticated via
truero login, the report is automatically linked to your account. - Upload sends the report summary only — never your raw dataset.
Optional configuration & CLI Flags
| Flag / env | Purpose |
|---|---|
--user-id / TRUERO_USER_ID |
Dashboard User ID (UUID) for attribution & CI/CD |
--api-key / TRUERO_API_KEY |
Truero API key for headless authentication |
--no-upload |
Skip dashboard upload prompt |
--accept-terms |
Non-interactively accept Terms & Conditions (for CI/CD) |
--custom-rules |
Pick extra column rules for this scan |
--profile NAME |
Reuse a saved custom rule profile |
--export-flags PATH |
Write rows flagged by custom rules to a CSV |
--local |
Connect CLI login to local dev dashboard (http://localhost:5173) |
--manual |
Manual token login for headless SSH environments without a browser |
TRUERO_API_URL |
Override backend URL (default: hosted Railway API) |
TRUERO_DASHBOARD_URL |
Dashboard base URL (default: https://dashboard.truero.ai) |
--api-key / TRUERO_API_KEY |
Internal/dev only — not required for normal installs |
🛡️ Privacy, Security & Safe Telemetry Notice
Truero is designed with privacy, safety, and local-first execution at its core:
-
Your Dataset Stays on Your Machine:
- Validation checks (duplicates, missing values, outliers, data types, correlation, silent failures, custom rules) execute 100% locally.
- Raw data files, row values, personal records, and column contents are never uploaded to Truero servers. Only summary issue counts and metadata are sent if you explicitly choose to upload a report.
-
Why Login / Signup is Required:
- To distinguish genuine human developers from automated web scrapers, bots, and PyPI mirrors.
- To securely link your local CLI runs to your Truero Dashboard account.
-
What System Telemetry is Collected:
- We capture only non-invasive, standard environment metadata to identify installation environments:
- Operating System & release version (e.g.
macOS 15.1,Ubuntu 22.04) - CPU architecture (e.g.
arm64,x86_64) - Python runtime & CLI version (e.g.
CPython 3.11.8,truero 0.2.8) - Local timezone & system locale (e.g.
Europe/London,en_GB) - Anonymous machine fingerprint (deterministic SHA-256 hash — no raw hardware serials or MAC addresses are stored)
- CI environment flag (distinguishes automated pipelines from interactive terminals)
- Operating System & release version (e.g.
- Zero PII, zero credentials, zero source code, and zero dataset content are collected.
- We capture only non-invasive, standard environment metadata to identify installation environments:
Useful commands
truero scan path/to/file.csv
truero scan path/to/file.csv --custom-rules
truero rules list
truero login
truero whoami
truero logout
truero web
truero config show
Links
- Website: https://www.truero.ai
- Dashboard: https://dashboard.truero.ai
- GitHub: https://github.com/Thisizzellie/Truero
- PyPI: https://pypi.org/project/truero/
Metadata
Release files for truero 0.2.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| truero-0.2.8.tar.gz | 107.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| truero-0.2.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 205.3 kB
Release files / truero-0.2.8.tar.gz
| Download URL | truero-0.2.8.tar.gz |
|---|---|
| Size | 107.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce88bf133158dd8a817d8c46c7214c29d259b5e2d2e5543f30862fe50c33ccd5
|
|
BLAKE2b-256 checksum How to use checksums |
d7c91bbee5d6a8cd55aae9770d7d8e1fc243ceaf843c6ef09393896b5446cd34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Release files / truero-0.2.8-py3-none-any.whl
| Download URL | truero-0.2.8-py3-none-any.whl |
|---|---|
| Size | 98.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ac5df54e1ab6aed52b2c2935492c5da147c65d46937c102c3911328a42a1a397
|
|
BLAKE2b-256 checksum How to use checksums |
85abe55f5b35216d11f584875e2f38077055387b6a2d899bd561bc7773ddd58d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Security for truero 0.2.8
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.