Inspect dyld Shared Cache
Overview
Treat a dyld shared cache as a build-specific container and address space. Preserve the complete cache set and its UUIDs before extracting individual images.
Read references/dyld-cache-workflow.md for cache records, address rules, extraction limits, and canonical source guidance.
Workflow
Preserve cache identity.
- Record source device or restore image, OS marketing version and build, platform, hardware class, architecture, main-cache hash and UUID, and every subcache filename, hash, and UUID.
- Keep the complete cache set together.
Discover the installed tool surface.
- Record tool and version, supported cache generation, commands, extraction behavior, and symbol inputs.
- Prefer tools from the matching Apple toolchain or dyld source when available, but verify exact-build compatibility.
Map the container.
- Record mappings, images, subcache relationships, slide information, local-symbol regions, and available fixup or closure metadata.
- Inventory images before extracting.
Preserve address spaces.
- Label cache-native unslid address, mapping-relative offset, runtime slid address, extracted-image address, and static-database address.
- Record every conversion used to correlate a crash frame or extracted image.
Extract only when needed.
- Treat extracted images as derived artifacts with hashes, source cache UUID, extraction tool, version, and command.
- Do not assume an extracted image recreates the original standalone file or retains all cache optimizations and symbols.
Correlate or compare.
- Match by exact build, architecture, cache and image identity, and tool method.
- Use
compare-binary-versions for cross-build deltas and preserve unchanged context plus unmatched images.
Route language, symbols, or instruction analysis to the focused Apple skills after cache identity and address mapping are sound.
Guardrails
- Do not mix subcaches from different builds.
- Do not use an extracted file's address without recording its cache-native origin.
- Do not assume public dyld source exactly matches a shipping cache format.
- Do not call an unsupported parser result proof that an image, symbol, or fixup is absent.
Output
Return cache manifest, mappings and image inventory, address-conversion record, derived extraction records, symbol sources, comparison bounds, tool limits, and next check.
1---2name: inspect-dyld-shared-cache3description: Inspect, map, extract from, or compare Apple dyld shared caches and subcaches while preserving cache-native identity and addresses. Use when Codex must identify a cache by platform, architecture, UUID, and OS build; inventory images, mappings, slide information, local symbols, chained fixups, closures, or subcaches; correlate a cache image with crash or static-analysis evidence; or compare exact cache builds without confusing extracted Mach-O addresses with cache-native locations.4---56# Inspect dyld Shared Cache78## Overview910Treat a dyld shared cache as a build-specific container and address space. Preserve the complete cache set and its UUIDs before extracting individual images.1112Read [references/dyld-cache-workflow.md](references/dyld-cache-workflow.md) for cache records, address rules, extraction limits, and canonical source guidance.1314## Workflow15161. Preserve cache identity.17 - Record source device or restore image, OS marketing version and build, platform, hardware class, architecture, main-cache hash and UUID, and every subcache filename, hash, and UUID.18 - Keep the complete cache set together.19202. Discover the installed tool surface.21 - Record tool and version, supported cache generation, commands, extraction behavior, and symbol inputs.22 - Prefer tools from the matching Apple toolchain or dyld source when available, but verify exact-build compatibility.23243. Map the container.25 - Record mappings, images, subcache relationships, slide information, local-symbol regions, and available fixup or closure metadata.26 - Inventory images before extracting.27284. Preserve address spaces.29 - Label cache-native unslid address, mapping-relative offset, runtime slid address, extracted-image address, and static-database address.30 - Record every conversion used to correlate a crash frame or extracted image.31325. Extract only when needed.33 - Treat extracted images as derived artifacts with hashes, source cache UUID, extraction tool, version, and command.34 - Do not assume an extracted image recreates the original standalone file or retains all cache optimizations and symbols.35366. Correlate or compare.37 - Match by exact build, architecture, cache and image identity, and tool method.38 - Use `compare-binary-versions` for cross-build deltas and preserve unchanged context plus unmatched images.39407. Route language, symbols, or instruction analysis to the focused Apple skills after cache identity and address mapping are sound.4142## Guardrails4344- Do not mix subcaches from different builds.45- Do not use an extracted file's address without recording its cache-native origin.46- Do not assume public dyld source exactly matches a shipping cache format.47- Do not call an unsupported parser result proof that an image, symbol, or fixup is absent.4849## Output5051Return cache manifest, mappings and image inventory, address-conversion record, derived extraction records, symbol sources, comparison bounds, tool limits, and next check.