Another

Narrow dark window on a macOS desktop, with a green Android logo and one detected emulator in the device list.

Android screen and input over adb, in a Tauri app

Another is a desktop app that shows an Android device's screen and sends touch, keyboard, scroll and navigation input back to it. It pushes the scrcpy server to the device over adb and decodes the H.264 or H.265 stream that comes back. The UI is React, the core is Rust, and Tauri 2 packages both. A built-in MCP server gives an AI agent such as Claude Code or Cursor the same controls. The code is MIT-licensed.

Bundled adb and a UI tree that agents can query

  • adb ships in every package: the release workflow downloads Google's platform-tools adb for each OS and puts it inside the app. An adb that came with an Android SDK install (the default SDK folder on macOS and Windows, or ANDROID_HOME) still takes priority.
  • Wireless from the UI: Another reads the device's wlan0 address, switches adb to TCP on port 5555 and reconnects to it. Phone and computer have to be on the same network.
  • Screen contents from the accessibility tree: besides PNG screenshots, the v0.4.4 MCP server has another_get_ui_tree and another_find_on_screen. The second one searches by text, content description, resource ID or class name and returns coordinates that another_send_touch takes as is. The README lists 21 tools; the code defines 24, screen rotation included.
  • An agent skill: npx skills add Zfinix/another@another-android installs instructions telling the agent to take a screenshot before acting and another one afterwards to check the result.
  • Adaptive bitrate: video bitrate follows on-screen activity, and resolution, frame rate, bitrate and codec can also be set by hand.
  • Audio and recording: device audio on Android 11 and later, screen recording to .webm, screenshots, and a command bar on ⌘K (Ctrl+K on Linux and Windows).

Supported on macOS only, with MCP on by default

macOS is the only platform the README lists as supported. Linux and Windows are marked "Experimental", yet every release ships packages for all three: .dmg for Apple Silicon and Intel, .deb, .rpm, AppImage, .msi and .exe. The Mac build needs macOS 10.15 or later.

The MCP server starts with the app. It listens on 127.0.0.1:7070 with no authentication in its code, and one of its tools, another_shell, runs an adb shell command on the device. A switch in Settings turns it off. The documented stdio mode calls an another-mcp binary that no release includes; it has to be built from crates/another-mcp.

Macros replay screen positions and timing, not UI elements. Each recorded event keeps coordinates relative to the screen size plus a millisecond timestamp, and playback reproduces the original delays. Macros export and import as JSON.

Updates install without asking. At launch the app checks GitHub releases, then downloads and installs any newer signed version, which takes effect on the next restart.

v0.4.4, released on 6 October 2026, is the latest version. The repository opened on 29 March 2026 and is still on 0.x. Versions 0.4.1 to 0.4.4 came out within four hours across 5 and 6 October and deal with packaging, mostly the Linux AppImage; v0.4.0 dates from 17 June. The bundled scrcpy server is v2.7 from September 2024, while the scrcpy project released v5.0.1 on 8 October 2026.