Repository navigation
Releases: Derrors/iphone-control
Releases · Derrors/iphone-control
Release list
v0.1.1
English
Added
- macOS (Apple Silicon) support: build from source and run as a regular user with the system usbmuxd; no Xcode needed. See the new macOS guide.
Changed
- MCP tool descriptions now explain when to use each tool, what it returns and how it behaves; every parameter is documented and every tool carries MCP annotations. Tool names, parameters and results are unchanged.
- Release binaries are named
iphone-control-vX.Y.Z-linux-<arch>.tar.gz.
Fixed
homeandlockhad no effect on some phones (seen on an iPhone 12 mini, iOS 26.4.1), and auto-unlock couldn't wake a dark screen there.- After a disconnect of a few seconds, setups using the system usbmuxd (macOS, Linux source installs) got stuck on "bad device"; they now reconnect by themselves.
doctoron macOS no longer reports "no Apple device on USB", and its hints use macOS commands.- When auto-unlock can't bring up the passcode keypad, the message mentions StandBy, which hides the keypad.
中文
新增
- 支持 macOS(Apple Silicon):从源码编译,以普通用户运行,用系统自带的 usbmuxd,不需要 Xcode。见新增的 macOS 使用指南。
变更
- MCP 工具描述说明了何时用、返回什么、具体行为,每个参数都有说明,每个工具都带 MCP 注解。工具名、参数和返回结果不变。
- Release 里的二进制压缩包改名为
iphone-control-vX.Y.Z-linux-<架构>.tar.gz。
修复
- 部分手机上
home、lock没有效果(在 iPhone 12 mini、iOS 26.4.1 上遇到),自动解锁也点不亮熄灭的屏幕。 - 用系统 usbmuxd 的部署(macOS、Linux 从源码运行)断开几秒后会卡在「bad device」,现在能自己重连。
- macOS 上
doctor不再误报「USB 上没有 Apple 设备」,修复提示改用 macOS 的命令。 - 自动解锁调不出密码键盘时,提示里说明待机显示会挡住键盘。
Docker: ghcr.io/derrors/iphone-control:0.1.1 (linux/amd64, linux/arm64)
Binaries / 二进制: linux-x86_64, linux-aarch64 (glibc 2.34+)
v0.1.0
First public release.
Added
iphone-control daemon: one long-running process owns the phone — usbmuxd supervision (with a sysfs fallback for containers without udev), pairing and Developer Mode checks, Developer Disk Image download and mounting, a CoreDevice tunnel with a user-space TCP stack, WebDriverAgent launch and health checks, and a state machine that recovers from unplugging, usbmuxd restarts and phone reboots.- MCP server with 15 tools: status, screenshots with zoom-in regions, element lists, tap / tap by text, long press, swipe, typing (including Chinese), hardware buttons, app launch / terminate / list, URLs,
iphone_wait_forandiphone_batch. Action tools acceptthento return the screen after the action. - HID fallback for taps, swipes, buttons, ASCII typing and screenshots while WebDriverAgent is unavailable.
- Signing of WebDriverAgent with a free Apple ID (two-factor and SMS login), including the
.xctestbundle, a post-signing check, automatic re-signing before the 7-day profile expires, and a daily Apple ID session check. - Notifications through Bark and Telegram, with de-duplication.
- Optional auto-unlock with strict safeguards (stops after one wrong attempt).
setupwizard,doctordiagnostics,status,mcp-config,wda-bridge,notify-test.- Docker image (single binary plus Debian's usbmuxd, not privileged) with a generated third-party license list, published to
ghcr.io/derrors/iphone-controlfor linux/amd64 and linux/arm64. - Running without Docker, from source or from the prebuilt Linux binaries (x86_64, aarch64): as a regular user with the system usbmuxd, XDG data and socket paths, the unsigned WebDriverAgent downloaded and checksum-verified before the first signing,
mcp-configprinting a direct command, and a systemd user service.
Docker image: ghcr.io/derrors/iphone-control:0.1.0 (linux/amd64, linux/arm64)