화면의 UI 요소를 가리키는 macOS CLI 및 AI 에이전트 스킬
lycorp-jp/sim-use
AI 에이전트가 하나의 명령어 세트로 iOS Simulator와 Android 에뮬레이터 또는 기기의 화면을 관찰하고 조작할 수 있는 CLI입니다.
- 스타
- 1,447
- 포크
- 104
- 열린 이슈
- 23
- 마지막 커밋
- 6시간 전
어떤 프로젝트인가요?
sim-use는 AI 에이전트가 모바일 화면을 읽고 제어할 수 있도록 하는 크로스 플랫폼 명령줄 도구입니다. `ui` 명령은 현재 화면을 `@9` 같은 짧은 별칭이 붙은 접근성 요소의 간결한 텍스트 개요로 변환하며, `tap @9` 명령으로 좌표를 지정하지 않고 해당 요소를 조작할 수 있습니다. iOS Simulator와 Android 에뮬레이터 또는 기기에서 동일한 명령과 플래그를 사용해 관찰, 조작, 확인 과정을 진행할 수 있습니다.
iOS에서는 Apple의 Accessibility API와 Simulator HID 파이프라인을 사용하며, 기기별 백그라운드 데몬으로 호출당 시작 비용을 줄입니다. Android에서는 adb 포워딩을 통해 기기에 설치된 브리지 APK와 통신합니다. 그 밖에도 텍스트 입력, 붙여넣기, 제스처, 하드웨어 버튼, 스크린샷, 동영상 녹화 및 스트리밍, 앱 상태 확인, 로컬 웹 Viewer를 위한 명령을 제공합니다. 실제 iPhone과 iPad의 실험적 지원은 접근성 기반 관찰, 요소 탭, 스크린샷으로 제한됩니다.
이 프로젝트는 Swift로 작성되었으며 macOS 14 이상에서 소스 코드로 빌드할 수 있고, Homebrew로 설치할 수 있습니다. AI 클라이언트에 설치할 수 있는 에이전트 스킬도 포함되어 있습니다.
핵심 기능
- 01화면을 토큰 효율적인 접근성 개요로 렌더링하고 @N 별칭을 제공합니다.
- 02좌표 없이 별칭, accessibility id 또는 레이블로 요소를 탭합니다.
- 03iOS Simulator와 Android 에뮬레이터 또는 기기에서 동일한 명령 인터페이스를 제공합니다.
- 04스크립트와 에이전트 루프에서 사용할 수 있도록 공통 형식의 JSON 출력을 제공합니다.
- 05동영상과 GIF를 녹화하고 iOS 및 Android 화면을 H.264로 스트리밍합니다.
- 06접근성 트리를 살펴볼 수 있는 로컬 웹 Viewer를 포함합니다.
활용 사례
- AI 코딩 에이전트가 앱을 만든 뒤 시뮬레이터에서 결과를 확인할 수 있습니다.
- iOS와 Android에서 동일한 방식으로 실행되는 UI 자동화 테스트를 작성할 수 있습니다.
- 명령줄에서 모바일 앱 사용 흐름의 데모 GIF나 동영상을 녹화할 수 있습니다.
- 앱이 접근성 서비스에 어떤 요소를 노출하는지 살펴볼 수 있습니다.
빠른 시작
- 1
Homebrew tap을 탭합니다
brew tap lycorp-jp/tap - 2
Homebrew로 sim-use를 설치합니다
brew install lycorp-jp/tap/sim-use - 3
CLI가 실행되는지 확인합니다
sim-use --help
사용 전 알아둘 점
- iOS Simulator 기능을 사용하려면 macOS가 필요하며, 소스에서 빌드하려면 macOS 14 이상과 Xcode가 필요합니다.
- 소스에서 빌드하려면 ./scripts/build.sh dev를 실행해 대용량 idb XCFrameworks를 로컬에서 빌드해야 합니다.
- Linux 지원 범위는 Android 백엔드뿐입니다. iOS 동사, 동영상 캡처, init은 macOS 전용입니다.
- 실제 iPhone 및 iPad 지원은 실험 단계이며 일부 동사만 지원합니다.
토픽
자주 묻는 질문
- sim-use은(는) 무엇인가요?
- AI 에이전트가 하나의 명령어 세트로 iOS Simulator와 Android 에뮬레이터 또는 기기의 화면을 관찰하고 조작할 수 있는 CLI입니다. sim-use는 AI 에이전트가 모바일 화면을 읽고 제어할 수 있도록 하는 크로스 플랫폼 명령줄 도구입니다. `ui` 명령은 현재 화면을 `@9` 같은 짧은 별칭이 붙은 접근성 요소의 간결한 텍스트 개요로 변환하며, `tap @9` 명령으로 좌표를 지정하지 않고 해당 요소를 조작할 수 있습니다. iOS Simulator와 Android 에뮬레이터 또는 기기에서 동일한 명령과 플래그를 사용해 관찰, 조작, 확인 과정을 진행할 수 있습니다.
- sim-use은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- sim-use은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- sim-use은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. sim-use의 마지막 커밋은 2026년 10월 21일입니다.
- sim-use은(는) 어디에 사용할 수 있나요?
- AI 코딩 에이전트가 앱을 만든 뒤 시뮬레이터에서 결과를 확인할 수 있습니다. iOS와 Android에서 동일한 방식으로 실행되는 UI 자동화 테스트를 작성할 수 있습니다. 명령줄에서 모바일 앱 사용 흐름의 데모 GIF나 동영상을 녹화할 수 있습니다. 앱이 접근성 서비스에 어떤 요소를 노출하는지 살펴볼 수 있습니다.
- sim-use는 어떻게 설치하나요?
- Homebrew tap을 탭합니다: brew tap lycorp-jp/tap Homebrew로 sim-use를 설치합니다: brew install lycorp-jp/tap/sim-use CLI가 실행되는지 확인합니다: sim-use --help
- sim-use은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/lycorp-jp/sim-use
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
AI 에이전트가 스냅샷, 요소 참조, 일반적인 자동화 명령으로 Chrome을 제어할 수 있게 해주는 네이티브 Rust CLI입니다.
LLM 에이전트가 자연어, CLI 또는 Python API로 Android와 iOS 기기를 제어할 수 있도록 하는 오픈소스 Python 프레임워크입니다.
Claude Code를 설정할 수 있도록 바로 사용할 수 있는 에이전트, 명령어, 설정, 훅, MCP 연동을 제공하는 CLI 및 템플릿 카탈로그입니다.
여러 AI 코딩 에이전트를 병렬로 실행할 수 있도록 브랜치 이름으로 git worktree를 관리하는 Rust CLI입니다.
AI 코딩 에이전트가 iOS 및 macOS Xcode 프로젝트를 빌드하고 테스트하고 실행할 수 있도록 도구를 제공하는 MCP 서버 겸 CLI입니다.