Суть проекта: от промпта к действию
Разработчик zhongerxin представил инструмент iPhone Use, который интегрирует локальные AI-модели с реальным iOS-устройством. В отличие от симуляторов, проект работает с «железом»: ассистент может открывать приложения, читать контент, нажимать на элементы, вводить текст (включая длинные Unicode-строки) и скроллить списки. Все действия отображаются в реальном времени на боковой панели интерфейса хоста.
Ключевая особенность — использование Local MCP (Model Context Protocol) сервиса. Это позволяет AI-агенту не просто генерировать текст, а выполнять системные команды на устройстве, получая обратную связь через снимки экрана и дерево UI-элементов.
Техническая архитектура и зависимости
Проект не требует джейлбрейка, но строго зависит от экосистемы Apple для разработки. Управление осуществляется через Appium WebDriverAgent (WDA), который устанавливается на iPhone. Для корректной работы требуется:
- macOS с установленным полным Xcode (не только Command Line Tools).
- Apple Developer Account для подписи WDA Runner на устройстве.
- USB-подключение iPhone с доверенным Mac и включенным режимом разработчика.
- Python 3.9+ для запуска MCP-сервера и Node.js 20.19+/22.12+/24+ для трансляции экрана.
WDA фиксируется на стабильной версии коммита 16.14.0, что гарантирует предсказуемость поведения интерфейса.
Интеграция с AI-хостами
iPhone Use поддерживает три основных сценария использования через разные интерфейсы. Установка и конфигурация автоматизируются через специальные промпты, которые ассистент выполняет самостоятельно, запрашивая у пользователя только критические шаги (ввод пароля Apple ID, доверие устройству).
| Хост (Host) | Метод подключения | Особенности интеграции |
|---|---|---|
| Codex | CLI плагин | Установка через sh scripts/install.sh. Поддержка локального маркетплейса. Требует Codex CLI. |
| WorkBuddy | STDIO Connector | Запуск через python3 workbuddy/install.py. Доверие в «Connector Management». Поддержка боковой панели. |
| 豆包 (Doubao) | STDIO Connector | Запуск через python3 doubao/install.py. Создание коннектора в разделе «Plugins/Skills». Запуск локальных задач. |
Ключевые функции и оптимизации
Проект решает типичные проблемы автоматизации мобильных интерфейсов: нестабильность кликов и задержки сети. В последних обновлениях (октябрь 2026) добавлены:
- Умный клик по скриншоту: Если стандартное позиционирование элемента не сработало, модель анализирует скриншот и выполняет клик по координатам, умноженным на
image.pixel_to_point. - Оптимизация WeChat: Специальные алгоритмы для навигации в WeChat, позволяющие читать списки контактов и чатов без полной загрузки тяжелого DOM-дерева.
- AirDrop передача: Наведенные инструкции для переноса файлов (фото, видео) с iPhone на Mac.
- Защита длинного текста: Механизм «续传» (продолжение передачи), который привязывает ввод к конкретному полю. Если фокус теряется, ввод останавливается, чтобы избежать случайной отправки данных.
- Лимит дерева: По умолчанию возвращается не более 200 узлов UI-дерева для ускорения обработки.
Безопасность и аналитика
Проект позиционируется как приватный. Данные не покидают локальную машину. По умолчанию отправляется анонимная статистика в PostHog (статус подключения, ошибки, время выполнения), но скриншоты, вводимый текст и идентификаторы устройства не передаются.
Для отключения аналитики достаточно установить переменные окружения:
IPHONE_USE_ANALYTICS=0
DO_NOT_TRACK=1
Все конфиденциальные данные (подписи, логи, ключи) хранятся в директории ~/.local/share/iphone-use/ с правами доступа 700/600. Прямой доступ к удаленным серверам WDA заблокирован (разрешен только localhost:18100).
Источник: Github ↗
