Compare two CSV datasets by key and explain every added, removed, and changed row.
Data Diff CLI is a compact, privacy-friendly command-line utility built around one recurring workflow. It runs without an account or API key, keeps its decisions inspectable, and produces portable output you can use immediately.
Compare two CSV datasets by key and explain every added, removed, and changed row. Instead of hiding simple analysis behind a hosted service, it keeps data local and shows the evidence behind every recommendation.
- Key-based CSV comparison
- Column-level change evidence
- Added and removed row detection
- Markdown and JSON reports
- Zero third-party runtime dependencies
git clone https://github.com/zchstime/data-diff-cli.git
cd data-diff-cli
python -m pip install -e .
data-diff examples/old.csv examples/new.csv --key idUse the synthetic examples/ data for a safe first run. Run data-diff --help for the complete command reference.
local input → deterministic analysis → cited findings → portable report
The default workflow performs no network requests and does not silently modify source data. The implementation is deliberately small enough to audit, teach from, and extend.
PYTHONPATH=src python -m unittest discover -s tests -vGitHub Actions tests Python 3.11, 3.12, and 3.13.
- Additional import and export formats
- More community-provided edge-case fixtures
- Stable machine-readable report schemas
- Optional plugin hooks while keeping the core dependency-free
If this tool saves you time, star the repository and share the workflow you want next. Contributions are welcome—start with the open good first issue.
See CONTRIBUTING.md, CODE_OF_CONDUCT.md, and SECURITY.md. Never put private data or real credentials in an issue.
MIT © 2026 zchstime