lycorp-jp/sim-use

Give your AI agent eyes and hands on iOS Simulator and Android emulator/devices.

What it solves

sim-use는 AI 에이전트가 iOS 시뮬레이터와 Android 에뮬레이터 또는 디바이스에서 모바일 애플리케이션과 상호 작용할 수 있는 방법을 제공합니다. 현재 화면 상태를 관찰하고 탭이나 입력과 같은 동작을 수행하여 구축한 기능이 올바르게 작동하는지 확인함으로써 에이전트 개발 루프의 격차를 메워줍니다.

How it works

이 도구는 Apple의 Accessibility API, iOS 시뮬레이터 HID 파이프라인, Android의 AccessibilityService와 연동되는 크로스 플랫폼 CLI로 동작합니다. "observe, act, verify" 사이클을 사용합니다.

  1. Observe: ui 명령은 화면의 복잡한 접근성 트리를 토큰 효율적인 컴팩트한 개요로 변환하여 LLM이 과도한 토큰을 소모하지 않고 쉽게 추론할 수 있게 합니다.
  2. Act: 에이전트는 별칭(예: tap @9)이나 특정 식별자를 사용해 동작을 수행할 수 있어 요소의 정확한 좌표를 지정할 필요가 없습니다.
  3. Verify: 에이전트는 다시 ui 명령을 실행해 동작 결과를 확인합니다.

속도를 유지하기 위해 디바이스당 백그라운드 데몬을 사용해 초기화 비용을 줄이고, 왕복 인터랙션을 약 300ms 안에 수행할 수 있습니다.

Who it’s for

모바일 앱 개발, 테스트 및 자동화를 위한 AI 에이전트를 구축하는 개발자를 위해 설계되었습니다. 고성능의 크로스 플랫폼 인터페이스가 필요한 경우에 적합합니다.

Highlights

  • Token-Efficient: 개요 표현은 원시 JSON 접근성 트리보다 약 16배 더 압축됩니다.
  • Cross-Platform: iOS와 Android 모두를 위한 단일 명령 인터페이스입니다.
  • AI-Native: 별칭 캐시 탭과 번들된 에이전트 스킬(예: Claude용)을 포함해 AI에게 CLI 사용법을 가르칩니다.
  • Comprehensive Input: 탭, 스와이프, 하드웨어 버튼, IME‑안전 Unicode 붙여넣기를 지원해 키보드 조합 문제를 우회합니다.
  • Batching: iOS 전용으로 여러 단계를 하나의 호출로 체인해 지연 시간을 줄입니다.
  • Viewer: 접근성 트리를 SVG 캔버스에 렌더링하는 번들 웹 앱으로 시각적 디버깅이 가능합니다.