PyMobileDevice3
pymobiledevice3 is a pure Python 3 implementation for interacting with iOS devices (iPhone, iPad, ...).
It ships both a command-line tool and a Python API, and runs on Windows, Linux, and macOS.
Highlights: device discovery, port forwarding, syslog/oslog streaming, app & profile management, AFC file access, crash reports, PCAP sniffing, firmware update, recovery/DFU, backup/restore, WebInspector automation, a CDP bridge that lets Chrome DevTools, VS Code and Playwright debug Safari and WebViews on the device, and DDI/DVT developer tooling (iOS 17+ over a tunnel).
Install
python3 -m pip install -U pymobiledevice3
Then verify connectivity:
pymobiledevice3 usbmux list
pymobiledevice3 syslog live
pymobiledevice3 apps list
Documentation
📖 Full documentation: https://doronz88.github.io/pymobiledevice3/
- Installation & platform notes
- CLI recipes
- iOS 17+ tunnels & support matrix
- Python API guide
- Python API reference
- Protocol internals (RemoteXPC, DTX, iDevice layers)
The docs are built from docs/ with MkDocs (mkdocs.yml).
Claude Code plugin
The repository ships its device-operator agent skill as a Claude Code plugin, teaching the agent to operate a connected iPhone or iPad through pymobiledevice3:
/plugin marketplace add doronz88/pymobiledevice3
/plugin install pymobiledevice3-device-operator@pymobiledevice3
Community
Questions, ideas, or want to help? Join the community on Discord.
Sponsors
A huge thank you to our sponsors for supporting this project! 💖
Want to support the project as well? Sponsor it via GitHub Sponsors or Ko-fi.
Contributing
See CONTRIBUTING and Code of Conduct. Agent-specific contributor guidance is in AGENTS.
License and Credits
This work is licensed under GPL 3.0 and credited to several major contributors:
- Hector Martin "marcan" hector@marcansoft.com
- Mathieu Renard
- doronz doron88@gmail.com
- matan1008 matan1008@gmail.com
- Guy Salton
- netanelc305 netanelc305@protonmail.com
- Inbar Agmon inbar2812@gmail.com (Project's logo)
Release files for pymobiledevice3 11.12.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pymobiledevice3-11.12.3.tar.gz | 1.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pymobiledevice3-11.12.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.7 MB
Release files / pymobiledevice3-11.12.3.tar.gz
| Download URL | pymobiledevice3-11.12.3.tar.gz |
|---|---|
| Size | 1.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ecc20bf95a369c5c86d4e0d7a9d41ecb68baa362d6e4ed5631a613823d23adb5
|
|
BLAKE2b-256 checksum How to use checksums |
7945a32a8bcf07c68cfb862ccd47e46a69a08a4dd73d321a789493a59415420c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency logRelease files / pymobiledevice3-11.12.3-py3-none-any.whl
| Download URL | pymobiledevice3-11.12.3-py3-none-any.whl |
|---|---|
| Size | 1.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5169a247a87820b238eb6e103a3c99f1eb251ff6a89ebc2e8a73c8cdae2f9e3e
|
|
BLAKE2b-256 checksum How to use checksums |
9bbdfc2fc9d2dfb3e6b3fa61ece48d64f5f039b27f89880f3b88a0e952fefcc0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency log