Open Source Alternatives LogoOpen Source Alternatives
AlternativesBlogAdvertise
Open Source Alternatives LogoOpen Source Alternatives

Stay Updated

Subscribe to our newsletter for the latest news and updates about Alternatives

Open Source Alternatives LogoOpen Source Alternatives

Handpicked Open Source Alternatives to Paid Softwares

Product
  • Categories
  • Tag
  • Advertise
Resources
  • Blog
  • Collection
  • Submit
  • Advertise your tool
Company
  • Privacy Policy
  • Terms of Service
  • Refund Policy
  • Sitemap
Alternatives
  • Claude Code
  • Jira
  • Notion
  • Slack
  • Linear
  • Wispr Flow
  • All alternatives
Copyright © 2026 All Rights Reserved.
Home/Categories/Developer Tools/Simutil
icon of Simutil

Simutil

Manage Android emulators and iOS simulators from a cross-platform TUI and desktop app, with wireless ADB, multi-device streaming, and AI agent support via MCP.

1.2K starsDartMITActive this week
Visit websiteGitHub repo
Contents
  1. 01Who Simutil is for
  2. 02The problem it solves
  3. 03How it solves it
  4. 04Strengths and trade-offs
  5. 05Simutil vs alternatives
  6. 06Quick start
  7. 07Tech stack
  8. 08FAQ
  9. 09Similar open-source tools
TL;DR

Simutil is a cross-platform CLI/TUI and desktop app for mobile developers who need to launch, manage, and test on Android emulators and iOS simulators without keeping Android Studio or Xcode open. The CLI handles device launch, ADB wireless pairing, Logcat, and custom plugins from the terminal; the desktop app (preview) streams and controls many devices side by side, records them, runs YAML test scenarios, and exposes an MCP server for AI coding agents. MIT licensed; installs via Homebrew, curl, or Dart pub.MIT · Dart · 1.2K stars · Active this week

who it's for

Who Simutil is for#

Mobile developers testing across Android and iOS

SimUtil replaces the daily habit of keeping Android Studio and Xcode open just for device management. Boot devices with one keypress, pair physical Android devices wirelessly, and check Logcat output from the same TUI session. The multi-device grid in the desktop app helps verify that a UI change renders identically across screen sizes.

Skip if:

Teams that run all mobile testing in cloud device farms (BrowserStack, Firebase Test Lab) and do not maintain local emulators. SimUtil is for local development workflows, not cloud-hosted test infrastructure.

AI-assisted mobile development with Claude Code or Cursor

The desktop app's MCP server lets AI coding agents list, launch, tap, swipe, screenshot, and record devices without writing custom device automation code. Agents can verify a UI fix by taking a screenshot of the changed screen rather than relying solely on code inspection.

Skip if:

Projects that do not use AI coding agents with MCP support. The MCP server is a desktop app feature; if you work only with the CLI/TUI, this use case does not apply.

Flutter and Android developers debugging with Logcat

The TUI's Logcat view streams filtered output directly from the selected emulator or device, removing the need for a separate terminal window running adb logcat. Custom plugins can launch scrcpy, Maestro, or any external ADB tool on the selected device with a single keypress, reducing context switching during debugging sessions.

Skip if:

Developers who already have an IDE with integrated Logcat (Android Studio, IntelliJ with the Android plugin) and prefer to stay within the IDE during debugging. SimUtil's value is terminal-first workflows.

Teams running cross-device smoke tests with YAML scenarios

The scenario studio in the desktop app runs YAML-defined sequences (tap, swipe, type, assert) across multiple simulators and emulators at once, showing each step's live status. Useful for teams that want lightweight visual smoke tests without setting up a full Appium or XCUITest suite.

Skip if:

Projects that already run Appium, Espresso, or XCUITest suites. Those frameworks provide deeper assertion models and CI integration; SimUtil's scenario studio is complementary for visual checks, not a replacement.

the problem

The problem it solves#

Mobile developers testing across Android and iOS spend time on device management friction unrelated to their actual code. Opening Android Studio solely to boot an emulator means waiting for a full IDE to load. Testing on three or four devices requires switching between Android Studio's AVD Manager, Xcode's simulator list, and separate terminal sessions for ADB commands and Logcat output. Pairing a physical Android device over Wi-Fi involves running adb pair commands each time.

Teams that adopt AI coding agents face an additional gap. Claude Code, Cursor, and Codex can read and modify code, but without a way to interact with a running device, those agents cannot confirm that a UI change renders correctly or that a navigation flow works as expected.

how Simutil solves it

How it solves it#

One-key device launch from the terminal

The TUI lists all available Android emulators and iOS simulators in one view. Press Enter to boot any device without touching Android Studio or Xcode. Android devices support Normal, Cold Boot, No Audio, and Cold Boot plus No Audio launch options from the same interface.

Multi-device streaming and control

The desktop app (preview) streams and controls many Android emulators, physical devices, and iOS simulators in a grid or spotlight layout. Each stream gets touch, swipe, and navigation controls. Records one device or the full grid at native resolution (60 fps on macOS). No scrcpy install required; the app ships its own scrcpy server.

YAML scenario runner across devices

Write test scenarios in YAML (tap by label, swipe, type text, assert UI state) and run them on multiple devices simultaneously, watching each step's live status. Useful for lightweight smoke tests during development without setting up a full Appium or Maestro infrastructure.

MCP server for AI coding agents

The desktop app exposes an MCP server that lets Claude Code, Codex, and Cursor list, start, stream, tap, swipe, screenshot, and record devices directly from the agent. AI agents can verify mobile UI changes without a separate device automation layer. The full CLI JSON schema is available at `simutil schema`.

Wireless ADB for physical device pairing

Connect physical Android devices over Wi-Fi using a QR code, a six-digit pairing code (Android 11+), or a direct IP address. The TUI handles the pairing flow interactively, removing the need to remember adb pair or adb connect command syntax.

YAML plugin system for external tools

Add external CLI tools (scrcpy, Maestro, custom scripts) to SimUtil via a plugins section in `~/.simutil/settings.yaml` without modifying the source. Each plugin defines commands, can filter by platform (Android or iOS) and device state, supports `{device.id}` template variables, and can bind to a single-key shortcut.

strengths · trade-offs

Strengths and trade-offs#

Strengths

  • MIT license with no licensing feeSimUtil is MIT licensed, covering both the CLI/TUI and the desktop app. You can run it on any developer workstation or integrate it into CI workflows without a licensing fee. Unlike Genymotion, which charges for commercial team use, SimUtil has no per-seat or per-use cost beyond the infrastructure you already own.
  • Ships its own scrcpy serverThe desktop app bundles its own scrcpy server, so you can stream and control Android devices without installing scrcpy separately. On macOS, the Homebrew cask pulls in adb and ffmpeg automatically. On Windows, the installer offers to install Android platform-tools and FFmpeg alongside the app.
  • Active development, low open-issue countThe repository was created in February 2026 and last pushed to in October 2026, with 1,187 stars and 133 forks accumulated in under a year. Three open issues is a low support burden for a tool that covers ADB, Logcat, multi-device streaming, and an MCP server. The YAML plugin and MCP server were added as recent features, indicating active feature development.
  • Runs on macOS, Linux, and WindowsBoth the CLI/TUI and the desktop app run on all three major operating systems. iOS simulator support requires macOS and Xcode, as Apple's xcrun simctl is macOS-only, but Android emulator management and ADB tooling work identically on Linux and Windows.

Trade-offs

  • -Desktop app is a preview releaseMulti-device streaming, the scenario studio, and the MCP server are in the desktop app, which is still marked as preview. Preview software may have incomplete features, interface changes, or undocumented stability issues. For teams that need a stable tool for production workflows, the CLI/TUI is the mature component; the desktop app warrants evaluation before committing to it.
  • -iOS support requires macOS and XcodeiOS simulator management depends entirely on Apple's xcrun simctl and xcrun devicectl tools, which are only available on macOS with Xcode installed. Developers on Linux or Windows cannot use SimUtil for iOS simulators. Teams with Linux-only CI environments cannot use SimUtil for iOS device workflows.
  • -Dart and Flutter required to extend the coreSimUtil is a Dart and Flutter project. Contributing to it or building integrations beyond the YAML plugin system requires Dart and Flutter SDK knowledge. Developers who want to modify core behavior will need to install the Flutter SDK and work within a Dart monorepo structure.
versus alternatives

Simutil vs alternatives#

SimUtil vs Genymotion

Genymotion is a commercial Android emulator platform aimed at development and QA teams. SimUtil covers both Android emulators and iOS simulators under an MIT license, making it a broader local device management tool.

FeatureSimUtilGenymotion
LicenseMITProprietary (free personal, paid commercial)
iOS simulator supportYes (macOS only)No
Android emulator supportYesYes
Multi-device streamingYes (desktop app, preview)Yes (paid tiers)
MCP server for AI agentsYes (desktop app)No
CostFreeFree personal, paid commercial

SimUtil is the better choice when you need iOS and Android management in one tool, when you want MCP integration for AI coding agents, or when your team needs commercial use without licensing fees. Genymotion is worth considering when you specifically need Android-only emulation and are already integrated with Genymotion's cloud testing platform.

Compared to IDE-integrated device managers

Android Studio's AVD Manager and Xcode's simulator list are the default ways most developers launch emulators and simulators. Both are free but tightly coupled to their parent IDEs. Opening either IDE just to boot a device adds load time and context switching that SimUtil removes.

SimUtil does not replace Android Studio or Xcode for development work. It replaces the specific habit of opening them for device management. The two coexist: use SimUtil to manage devices and run Logcat; keep the IDE open for build, debug, and editing.

install · quick start

Quick start#

bash
Install the CLI/TUI with Homebrew on macOS or Linux.
```bash
brew tap dungngminh/simutil
brew install simutil
```
tech stack · detected from GitHub

What it's built on#

Languages
C++DartSwift
frequently asked

FAQ#

Does SimUtil work on Linux and Windows?

Yes, the CLI/TUI and desktop app run on macOS, Linux, and Windows. iOS simulator support is macOS-only because it depends on Apple's Xcode tools. On Linux and Windows, SimUtil covers Android emulators and ADB-connected physical devices.

Do I need to install scrcpy separately to use the desktop app?

No. SimUtil Desktop ships its own scrcpy server so you do not need a separate scrcpy installation. On macOS, the Homebrew cask pulls in adb and ffmpeg automatically. On Windows, the installer offers to install Android platform-tools and FFmpeg alongside the app.

How do I add custom tools like Maestro or scrcpy to SimUtil?

Use the YAML plugin system in ~/.simutil/settings.yaml. Each plugin entry defines a command, its arguments with {device.id} template variables, which platforms it applies to (Android or iOS), and an optional single-key shortcut. No source-code changes are needed. A default settings file is created on first launch with a scrcpy example already included.

Can AI coding agents like Claude Code control devices through SimUtil?

Yes, the SimUtil Desktop app exposes an MCP server that allows Claude Code, Codex, Cursor, and other MCP-compatible agents to list, start, stream, tap, swipe, screenshot, and record devices. The server is documented in app/README.md. The simutil schema CLI command prints the full JSON schema for all commands.

Is SimUtil free for commercial use?

Yes. SimUtil is MIT licensed, which permits commercial use, modification, and redistribution without restriction. Both the CLI/TUI and the desktop app are covered by the MIT license; see the LICENSE file in the repository for the full terms.

also worth a look

Similar open-source tools#

Termux App

Termux App

Linux terminal and package manager for Android devices.

62.6KJavaGPL-3.0-only
Nvm

Nvm

Switch Node.js versions per shell with a single bash command

95.5KShellMIT
Arrmada

Arrmada

Movies, TV, books and requests in one app, arr stack included

148GoMIT
Deviload

Deviload

yt-dlp desktop app with media library, player, and editor

164JavaScriptMIT
Rust

Rust

Systems language with memory safety and no garbage collector.

120.1KRustApache-2.0
Fm Dx Webserver

Fm Dx Webserver

Self-hosted web interface for controlling FM/DX radio receivers

103JavaScriptGPL-3.0

Repository

Stars
1.2K
Forks
133
License
MIT
Latest
app-v0.3.0
Last commit
1 day ago
Last verified
Oct 15, 2026
Repo
dungngminh/simutil ↗

Additional details

Language
Dart
Open issues
3
Contributors
2
First release
2026

Categories

Developer ToolsWeb & App DevelopmentDevOps & CI/CD

Tags

CLIDeveloper ToolsmacOSTestingWorkflow AutomationMonitoringAI Agents