Persistent Sessions
Persistence is the core value proposition of ShellPod. Your coding session runs on cloud infrastructure and survives browser closes, network disconnects, laptop sleeps, and even machine reboots. Here is how it works and how to get the most out of it.
How persistence works
When you start a ShellPod session, we provision a dedicated Linux container on cloud infrastructure. This container runs independently of your browser or local machine. Your terminal connection is just a window into that container — closing the window does not stop the container.
Inside the container, your terminal session runs inside tmux, a terminal multiplexer. tmux maintains your session state (running programs, command history, terminal output) even when no client is connected. When you reconnect, tmux reattaches to the existing session with everything exactly as you left it.
What persists
Everything on your container's filesystem persists between connections:
- Files and directories: Your cloned repos, generated code, installed packages — all stored on persistent SSD storage
- Configuration: Your
~/.gitconfig,~/.sshkeys, shell configuration, Claude Code settings - Running processes: Anything running inside tmux continues in the background (Claude Code, dev servers, build processes)
- Terminal history: Your command history and terminal scrollback are preserved
- Environment variables: Variables set in your shell profile persist across sessions
Reconnecting to your session
To reconnect, simply go to your ShellPod dashboard and click Open Terminal. The web terminal will reconnect to your existing tmux session automatically. You will see your terminal exactly as you left it — same working directory, same output, same running programs.
If Claude Code was running a task when you disconnected, it will have continued working. Just scroll up in the terminal to see what happened while you were away.
Using tmux effectively
tmux is a powerful tool that lets you manage multiple terminal panes and windows within a single session. Here are the essential commands (all prefixed with Ctrl+B):
Ctrl+B, c— Create a new windowCtrl+B, n— Switch to the next windowCtrl+B, p— Switch to the previous windowCtrl+B, %— Split the current pane verticallyCtrl+B, "— Split the current pane horizontallyCtrl+B, arrow keys— Navigate between panesCtrl+B, d— Detach from the session (it keeps running)
Practical workflow: long-running tasks
One of the best uses of persistence is kicking off long-running tasks and checking back later. For example:
- Start Claude Code on a complex refactoring task:
claude "Refactor the authentication module to use the new token-based system. Update all affected files and fix any type errors." - Close your browser tab and go to lunch
- Come back, open your terminal, and scroll up to see the results
- Review the changes with
git diffand continue working
This is not possible with local Claude Code sessions that die when your laptop sleeps.
Multi-device access
Because your session runs in the cloud, you can access it from any device with a web browser:
- Start a task on your desktop at work
- Check on it from your phone during your commute
- Continue working from your laptop at home
- Quick check from your iPad on the couch
Every device connects to the same persistent session. There is no sync needed because there is only one copy of your environment.
Session lifecycle
Your session has a few states:
- Running: Your container is active and you can connect at any time
- Stopped: You explicitly stopped the session from the dashboard. Your files are preserved but no processes are running. Start it again to resume.
- Starting: The container is booting up (takes about 10-15 seconds)
If you are not going to use ShellPod for a while, you can stop your session from the dashboard to free up resources. When you start it again, all your files and configuration will be exactly as you left them.
Tips for persistence
- Use tmux windows to separate tasks — one for Claude Code, one for git operations, one for running a dev server
- Before disconnecting during a Claude Code task, make sure it has enough context to continue on its own
- Create snapshots before risky operations so you can roll back if needed
- Your session persists through ShellPod platform updates — we handle migrations transparently