Far away. Right here.

Mole forwards the ports of any remote machine to your localhost over one SSH connection, and picks up new services as they start.

mole init -up
Meet the desktop app
Or take the CLI

01 / AUTOMATIC DISCOVERY

Start something.
It shows up here.

Mole notices listening TCP ports on your remote machine and makes them available on your own localhost. No manual forwarding list to maintain.

02 / ONE CONNECTION. ALL YOUR PORTS.

One connection. All your ports.

03 / A LITTLE LESS BACK AND FORTH

Over there.
In one move.

That build. Those assets. The file you need on the other machine. Send it to its inbox over the same SSH connection.

mole send ./build.zip

GET MOLE / TWO WAYS IN

Two ways in.
One engine.

Pick the desktop app or stay in the terminal. Both talk to the same Mole daemon, so you can switch whenever you like.

01 / DESKTOP APPGUI

Your machines,
in reach.

A visual interface to the same tunnels and remote machines as the CLI.

  1. 01See your ports
  2. 02Reach your machines
  3. 03Move your files

Desktop builds are source-only for now: there is no public desktop bundle yet.

02 / CLI + DAEMONALWAYS READY

One binary.
No ceremony.

Install the CLI, start a background tunnel and let it discover remote ports. The same binary runs the commands and the daemon.

INSTALL

curl -fsSL https://raw.githubusercontent.com/Luqueee/mole/main/scripts/install.sh | sh

Installs the latest release; requires curl or wget, tar and sha256sum or shasum.

THEN START AND CONTROL YOUR TUNNEL

mole up --remote dev --auto-discover -d
  • mole statusCheck status
  • mole logsRead logs
  • mole downStop tunnel

MOLE DAEMON

Discovers remote development ports and keeps your tunnel working.

GUI OPTIONAL

The daemon runs independently. The desktop app is optional.

05 / NOTHING HIDDEN UNDERNEATH

No black boxes.

The details matter. Here are the ones worth knowing before you connect.

01 Do I need the desktop app?

No. The desktop app is a visual interface to Mole. The CLI and daemon work independently: start a tunnel with mole up --remote dev --auto-discover -d, inspect it with mole status or mole logs, and stop it with mole down.

02 What runs on the remote?

For port forwarding, your remote needs an SSH server. Mole runs locally and discovers remote TCP listeners using ss or netstat, with configured-port probing as a fallback. Remote node management and file inboxes need additional setup described in the documentation.

03 Why not just use ssh -L?

You can. Mole adds automatic listener discovery, multiple forwarded ports over one SSH connection, and automatic reconnect. You can also choose an explicit port list instead of auto-discovery.

04 Will my SSH configuration work?

Yes. Use a Host alias from ~/.ssh/config. Mole resolves it with ssh -G, including HostName, User, Port, IdentityFile, Include, and Match. Authentication uses your SSH agent and keys.

05 Which machines can I use?

The CLI supports macOS, Linux, Windows, and FreeBSD. Desktop packaging targets macOS, Windows, and Linux. Desktop bundles are not publicly published yet; the installation section links to source and releases.

YOUR NEXT IDEA DOESN’T CARE WHERE IT RUNS.

Make yourself
localhost.