Course 02: Going DeeperModule 1 of 9

MODULE 01 · COURSE 02: GOING DEEPER

Module 1: Running 24/7 — Moving to a Server

If your agent is running on your laptop, it goes offline when you close the lid. That's fine for testing. It's not fine for an assistant you actually rely on.

This module gets your agent onto a server that never sleeps.


Your options

A cheap cloud VPS — The most common path. $4-10/month. Hetzner, DigitalOcean, Fly.io, and Render all work. Hetzner is the community favorite for the price-to-performance ratio. A home server or Raspberry Pi — Works if you have something running 24/7 at home. Slightly more involved network setup (you'll need a static IP or dynamic DNS), but free to run. Your existing server — If you already have a VPS for something else, you can run OpenClaw alongside it.

For this guide, we'll use Hetzner — specifically their CAX11 ARM instance. It's ~$4/month and handles a single-agent setup with room to spare.


Step 1: Get a server

Go to hetzner.com → Cloud → Create Server.

Settings that work well:

  • Location: Pick whatever's closest to you
  • Image: Ubuntu 24.04
  • Type: CAX11 (2 vCPU ARM, 4GB RAM) — ~$4/month
  • SSH Key: Add your public key so you can log in without a password
Create the server. You'll get an IP address. That's what you'll use to connect.


Step 2: Connect to your server

ssh root@YOURSERVERIP

If you set up an SSH key, this should connect immediately. If it asks for a password, use the one Hetzner emailed you.


Step 3: Install Node.js

# Install Node.js 22 via NodeSource
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt-get install -y nodejs

Verify

node --version # should be v22.x.x

Step 4: Install OpenClaw

npm install -g openclaw@latest
openclaw --version

Step 5: Run the onboarding wizard

openclaw onboard --install-daemon

This sets everything up and installs OpenClaw as a systemd service — meaning it starts automatically when your server reboots.

Follow the prompts: choose your AI provider, enter your API key, do basic config.


Step 6: Set up your channels

Same process as your laptop setup, just on the server:

openclaw channels login

For Telegram: just paste your bot token when prompted.

For WhatsApp: you'll need to scan a QR code. If you're SSH'd in and can't see the QR in the terminal, try this to get a shareable URL:

openclaw qr


Step 7: Copy your SOUL.md and config over

If you already have a working setup on your laptop, copy your config and workspace to the server:

# From your laptop
scp ~/.openclaw/openclaw.json root@YOURSERVERIP:~/.openclaw/
scp -r /path/to/your/agent/workspace root@YOURSERVERIP:/same/path/

Or just set it up fresh on the server — it only takes a few minutes.


Step 8: Start and verify

openclaw gateway start
openclaw gateway status

Send a test message from your phone. You should get a response.


Keeping the server healthy

Check if it's running:
openclaw gateway status

or

systemctl status openclaw
Restart it:
openclaw gateway restart

or

systemctl restart openclaw
View logs:
openclaw logs

or for systemd logs

journalctl -u openclaw -f
Keep the OS updated:
apt update && apt upgrade -y

Set this on a cron once a week. A server that never gets updated is a security problem waiting to happen.


Remote access to your Control UI

The OpenClaw Control UI runs at http://YOURSERVERIP:18789. But you don't want to expose that publicly — it has admin access to your agent.

The right way to access it: SSH tunnel.

From your laptop:

ssh -L 18789:localhost:18789 root@YOURSERVERIP

Now open http://127.0.0.1:18789 in your browser. You're accessing the server's Control UI through an encrypted tunnel. Nobody else can see it.

For permanent remote access, look at Tailscale — it creates a private network between your devices and the server. Dead simple to set up:

curl -fsSL https://tailscale.com/install.sh | sh
tailscale up


What if something breaks at 3am?

Two things help here:

  1. Systemd auto-restart — The daemon install handles this. If the Gateway crashes, systemd restarts it automatically.
  1. Ask your agent to alert you — Set up a heartbeat that checks its own health and messages you if something's wrong. We cover this in Module 5.

Next up

Module 2: Connecting Gmail →