Skip to content

GlassHaven/Haven

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,674 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Haven icon

Haven

Free, open-source remote access & mobile workspace for Android —
SSH · Mosh · VNC · RDP · SFTP · SMB · email · cloud storage, a local Linux shell, mesh networking, and a consent-gated AI-agent endpoint

"Haven is an interesting vibe coding experiment. Let's see what comes out of it." — DBP

Release F-Droid Build License Android 8.0+ Downloads Ko-fi

GitHub ReleasesF-Droid

Terminal transparency over a live device wallpaper — click for full-quality video

Watch: the terminal — and every Haven screen — made translucent over the device wallpaper (new in 5.60.4). Live wallpaper: MagicFluids.


         


At a glance

  • Terminal — Mosh / Eternal Terminal / SSH, tmux-aware session restore, configurable keyboard toolbar, OSC 7/8/9/52/133/777 integration.
  • Desktops — VNC (RFB 3.8 / VeNCrypt), RDP (IronRDP + EGFX), a GPU-accelerated native Wayland compositor, and a multi-distro local-desktop manager.
  • Files & cloud — unified browser for SFTP/SCP, SMB, and 60+ cloud providers; cross-filesystem copy/move, editor and image tools; plus on-device FFmpeg transcode, HLS streaming, and DLNA.
  • Connections — port forwarding (-L/-R/-D/-J), SOCKS/HTTP/Tor proxies, per-app WireGuard & Tailscale tunnels, port knocking and fwknop SPA, and SSH keys (incl. FIDO2/SK).
  • Email — ProtonMail (bridge protocol) and any IMAP/SMTP mailbox; compose / reply / forward, multi-account, attachments; plus Mail Rules inbound automation.
  • Local Linux — a Linux userland via PRoot (no root, any Android 8+ device): Alpine, Debian, Arch, or Void, side-by-side.
  • USB forwarding — broker an attached USB device through Android and re-expose it to the agent, into the Linux guest, or over USB/IP to a remote host (e.g. a phone-hosted YubiKey, touch on the phone).
  • Reticulum — rnsh shell, file transfer, and -L/-D port forwarding over Reticulum mesh, pure Kotlin. The one transport that keeps working with no internet at all.
  • Agent transport (MCP) — an optional MCP server exposing ~130 consent-gated, audited tools; the agent can even see and operate Haven itself for a self-hosting build → install → verify loop.
  • Security — biometric lock, no telemetry, encrypted backup/restore (AES-256-GCM).

See docs/FEATURES.md for the full feature index.

Languages

Available in 12 languages: English, Chinese (simplified), Spanish, Hindi, Arabic (with RTL support), Portuguese, Bengali, Russian, Japanese, Korean, French, and German. The UI follows the device language.

Want to help translate? Improve a translation or add a new language straight from the web translation page — no cloning or setup; your changes become a GitHub pull request. See Languages & translation for details.

Install

Channel
GitHub Releases Signed APK, all features
F-Droid Built from source, all features

Both builds have the same features — SSH, Mosh, Eternal Terminal, VNC, RDP, SFTP, SMB, email, and cloud storage. IronRDP (Rust) is built from source via cargo-ndk. rclone (Go) is built from source via gomobile.

Pick one channel and stay on it. The two channels are signed with different keys — GitHub Releases use Haven's own release key; F-Droid builds from source and signs with F-Droid's per-app key. Android treats different signing keys as different apps, so you can't update in place from one channel to the other — switching means uninstall + reinstall, which clears app data (back up first via Settings → Backup). Direct sideloads and Obtainium track the GitHub Releases key.

Signing certificate SHA-256 (to verify a sideloaded APK with apksigner verify --print-certs):

  • GitHub Releases: ea03a3a70e1c11d0a78932f959b21f20d8735d9cd750997657cb7f7d7c2b90b3
  • F-Droid: ea05a89431961b8ac53c36725452673c2be1c2d7b6e48771617b974e6092b332

Build from source

Requires Rust with Android targets, cargo-ndk, Go 1.26+, and gomobile:

# Rust (for RDP)
rustup target add aarch64-linux-android x86_64-linux-android
cargo install cargo-ndk

# Go (for rclone cloud storage)
go install golang.org/x/mobile/cmd/gomobile@latest
go install golang.org/x/mobile/cmd/gobind@latest

git clone --recurse-submodules https://github.com/GlassHaven/Haven.git
cd Haven
./gradlew assembleDebug

Output: app/build/outputs/apk/debug/haven-*-debug.apk

Documentation

Third-party libraries

Library Purpose License
rclone Cloud storage engine (60+ providers) MIT
IronRDP RDP protocol (Rust/UniFFI) MIT / Apache-2.0
JSch SSH/SFTP protocol BSD
smbj SMB/CIFS protocol Apache-2.0
ConnectBot termlib Terminal emulator Apache-2.0
reticulum-kt Reticulum mesh network transport (Kotlin) MPL-2.0
rnsh-kt Reticulum remote shell client (Kotlin) AGPL-3.0
FFmpeg Media conversion and streaming LGPL-2.1 / GPL-2.0
PRoot Local Linux shell (userspace chroot) GPL-2.0
labwc Wayland compositor (native desktop) GPL-2.0
wlroots Wayland compositor library MIT
virglrenderer GPU virtualization (OpenGL passthrough to PRoot apps) MIT
Jetpack Compose UI toolkit Apache-2.0

Backing

Haven sits on top of the projects listed in the table above — the heavy lifting was done long before this repo existed.

Most of the direction Haven has taken has come from the user base, not from a roadmap: bug reports, screenshots of edge cases, "have you tried…" comments on long issue threads. Claude Code Opus writes most of the actual code; the maintainer's role is closer to that of a messenger between the user group and the model — listening, setting the agenda, and quality-checking.

A small recurring amount comes in via Ko-fi and Liberapay. It helps offset the Anthropic bills for the Claude Code usage above, and it's a clear signal that the work is useful to people. The project continues regardless of donations.

License

AGPLv3

About

Free SSH, VNC, RDP & SFTP client for Android

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors