Appleのsimctlを活用し、iOS、tvOS、watchOSのシミュレータをGUIで操作できるmacOSアプリ。
MobAI-App/simslim
iOS、tvOS、watchOS、visionOSのシミュレータでバックグラウンドデーモンを停止し、1台のMacでより多くのシミュレータをメモリ上で同時に実行できるmacOS向けCLI/アプリ。
- スター
- 3,519
- フォーク
- 155
- 未解決の Issue
- 3
- 最終コミット
- 11 時間前
これは何?
simslimは、Appleのシミュレータが消費するメモリを抑えるツールです。iOSシミュレータを起動すると、Siri、Spotlightのインデックス作成、写真の解析、iCloud同期など、約180個のバックグラウンドサービスが動き始めます。simslimは、開発、テスト、CIで通常不要なサービスをシミュレータごとに無効化します。ホストのMacには影響しません。
このツールはxcrun simctl経由でシミュレータを操作します。シミュレータの軽量化、復元、検証、計測を行うCLIに加え、同じ機能を提供するSwiftUI製のmacOSアプリも用意されています。サービスはSiri、iCloud、Health、Messagingなどのカテゴリに分かれており、フラグやプロファイルファイルを使って個別のデーモンを有効なままにできます。必要な機能が引き続き動作するか確認するdoctorコマンドとverifyコマンド、並列テスト用のクローンが起動したときに軽量化するwatchモードも備えています。
サービスを停止すると、Spotlight検索、プッシュ通知、StoreKitのテスト、ユニバーサルリンクなど、一部の機能が動かなくなります。そのため、カテゴリの選択が重要です。同じ機能を使ったカスタムツールを構築できるGoパッケージも提供されています。
主な機能
- 01シミュレータごとに約170個のバックグラウンドデーモンを停止します。デーモンは選択可能なカテゴリに分類されています。
- 02iOS、tvOS、watchOS、visionOSのシミュレータを、同じコマンドで操作できます。
- 03フラグやJSONプロファイルファイルを使って、特定のカテゴリや個別のデーモンを有効なままにできます。
- 04必要な機能の確認や、設定のずれの検出に使えるdoctorコマンドとverifyコマンドを提供します。
- 05並列テスト用のクローンが起動したときに軽量化するwatchモードを備えています。
- 06読み取り専用のディスク分析と、許可リストに登録されたシミュレータデータの確認付きクリーンアップを提供します。
- 07CLIに加え、SwiftUI製のmacOSアプリも提供します。
ユースケース
- 1台のMacでAIエージェントやUI自動化のために、多数のiOSシミュレータを並列実行する。
- 起動時にクローンを軽量化し、CIでのxcodebuildの並列テストを高速化する。
- プロファイルファイルをコミットし、チーム内で再現可能なシミュレータ環境を作る。
- 複数のシミュレータを動かす開発用ノートPCのメモリ負荷を軽減する。
クイックスタート
- 1
Homebrewでsimslimをインストールする
brew install mobai-app/tap/simslim - 2
iOS、tvOS、watchOS、またはvisionOSのSimulatorランタイムを含むXcodeがインストールされていることを確認する
- 3
UDIDを指定してSimulatorをスリム化する
simslim on <udid>
使う前に知っておきたいこと
- macOS専用で、Simulatorランタイムを含むXcodeが必要です。
- iOS 17.xや18.3など、一部のランタイムではスリム化の状態を保持できないため、再起動のたびに再適用する必要があります。
- メモリの数値はiOSで測定されているため、Apple TV、Apple Watch、Apple Vision Proでの削減効果は未検証です。
収録されている特集
トピック
よくある質問
- simslim とは?
- iOS、tvOS、watchOS、visionOSのシミュレータでバックグラウンドデーモンを停止し、1台のMacでより多くのシミュレータをメモリ上で同時に実行できるmacOS向けCLI/アプリ。 simslimは、Appleのシミュレータが消費するメモリを抑えるツールです。iOSシミュレータを起動すると、Siri、Spotlightのインデックス作成、写真の解析、iCloud同期など、約180個のバックグラウンドサービスが動き始めます。simslimは、開発、テスト、CIで通常不要なサービスをシミュレータごとに無効化します。ホストのMacには影響しません。
- simslim は無料で使えますか?ライセンスは?
- simslim は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- simslim は今もメンテナンスされていますか?
- 活発にメンテナンス中。simslim の最終コミットは 2026年11月7日 です。
- simslim は何に使えますか?
- 1台のMacでAIエージェントやUI自動化のために、多数のiOSシミュレータを並列実行する。 起動時にクローンを軽量化し、CIでのxcodebuildの並列テストを高速化する。 プロファイルファイルをコミットし、チーム内で再現可能なシミュレータ環境を作る。 複数のシミュレータを動かす開発用ノートPCのメモリ負荷を軽減する。
- simslim のインストール方法は?
- Homebrewでsimslimをインストールする: brew install mobai-app/tap/simslim iOS、tvOS、watchOS、またはvisionOSのSimulatorランタイムを含むXcodeがインストールされていることを確認する UDIDを指定してSimulatorをスリム化する: simslim on <udid>
- simslim はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/MobAI-App/simslim
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
コンソール、ファイル、カスタムバックエンドなど複数のロガーにログを振り分けられる、Appleプラットフォーム(macOS、iOS、tvOS、watchOS、visionOS)向けのロギングフレームワークです。
SwiftとSwiftUI向けの依存性注入コンテナ。スコープ、コンテキスト、テスト用モックに対応し、Factoryをシンプルな計算プロパティとして登録できます。
AndroidエミュレーターやAndroidスマートフォン、iOSシミュレーター、iPhoneを並べてミラーリング・操作・設定変更できる、無料のオープンソースmacOSアプリ。