SDKs & Tools
One Python package with a Rust-powered engine, plus a CLI for terminal workflows.
The kanoniv Package
bash
pip install kanonivpython
from kanoniv import Spec, Source, validate, plan, diff, reconcileEverything runs locally via the embedded Rust engine. No server, no API keys, no account required.
Validate and plan:
python
spec = Spec.from_file("identity-spec.yaml")
result = validate(spec)
if result:
p = plan(spec)
print(p.summary())Reconcile data from any source:
python
crm = Source.from_csv("crm", "crm_contacts.csv", primary_key="id")
billing = Source.from_csv("billing", "invoices.csv", primary_key="customer_id")
result = reconcile([crm, billing], spec)
print(result.cluster_count, result.merge_rate)Architecture
Your Code
│
▼
kanoniv (Python SDK)
│
▼
Rust Native Engine ◀── Offline, no server needed
(kanoniv._native)The SDK is a Rust native extension via PyO3 - same engine as the CLI. No Python dependencies beyond what you install for adapters (pandas, sqlalchemy).
CLI
For terminal workflows, git hooks, and CI pipelines:
bash
pip install kanoniv
kanoniv validate my-spec.yaml
kanoniv plan my-spec.yaml
kanoniv diff v1.yaml v2.yamlSee CLI Reference for all commands.
Next Steps
- Python SDK — Spec validation, planning, diffing, and local reconciliation
- Source Adapters — CSV, pandas, Snowflake, BigQuery, dbt
- CLI — Terminal-first validation and compilation
Need real-time resolution or a persistent identity graph?
Kanoniv Cloud adds a managed platform with sub-millisecond resolution API, audit logs, overrides, and more.
