Skip to content
kewldanPublic

About

A quiet, fast desktop GUI for Android Debug Bridge: devices, screen mirroring, files, apps, logcat and shell in one keyboard-first window.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

ย 

History

95 Commits

Folders and files

Repository files navigation

Tether app icon

Tether

A quiet, fast desktop GUI for Android Debug Bridge.

Devices, screen mirroring, files, apps, logcat and shell in one keyboard-first window.

License: MIT Tauri 2 Rust React 19 TypeScript Tailwind CSS v4

macOS Windows Linux Android adb scrcpy shadcn/ui

CI Latest release Downloads Stars Last commit Code size Bun Biome Roadmap


Every Android developer has a text file of adb commands to copy from: pull this file, clear that app's data, forward that port, grep logcat for a crash. Tether puts all of it in one window. Plug in a phone or start an emulator, and every screen works straight away: no command to remember, no serial number to type.

It runs on the standard adb server, so Android Studio, scrcpy and your terminal keep working next to it.

Tether's device overview: battery, storage, memory, CPU, display and network for a connected Pixel, with quick actions for screenshot, recording, mirroring and installing an APK
๐Ÿ“Š Device overview: live vitals and one-click actions for the selected device.

โœจ Highlights

  • ๐Ÿ“ฆ Zero setup. Already have adb? Tether finds it. Don't have it? One click downloads the official platform-tools straight from Google into the app. Nothing is installed system-wide.
  • ๐Ÿค Plays nice with your tools. Tether talks to the standard adb server, so Android Studio, scrcpy and your terminal keep working side by side. No fighting over USB.
  • โšก Native and tiny. Built with Tauri and Rust: a small binary with low memory use, not another 200 MB Electron app.
  • โŒจ๏ธ Keyboard-first. โŒ˜K / Ctrl+K command palette for every action, device and screen.
  • ๐Ÿง  Speaks adb natively. Uses the adb server protocol directly instead of scraping CLI output, so it stays fast and reliable.
  • ๐ŸŽจ Designed, not assembled. A dense, calm interface with real dark and light themes, spring animations and accessible contrast.
  • ๐Ÿ”„ Updates itself. Signed over-the-air updates: one click, and it restarts on the new version.
  • ๐ŸŒ English and Russian out of the box.

๐Ÿงฐ Features

Feature What you get
๐Ÿ“ฑ Devices Live device list over USB, Wi-Fi and emulators, with clear states (unauthorized, offline, no permissionsโ€ฆ)
๐Ÿ“ฆ adb setup Auto-detection of existing adb, one-click platform-tools download with license consent, and a notice when Google ships a newer one
๐Ÿ“ถ Wi-Fi pairing Pair Android 11+ devices with a QR code or pairing code, or connect by IP
๐Ÿ–ฅ๏ธ Screen mirroring Low-latency mirroring and control powered by scrcpy-server, device audio, MP4 recording with sound, a pop-out window and saved defaults
๐Ÿ“ File manager Browse, preview (with photo EXIF) and transfer with a queue, compressed when the device allows; computer โ‡„ device panes, drag files in and out
๐Ÿงฉ Apps Install APK / split APKs on several devices at once, manage permissions, clear data, extract APKs, signing certificates, per-app data usage
๐Ÿ“œ Logcat A log viewer that keeps up: level, tag, package and regex filters, crash detection
๐Ÿ’ป Shell Multi-tab terminal with snippets and run-on-all-devices
๐Ÿ“Š Device overview Battery, storage, memory, CPU, display and network at a glance
๐ŸŽ›๏ธ Developer toggles Dark mode, animation scales, DPI, layout bounds, demo mode, system and per-app language, saved profiles and one-click revert
๐Ÿงฎ Multi-device grid Every connected screen side by side; install, run, tap and screenshot on all of them at once
๐Ÿ“ฒ Sideload OTA Flash an OTA zip from recovery with progress and safety checks
๐Ÿ”” Menu bar & notifications Device status in the menu bar or tray; alerts when devices connect or an app crashes
๐Ÿ”ง Power tools Port forwarding with live connections, intents & deep links, performance charts, bugreports, captures gallery with annotations
๐Ÿฉบ Diagnostics "Can't see your device?" checklist that explains and fixes common problems
โŒจ๏ธ Keyboard-first Command palette, rebindable shortcuts, open at login straight into the menu bar

What comes next is in the ๐Ÿ—บ๏ธ roadmap.

๐Ÿ“ธ Screenshots

Jumping between Overview, Screen, Files, Apps, Logcat, Performance and Device settings in Tether
๐Ÿงญ Every screen, one sidebar away.

The emulator's screen mirrored inside Tether while apps are opened on it
๐Ÿ–ฅ๏ธ Mirror and control the screen, with audio, recording and a pop-out window.
Logcat streaming live with level counters, filters and a folded stack trace
๐Ÿ“œ Logcat that keeps up, with filters, presets and crash folding.
Typing perf into the command palette and jumping to Performance
โŒจ๏ธ โŒ˜K / Ctrl+K jumps to any screen, device or action.
File manager listing screenshots on the device with an image preview and file details
๐Ÿ“ Browse, preview and transfer files, or work in two panes.
Apps list with icons, versions, sizes and system badges
๐Ÿงฉ Apps with real names and icons, installs on many devices.
Performance charts for CPU, memory, network and battery above a process table
๐Ÿ“ˆ Live performance charts and a process table.
Developer toggles for dark theme, animation scale, font scale, screen size, overlays, language and connectivity
๐ŸŽ›๏ธ Developer toggles, profiles and one-click revert.
Device overview in the light theme
๐ŸŒ— Real dark and light themes.
First launch: Tether finds adb in the Android Studio SDK
๐Ÿ“ฆ Finds your adb, or downloads the official platform-tools.
The mirrored screen with stream and device settings
โš™๏ธ Bitrate, resolution, codec and device options per session.

๐Ÿš€ Getting started

brew trust kewldan/tap && brew install --cask kewldan/tap/tether   # macOS
winget install kewldan.Tether                                    # Windows

Or download the installer for your OS from the latest release, or build from source (see below).

Note

The macOS build isn't notarized yet. If macOS says it can't verify Tether, open System Settings โ€บ Privacy & Security and click Open Anyway once.

On first launch Tether looks for an existing adb (PATH, ANDROID_HOME, the Android Studio SDK, Homebrew, scoop, winget). If none is found, it offers to download the official platform-tools for you.

Prepare your phone: enable Developer options (tap Build number 7 times), turn on USB debugging, connect the cable and approve the RSA prompt.

Tip

On Linux, install udev rules (android-udev-rules or your distro's equivalent) so non-root users can access the device.

๐Ÿ› ๏ธ Development

Prerequisites: Rust (stable), Bun, and the Tauri prerequisites for your OS.

bun install
bun run tauri dev     # run the app
bun run dev           # UI only, in the browser, with a mocked backend
bun run lint          # Biome
bun run build         # type-check and build the frontend
cd src-tauri && cargo test && cargo clippy --all-targets -- -D warnings

Releases and OTA updates are described in docs/releasing.md.

๐Ÿ—๏ธ Tech stack

  • Shell: Tauri 2 + Rust (tokio) speaking the adb server protocol on localhost:5037
  • UI: React 19, TypeScript, Tailwind CSS v4, shadcn/ui on Base UI, Motion
  • Mirroring: scrcpy-server + WebCodecs
  • Tooling: Bun, Biome, Vite

๐Ÿ“„ License

MIT ยฉ kewldan

Android platform-tools are not bundled. When you choose to download them, they come directly from Google under the Android SDK License Agreement. scrcpy-server is bundled under the Apache 2.0 license (notice).

About

A quiet, fast desktop GUI for Android Debug Bridge: devices, screen mirroring, files, apps, logcat and shell in one keyboard-first window.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages