What size of server
The OpenClaw docs give no minimum. They call the Gateway lightweight and say a small VPS is fine and 4 GB of memory is plenty. The one hard number is for Docker: building the image from source needs 6 GB, and the pre-built image avoids that.
| What you do | Memory, from the OpenClaw docs | Uno plan that has it |
|---|---|---|
| Run the Gateway | 4 GB is plenty | Plus: 4 GB, 4 vCPU |
| Build the Docker image from source | 6 GB | Pro: 16 GB, or Plus with a boost to 8 GB for an hour |
| Use the pre-built Docker image | no build step | same as the Gateway |
Steps
-
Get a server and a user for OpenClaw
Take Ubuntu 24.04. Run OpenClaw as its own user, not as root: it keeps keys and chat history in config files in that user's home folder.
$ ssh [email protected] $ adduser claw $ su - claw
-
Run the installer
The installer needs Node 24.16 or newer, or 26.1 or newer. On Linux it installs Node 24 itself when Node is missing. It then starts onboarding; to install without it, add
-s -- --no-onboard.$ curl -fsSL https://openclaw.ai/install.sh | bash $ openclaw --version
Prefer npm?
npm install -g openclaw@latest --allow-scripts=openclawdoes the same with your own Node. -
Run onboarding and install the service
The wizard asks which model account to use, which chat channels to connect (Telegram asks for your numeric Telegram user ID) and whether to install the background service. On Linux that service is a systemd user unit, so OpenClaw starts without you.
$ openclaw onboard --install-daemon -
Choose how the model is paid for
With an API key you pay per use and it works anywhere. Onboarding can instead reuse a Claude Code login that already exists on the same server; the docs recommend an API key for shared or always-on automation. To pass the key straight to the wizard:
$ export ANTHROPIC_API_KEY=sk-ant-... $ openclaw onboard --anthropic-api-key "$ANTHROPIC_API_KEY"
-
Check that the Gateway runs
doctorlooks for configuration problems;gateway statussays whether the Gateway is up.$ openclaw doctor $ openclaw gateway status
-
Open the dashboard through an SSH tunnel
The Gateway listens on port 18789 and only on the server itself. On your laptop, forward that port, then open
http://127.0.0.1:18789/in a browser.$ ssh -N -L 18789:127.0.0.1:18789 [email protected]
If the page says "unauthorized", print the token on the server and paste it into Settings, Gateway, in the dashboard:
$ openclaw gateway auth-token --show -
Run the security check
The audit tells you if the setup has drifted from the safe defaults. Run it once now, and again after you change the config.
$ openclaw security audit
Check that it works
Send a message to the assistant in the dashboard and read the answer. Then log out of SSH, wait a minute and open the tunnel again: the Gateway should still be there.
$ systemctl --user status openclaw-gateway.service $ openclaw gateway status
The short way: let the agent install it
A Uno computer is a Linux machine with root, so the same commands work there. Ask the agent in a chat in Uno Work to run the installer and onboarding, and paste your API key into a safe field instead of the chat. Plus has 4 GB of memory and Uno Work in the cloud.
Plus: $20 a month
What to know before you rely on it
- The dashboard is for you alone. By default only the server itself can reach it; open it to the internet only after you read the OpenClaw security guide.
- An unknown person who writes to your bot is not answered until you approve them: chat channels default to pairing. Keep it that way.
- OpenClaw's Telegram channel uses long polling by default, and the docs also offer webhook mode. On a computer that sleeps, that matters: a bot on a webhook wakes the computer with each message; a bot on long polling cannot, so switch it to a webhook.
- The model is a separate bill. A busy agent can use a lot of tokens: set a spending limit at the model provider before you leave it running.
An agent that browses and signs in needs a clean address
Your computer runs in the Netherlands. Its traffic can leave through a static address of a regular internet provider in one of 8 countries. Only your account works from that address.
- From a data-center address
- Sites see a server range shared with thousands of strangers. The agent's browser hits more captchas and blocks.
- From your Clean exit IP
- Sites see a regular internet provider's address in the country you picked. Fewer captchas, and less reason for Claude or ChatGPT to flag your account: nobody else works from it.
Pick the size of the computer OpenClaw lives on
Every plan sleeps when idle and wakes on the first request. Plus has 4 GB and Uno Work in the cloud; move up any time.
Small
A Telegram bot, a VPN, a small backend
$5/ month
- 1 vCPU · 1 GB
- 15 GB disk
- 25 GB cloud storage
- 5 boosts a month
Plus
Agents that work with your laptop closed
$20/ month
- 4 vCPU · 4 GB
- 40 GB disk
- 100 GB cloud storage
- Uno Work in the cloud
Pro
A product in production, a second MacBook
$70/ month
- 16 vCPU · 16 GB
- 120 GB disk
- 300 GB cloud storage
- Speed of a MacBook Air M4
Max
A team and many agents at once
$200/ month
- 32 vCPU · 48 GB
- 300 GB disk
- 1,024 GB cloud storage
- 5 public IPv4
Add Uno AI to any plan: 40 h of AI work a month on Small, 100 h on Plus, unlimited on Max. Today: GLM-5.3 Flash and MiMo v2.6 Pro. Or sign in with your own Claude or ChatGPT.
Common problems
"openclaw: command not found" after installing
openclaw --version again.The dashboard does not open
openclaw gateway status says the Gateway is up.It says unauthorized (error 1008)
openclaw gateway auth-token --show on the server and paste the result into the Gateway secret field in Settings.The Gateway stops when I log out
sudo loginctl enable-linger claw as a sudo user so the user manager stays after logout.The Docker build is killed (exit 137)
ghcr.io/openclaw/openclaw:latest, or build on a bigger plan.