SSH Remote Development
The Remote - SSH extension lets you open any folder on a remote machine and use the full VS Code experience — IntelliSense, debugging, extensions — as if it were local.
1Installing Remote - SSH
Search for Remote - SSH (by Microsoft) in Extensions. You'll also need an SSH client installed: on macOS/Linux it's built-in; on Windows, install OpenSSH via Settings or Git for Windows.
2Connecting to a Remote Host
Press F1 → Remote-SSH: Connect to Host. Enter user@hostname or pick a host from your SSH config. VS Code installs a small server on the remote host and opens the project there transparently.
Host dev-server HostName 192.168.1.100 User ubuntu IdentityFile ~/.ssh/id_ed25519
3Working on the Remote
Once connected, the green badge in the bottom-left shows your remote host name. Open any folder on the remote with File › Open Folder. Extensions, terminals, and debuggers all run on the remote machine — only the UI is local.
4Port Forwarding
When a service starts on the remote (e.g., a dev server on port 3000), VS Code detects it and asks if you'd like to forward it. Accept, and localhost:3000 on your local machine tunnels to the remote server automatically.
5Tunnels & Remote Tunnels
Remote Tunnels (VS Code CLI) let you connect to any machine behind NAT or a firewall — no SSH port required. Run code tunnel on the remote and connect from anywhere via vscode.dev.