Your VM
Every MoltShell user gets a dedicated virtual machine running on Google Cloud Platform. This page covers what you get and how it works.
Specifications
| Component | Details |
|---|---|
| Instance type | GCP e2-medium |
| vCPUs | 2 |
| RAM | 4 GB |
| Swap | 2 GB |
| Disk | 10-15 GB persistent SSD |
| OS | Ubuntu 22.04 LTS |
| User | moltshell |
| Home directory | /home/moltshell |
Pre-installed software
Your VM comes with these tools ready to use:
- Node.js 22 (LTS) with npm
- Python 3 with pip
- tmux for session management
- build-essential (gcc, g++, make)
- git, curl, wget
- nginx (used internally for proxying)
Root access
The moltshell user has passwordless sudo. You can install any software, modify system files, or configure services without entering a password.
sudo apt update
sudo apt install -y docker.ioHome directory
Your home directory is /home/moltshell. This is where you land when you open a new terminal session. All your files, projects, and configuration live here.
The home directory is kept clean. MoltShell removes Ubuntu clutter like the snap directory and .sudo_as_admin_successful file on each boot so you start with a tidy workspace.
Lifecycle
Your VM has three states:
- Running -- actively powered on, terminal accessible
- Suspended -- RAM preserved to disk, no compute charges, resumes in ~30 seconds
- Stopped -- fully shut down, requires a cold start (~60 seconds)
When your VM suspends, everything in memory is saved to disk. This means:
- All running processes resume exactly where they left off
- tmux sessions with their full state are preserved
- Open files, environment variables, and shell history persist
- Installed packages and system changes are retained
The only thing that does not persist across a stop (not suspend) is running processes. Files and installed software remain because the disk is persistent.
Memory management
With 4 GB of RAM and a 2 GB swap file, your VM can handle typical development workloads. MoltShell includes a memory watchdog that takes action at three thresholds:
- 80% usage: Warning banner appears in the terminal
- 85% usage: tmux scrollback buffers are cleared to free memory
- 90% usage: The largest user process is terminated
- 95% usage: The terminal server restarts (tmux sessions survive)
If you see a memory warning, close unused programs or processes to free up space.
Networking
Your VM's firewall only allows traffic from Cloudflare's IP ranges. All connections go through the MoltShell proxy:
Browser --> Cloudflare Worker --> nginx (port 80) --> terminal server (port 3001)You cannot SSH directly into the VM or access it via its external IP. All access is through the MoltShell web interface.
Ports above 1024 on the VM can be accessed through the port forwarding feature.