Four macOS apps and a CLI tool for media integrity — copy, verify, and prove it.
Current stable: v2.1.7 (Build 5). Testing: v2.1.8 Build 8.
v2.1.8 Build 8 (testing) — Post-cancel UX: "Reveal Receipts" and "Reveal Manifest" buttons appear in the action bar after a cancelled copy. Inline subfolder prefix field on the main view for quick tagging (e.g. "2.1.8_b6") without opening Settings.
v2.1.8 Build 6 — Fixed CopyTrust cancellation discarding partial file counts from session manifest. Manifest now also written to local logs folder. Drop Verify export-only UI: artifact rows show exported files with "Exported" badge, auto-reveal on completion, "Reveal Manifest" button after cancel. JSON keys differentiated: CopyTrust uses filesCopied, Drop Verify uses filesVerified.
v2.1.8 Build 5 — Session manifest persistence: structured JSON manifest written after every CopyTrust ingest and Drop Verify run, recording all verified, skipped, and failed files with reasons. Partial manifests saved on cancellation. New SkippedFileEntry / FailedFileEntry types in CopyCore with structured error capture in the copy loop.
v2.1.8 Build 4 — Drop Verify: read-only media detection with automatic export fallback. Cancel button and determinate progress bar during scanning/hashing.
v2.1.8 Build 3 — Volume Pool stays visible during copy sessions (collapsible disclosure triangle instead of hidden). Sources panel also collapsible. "End Session…" button renamed to "Review Summary…" for clarity.
v2.1.8 Build 1 — UI and receipt improvements.
- Smart video thumbnail frame selection — samples at ~17%/50%/83% instead of 0%/33%/66% to avoid black lead-in frames. Grid contact sheets sample at 50% (mid-point). Applies to both CopyTrust and Drop Verify.
- Phase timing in receipts — copy, verification, and artifact durations per destination with throughput (e.g.
Copy: 04:32 @ 620 MB/s). JSON and plaintext. - Collapsible panels — verification, completed sources, and log panels collapse with disclosure triangles. State persists across sessions.
v2.1.7 (stable) — Critical memory reduction across 5 builds. A 168 GB camera card that previously crashed the Mac at 118 GB RAM now copies at under 400 MB. Validated with a 4-hour, 390+ GB stress test.
v2.1.6 — Xsan (Fibre Channel SAN) volume detection in volume browser. Fixed network volume free space underreporting on SMB/NFS by cross-checking statfs, statvfs, and FileManager resource keys.
Multi-source, multi-destination copy tool designed for camera card ingest but capable of copying any folders and files. Queue multiple cards, walk away, come back to verified results.
- Volume browser and Volume Pool for fast source/destination setup
- Destination preset groups for one-click restore of saved destination sets
- Per-destination preflight checks (free space, write permissions, reachability)
- Post-copy verification with xxHash64 (None / Quick / Full)
- MHL v1.1 hash list generation — compatible with OffShoot, Silverstack, ShotPut Pro, YoYotta
- MHL import verification — drag-and-drop any
.mhlto re-verify destination files - Auto-advance multi-source copy with per-card subfolder naming
- Contact sheet PDF (row or grid layout) and EXIF metadata CSV after each ingest
- Session receipts (JSON + TXT), per-ingest logs, and optional export to a separate folder
- Verify panel: Deep Compare Files, Compare Browser, Copy Missing, Retry MHL Export
- Safe-to-eject flow after successful transfer
See CopyTrust_UserGuide.md for the full workflow and settings reference.
Single-folder drag-and-drop verification. Drop a folder and generate trust artifacts — no copy, no session, no setup.
- Media-only recursive scan with configurable exclusion patterns
- Generates MHL, contact sheet PDF (row or grid), and EXIF metadata CSV
- Writes artifacts into the folder and/or mirrors them to an export folder
See DROP_VERIFY_README.md and DROP_VERIFY_USER_GUIDE.md.
Standalone MHL verification. Load any .mhl file and verify whether the media files still match.
- Re-check copies, archive restores, and handoff deliveries
- Works with MHLs from Drop Verify, CopyTrust, OffShoot, Silverstack, or any MHL-capable tool
The original tool that started the suite — a simple "did the copy work?" sanity check. Drop two folders and get an honest answer.
Use after copying with CopyTrust, Archiware P5 Sync, a Finder copy, rsync, Hedge, ShotPut Pro, or any other tool.
- Quick Scan (name, size, date) or Full Scan (xxHash64 / SHA-256 content hashing)
- Per-file comparison: missing, extra, different, identical
- Copy All Missing to sync differences, then Refresh to re-verify
- MHL v1.1 generation and verification from either compared folder
- Standalone app — no ingest session, no receipts, no artifacts
See FOLDER_COPY_COMPARE_README.md and FOLDER_COPY_COMPARE_USER_GUIDE.md.
Command-line tool for creating and verifying MHL v1.1 manifests. Same MHL engine as CopyTrust and Drop Verify, built for the terminal.
mhl-tool create <folder>— hash files and write an MHL manifestmhl-tool verify <folder>— verify files against MHL(s), auto-discovers_Receipts- Media-only (default) or
--all-filesmode - JSON output for scripting, quiet mode for CI
- Reads MHLs from any tool (OffShoot, Silverstack, ShotPut Pro, YoYotta)
- Signed, notarized
.pkginstaller for distribution
See MHLToolPackage/README.md for command reference and MHLToolPackage/docs/USER_GUIDE.md for workflows.
⌘K— Compare Folders⌘R— Refresh Comparison⌘⇧N— Reset both folders