---
Here’s a practical **Windows 11 + NVIDIA GPU + 64 GB RAM** checklist for setting up **OpenClaw in WSL2**, which is the route current Windows guidance and community writeups keep converging on. The key idea is: **Windows hosts the GPU driver, WSL2 hosts Linux, and Docker Desktop bridges the container layer**.[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)skywork+2[youtube](https://www.youtube.com/watch?v=uqc_54fbsPU)
## Checklist
## Windows prep
- Update Windows 11 fully.
- Install the latest NVIDIA Windows driver with WSL/CUDA support.
- Reboot.
- Open PowerShell as Administrator.[forecr](https://www.forecr.io/blogs/installation/nvidia-docker-installation-for-ubuntu-in-wsl-2)[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)
## Install WSL2
``` powershell
wsl --install
wsl --update
wsl --set-default-version 2
wsl --install -d Ubuntu-24.04
wsl --status
```
WSL2 is the required Linux layer for GPU-backed Docker workflows on Windows 11.[developer.nvidia](https://forums.developer.nvidia.com/t/run-cuda-inside-docker-wsl-on-windows-11-hyper-v-vm-with-gpu-patritioning/308212)[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)
## Open Ubuntu and prep Linux
``` bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git ca-certificates gnupg lsb-release
```
## Confirm GPU visibility in WSL
``` bash
nvidia-smi
```
If this works, WSL can see the NVIDIA GPU through the Windows driver stack.[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)[forecr](https://www.forecr.io/blogs/installation/nvidia-docker-installation-for-ubuntu-in-wsl-2)
## Install Docker Desktop
- Install Docker Desktop in Windows.
- Turn on **Use the WSL 2 based engine**.
- Enable integration for your Ubuntu distro.
- Restart Docker Desktop if needed.[developer.nvidia](https://forums.developer.nvidia.com/t/run-cuda-inside-docker-wsl-on-windows-11-hyper-v-vm-with-gpu-patritioning/308212)[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)
## Verify Docker
``` bash
docker version
docker run --rm hello-world
```
## Enable NVIDIA GPU passthrough for Docker in WSL
``` bash
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
```
Then restart WSL:
``` powershell
wsl --shutdown
```
Test GPU containers:
``` bash
docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi
```
This is the important pass/fail test for NVIDIA GPU passthrough in Docker on WSL2.[forecr](https://www.forecr.io/blogs/installation/nvidia-docker-installation-for-ubuntu-in-wsl-2)[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)[developer.nvidia](https://forums.developer.nvidia.com/t/run-cuda-inside-docker-wsl-on-windows-11-hyper-v-vm-with-gpu-patritioning/308212)
## Install OpenClaw
In WSL Ubuntu, run the official Linux installer command from OpenClaw’s docs or site. Current Windows guides consistently place this step inside WSL, not native Windows.[skywork](https://skywork.ai/skypage/en/openclaw-windows-install-guide/2036741351875907584)[youtube](https://www.youtube.com/watch?v=uqc_54fbsPU)
Typical pattern:
``` bash
curl -fsSL <OPENCLAW_INSTALL_URL> | bash
```
If the installer asks about Docker, use the Docker Desktop-backed WSL integration you already enabled.[cybernative](https://cybernative.ai/t/openclaw-on-windows-11-home-wsl2-a-beginner-setup-that-won-t-eat-your-machine/33992?tl=en)[youtube](https://www.youtube.com/watch?v=uqc_54fbsPU)
## Start OpenClaw
Use the command OpenClaw’s installer or docs provide for startup. If you’re following the current Windows/WSL guidance, keep the service and agent runtime inside WSL rather than crossing back into Windows filesystem paths too early.[youtube](https://www.youtube.com/watch?v=uqc_54fbsPU)[cybernative](https://cybernative.ai/t/openclaw-on-windows-11-home-wsl2-a-beginner-setup-that-won-t-eat-your-machine/33992?tl=en)
## Lock down WSL
- Avoid working out of `/mnt/c` for agent data.
- Keep project files inside the Linux filesystem.
- If OpenClaw’s docs mention systemd or WSL config, enable them in `/etc/wsl.conf` and restart WSL.[cybernative](https://cybernative.ai/t/openclaw-on-windows-11-home-wsl2-a-beginner-setup-that-won-t-eat-your-machine/33992?tl=en)[youtube](https://www.youtube.com/watch?v=uqc_54fbsPU)
## Best-practice notes
Your 64 GB RAM is more than enough for the platform and local models; the real issue is GPU routing and container reachability, not memory. Community reports on OpenClaw/NemoClaw-style setups on Windows show that WSL2 + Docker works best when the model and the agent runtime stay in the same WSL environment.[github](https://github.com/NVIDIA/NemoClaw/issues/208)[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)cybernative+1
If you want, I can turn this into a **single copy-paste runbook** with placeholders like `<OPENCLAW_INSTALL_URL>` filled in once you share the exact OpenClaw project link.
---
> turn this into a single copy-paste runbook with placeholders like <OPENCLAW_INSTALL_URL> filled in once you share the exact OpenClaw project link.
Absolutely — here is a **single copy-paste Windows 11 WSL2 runbook** using the official OpenClaw install script URL and the current docs’ Linux/WSL2 flow. I’m assuming you want OpenClaw on **Windows 11 + WSL2 Ubuntu + Docker Desktop + NVIDIA GPU**.openclaw+2[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)
## Copy-paste runbook
## 1) Windows PowerShell (Admin)
``` powershell
wsl --install
wsl --update
wsl --set-default-version 2
wsl --install -d Ubuntu-24.04
wsl --status
```
## 2) Open Ubuntu in WSL, then run
``` bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git ca-certificates gnupg lsb-release
```
## 3) Verify GPU is visible in WSL
``` bash
nvidia-smi
```
## 4) Install Docker Desktop in Windows
- Install Docker Desktop.
- Enable **Use the WSL 2 based engine**.
- Enable integration for Ubuntu.
- Restart Docker Desktop if needed.
## 5) Install NVIDIA container tooling in WSL
``` bash
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
```
## 6) Restart WSL
``` powershell
wsl --shutdown
```
## 7) Test Docker GPU passthrough
``` bash
docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi
```
## 8) Install OpenClaw
``` bash
curl -fsSL https://openclaw.ai/install.sh | bash
```
If you want to skip onboarding for a moment:
``` bash
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --no-onboard
```
The official docs also list npm and GitHub install options if you prefer those paths.openclaw+1
## 9) Start OpenClaw onboarding
``` bash
openclaw onboard --install-daemon
```
## 10) Verify OpenClaw
``` bash
openclaw --version openclaw status
```
## NVIDIA GPU notes
The important part is that **GPU support comes from the Windows NVIDIA driver into WSL2, then into Docker through the NVIDIA container runtime**. If `nvidia-smi` works in WSL and the CUDA container test works, your GPU passthrough is good.[youtube](https://www.youtube.com/watch?v=CO43b6XWHNI)[forecr](https://www.forecr.io/blogs/installation/nvidia-docker-installation-for-ubuntu-in-wsl-2)
## If something fails
- If `nvidia-smi` fails, update the Windows NVIDIA driver and reboot.
- If Docker GPU tests fail, re-run the `nvidia-ctk runtime configure` step and restart WSL.
- If OpenClaw install fails, try the npm path from the docs:
``` bash
npm install -g openclaw@latest
openclaw onboard --install-daemon
```
OpenClaw’s docs and GitHub also show a source install path if needed.github+1
If you want, I can turn this into a **one-screen checklist with checkboxes only**, or a **version that also includes Ollama in the same runbook**.
---
> How do I configure OpenClaw agents after installation
After installation, you usually configure OpenClaw agents in three layers: **global defaults, per-agent definitions, and verification**. The current docs describe `openclaw onboard`, `openclaw config set`, `openclaw agents add`, `openclaw agents list`, and `openclaw config get` as the main workflow.meta-intelligence+2
## Checklist
- Finish onboarding first: `openclaw onboard`.meta-intelligence+1
- Set your model provider keys in config or environment variables.getopenclaw+1
- Set global defaults for model, temperature, max tokens, workspace, and tools.getopenclaw+1
- Create one or more agents with `openclaw agents add`.meta-intelligence+1
- Give each agent a clear identity file and workspace scope.getopenclaw+1
- Verify your agents with `openclaw agents list --verbose` and `openclaw config get ...`.meta-intelligence+1
- Test a new agent with `--dry-run` before using it live.[meta-intelligence](https://www.meta-intelligence.tech/en/insight-openclaw-agents-guide)
## Set globals
These commands set the default behavior that new agents inherit:
``` bash
openclaw config set agents.defaults.model.primary claude-sonnet-4 --global
openclaw config set agents.defaults.model.fallback gpt-4.1-mini --global
openclaw config set agents.defaults.model.temperature 0.5 --global
openclaw config set agents.defaults.model.maxTokens 64000 --global
```
The docs say OpenClaw stores config in `~/.openclaw/openclaw.json`, and global defaults live under `agents.defaults`.getopenclaw+1
## Add agents
Use `openclaw agents add` to register a new agent. The documented flags include `--model`, `--identity`, `--workspace`, `--tools`, `--template`, `--description`, `--max-tokens`, `--temperature`, and `--global`.meta-intelligence+1
Example:
``` bash
openclaw agents add architect \
--model claude-opus-4-6 \
--workspace ~/projects/my-app \
--description "System architect — design decisions and technology selection"
```
You can repeat that pattern for developer, reviewer, or other specialized roles.ai2sql+1
## Identity file
Each agent can have an identity file, often `agent.md`, that defines its persona, rules, and behavior. The docs also mention `SOUL.md` as a customization option in some setups, but the basic idea is the same: keep the agent’s instructions close to the agent folder.getopenclaw+2
A typical structure looks like this:
```
~/.openclaw/agents/
architect/
agent.md
reviewer/
agent.md
```
## Verify config
Use these checks after creating agents:
``` bash
openclaw agents list --verbose
openclaw config get agents.registered.architect.model
openclaw agents test architect --dry-run
```
The docs say `agents list` shows the registered agents, `config get` confirms the stored model settings, and dry-run testing helps catch bad config before launch.meta-intelligence+1
## If you want a simple starting profile
For a first setup, use one default generalist agent plus one specialist:
- `default` for general tasks.
- `coder` for implementation.
- `reviewer` for quality control.
That matches the multi-agent patterns described in the current OpenClaw guides.lumadock+2
---