[← Blog](https://watasu.io/blog) July 7, 2026

# ssh base\@box.watasu.io

Every cloud has a moment where you *almost* have a computer. You’ve signed up, you’re reading quickstarts, there’s an SDK to install and an example to paste — and somewhere twelve minutes in, you finally run code on someone else’s machine.

We kept asking: what’s the shortest honest distance between “curious” and “shell”? It turns out it’s three characters, older than the cloud you’re renting: `ssh`.

```
$ ssh base@box.watasu.io
(base@box.watasu.io) Watasu API token: ····
watasu · key SHA256:wSVM8g… registered — next time no token needed
watasu · sandbox s-682 · template base:2026-06-24 · team myorg · deadline 60m
user@s-682:/workspace$ python3 -V
Python 3.14.6
```

That’s the whole thing. No SDK, no agent to install, no config file. The username is the template, the password is the API token you already have (`watasu login` keeps it in `~/.netrc`; `watasu token` prints it), and after the first connect your SSH key is registered automatically — from then on it’s just `ssh`, no prompt at all. As far as we can tell, nobody else lets you do this; other sandbox platforms hand you an SDK and wish you luck.

## The username is a tiny language

Everything rides in the part before the `@`:

```
ssh base@box.watasu.io                  # fresh sandbox, latest build, your team
ssh base:2026-06-14@box.watasu.io       # pin an exact template build
ssh myorg/pipeline@box.watasu.io        # your team's own template
ssh s-682@box.watasu.io                 # back to the same machine
ssh ls@box.watasu.io                    # what can I start? what's running?
```

And because it’s real ssh, everything your shell already knows still works. One-off commands return real exit codes. Pipes go in and come out:

```
ssh base@box.watasu.io 'python3 -' < analyze.py        # run a local script inside
ssh s-682@box.watasu.io 'tar czf - /workspace' > out.tgz   # bring the results home
ssh base@box.watasu.io 'make test' && deploy               # CI gating, no plugins
```

Options travel the ssh-native way too — `ssh -o SetEnv="WATASU_TIMEOUT=4h WATASU_MEMORY=4096" base@box.watasu.io` — and any other env vars you send land inside the sandbox, like ssh has always done.

## Leaving is free, coming back is instant

Yesterday we [taught sandboxes to sleep](https://watasu.io/blog/2026-07-06-sandbox-pause-resume/). Today the front door uses it: when you type `exit`, your sandbox pauses — RAM, processes, the training run you left in a tmux — and the goodbye line tells you the way back:

```
sandbox s-682 paused · reconnect: ssh s-682@box.watasu.io
```

Reconnect and the machine *continues*, scrollback and all. A paused sandbox bills storage only — cents per gigabyte-month — and since Watasu is prepaid, a forgotten `exit` is a rounding error on your balance, never a surprise on an invoice. Sessions default to a one-hour deadline with pause-on-timeout, so even a dropped connection can’t leave a meter running overnight.

## Agents already speak ssh

This is the part we’re most excited about. Every agent framework, every CI system, every cron job, every language written since 1995 can spawn `ssh`. Which means every one of them can now have a disposable Linux machine with real exit codes and no SDK in the loop:

```
sshpass -p "$(watasu token)" ssh base@box.watasu.io 'uv run repro.py'
```

An agent that can run a command can create a machine, use it, and leave it paused for its next step. The integration surface is your operating system.

## The boring parts, done properly

It’s still ssh, so trust works the way ssh trust works: one published host key ([fingerprint in the docs](https://docs.watasu.io/sandboxes/ssh/), SSHFP records in DNS), keys you can list and revoke in the dashboard, and no anonymous mode — a sandbox is always somebody’s sandbox, on a prepaid balance. Sessions negotiate a post-quantum hybrid key exchange (ML-KEM): if your newest OpenSSH has started warning about “store now, decrypt later”, you’ll notice `box.watasu.io` doesn’t trigger it.

And it’s a door, not a different kind of sandbox — everything you start over ssh shows up in the [SDKs](https://docs.watasu.io/sandboxes/overview/), the API, and the dashboard, and everything they start is one `ssh s-…@box.watasu.io` away from your terminal.

## Try it

If you have the [CLI](https://docs.watasu.io/cli/install/), the whole first-time setup is one line:

```
watasu ssh base
```

It hands over your token for you, and your SSH key is registered on the way through — so from the second connect on, we’re not even in the loop:

```
ssh base@box.watasu.io
```

No CLI on this machine? Plain `ssh base@box.watasu.io` works from anywhere: paste an API token from the dashboard once, and the same key registration kicks in. The [SSH docs](https://docs.watasu.io/sandboxes/ssh/) cover the full username grammar and options — `watasu ssh` and `watasu token` ship in CLI 0.1.7 (`brew upgrade watasu`).

We think this is the nicest way anyone has ever handed out Linux machines. Tell us what you ssh into — <info@watasu.io>.

<!-- Prev / next post navigation -->
