All apps/ipsw

ipsw

ipsw

A command-line tool for researching and reverse engineering Apple operating systems.

Runs as ipsw|macOS, Linux, Windows|blacktop.github.io

Command form

ai-draft · 5 tasks · 21 fields

Download, inspect and extract Apple firmware. Covers 'download ipsw', 'info' and 'extract'; the many other subcommands (dyld, macho, kernel, ...) are not covered.

Opens the form; the finished command lands at your prompt, unrun
otty gui ipsw

ipsw download ipsw

Download IPSWs

Download IPSW files (or just URLs, kernelcache or dyld cache) from ipsw.me. Filters by device, build or version.

Download IPSWsExample values, fixed in this page — nothing here reaches a terminal
Basic
Device*
string
Latest only
--latest
Output folder
directory
Advanced
Skip confirmation
--confirm
TasksEach one presets the form for one job
Latest IPSW for a device
devicelatestoutputconfirm
List download URLs
deviceversionbuildmacosurls
ParametersOnly these flags are editable in the form
Device
Product type, for example iPhone15,2.
string
--device-d
OS version
string
--version-v
Build ID
string
--build-b
Latest only
boolean
--latest
macOS IPSWs
boolean
--macos
URLs only
Print the download URLs instead of downloading.
boolean
--urls-u
Only kernelcache
Extract the kernelcache from the remote IPSW.
boolean
--kernel
Only dyld_shared_cache
boolean
--dyld
Skip confirmation
boolean
--confirm-y
Output folder
path
--output-o

ipsw info

Show IPSW info

Display information about an IPSW or OTA file.

Show IPSW infoExample values, fixed in this page — nothing here reaches a terminal
Basic
IPSW or OTA*
file
JSON output
--json
List contained files
--list
TasksEach one presets the form for one job
Show info
ipswjsonlist
ParametersOnly these flags are editable in the form
IPSW or OTA
path · positional 0
JSON output
boolean
--json-j
List contained files
boolean
--list-l

ipsw extract

Extract components

Extract the kernelcache, dyld_shared_cache, DeviceTree or other parts from an IPSW or OTA.

Extract componentsExample values, fixed in this page — nothing here reaches a terminal
Basic
IPSW or OTA*
file
Kernelcache
--kernel
Output folder
directory
TasksEach one presets the form for one job
Extract kernelcache
ipswkerneloutput
Extract dyld_shared_cache
ipswdylddyld_archoutput
ParametersOnly these flags are editable in the form
IPSW or OTA
path · positional 0
Kernelcache
boolean
--kernel-k
dyld_shared_cache
boolean
--dyld-d
dyld architectures
string · repeatable
--dyld-arch-aarm64e
DeviceTree
boolean
--dtree
SEP firmware
boolean
--sep
File regex
Extract files from the IPSW zip whose names match this regex.
string
--pattern-p
Output folder
path
--output-o
SourcesEvery flag above is checked against these
docs
-b, --build string iOS BuildID (i.e. 16F203) -y, --confirm do not prompt user for confirmation -d, --device string iOS Device (i.e. iPhone11,2) --dyld Extract dyld_shared_cache(s) from remote IPSW --kernel Extract kernelcache from remote IPSW --latest…
manualmaster 2026-10-27

raw.githubusercontent.com

docs
ipsw info <IPSW> [flags] -j, --json Output as JSON -l, --list List files in IPSW/OTA -r, --remote Extract from URL
manualmaster 2026-10-27

raw.githubusercontent.com

docs
ipsw extract <IPSW/OTA | URL> [flags] --dtree Extract DeviceTree -d, --dyld Extract dyld_shared_cache -a, --dyld-arch stringArray dyld_shared_cache architecture to extract -k, --kernel Extract kernelcache -o, --output string Folder to extract files to -p, --pattern string…
manualmaster 2026-10-27

raw.githubusercontent.com

Before it fills your prompt, Otty checks the installed ipsw against its version. A form that does not match your version is not offered.