Overview
vphone-cli is a groundbreaking command-line tool that empowers developers and researchers to boot and manage virtual iPhones on Apple Silicon Macs. Leveraging Apple's Virtualization.framework and cutting-edge PCC research VM infrastructure, it provides a powerful, scriptable environment for testing, development, and security analysis on iOS.
Key Features
- Full Virtual iPhone Lifecycle Management: From downloading firmware and patching boot chains to DFU restores and custom firmware installation,
vphone-cliautomates the entire process with single commands. - Flexible Firmware Variants: Choose from five distinct firmware variants (
less,regular,dev,jb,exp), each offering a different level of security bypass and functionality, including full jailbreak capabilities and advanced anti-VM detection research patches. - Seamless VM Operations: Effortlessly create, list, clone, export, import, rename, and delete virtual iPhone instances. Fine-tune VM resources like CPU and memory.
- Deep Integration with Apple Technologies: Utilizes Virtualization.framework and requires Xcode with the iOS SDK for cross-compilation, ensuring a native and performant experience.
- Extensive Configuration and Control: Offers granular control over the build process, including manual stepping through firmware preparation, patching, and restoration.
- Remote Access: Supports SSH and VNC connections to the virtual iPhone, enabling interactive debugging and testing.
- Programmatic Automation: Exposes a host control socket for seamless integration with AI-driven testing frameworks and other automation tools.
- Comprehensive Documentation and Troubleshooting: Includes detailed prerequisites, installation guides, build instructions, FAQs, and SIP/AMFI relaxation guidance.
Typical Use Cases
- iOS Application Development & Testing: Quickly spin up virtual iPhones with specific iOS versions and jailbreak states to test app functionality, performance, and compatibility without physical hardware.
- Security Research: Explore iOS security vulnerabilities, develop and test exploit chains, and analyze system-level behavior with various bypasses and research patches.
- Automated E2E Testing: Integrate
vphone-cliwith testing frameworks to create reproducible, scalable, and efficient end-to-end testing pipelines for iOS applications. - Firmware Analysis: Deep dive into iOS firmware, patch boot chains, and experiment with custom firmware modifications for research or development purposes.
- Custom iOS Environments: Create tailored virtual iPhone environments for specialized development needs, such as testing kernel-level exploits or custom system daemons.
