Local shell, SSH, RDP, and VNC sessions in one native macOS app.
Constellation saves your remote machines and opens each session in a tab. It uses libghostty for SSH, FreeRDP for RDP, and RoyalVNCKit for VNC.
Note
Constellation does not create a VPN or relay traffic. Connect to your LAN, VPN, or Tailscale network before starting a session.
- Saves multiple addresses and connection profiles for each machine
- Opens sessions in tabs and restores the tabs from your previous workspace
- Opens the current Mac's login shell from the built-in This Mac sidebar entry
- Runs SSH sessions in a Metal-rendered terminal that uses your existing OpenSSH configuration, keys, and agent
- Supports custom terminal fonts, themes, and Ghostty configuration
- Runs RDP sessions with NLA, HiDPI rendering, shared clipboard text, and a trust store for accepted certificates
- Opens VNC sessions in Constellation or Apple's Screen Sharing app
- Stores credentials in the macOS Keychain
Constellation requires an Apple silicon Mac running macOS 15 or later.
- Download the signed
.dmgfrom GitHub Releases when one is available, or build from source. - Open the disk image and drag Constellation to
/Applications. - Launch Constellation from
/Applicationsand add a machine.
Constellation uses Sparkle to check GitHub Releases for updates. Choose Constellation → Check for Updates…, or enable automatic checks in Settings → Updates.
In-app updates work only after you copy Constellation to /Applications. macOS translocates apps launched from a disk image or ~/Downloads, so Sparkle cannot update them in place.
Install Xcode 26 or later, then run:
brew install cmake xcodegen
xcodebuild -downloadComponent MetalToolchain
git clone --recurse-submodules https://github.com/WolffTech/constellation.git
cd constellation
Scripts/build-libghostty.sh
Scripts/build-freerdp.sh
xcodegen generate
open Constellation.xcodeprojThe build scripts download the pinned Zig and OpenSSL versions, then compile the pinned Ghostty and FreeRDP versions.
Forks that distribute their own builds must replace SUFeedURL and SUPublicEDKey in project.yml. Otherwise, those builds will check Constellation's official update feed and trust its release signatures.
Constellation is free software licensed under GPL-3.0-only. Third-party attributions are listed in THIRD_PARTY_NOTICES.md, and details about the source archive included with each release are in SOURCE.md.