nemoclaw-setup

Install and configure NVIDIA NemoClaw (sandboxed OpenClaw agent platform) on Linux. Handles cloudflared tunnels, Docker cgroup fixes, OpenShell, sandbox creation, remote access via Cloudflare Tunnel, and known bug workarounds. Use whenever the user mentions installing NemoClaw, setting up OpenClaw,

By jezweb · 825 installs

npx skills add jezweb/claude-skills --skill nemoclaw-setup

Source repository · Upstream listing

NemoClaw Setup Install NVIDIA NemoClaw — a sandboxed AI agent platform built on OpenClaw with Landlock + seccomp + network namespace isolation. Runs inside Docker via k3s (OpenShell). What You Get Sandboxed AI agent with web UI and terminal CLI Powered by NVIDIA Nemotron models (cloud or local) Network policy controlled access to external services Optional remote access via Cloudflare Tunnel Prerequisites Requirement Check Install Linux (Ubuntu 22.04+) uname a — Docker docker ps sudo apt install docker.io Node.js 20+ (22 recommended) node version nvm install 22 NVIDIA GPU (optional but recommended) nvidia smi — NVIDIA API key — https://build.nvidia.com/settings/api keys Workflow Step 1: Pre flight Checks If nemoclaw is already installed, skip to Step 4. Step 2: Install NemoClaw This installs NemoClaw and OpenClaw via npm globally (to ~/.npm global/bin/ ). If the installer can't find Node.js , install it first: Step 3: Install OpenShell Installs to ~/.local/bin/openshell . Step 4: Fix Docker Permissions and cgroup Docker group — the user must be in the docker group: cgroup v2 fix — required for k3s inside Docker: This adds "default cgroupns mode": "host" to /etc/docker/daemon.json and restarts Docker. IMPORTANT : The nemoclaw setup spark command also asks for an NVIDIA API key. Have it ready (starts with nvapi ). Get one at https://build.nvidia.com/settings/api keys. Step 5: Run Onboarding The interactive wizard will: 1. Check Docker and OpenShell 2. Start the OpenShell gateway (k3s in Docker) 3. Ask for a sandbox name — use claw or any name 4. Configure the NVIDIA API key 5. Set up inference (Nemotron 3 Super 120B via cloud API) 6. Launch OpenClaw inside the sandbox 7. Apply network policy presets — select the ones you need Common port conflict : If port 8080 is in use, find and kill the process: Step 6: Verify Step 7: Set Up Web UI Access The web UI runs inside the sandbox and needs a port forward: Then open: http://127.0.0.1:18789/ Known bug (OpenClaw ≤ v2026.3.11) : "device identity required" error. Workaround — append the gateway token to the URL: Then visit: http://127.0.0.1:18789/ token=<gateway token Fix : Update to OpenClaw v2026.3.12+ (see Updating section below). Step 8: Make the Port Forward Persistent Create a health checked keepalive script: Create the systemd service: Step 9: Remote Access via Cloudflare Tunnel (Optional) If you have a Cloudflare Tunnel already running, add NemoClaw to it. Add DNS route: Update tunnel config ( /etc/cloudflared/config.yml ): Restart tunnel: Update sandbox allowed origins — SSH into the sandbox and add your domain: Protect with Cloudflare Access — add the hostname to your Access application in the Zero Trust dashboard. Access URL : https://nemoclaw.<domain / token=<gateway token Step 10: Install Custom Skills Skills are markdown files in /sandbox/.openclaw/skills/<name /SKILL.md . SSH into the sandbox to create them: Verify with: openclaw skills list Step 11: Configure the Workspace Update the workspace files so the agent knows who you are: /sandbox/.openclaw/workspace/USER.md — your profile, preferences /sandbox/.openclaw/workspace/TOOLS.md — available tools and access /sandbox/.openclaw/workspace/SOUL.md — agent personality and behaviour Updating OpenClaw The sandbox bundles OpenClaw at install time. To update: Note : Sandbox network policies block npm/PyPI inside the sandbox. Updates must be done by rebuilding. Troubleshooting Issue Cause Fix Docker is not running Docker service stopped or user not in docker group sudo systemctl start docker then newgrp docker cgroup v2 detected Docker not configured for cgroupns=host sudo nemoclaw setup spark Port 8080 in use Another service on that port fuser k 8080/tcp nemoclaw: command not found Not in PATH PATH=$HOME/.npm global/bin:$HOME/.local/bin:$PATH device identity required Bug in OpenClaw ≤ v2026.3.11 Append token=<gateway token to URL, or update to v2026.3.12+ gateway token mismatch Token changed after sandbox rebuild Get new token from sandbox config too many failed auth attempts Rate limited from old token attempts Restart gateway: ssh F /tmp/nemoclaw ssh config openshell claw 'pkill f "openclaw gateway"; sleep 2; openclaw gateway &' origin not allowed Domain not in allowedOrigins Add to gateway.controlUi.allowedOrigins in sandbox config Port 18789 not responding SSH tunnel died sudo systemctl restart nemoclaw forward (auto recovers within 13s) npm 403 Forbidden inside sandbox Network policy blocking TLS Cannot install packages inside sandbox — rebuild instead Tunnel not found on DNS route Wrong Cloudflare account/cert Check cloudflared tunnel list matches your cert Error 502 on Cloudflare Tunnel connections dropped sudo systemctl restart cloudflared Assets 404 via Cloudflare Browser not authenticated for sub requests Hard refresh (Ctrl+Shift+R) after Cloudflare Access login Architecture References [NemoClaw GitHub](https://github.com/NVIDIA/NemoClaw) [OpenShell GitHub](https://github.com/NVIDIA/OpenShell) [OpenClaw docs](https://docs.openclaw.ai) [NemoClaw quickstart](https://docs.nvidia.com/nemoclaw/latest/get started/quickstart.html) [awesome nemoclaw presets](https://github.com/VoltAgent/awesome nemoclaw) [awesome openclaw skills](https://github.com/VoltAgent/awesome openclaw skills) [device auth bug fix](https://github.com/openclaw/openclaw/issues/43909)