Tailscreen
Lightweight screen sharing between Macs, for the times when spinning up a full conferencing app feels like overkill.
Tailscreen is a tiny macOS menubar app that streams one Mac’s screen to another Mac over Tailscale. It uses ScreenCaptureKit to grab pixels, VideoToolbox to encode HEVC (with H.264 as a fallback for older hardware), and Tailscale’s WireGuard tunnel to move bytes. There is no server. There is no account to make beyond Tailscale itself. There is no port to forward.
You hit “Start Sharing”, the other person hits “Browse Shares”, they click your machine, and a window opens. That’s the whole thing.
What you get
- A 60 fps, full-Retina, hardware-encoded HEVC stream over the same WireGuard tunnel that Tailscale already gives you. Direct peer-to-peer when the network allows; Tailscale’s DERP relays when it doesn’t. Falls back to H.264 on Macs whose VideoToolbox can’t do HEVC.
- Automatic peer discovery — Tailscreen probes your tailnet and shows you which machines are sharing. No IP-typing.
- Ephemeral tsnet nodes. Each session spins up a fresh node and tears it down when you’re done, so your Tailscale admin console doesn’t fill up with ghosts.
- Two-way annotations. The viewer can scribble on the sharer’s screen over a reliable TCP back-channel, so strokes don’t get dropped when video does.
- A menubar icon. That’s it for UI. No dock icon, no main window, nothing bouncing for attention.
What you need
- macOS 15 (Sequoia) or later. Earlier macOS versions, iOS, and Linux aren’t supported.
- Swift 6 toolchain if you’re building from source. Otherwise just grab a release.
- A Tailscale account. The free personal tier is fine.
- Screen Recording permission. macOS will ask the first time you share.
Where to go next
| You want to… | Read this |
|---|---|
| Get it running | Install |
| Actually use it | Usage |
| See how the pieces fit together | Architecture |
| Read the wire format | Network Protocol |
| Confirm nobody else is watching | Privacy & Security |
| Diagnose a black viewer window | Troubleshooting |
| Hack on it | Contributing |
License
MIT.
The upstream libtailscale is BSD-3-Clause. Do whatever.