An iOS Simulator data inspector for macOS
.xcappdata package, or a .simshelf snapshot) and what you expected to see.No. Version 1.0 is fully read-only — it never writes to a source file, a timestamp, or a byte. Databases open with SQLite’s own read-only guarantees, or from a private copy inside SimShelf’s sandbox. There is no delete or reset function, because there is no write path.
Yes. SimShelf reads the file header first and picks the correct, non-destructive path, so opening a database
with a live -wal file cannot corrupt it. When it works from a snapshot rather than the live file, the
window tells you so.
SimShelf inspects the iOS Simulator only. It does not read physical devices, does not call
simctl, and does not launch or control Simulator processes — it reads what is already on disk
for the device and app you select.
Not in version 1.0 — SimShelf inspects one source at a time. Comparing captures is planned for a later release.
Search reaches filenames, paths, decoded plists and JSON, and plain text. When a file’s contents can’t be searched, SimShelf says so explicitly, so an empty or short result is never quietly mistaken for “nothing’s there.”
.simshelf snapshot?A single ZIP file you export to share a capture — it survives a Jira ticket, a Slack message or an email the way a loose folder does not. It carries a manifest with SHA-256 hashes of everything inside, so a teammate can trust it is exactly what was captured. Because it faithfully copies what your app saved, a snapshot may contain tokens or customer data; SimShelf reminds you before every export. It does not scan for secrets.
Binary sidecars and unknown files open in a byte-accurate hex view. NSKeyedArchiver blobs (common in UserDefaults and Core Data metadata) decode into a browsable graph without unarchiving your app’s own classes. BLOB cells in a database also offer a hex view.
.xcappdata / .simshelf file to openSimShelf makes no network connections of any kind. See the privacy policy and terms of use.