Skip to main content

Connect to a lab

Open the lab's page in the dashboard. The connection information panel holds everything below, with a copy button on each row.

VS Code in your browser

Click Code. Enter the code-server password from the connection panel.

You get a full editor with a terminal — press Ctrl + ` to open it.

This needs no VPN and no setup, which makes it the fastest way in and the right answer when something else is not working.

SSH

Requires a connected device, because labs are private.

ssh <your-username>@<your-lab-ip>

Both values are on the lab's page — the SSH Command row is ready to paste.

Authentication uses your SSH keys. Every enabled key on your account is installed at deploy time.

SSH is private only

Port 22 is reachable over the tunnel and is never published to the internet, on any plan.

Your own editor over SSH

Once SSH works, any editor with remote support works.

VS Code Desktop

Install the Remote - SSH extension, then press F1 and choose Remote-SSH: Connect to Host. Add a host entry:

Host mylab
HostName <your-lab-ip>
User <your-username>
JetBrains IDEs

File → Remote Development → SSH, then enter the same host, user and key.

A graphical desktop

Labs that ship a desktop expose it in the connection panel with its own URL and a VNC password. Kali is the common example.

Reaching services running in your lab

A web app on a port inside the lab is reachable over the tunnel at http://<your-lab-ip>:<port> — no configuration needed, and private to you.

To put it on the internet with a domain and HTTPS instead, see Publishing ports.

If you cannot get in

SymptomLikely cause
code-server URL says "Not running"The lab is not deployed, or its editor did not start. Redeploy.
SSH times outThe tunnel is down, or the lab is stopped. Check with the browser editor first.
SSH asks for a passwordYour key is not installed. Add it, then redeploy.
Password is rejectedIf you set a custom password, use that one — not the generated value.

More in Troubleshooting → Cannot connect.

Do it with an AI assistant

You can also do this by asking an AI assistant connected to your account — see Connect an AI assistant to set one up.

AskWhat the assistant does
“What is the IP and password for my ubuntu lab?”Finds the lab with list_labs, then reads the address, username and password with lab_info
“I can't SSH in — is my lab even running?”lab_status, then lab_info for the address to use
“Is the app on port 3000 in my lab actually answering?”Makes a request from inside the lab with lab_probe
“Run df -h in my lab”run_command
Copies have their own id

For a copy, the assistant must use the instance id that list_labs returns. Asked by lab name alone, it reaches your standard instance — a different container with a different address.