项目概述
vphone-cli 是一款基于 Apple Virtualization.framework 开发的命令行工具,旨在利用 PCC 研究的虚拟机基础设施,在 macOS 上启动虚拟 iPhone。该工具支持从下载固件、修补引导链到安装自定义固件(CFW)的全流程自动化,并为开发者提供了多种安全绕过分级的变体选项。
系统要求与依赖
主机环境:
软件依赖:
用户可通过 Homebrew 安装必要组件,包括 python@3.13、aria2、wget、gnu-tar、openssl@3、ldid-procursus、sshpass、keystone、cmake、libusb、ipsw 及 zstd。
安装与构建
快速安装:
brew install zqxwce/tap/vphone-cli
源码构建:
克隆仓库并初始化子模块后,运行设置脚本以安装依赖、构建工具链及创建 Python 虚拟环境,随后执行构建脚本生成 .app 包并交叉编译 vphoned。
git clone --recurse-submodules https://github.com/Lakr233/vphone-cli.git
cd vphone-cli
./scripts/setup_tools.sh
./scripts/build.sh
核心功能与使用
一键部署
vphone-cli 支持端到端自动化流程,单条命令即可完成虚拟机创建、固件下载、修补、DFU 恢复、CFW 安装及首次启动。
# 创建名为 myphone 的越狱版虚拟机
vphone-cli vm create myphone -V jb
# 启动虚拟机
vphone-cli vm launch myphone
虚拟机管理
工具提供完整的生命周期管理命令,包括列出、查看信息、新建、配置资源(CPU/内存)、克隆(APFS 快速克隆)、导出/导入(支持 zstd/xz 压缩)、重命名及删除虚拟机。
固件变体选择
通过 --variant 参数,用户可选择五种不同安全绕过程度的变体:
连接与交互
数据存储结构
所有虚拟机数据默认存储于 ~/.vphone/ 目录下,确保应用包的可移植性。用户可通过环境变量 $VPHONE_ROOT 重定向根目录,或使用 $VPHONE_LIBRARY_ROOT 单独指定虚拟机库位置。目录结构包括 VMs(虚拟机包)、ipsws(固件缓存)、tools(APFS 工件)、debs(越狱包缓存)及 venv(Python 环境)。
常见问题与排查
自动化支持
vphone-cli 暴露主机控制套接字(vphone.sock),支持程序化控制截图、触摸、滑动、硬件按键及剪贴板操作,每个操作均返回内联截图,适用于 AI 驱动的端到端自动化测试场景。
【星途科讯 图文丨略略 首发于ZAKER科技,转载请注明出处】