A remote terminal runs your commands on the host computer, not on your device

A remote terminal connects you to a shell session that lives on another machine. Everything you type executes on that host — with its files, its environment, and its network position — while the device in your hand only sends keystrokes and displays output. That is what makes a remote terminal different from a terminal app that runs locally on a phone: you are not running a small shell on the phone, you are using your actual computer.

CLIAnywhere implements this with two parts: an open-source daemon that runs on your PC and owns the shell sessions, and a client on iPhone, Android, or the web that attaches to them. Because the daemon holds the sessions, they survive whatever happens to the client.

Host

Your computer

The CLIAnywhere daemon runs on Windows, macOS, or Linux and keeps your shell sessions alive — bash, zsh, fish, pwsh, and more.

Transport

Encrypted connection

Peer-to-peer DTLS when your devices can reach each other directly, with an encrypted WSS relay as fallback. No open ports.

Client

Your device

Attach from an iPhone, an Android device, or a browser with the Web App. Any client opens the same live session.

What remote terminal access includes here

The pieces that make a remote terminal usable day to day, not just in a demo.

Sessions that survive disconnects

Terminal sessions run under the daemon on your computer, so closing the app, locking your phone, or losing signal does not end them. Reconnect and the same shell is still there, with its running processes and scrollback.

One session across every device

Start work at your desk, check on it from your phone, and open the same session again later from a browser. One account can link multiple computers, each protected by its own locally generated Security Code.

Files and localhost, not just a prompt

Browse the host's file system and download files straight to your phone, and reach web apps bound to localhost or your LAN — dev servers, router admin pages, NAS dashboards — from wherever you are.

Hosts and shells you already use

The daemon runs on Windows, macOS, and Linux — as a desktop app or a headless CLI — and speaks bash, zsh, fish, sh, cmd, pwsh, and powershell. It is open source, so you can audit and build it yourself.

Remote terminal access without port forwarding or a public IP

Classic remote access asks you to expose your computer to the internet: open a port on the router, get a public IP or set up DDNS, and hope the exposed service stays safe. CLIAnywhere does not work that way. The daemon makes outbound connections only — a peer-to-peer DTLS link when your devices can reach each other directly, or an encrypted WSS relay when they cannot — so there is nothing to forward, open, or expose.

For a walkthrough of the underlying problem, see how to access your PC remotely without port forwarding.

Remote sessions are end-to-end encrypted

Terminal traffic is encrypted end-to-end: keys are negotiated between your computer and your client with SPAKE2, and all data is encrypted with AES-256-GCM before it leaves the device. The relay, when used, only ever sees ciphertext. Each computer's Security Code is generated locally and never uploaded. For the full picture, see how CLIAnywhere secures connections.

Platform and feature facts

What CLIAnywhere supports, at a glance.

Windows hostYes
macOS hostYes
Linux hostYes — desktop UI or headless CLI
iOS clientYes
Android clientYes — Google Play
Web clientYes — webapp.clianywhere.com
Shellsbash, zsh, fish, sh, cmd, pwsh, powershell
Persistent sessionsYes
Desktop–mobile session switchingYes
File browser and downloadYes
Localhost / LAN web accessYes
P2P direct connectionYes — DTLS
Encrypted relay fallbackYes — WSS
End-to-end encryptionSPAKE2 + AES-256-GCM
Port forwarding / public IP requiredNo
Open-source daemonYes
Account modelOne account, multiple PCs, per-PC local Security Code

Common questions about remote terminal access

Short, direct answers to the questions people ask most.

A remote terminal is a terminal interface that lets you use a shell session running on one computer from a different device over a network. The shell and every command you type run on the host computer; the remote device only displays output and sends keystrokes. CLIAnywhere implements this model with a daemon that runs on your Windows, macOS, or Linux PC and clients for iOS, Android, and the web.
Install the CLIAnywhere daemon on the computer whose terminal you want to reach, sign in with your account, and set the Security Code it generates locally. Then open the CLIAnywhere app on an iPhone or Android device, or the Web App in a browser, select that computer, and you are attached to a shell running on it. No port forwarding or public IP address is required.
Yes. CLIAnywhere keeps terminal sessions on your Windows, macOS, or Linux PC and lets you attach to them from an iPhone, an Android device, or a web browser. Because the session runs on the PC, it keeps running when the client disconnects, and you can reconnect later and continue the same shell.
Yes. CLIAnywhere ships a client for iOS and a client for Android, plus a browser-based Web App at webapp.clianywhere.com. All three clients attach to the same daemon running on your computer, so you can switch between them and keep working in the same terminal session.
No. CLIAnywhere first tries to connect your devices directly using peer-to-peer DTLS, and falls back to an encrypted WSS relay when a direct path is not available. Both transports are outbound connections from your computer, so you do not need to open ports, configure a router, or expose a public IP address.

Related guides

Take your terminal with you

Install the daemon on your computer, sign in from your phone, done.

Download App Setup Guide