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