Repolode
lycorp-jp

lycorp-jp/sim-use

AIエージェントが、共通のコマンドセットでiOS SimulatorやAndroidエミュレーター/デバイスの画面を確認・操作できるCLIです。

スター
1,447
フォーク
104
未解決の Issue
23
最終コミット
6 時間前

これは何?

sim-useは、AIエージェントがモバイル画面を読み取り、操作できるクロスプラットフォームのコマンドラインツールです。`ui`コマンドを実行すると、現在の画面がアクセシビリティ要素の簡潔なテキスト形式のアウトラインに変換され、@9などの短いエイリアスが付与されます。`tap @9`のように実行すれば、座標を指定せずにその要素を操作できます。iOS SimulatorとAndroidエミュレーター/デバイスのどちらでも、同じ動詞とフラグを使って、画面の確認・操作・検証を繰り返せます。

iOSではAppleのAccessibility APIとSimulator HIDパイプラインを使用し、デバイスごとのバックグラウンドデーモンによって、呼び出しごとの起動コストを抑えます。Androidでは、adbのポートフォワーディングを介してデバイス上のブリッジAPKと通信します。その他のコマンドでは、テキスト入力、ペースト、ジェスチャー、ハードウェアボタン、スクリーンショット、動画の録画とストリーミング、アプリの状態確認、ローカルWeb Viewerを利用できます。実機のiPhoneとiPadへの実験的な対応は、アクセシビリティベースの画面確認、要素のタップ、スクリーンショットに限られます。

このプロジェクトはSwiftで書かれており、macOS 14以降でソースからビルドでき、Homebrewからインストールできます。AIクライアントにインストールできるエージェントスキルも含まれています。

主な機能

  • 01@Nエイリアス付きの、トークン効率に優れたアクセシビリティアウトラインとして画面を表示します。
  • 02座標を指定せず、エイリアス、アクセシビリティID、ラベルで要素をタップできます。
  • 03iOS SimulatorとAndroidエミュレーター/デバイスで、共通のコマンド体系を使えます。
  • 04スクリプトやエージェントの処理ループに使える、共通形式のJSON出力を提供します。
  • 05動画やGIFを録画できるほか、iOSとAndroidからH.264をストリーミングできます。
  • 06アクセシビリティツリーを確認できるローカルWeb Viewerが付属しています。

ユースケース

  • AIコーディングエージェントにアプリを開発させ、シミュレーター上で結果を検証する。
  • iOSとAndroidで同じ方法で実行できるUIテストを作成する。
  • コマンドラインから、モバイルアプリの操作フローをデモ用GIFや動画として録画する。
  • アプリがアクセシビリティサービスに公開している要素を確認する。

クイックスタート

  1. 1

    Homebrew tap をタップします

    brew tap lycorp-jp/tap
  2. 2

    Homebrew で sim-use をインストールします

    brew install lycorp-jp/tap/sim-use
  3. 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 の数値は毎日更新されます。

関連プロジェクト