CLI · Silver and Data Vault
The silver technique (flat, data_vault, or kimball_dimensional) is chosen at kiri init and locked after the first silver contract. kiri silver is the technique-agnostic surface; kiri dv is the Data Vault 2.0 toolset.
kiri silver
kiri silver plan— preview the locked silver technique and what an apply would build.kiri silver apply [--contract <name>] [--domain <d>] [--target <t>]— materialise the project, silver included, with the same scoping semantics askiri apply.kiri silver diff A B— semantic-aware diff of two silver contract files.kiri silver conformance— run the technique-appropriate silver conformance suite and write quality evidence.
Usage: kiri silver conformance [OPTIONS]
| Flag | Description | Default |
|---|---|---|
--fixture-dir | CSV fixtures for the Data Vault cross-backend run. Required when silver.technique=data_vault; ignored for flat / Kimball. | |
--out | Evidence JSONL path | <project>/.kirimana/quality_engine/evidence.jsonl |
--report / --no-report | Also run the per-run silver-quality report against the live target (RI checks + the technique’s conformance findings). Mirrors kiri dv quality run for flat / Kimball; not applicable to data_vault. | off |
--target, -t | Named profile for the --report live RI checks | |
--report-format | json | md | both | both |
The evidence lands where kiri compliance report picks it up — see the data-quality page.
kiri dv
kiri dv apply
Graph-driven, idempotent Data Vault silver apply.
Usage: kiri dv apply [OPTIONS]
| Flag | Description |
|---|---|
--json | Emit the run manifest as JSON instead of a table |
--backfill | Declared backfill mode: drop + recreate satellites and PIT from --from-batch forward. Hubs and links are preserved (insert-only). Requires --from-batch and --reason. |
--from-batch | Batch id to rebuild from (inclusive) |
--reason | Audit justification for the backfill |
--yes | Confirm the destructive backfill. Without it, --backfill prints the plan and exits 0 (dry-run). |
kiri dv graph
Render a bounded Mermaid view of the vault. A mature vault is never rendered as one flat graph — pick a scope with --view:
overview(default) — domain/zone roll-updomain:<d>— one domainzone:<z>—raw | business | pitnode:<n>— BFS ball around a node, radius--depth(default 1)path:<a>..<b>— shortest path
--max-nodes (default 50) is a hard budget: over-budget nodes collapse into counted summaries. --format mermaid|json.
kiri dv quality
Silver-quality checks for Data Vault projects, as a versioned catalogue.
kiri dv quality list— print the catalogue (id, name, severity).kiri dv quality explain CHECK_ID— describe one check (e.g.DV-001).kiri dv quality run— run the catalogue against the live target.
Usage: kiri dv quality run [OPTIONS]
| Flag | Description | Default |
|---|---|---|
--gate | Comma-separated check IDs that block sign-off when failing (e.g. DV-001,DV-002) | |
--exclude | Check IDs to skip entirely | |
--max-samples | Cap on violation rows per check | 100 |
--output, -o | Base path for the report (<output>.json + <output>.md with --format both) | |
--format | json | md | both | both |
--ai-summary | Add a Kiri AI paragraph at the top of the report (audit-logged). | off |
kiri dv test / kiri dv conformance
kiri dv test --fixture-dir <dir>— run DV invariants against CSV fixtures offline. Each<table>.csvmust match a DV contract’s name and silver-build column shape; missing files warn per uncovered contract.--output rich|json.kiri dv conformance [--fixture-dir conformance]— run the same fixtures through both the native and DataVault4dbt backends and diff the results.--jsonfor a machine report.
kiri dv install
Install or refresh DataVault4dbt for the project. --target, -t names the active dbt target, which must be in the DataVault4dbt compatibility matrix (Databricks is supported).
kiri dv migrate-zones
Zone-migration helper for (raw | business | pit) restructures:
kiri dv migrate-zones plan --target prod # print the DROP TABLE list for orphaned objects
kiri dv migrate-zones apply --target prod # execute it (prompts; --yes for CI)
kiri fk
Foreign-key referential-integrity gate.
Usage: kiri fk gate [OPTIONS]
Probes declared foreign keys against the live target. --exclude may skip FK-001 and FK-002 only — FK-003 (dangling parent) and FK-004 (self-cycle) are structural hard FAILs and cannot be suppressed. --max-cycle-depth (default 16) bounds the FK-004 cycle probe; the bound is surfaced in the finding, never a silent cap. --max-samples caps sample rows per probe (default 100).
kiri timetravel
Query an SCD2 silver table as it looked at a moment in time.
Usage: kiri timetravel [OPTIONS]
| Flag | Description | Default |
|---|---|---|
--source | Source name (required) | |
--table | Table name (required) | |
--at | ISO timestamp, e.g. 2026-03-01 or 2026-03-01T12:00:00Z (required) | |
--limit | Max rows to print; 0 for no limit | 50 |
--schema | Schema where silver lives | silver |
kiri timetravel --source crm --table customers --at 2026-03-01
AI-assisted silver drafting
kiri suggest silver drafts a silver dbt model from a bronze table (see the gold-and-analytics page for the full kiri suggest family). Silver-specific flags: --materialization auto|table|view|incremental (auto lets the AI pick based on row count), --historize none|scd2 with --grain (business-key columns, required for SCD2) and --version-column (default _kiri_ingested_at), and --delta to emit file_format='delta' for physical time travel via VERSION AS OF on Databricks.