One‑click SSH tunnel + Web UI starter.
No terminal needed. Every day Use.
Your app's Web UI only listens on the server (e.g. http://127.0.0.1:18789/). You SSH in anyway—so why type commands every time? Set it up once, then launch tunnel + browser with one double‑click.
A tiny Python HTTP server: web config UI, then it runs your system ssh and opens the URL.
✗ You never have to:
- Open a terminal
- Type SSH commands
- Enter your password
- Switch tabs
opentheclaw/
logo.svg # project logo (used at top of this README)
mac/
Click-OpenClaw.command # macOS launcher (Web UI + SSH tunnel)
Click-OpenClawShell.command # macOS launcher for interactive SSH shell
Click-OpenClawConfig.command # macOS launcher for config UI
linux/
OpenClaw-linux.sh # Linux launcher (Web UI + SSH tunnel)
Click-OpenClawConfig-linux.sh # Linux launcher for config UI
windows/
OpenClaw-windows.bat # Windows launcher (Web UI + SSH tunnel)
Click-OpenClawConfig-windows.bat # Windows launcher for config UI
launcher/
openclaw_launcher.py # core: config UI + SSH/Web UI orchestration
openclaw_launcher.json # JSON config, written by the web UI
README.md
LICENSE
.gitignore
Most users only need to see and double‑click the launchers at the top level.
- Python 3
- An
sshclient available onPATH- macOS: built‑in OpenSSH works fine
- Linux: any standard OpenSSH client
- Windows: OpenSSH (Windows 10+), Git for Windows SSH, or another compatible
ssh
You can either download this project as a ZIP from GitHub or clone it:
git clone https://github.com/Jah-yee/OpentheClaw.git
cd OpentheClaw/opentheclawYou can move the opentheclaw folder wherever you like (Desktop, home directory, etc.) as long as you keep its internal structure the same.
Think of the flow in three steps:
- Configure once in your browser (tell it how you SSH and what Web UI to open).
- Double‑click the right launcher for your OS.
- Use that launcher every day instead of typing SSH commands by hand.
-
On macOS
Double‑click
mac/Click-OpenClawConfig.command. -
On Linux
In your file manager, double‑click
linux/Click-OpenClawConfig-linux.sh.
If your desktop environment asks whether to "Run in terminal" or "Display", choose Run / Execute. -
On Windows
In Explorer, double‑click
windows\Click-OpenClawConfig-windows.bat.
A console window may briefly appear while the browser opens.
Your browser will open a simple configuration page. You only need to fill three things:
- Connection name – any label you like, for example
OpenClaworStaging server. - SSH address – the same
user@hostyou normally type in a terminal, for exampleroot@43.210.12.345. - Web UI URL – the URL you want in your browser after the SSH tunnel is ready, e.g.
http://127.0.0.1:18789/.
If you click "Show advanced options", you can also adjust ports, remote host and an optional password, but the defaults are fine for most setups.
At the bottom of the page you can:
- Click Save to just store the configuration for later.
- Click Save & start Web UI to save and immediately start the SSH tunnel and open the Web UI in your browser.
Once configured, you usually don't need to change the settings very often.
-
Open Web UI (most common)
- macOS: double‑click
mac/Click-OpenClaw.command. - Linux: run
linux/OpenClaw-linux.sh. - Windows: run
windows/OpenClaw-windows.bat.
The launcher will:
- Start an SSH tunnel according to
launcher/openclaw_launcher.json. - Open the configured Web UI URL in your default browser.
- Optionally "warm up" the page with a silent HTTP request so the first paint feels faster (best effort).
- macOS: double‑click
-
Open an interactive SSH shell (macOS)
- Double‑click
mac/Click-OpenClawShell.command. - Uses the same config, but gives you a normal SSH session with port forwarding.
- Double‑click
Config lives in:
launcher/openclaw_launcher.json
A typical file looks like this:
{
"name": "OpenClaw",
"host": "43.159.36.166",
"user": "root",
"local_port": 18789,
"remote_host": "127.0.0.1",
"remote_port": 18789,
"web_url": "http://127.0.0.1:18789/",
"password": ""
}In most setups you only need to care about:
user/host: corresponds to theuser@hostyou use with SSH.web_url: the Web UI URL to open in your browser.local_port/remote_port/remote_host: defaults usually work out of the box.
It is recommended to edit this through the web UI rather than manually changing the JSON.
- Prefer SSH keys over passwords. The launcher works fine with key‑based auth.
- If you choose to use the
passwordfield, remember it is stored in plain text in the local JSON file. Only do this on machines you fully trust. - Intended for personal/dev/test environments. Avoid putting production credentials in long‑lived configs.
This project only uses the Python standard library and basic system tools:
- Python 3 (
http.server,json,subprocess, etc.) sshclient- A default browser (opened via Python's
webbrowsermodule)
To port it to other environments, you mainly need to adjust how SSH is invoked or how the browser is opened; all application logic is in launcher/openclaw_launcher.py.
Business Source License 1.1 (BSL 1.1). See LICENSE. © 2026 Jah-yee.