Shellvana docs
Shellvana is an SSH client for phones. It connects to your own servers over standard SSH and renders the output as readable text. This page covers setup and everyday use.
What you need
- A phone. An iPhone on iOS 15 or later, or an Android phone.
- A host running standard
sshd. Any Linux, BSD, or macOS machine that you can already reach withsshworks. There is nothing to install on the server: no agent, no daemon, no plugin. - A network path to that host. Shellvana connects directly from your phone to the address you enter. If the host is only reachable on your home network, connect over your own VPN (WireGuard, Tailscale, or similar) first. Shellvana has no relay or cloud service in between.
Install
Get Shellvana from the App Store or Google Play. The app is free. There is no account to create and nothing to sign in to.
Add a host
- On the host list, tap + to open Add host.
- Fill in Name (any label you like), Host (an address or hostname), Port (usually 22), and User.
- Under Auth, choose Password or one of your SSH keys. If you have no keys yet, the list offers only Password. See SSH keys.
- Under Grid, pick the terminal size that Shellvana asks the server for. Console is 132 columns by 40 rows and suits ordinary shell work. AI agent is 60 columns by 40 rows and suits full-screen terminal assistants that draw a sidebar. Custom lets you set Cols and Rows yourself.
- Tap Save, then tap the host to connect.
First connection and host keys
The first time you connect, Shellvana shows the server's host key algorithm and fingerprint and asks Trust this host? Compare the fingerprint with the one on the server, for example with ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub, then tap Trust.
Shellvana remembers that key. If the server ever presents a different one, you see a HOST KEY CHANGED warning with the previous and the new fingerprint, and the session does not open unless you type the host name to accept the new key. If you did not reinstall or rekey the server, do not accept it.
Host key algorithms that are weak or legacy are refused. If you see "Host key algorithm ... is not allowed", enable a modern host key such as Ed25519 on the server.
Reading a session
- Read view. Every session opens in the read view. Prose and Markdown reflow into proportional type sized for a phone. Tables, diffs, tree output, and anything column-aligned stay in monospace at their exact spacing.
- Terminal view. Tap the terminal icon in the top bar to see the exact grid that the server sent. Tap the read icon to go back. Both views show the same session, so you lose nothing by switching.
- Reading font and size. Tap the Reading font icon in the top bar to change the typeface and the reading size.
- Full-screen programs. Programs such as
vim,htop, andtmuxrun normally. When one takes over the screen, Shellvana tells you that its layout needs the grid and offers a Grid button. - Links. A link in the output opens only after you confirm where it goes, and it opens in your own browser, outside the app.
Typing commands
- Type in the composer at the bottom (Type a command) and tap the send button.
- The key row above the composer sends keys that a phone keyboard lacks, such as Ctrl-C, Tab, Esc, the arrow keys, Ctrl-D, and Ctrl-Z.
- When the output looks like a password prompt, Shellvana offers Secure input. Text entered that way is sent to the server but is not stored and does not go into the transcript.
SSH keys
Open the menu (three dots) on the host list and choose SSH keys.
- Import a key. Tap Import, paste an OpenSSH private key, and enter its passphrase if it has one. The key is stored encrypted on the device.
- Generate a hardware key (Pro). Generate secure key creates a key inside the phone's secure hardware: the Secure Enclave on iPhone, or StrongBox or the hardware-backed keystore on Android. The private half cannot leave the device. These keys are ECDSA P-256, which appears on the server as
ecdsa-sha2-nistp256. - Install the public half on the server. Open the key's menu, choose Copy public key, and add that line to
~/.ssh/authorized_keysfor your user on the server. The first time, connect with a password to do this. - Use the key. Edit the host, and under Auth choose the key in place of Password.
Keeping work alive across disconnects
A phone drops connections: the screen locks, the network changes, the app goes to the background. When Shellvana reconnects, the server gives you a fresh shell. Anything that was running in the old shell is gone unless it was running under a terminal multiplexer.
For anything long-running, start it inside tmux or screen on the server. For example, run tmux new -A -s main after you connect. If the connection drops, connect again and run the same command to pick up where you left off.
Per-host security settings
- Require unlock to connect. Off by default. When you turn it on for a host, Shellvana asks for your fingerprint, face, or screen lock before it opens a session there.
- Block screenshots. On by default. Screenshots and the app-switcher preview of a session are blocked. You can turn this off per host.
- Connect (incognito) (Pro). In a host's menu, this opens a session that writes no transcript at all.
History and your data
- Session transcripts are saved on the phone only, encrypted with SQLCipher. Transcripts older than 30 days delete themselves.
- To remove one host's saved transcripts, open that host's menu and choose Clear this host's history. To remove everything, open the main menu and choose Clear all history.
- Deleting a host removes it from the list but keeps its saved transcripts and its trusted host key. Clear the history first if you want those gone too.
- Shellvana has no account, no analytics, and no crash reporting. The privacy policy lists every network connection that the app makes.
Free and Pro
- Free. One live session, password and key authentication, host profiles, and the complete readable rendering. The readability is not the paid part.
- Pro. A single one-time purchase, not a subscription. It adds up to four concurrent sessions, hardware-backed key authentication, all reading fonts, and incognito sessions.
- Buy or restore. Open the menu on the host list and choose Shellvana Pro. On a new phone, tap Restore purchase on that sheet.
Troubleshooting
- The connection times out. Check that the phone can reach the host at all. If the host is on a private network, turn on your VPN first, and check that the port matches the one
sshdlistens on. - The key is rejected. Confirm that the public key from Copy public key is on one line in
~/.ssh/authorized_keysfor the same user that the host profile names, and that the server allows that key type. - A program's layout looks wrong in the read view. Switch to the terminal view. Full-screen programs are drawn for a grid, and the grid is always the exact output.
- A full-screen assistant is cut off. Edit the host and change Grid to AI agent, then reconnect.
- "No previous purchase found." Make sure the phone is signed in to the same App Store or Google Play account that bought Pro, then try Restore purchase again.
Get help
Email [email protected] with your device model and your iOS or Android version, or see the support page.