System Requirements
Before you install OpenClaw, verify that your environment meets the requirements listed on this page. OpenClaw is designed to run on modest hardware, but performance improves with more resources — especially when you enable many skills or serve high traffic.
Requirements at a glance
| Requirement | Minimum | Recommended |
|---|---|---|
| Operating system | Linux (kernel 5.4+), macOS 13+, Windows 10+ with WSL 2 | Ubuntu 22.04 LTS or macOS 14+ |
| Node.js | 22.16.0 (LTS) | 24 (latest) |
| npm | 10.0.0 | 10+ (ships with Node 22+) |
| RAM | 2 GB | 4 GB or more |
| Disk space | 1 GB free | 5 GB free |
| CPU | 1 core | 2+ cores |
| Docker | Not required | v24+ (optional, for sandboxed skills) |
| Network | Outbound HTTPS (port 443) | Outbound HTTPS + inbound for webhooks |
Operating system
Linux
OpenClaw runs on any modern Linux distribution. The following are tested and fully supported:
- Ubuntu 22.04 LTS and 24.04 LTS
- Debian 12 (Bookworm)
- Fedora 39+
- Amazon Linux 2023
Other distributions should work as long as they ship a compatible glibc (2.31+) and a supported Node.js version.
macOS
macOS 13 (Ventura) or later is required. Both Intel and Apple Silicon (M1/M2/M3/M4) are supported. If you use Homebrew, installing Node.js is straightforward:
brew install node@24
Windows
OpenClaw supports Windows via the PowerShell installer or through WSL 2. For the best experience on Windows, install WSL 2 with an Ubuntu distribution and follow the Linux instructions inside the WSL environment.
# Install WSL 2 with Ubuntu (run in PowerShell as Administrator)
wsl --install -d Ubuntu-22.04
After WSL is set up, all remaining steps should be run inside the WSL terminal.
Node.js
OpenClaw requires Node.js 22 or later. We recommend using the latest release (Node.js 24 at the time of writing).
Checking your Node.js version
node --version
# Expected output: v24.x.x or v22.x.x
Installing Node.js
If you do not have Node.js installed, we recommend using nvm (Node Version Manager) so you can switch versions easily.
# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# Restart your terminal, then install Node.js 24
nvm install 24
nvm use 24
Alternatively, download the installer from the official Node.js website.
OpenClaw does not support Node.js versions below 22. If you are on Node.js 20 or earlier, you must upgrade before proceeding.
npm
npm ships with Node.js. Verify that you have version 10 or later:
npm --version
# Expected output: 10.x.x
If your npm version is outdated, update it:
npm install -g npm@latest
Memory (RAM)
| Scenario | RAM |
|---|---|
| Development / testing with a few skills | 2 GB |
| Production with moderate traffic | 4 GB |
| High-traffic setup with many active skills | 8 GB+ |
OpenClaw itself uses approximately 200-400 MB of RAM at idle. The rest is consumed by active conversations, loaded skills, and the Node.js runtime.
Disk space
A fresh OpenClaw installation requires roughly 500 MB of disk space (including node_modules). Additional space is used by:
- Skill packages — each skill is small (typically under 1 MB), but with thousands available on ClawHub, installing many of them adds up.
- Logs — OpenClaw writes structured logs to
~/.openclaw/logs/by default. - Conversation history — stored locally in SQLite unless you configure an external database.
We recommend at least 5 GB of free disk space to allow room for growth.
Docker (optional)
Docker is not required to run OpenClaw. However, it is recommended if you plan to:
- Use skills that execute arbitrary code (the Sandbox uses Docker containers for isolation).
- Deploy OpenClaw in a containerized environment (Kubernetes, Docker Compose, etc.).
If you choose to install Docker, version 24 or later is recommended:
docker --version
# Expected output: Docker version 24.x.x or later
Install Docker by following the official Docker documentation.
Network access
OpenClaw needs network access for the following purposes:
| Direction | Port | Purpose |
|---|---|---|
| Outbound | 443 (HTTPS) | Calling LLM provider APIs (OpenAI, Anthropic, etc.) |
| Outbound | 443 (HTTPS) | Downloading skill packages from the registry |
| Inbound | 3000 (default) | Serving the web UI and REST API |
| Inbound | Varies | Receiving webhooks from channels (Slack, Telegram, etc.) |
If you are behind a corporate firewall or proxy, ensure that outbound HTTPS traffic to your LLM provider and to openclawdoc.com/registry is allowed.
Webhook considerations
Many channel adapters (Slack, Telegram, Discord) require OpenClaw to receive incoming webhook requests. This means your server must be reachable from the internet on the configured port. Options include:
- A public-facing server or VM with a static IP.
- A reverse proxy (Nginx, Caddy) with a domain name and TLS certificate.
- A tunnel service like ngrok or Cloudflare Tunnels for development.
Verification checklist
Run the following commands to confirm your system is ready:
# Operating system
uname -a
# Node.js (must be 22+)
node --version
# npm (must be 10+)
npm --version
# Git (needed for manual installation)
git --version
# Docker (optional)
docker --version
If all checks pass, you are ready to proceed to Installation.