安装包图标

Shellwave

An SSH client that doesn't make you choose between convenient and trustworthy
新版本 1.7.1
New:
- Add PgUp and PgDn to the arrow cluster on the key bar
- Scroll mouse-aware apps with a drag instead of a button drag
Shellwave is an SSH client for Android phones and foldables, built because every
mobile SSH client makes you choose between convenient and trustworthy — and
that's a stupid choice.

Sessions that survive
Your train goes into a tunnel and the connection drops. When the signal comes
back, your session is still there — reconnected without re-typing a password,
and with optional tmux-backed sessions, reattached with scrollback intact. You
don't do anything. Hosts can also keep a persistent session running, so you can
close the app and come back to exactly where you left off.

Nothing is trusted for you
Host keys are checked the first time you connect and remembered after that, with
the fingerprint shown so you can check it yourself. If a host key ever changes,
Shellwave stops you before you go any further. There is no accept-all mode, and
a script running from a widget or a tile never answers a prompt on your behalf.

Your keys stay on your device
Password, an imported private key, a key generated on your device, or
keyboard-interactive/2FA — whatever you already use. Everything is encrypted
on-device, with hardware-backed protection on phones that support it, and an
optional biometric lock. You can generate a key on the device and install it in
a host's authorized_keys without the private key ever leaving the phone.

Save yourself the typing
Save commands or scripts against a host, with parameters you fill in when you run
them. Watch them run live, run them in the background and check back later, or
fire them into a session you already have open. You can launch a script from the
app itself, a home-screen widget, an app shortcut, or a Quick Settings tile.

Networking, done properly
- Local and remote port forwarding
- A SOCKS5 proxy
- Jump host/bastion chaining through multiple hops
- Import your existing ~/.ssh/config as-is — hosts, ports, users, keys, jump hosts
Forwarded ports and the proxy bind to loopback unless you say otherwise.

File transfer
Send files to a host or pull them down over SFTP, without switching apps.

A real terminal
256 colours, wide character support, correct cursor and scroll handling. If you use
vim, tmux, or htop, they will look and behave the way you expect. No weird redraws,
no broken keys, no compromises.

Built with foldables in mind
On unfolded or wide screens you get a two-pane layout, host list next to the
terminal. Tabletop mode keeps the terminal above the hinge and the keyboard below
it. Fold or unfold mid-session and nothing drops.

Make it look like yours
A handful of bundled monospace fonts, or bring your own. Colour schemes like
Solarized, Gruvbox, Nord, Dracula, Tango and Campbell, plus a full editor if you
want to build your own. A key bar you can customise per host with macros and
layouts. Material You colour throughout.

Privacy
No usage data, no analytics, no crash reporting. Shellwave only connects to the
hosts you tell it to — nothing else.

The Play Store build has an optional one-time tip for the developer. It does not unlock
anything, and the F-Droid build leaves it out entirely.

Open source, GNU GPLv3.

版本

尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。

下载 F-Droid
  • 版本 1.7.1 (10701) 推荐 更新于 2026-09-20

    arm64-v8a armeabi-v7a x86 x86_64

    该版本需要 Android 12 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • android.permission.ACCESS_LOCAL_NETWORK
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 拥有完全的网络访问权限
      允许此应用创建网络套接字和使用自定义网络协议。浏览器和其他应用提供了将数据发送到互联网的方法,因此不需要此权限将数据发送到互联网。
    • 显示通知
      允许该应用显示通知
    • 开机启动
      允许此应用在系统完成引导后立即启动。这样可能会延长开机时间,并因始终运行而降低手机总体运行速度。
    • 使用生物特征硬件
      允许此应用使用生物识别硬件进行身份验证
    • 使用指纹硬件
      允许此应用使用指纹硬件进行身份验证
    • 控制振动
      允许此应用控制振动器。
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.lordofpolls.shellwave.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 13 MiB PGP 签名 | 构建日志

  • 新版本 1.5.0
    New:
    - Let a widget tap unlock a biometric-gated host
    - Move terminal settings to a dedicated screen
    - Report whether a credential is biometric-gated
    - Reorganise hosts form

    Fixed:
    - Deep-copy duplicated hosts and give Sessions an idle empty state

    Performance:
    - Stop polling every vsync frame for idle terminal sessions
  • 版本 1.5.0 (10500) - 更新于 2026-09-20

    arm64-v8a armeabi-v7a x86 x86_64

    该版本需要 Android 12 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • android.permission.ACCESS_LOCAL_NETWORK
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 拥有完全的网络访问权限
      允许此应用创建网络套接字和使用自定义网络协议。浏览器和其他应用提供了将数据发送到互联网的方法,因此不需要此权限将数据发送到互联网。
    • 显示通知
      允许该应用显示通知
    • 开机启动
      允许此应用在系统完成引导后立即启动。这样可能会延长开机时间,并因始终运行而降低手机总体运行速度。
    • 使用生物特征硬件
      允许此应用使用生物识别硬件进行身份验证
    • 使用指纹硬件
      允许此应用使用指纹硬件进行身份验证
    • 控制振动
      允许此应用控制振动器。
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.lordofpolls.shellwave.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 13 MiB PGP 签名 | 构建日志