> ## Documentation Index
> Fetch the complete documentation index at: https://docs.monolex.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# What is vpncli

> Reach any of your machines by name — one login, no ssh, encrypted end to end.

## Reach your machines by name

vpncli connects one machine to another **by name** — no public IP, no port
forwarding, no ssh account to set up on the far side. You log in once with your
Monolex identity, and every machine you own becomes reachable.

```
┌──────────────────────────────────────────────────────────────────┐
│  ONE LOGIN → ALL YOUR MACHINES                                   │
├──────────────────────────────────────────────────────────────────┤
│                                                                  │
│   your laptop  ──►  vpncli shell my-server                       │
│                ──►  vpncli exec  my-server "git pull"            │
│                ──►  vpncli mosh  my-server   (roaming)           │
│                ──►  vpncli cp    file my-server:/path            │
│                                                                  │
│   No ssh key on my-server. No open ports. Just your login.       │
│                                                                  │
└──────────────────────────────────────────────────────────────────┘
```

## Four ways to connect

<CardGroup cols={2}>
  <Card title="shell" icon="terminal">
    A full interactive terminal on the remote machine.
  </Card>

  <Card title="exec" icon="bolt">
    Run one command, capture its output, get its exit code. Scriptable.
  </Card>

  <Card title="mosh" icon="wifi">
    A roaming terminal that survives Wi‑Fi changes and suspend/resume.
  </Card>

  <Card title="tunnel" icon="right-left">
    Forward a raw TCP/UDP port — run ssh, scp, git, or a database over P2P.
  </Card>
</CardGroup>

## How it's different from ssh

```
┌───────────────────────┬───────────────────────────────────────────┐
│  ssh                  │  vpncli                                   │
├───────────────────────┼───────────────────────────────────────────┤
│ account + key on the  │ one Monolex login covers every machine    │
│ target machine        │                                           │
│ needs a reachable IP  │ works behind NAT — punches through        │
│ / port forwarding     │ automatically (peer‑to‑peer)              │
│ one channel (a shell) │ shell + one‑shot + roaming + tunnel + cp  │
└───────────────────────┴───────────────────────────────────────────┘
```

Under the hood, vpncli builds a direct peer‑to‑peer link between your two
machines and encrypts it end to end. A coordination server introduces the two
machines to each other, then steps out of the way — it never sees your data.
See [How it works](/vpncli/how-it-works) and [Security](/vpncli/security).

## Next

<CardGroup cols={2}>
  <Card title="Connect your first machine" icon="plug" href="/vpncli/connect">
    Install, log in, and open your first remote session.
  </Card>

  <Card title="Commands" icon="terminal" href="/vpncli/commands">
    shell, exec, mosh, tunnel — with examples.
  </Card>
</CardGroup>
