
iOS Simulator & Android Emulator Manager
A powerful, cross-platform command-line tool to streamline your mobile development workflow.
SIM-CLI provides a simple and unified interface to manage your iOS simulators and Android emulators. Say goodbye to tedious GUI interactions and manage your devices directly from the terminal.
- ๐ฑ Device Management: List, start, stop, shutdown, restart, and delete simulators/emulators.
- ๐ธ Media Capture: Take screenshots and record screen activity with ease.
- ๐ Clipboard Integration: Copy screenshots and recordings directly to your clipboard.
- GIF Conversion: Automatically convert screen recordings to GIFs.
- ๐ Cross-Platform: Works on macOS (with full iOS simulator support) and Linux/Windows (Android emulators only).
- โจ๏ธ User-Friendly: Clean, intuitive CLI interface with helpful error messages.
- โก๏ธ Shorthand Commands: Quick aliases for all commands (e.g.,
l
for list,s
for start). - ๐ง Smart Device Selection: Easily start the last used device.
- For iOS simulators: macOS with Xcode installed.
- For Android emulators: Android SDK with
adb
andemulator
tools in your PATH.
git clone https://github.com/annurdien/sim-cli.git
cd sim-cli
make build
make install
# List all available devices
sim list
# Start a device by name
sim start "iPhone 15 Pro"
# Take a screenshot and copy it to the clipboard
sim screenshot "iPhone 15 Pro" --copy
# Record a 10-second GIF
sim record "iPhone 15 Pro" --duration 10 --gif
# Stop the device
sim stop "iPhone 15 Pro"
Here is a complete list of available commands and their options.
Command | Aliases | Description |
---|---|---|
list |
l , ls |
List all available simulators and emulators. |
start <device> |
s |
Start a simulator or emulator. Use lts to start the last used device. |
stop <device> |
st |
Stop a running simulator or emulator. |
shutdown <device> |
sd |
Shutdown a simulator or emulator. |
restart <device> |
r |
Restart a simulator or emulator. |
delete <device> |
d , del |
Permanently delete a simulator or emulator. |
screenshot <device> [file] |
ss , shot |
Take a screenshot of a device. |
record <device> [file] |
rec |
Record screen activity of a device. |
last |
- | Show the last used device. |
lts |
- | A shorthand to start the last used device (sim start lts ). |
help |
- | Show help information. |
version |
-v |
Show version information. |
Flag | Shorthand | Description |
---|---|---|
--copy |
-c |
Copy the screenshot to the clipboard. |
Flag | Shorthand | Description |
---|---|---|
--duration |
-d |
Duration of the recording in seconds (e.g., --duration 15 ). |
--gif |
-g |
Convert the recording to a GIF. |
--copy |
-c |
Copy the recording file path to the clipboard. |
The delete
command is destructive and permanently removes the simulator or emulator.
- Always double-check the device name or UDID with
sim list
before deleting. - Running devices are automatically stopped before deletion.
- Deleted devices must be recreated through Xcode (for iOS) or the AVD Manager (for Android).
Contributions are welcome! Please feel free to submit a pull request.
- Fork the repository.
- Create your feature branch (
git checkout -b feature/AmazingFeature
). - Commit your changes (
git commit -m 'Add some AmazingFeature'
). - Push to the branch (
git push origin feature/AmazingFeature
). - Open a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.