List Crash Reports
idb-crash-listList crash reports on an iOS simulator. Filter by bundle ID and timestamp to determine whether your app crashed or a tap simply failed, turning ambiguous interactions into actionable answers.
Instructions
idb-crash-list
List crash reports on a simulator, so an agent can tell a crash from a no-op.
Overview
Without this, a failed interaction is ambiguous: an agent cannot distinguish "my tap did nothing" from "the app crashed and is gone". Crash reports are written by the OS and persist across app launches and reboots.
Simulators accumulate crashes from unrelated system processes. An unfiltered list is mostly
noise from other apps and extensions. The useful question is scoped:
"did MY bundle crash since I launched it?" — so pass bundleId and since.
Parameters
Optional
udid (string): Target identifier - auto-detects if omitted
bundleId (string): Only crashes for this bundle (e.g. "com.example.MyApp")
since (number): Unix timestamp in SECONDS - only crashes newer than this
before (number): Unix timestamp in SECONDS - only crashes older than this
limit (number, default 20): Maximum crashes to return, newest first
Returns
crashCount, a crashes array (name, bundleId, processName, timestamp, occurredAt) and the
filters that were applied. Pass a name to idb-crash-show for the full report.
Examples
Did my app crash during this test run?
const launchedAt = Math.floor(Date.now() / 1000);
// ... drive the app ...
await idbCrashListTool({ bundleId: 'com.example.MyApp', since: launchedAt });Everything recent, regardless of app
await idbCrashListTool({ since: Math.floor(Date.now() / 1000) - 3600 });Related Tools
idb-crash-show: Full report for one crash
idb-crash-delete: Remove reports (e.g. to get a clean baseline before a test)
simctl-stream-logs: Live log stream, which catches non-fatal errors a crash report will not
hang-start: Main-thread hangs, which produce no crash report at all
Notes
Timestamps are unix SECONDS, not milliseconds.
An empty list is a meaningful result: the app did not crash.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| udid | No | ||
| limit | No | Max crashes to return, newest first (default 20) | |
| since | No | Unix timestamp in SECONDS - crashes newer than this | |
| before | No | Unix timestamp in SECONDS - crashes older than this | |
| bundleId | No | Only crashes for this bundle id |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| crashes | Yes | ||
| success | Yes | ||
| crashCount | Yes | Crashes returned after applying limit | |
| totalMatched | Yes | Crashes matching the filters before limit |