Skip to content

UBLX integration

UBLX builds on Nefaxer for fast catalogs and snapshot diffs. ZahirScan adds enrichment on top; Nefaxer owns path, size, mtime, and optional content hashes.

Directory → Nefaxer (index + diff) → UBLX (browse) → ZahirScan (enhance)

What Nefaxer owns in UBLX

ConcernNefaxerUBLX / ZahirScan
Directory walk
SQLite snapshot✓ (per-root cache under ubli/)
Added / removed / modified✓ → Delta tab
Blake3 for duplicates✓ when hash enabled in configDuplicate detection UI
Path + filetype catalog
Zahir JSON / previews

UBLX stores per-project SQLite under your user cache (ubli/; sanitized dir name + path hash). Config paths and enhance behavior are UBLX-specific — see UBLX Configuration.

Snapshot workflow

ActionBehavior
Open TUIBackground snapshot on startup (unless disabled)
Command Mode sBackground re-index
Switch projectRe-snapshot for new root (when run_snapshot_on_startup is true)
ublx --snapshot-onlyHeadless index only

Delta tab surfaces Nefaxer diff results (added / modified / removed) vs the previous snapshot.

Hashing and duplicates

Set hash = true in UBLX config (or use Nefaxer with -c) so entries include Blake3 digests. UBLX duplicate detection (Command Mode d) uses those hashes.

Nefaxer’s walk defaults to not descending directory symlinks. From v0.3.1, UBLX exposes the same knob as follow_links in Settings / ublx.toml (default off). Turn it on when you want the catalog to expand through linked trees; leave it off to avoid surprise expansion and cycles. The project root is still canonicalized on open either way. See Configuration and Nefaxer configuration.

Standalone vs through UBLX

ApproachBest for
nefaxer CLICI diff reports, custom .nefaxer in-repo, dry-run audits
UBLX TUIBrowsing, lenses, ZahirScan enhance, export

For enrich-on-demand workflows after a lightweight index, see Path-only vs full enhance and ZahirScan UBLX integration.

UBLX · Nefaxer · ZahirScan