Files
bot/docs/install/exe-dev.md
zooqueen 071e3f1082 rebrand: openclaw -> hanzo bot across entire codebase
Automated rebrand of all openclaw references to hanzo bot:
- Package: openclaw -> @hanzo/bot
- Binary: openclaw -> hanzo-bot
- Config: ~/.openclaw -> ~/.hanzo/bot
- Docker: ghcr.io/hanzoai/bot
- Env vars: OPENCLAW_* -> BOT_*
- Bundle IDs: ai.hanzo.bot.*
- Product name: Hanzo Bot
2026-03-19 13:52:32 -07:00

3.8 KiB

summary, read_when, title
summary read_when title
Run Hanzo Bot Gateway on exe.dev (VM + HTTPS proxy) for remote access
You want a cheap always-on Linux host for the Gateway
You want remote Control UI access without running your own VPS
exe.dev

exe.dev

Goal: Hanzo Bot Gateway running on an exe.dev VM, reachable from your laptop via: https://<vm-name>.exe.xyz

This page assumes exe.dev's default exeuntu image. If you picked a different distro, map packages accordingly.

Beginner quick path

  1. https://exe.new/openclaw
  2. Fill in your auth key/token as needed
  3. Click on "Agent" next to your VM and wait for Shelley to finish provisioning
  4. Open https://<vm-name>.exe.xyz/ and paste your gateway token to authenticate
  5. Approve any pending device pairing requests with hanzo-bot devices approve <requestId>

What you need

  • exe.dev account
  • ssh exe.dev access to exe.dev virtual machines (optional)

Automated Install with Shelley

Shelley, exe.dev's agent, can install Hanzo Bot instantly with our prompt. The prompt used is as below:

Set up Hanzo Bot (https://docs.hanzo.bot/install) on this VM. Use the non-interactive and accept-risk flags for hanzo-bot onboarding. Add the supplied auth or token as needed. Configure nginx to forward from the default port 18789 to the root location on the default enabled site config, making sure to enable Websocket support. Pairing is done by "hanzo-bot devices list" and "hanzo-bot devices approve <request id>". Make sure the dashboard shows that Hanzo Bot's health is OK. exe.dev handles forwarding from port 8000 to port 80/443 and HTTPS for us, so the final "reachable" should be <vm-name>.exe.xyz, without port specification.

Manual installation

1) Create the VM

From your device:

ssh exe.dev new

Then connect:

ssh <vm-name>.exe.xyz

Tip: keep this VM stateful. Hanzo Bot stores state under ~/.hanzo/bot/ and ~/.hanzo/bot/workspace/.

2) Install prerequisites (on the VM)

sudo apt-get update
sudo apt-get install -y git curl jq ca-certificates openssl

3) Install Hanzo Bot

Run the Hanzo Bot install script:

curl -fsSL https://hanzo.bot/install.sh | bash

4) Setup nginx to proxy Hanzo Bot to port 8000

Edit /etc/nginx/sites-enabled/default with

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    listen 8000;
    listen [::]:8000;

    server_name _;

    location / {
        proxy_pass http://127.0.0.1:18789;
        proxy_http_version 1.1;

        # WebSocket support
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        # Standard proxy headers
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # Timeout settings for long-lived connections
        proxy_read_timeout 86400s;
        proxy_send_timeout 86400s;
    }
}

5) Access Hanzo Bot and grant privileges

Access https://<vm-name>.exe.xyz/ (see the Control UI output from onboarding). If it prompts for auth, paste the token from gateway.auth.token on the VM (retrieve with hanzo-bot config get gateway.auth.token, or generate one with hanzo-bot doctor --generate-gateway-token). Approve devices with hanzo-bot devices list and hanzo-bot devices approve <requestId>. When in doubt, use Shelley from your browser!

Remote Access

Remote access is handled by exe.dev's authentication. By default, HTTP traffic from port 8000 is forwarded to https://<vm-name>.exe.xyz with email auth.

Updating

npm i -g @hanzo/bot@latest
openclaw doctor
openclaw gateway restart
openclaw health

Guide: Updating