Skip to content
briqtPublic

About

Native Android SSH / mosh terminal with built-in Tailscale, proxies, multiple sessions, tmux, and SFTP. Android 原生 SSH / mosh 终端,内置 Tailscale,支持代理、多会话、tmux 和 SFTP。

Topics

Resources

Code of conduct

Contributing

Stars

147 stars

Watchers

1 watching

Forks

Latest commit

 

History

130 Commits

Folders and files

Repository files navigation

Moke · 墨客

Native Android SSH / mosh terminal with built-in Tailscale, proxies, multiple sessions, tmux, and SFTP.

CI Release Android

English · 简体中文

Features

  • SSH / mosh: password, PEM private-key and Tailscale SSH identity authentication, host-key fingerprint confirmation, SSH jump hosts, and per-host startup commands.
  • Built-in Tailscale: select visible devices in the app or connect using Tailscale IP addresses and MagicDNS hostnames, with support for official and self-hosted control servers. The userspace client does not use the system VPN slot.
  • Proxies: HTTP / HTTPS / SOCKS4 / SOCKS5 proxies, selectable per host.
  • Sessions & tmux: multiple sessions, background connections, remote tmux session management, and port forwarding that listens only on the device's loopback interface.
  • Files: SFTP browsing, uploads and downloads with resume, and sending file paths to the terminal.
  • Terminal: customizable extra keys, IME input, text-block input, links, clipboard and notification support, fonts and color schemes, and English / Chinese interfaces.

Network credentials and tailnet login state are encrypted with the Android Keystore.

Use built-in Tailscale

  1. Open Settings → Network, add Tailscale, choose the official or a self-hosted control server, and sign in.
  2. Add or edit a host, select the Tailscale network under Network, then choose Select device. You can also enter a Tailscale IP address or MagicDNS hostname manually.

If the target has Tailscale SSH enabled and its policy permits the requested system user, choose Tailscale SSH authentication without a password or private key. This requires a direct connection over the selected network on port 22, without a jump host. Ordinary SSH still uses the password or private key configured for the host.

The built-in network is used only for Moke connections; it does not provide network access for other apps.

Screenshots

Hosts Terminal tmux panel Remote files Appearance (light theme)
Hosts · Terminal · tmux panel · Remote files · Appearance (light theme)

Install

Requires Android 11 or newer and an arm64-v8a device. Download the APK from Releases and allow installation from that source. Published APKs use a stable signing key and support in-place upgrades. In-app update checks offer stable releases by default; pre-releases can be enabled in Settings.

mosh requires mosh-server on the remote host and a reachable UDP path. Proxy use requires a SOCKS5 server that supports UDP forwarding; HTTP, HTTPS and SOCKS4 proxies cannot carry mosh. SSH jump hosts carry only the bootstrap connection, not mosh UDP traffic, so the target still needs a directly reachable UDP path. Session continuity also depends on network availability and Android background restrictions.

Build & feedback

See CONTRIBUTING for build instructions and contribution guidelines. Bug reports, suggestions and pull requests are welcome.

License

The product layer (app/) is GPL-3.0-or-later; see LICENSE and COPYRIGHT.md. The vendored terminal modules are Apache-2.0, and the standalone mosh executable is GPLv3. Component sources, modifications and font licenses are listed in THIRD_PARTY_NOTICES.md. Distributors must meet the applicable license and corresponding-source requirements.

About

Native Android SSH / mosh terminal with built-in Tailscale, proxies, multiple sessions, tmux, and SFTP. Android 原生 SSH / mosh 终端,内置 Tailscale,支持代理、多会话、tmux 和 SFTP。

Topics

Resources

Code of conduct

Contributing

Stars

147 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages