onehumanbeing/esp32-iphone-agent

Let an AI model use a real iPhone with a $7 ESP32: AirPlay eyes, USB HID hands, any OpenAI-compatible vision model. No Mac, no developer account, no jailbreak.

해결하는 문제

이 프로젝트를 통해 AI 에이전트는 Mac, Apple 개발자 계정, 탈옥 또는 기기에 소프트웨어를 설치할 필요 없이 실제 iPhone을 제어할 수 있습니다. XCTest나 WebDriverAgent가 필요한 기존 방식을 우회하여, 사람이 화면을 보고 포인터를 사용하는 것과 같은 방식으로 iPhone과 상호작용합니다.

작동 원리

  • 눈: 시스템은 UxPlay를 통한 AirPlay 미러링을 사용하여 iPhone 화면을 컴퓨터로 스트리밍하고, 이 스트림을 AI 모델을 위한 JPEG 프레임으로 변환합니다.
  • 손: 저렴한 ESP32-S3 보드를 iPhone의 USB 포트에 연결하여 표준 USB HID (인간 인터페이스 장치) 마우스 및 키보드로 작동하게 합니다. iOS의 'AssistiveTouch'를 활성화하면 에이전트가 포인터를 이동하고 클릭하며 타이핑할 수 있습니다.
  • 뇌: OpenAI 호환 비전 모델이 플래너(단계별 목표 생성)와 액터(각 스크린샷에 대한 구체적인 동작 결정) 역할을 모두 수행합니다.
  • 폐루프 제어: 서버는 포인터의 상대적 위치를 추적하고 탭하기 전에 미세하게 움직여 보정하며 정확도를 보장합니다. 또한 동작 후 화면이 변경되었는지 확인하여 탭이 실패했을 경우 이를 감지하고 재시도합니다.

대상 사용자

Apple의 개발자 생태계 제약 없이 비전 기반 AI 에이전트를 사용하여 iPhone 앱(게임 포함)을 자동화하려는 개발자 및 AI 연구원.

주요 특징

  • 하드웨어 기반 제어: 7달러짜리 ESP32-S3 보드를 사용하여 마우스/키보드 입력을 시뮬레이션합니다.
  • 설치 불필요: iPhone에 앱이나 개발자 서명이 전혀 필요하지 않습니다.
  • 비전 기반: 로컬 모델을 포함한 모든 OpenAI 호환 비전 모델과 작동합니다.
  • 실시간 모니터링: 실시간 휴대폰 화면, 동작 로그, 단계별 추론 과정을 보여주는 웹 UI가 포함되어 있습니다.
  • 크로스 플랫폼: 서버는 macOS 또는 Linux에서 실행할 수 있습니다.

이 프로젝트를 다룬 글

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트