Back to Blog
AI ToolsSelf-Hosted

Clawdbot Setup Guide 2026: Run Locally & Deploy to Cloud

The complete, step-by-step guide to setting up Clawdbot (OpenClaw) — the open-source personal AI assistant that actually does things. From local installation to cloud deployment, with Docker, messaging channels, and security configuration.

16 min read
Complete Tutorial
Published February 11, 2026

What is Clawdbot?

Clawdbot (now officially OpenClaw) is an open-source, self-hosted personal AI assistant created by Peter Steinberger (@steipete), the former founder and CEO of PSPDFKit. Unlike cloud-only AI chatbots, Clawdbot runs entirely on your machine — your data never leaves your device unless you explicitly configure it to.

But here's what makes it special: Clawdbot goes beyond conversation. It executes real automation tasks — sending emails, managing your calendar, controlling smart home devices, writing and running code, and even controlling your browser. Think of it as your own private Jarvis.

10,200+

GitHub Stars

50+

Integrations

10+

Messaging Channels

MIT

License (Free)

Name History: Originally called Clawdbot, briefly renamed to Moltbot, now officially OpenClaw. The CLI command is openclaw. Current version: v2026.1.23. Built in TypeScript with 50+ contributors and 8,900+ community members on Discord.

Why Clawdbot?

Six reasons developers and power users are switching to a self-hosted AI assistant.

Privacy-First

Runs locally on your device. Your data, conversations, and automations never leave your machine unless you configure external services.

Real Automation

Execute shell commands, run code, control your browser, manage files, send emails, and interact with APIs — not just chat.

Multi-Platform Messaging

Connect via WhatsApp, Telegram, Discord, Slack, iMessage, Signal, Matrix, and Mattermost. One assistant, every platform.

Extensible Skills

Browse and install community skills from ClawdHub marketplace. Build your own custom skills with the plugin system.

Model Flexibility

Use Claude (Anthropic), GPT (OpenAI), Google Gemini, or run local models via Ollama and LM Studio. Switch anytime.

Security Built-In

Sandboxed execution in Docker containers, network isolation, read-only filesystems, and configurable tool allow/deny policies.

Prerequisites

Before you start, make sure you have the following ready:

1

Node.js 22.12.0 or higher

Clawdbot is built in TypeScript and requires a modern Node.js runtime. Check your version with node -v. Use nvm to manage versions.

2

An AI Model API Key

You need at least one: Anthropic API key (for Claude), OpenAI API key (for GPT), or Gemini API key. Alternatively, use local models via Ollama (no API key needed).

3

macOS, Linux, or Windows (WSL2)

Native macOS and Linux support. Windows users need WSL2 (Windows Subsystem for Linux). Docker is optional but recommended for sandboxed execution and cloud deployments.

Part 1: Local Installation

Three ways to get Clawdbot running on your machine. Pick the one that fits your workflow.

Recommended

Method 1: One-Liner Install (macOS / Linux)

The fastest way to get started. One command downloads and installs everything:

Terminal
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemon

The install script detects your OS, downloads the correct binary, and places it in your PATH. The onboard command launches a guided wizard.

Method 2: npm Install (macOS / Linux / Windows WSL2)

If you already have Node.js set up, use npm for a clean, version-managed install:

Terminal
# Check your Node.js version (need 22.12.0+)
node -v

# Install globally via npm
npm install -g openclaw@latest

# Run the onboarding wizard
openclaw onboard --install-daemon

Method 3: macOS Desktop App

Prefer a native app? Download the macOS app directly from GitHub releases:

After Installation: First-Time Setup

Regardless of which method you chose, follow these steps to get Clawdbot up and running:

1

Run the onboarding wizard

openclaw onboard --install-daemon
2

Configure your AI model

Set your API key
# For Claude (Anthropic):
export ANTHROPIC_API_KEY="sk-ant-your-key-here"

# For GPT (OpenAI):
export OPENAI_API_KEY="sk-your-key-here"

# For Google Gemini:
export GEMINI_API_KEY="your-gemini-key-here"
3

Verify your model connection

openclaw models status
4

Open the Control UI

# The Control UI runs at:
# http://127.0.0.1:18789/

# Or launch it directly:
openclaw dashboard

Config file locations:
~/.openclaw/openclaw.json — main configuration
~/.openclaw/workspace — workspace data and sessions

Part 2: Docker Installation

Docker is the recommended approach for sandboxed execution and cloud deployments. It provides full isolation and makes deployment reproducible.

Quick Setup (Automated)

The easiest Docker setup — one script does everything:

Terminal — from the repo root
# Clone the repository
git clone https://github.com/steipete/clawdbot.git
cd clawdbot

# Run the automated Docker setup
./docker-setup.sh

This builds the gateway image, runs onboarding inside the container, and starts everything via Docker Compose.

Manual Docker Flow

For more control, build and run the containers manually:

Terminal
# Build the Docker image
docker build -t openclaw:local -f Dockerfile .

# Run the onboarding wizard inside Docker
docker compose run --rm openclaw-cli onboard

# Start the gateway as a background daemon
docker compose up -d openclaw-gateway

Connect Channels in Docker

Once the gateway is running, add your messaging channels:

Terminal
# WhatsApp (scans QR code in terminal):
docker compose run --rm openclaw-cli channels login

# Telegram (requires bot token from @BotFather):
docker compose run --rm openclaw-cli channels add \
  --channel telegram --token "<your-telegram-bot-token>"

# Discord (requires bot token from Discord Developer Portal):
docker compose run --rm openclaw-cli channels add \
  --channel discord --token "<your-discord-bot-token>"

Part 3: Cloud Deployment

Want Clawdbot running 24/7 without keeping your laptop open? Deploy it to the cloud. Here are the four best options, ranked by ease of setup.

Hostinger VPS

$6.99/mo

One-click deployment with Docker pre-installed. The most hands-off cloud option.

Minimum specs: 2 vCPU, 8GB RAM, 100GB NVMe SSD
Docker and Docker Compose pre-installed
OpenClaw auto-selected as deployment template
Steps
1. Select a Hostinger VPS plan (2vCPU / 8GB RAM minimum)
2. OpenClaw is auto-selected as a one-click deployment
3. Deploy and wait for provisioning (~2 minutes)
4. Configure environment variables in the dashboard:
   - OPENCLAW_GATEWAY_TOKEN (auto-generated)
   - ANTHROPIC_API_KEY (your Anthropic key)
   - OPENAI_API_KEY (your OpenAI key — optional)

Pros

  • + One-click deploy
  • + Full root SSH access
  • + Great price for specs

Cons

  • - Manual scaling
  • - Self-managed updates
  • - Basic monitoring

Railway

One-Click

The easiest deployment option. Web-based setup wizard, no terminal required.

Hosted Gateway + Control UI out of the box
Persistent storage via Railway Volume mounted at /data
Configure entirely through the browser at /setup
Deploy to Railway
# One-click deploy URL:
# https://railway.com/deploy/clawdbot-1

# Or deploy via Railway CLI:
railway login
railway init
railway up

Pros

  • + Zero terminal knowledge needed
  • + Built-in persistent volumes
  • + Auto-deploy on push

Cons

  • - Usage-based pricing can add up
  • - Less control than VPS
  • - Cold starts possible

Fly.io

Free Tier

Deploy globally with the flyctl CLI. Free tier available, automatic HTTPS, and persistent storage.

Terminal
# Install Fly CLI
curl -L https://fly.io/install.sh | sh

# Login and deploy
fly auth login
fly launch --image openclaw:latest

# Set environment variables
fly secrets set ANTHROPIC_API_KEY="sk-ant-your-key"
fly secrets set OPENCLAW_GATEWAY_TOKEN="your-token"

# Create persistent volume
fly volumes create openclaw_data --size 10

# Deploy
fly deploy

Pros

  • + Free tier available
  • + Global edge deployment
  • + Automatic HTTPS

Cons

  • - CLI-based setup
  • - Free tier is limited
  • - Scaling costs money

Full documentation at docs.clawd.bot/platforms/fly

Render

Blueprint

Infrastructure as Code deployment using Render Blueprint. Great for teams who want reproducible deployments with auto-deploy on push.

render.yaml
# Deploy using Render Blueprint:
# 1. Fork the clawdbot repo
# 2. Connect to Render
# 3. Render detects render.yaml automatically
# 4. Configure env vars in the Render dashboard
# 5. Deploy — auto-deploy on every push

# Key features:
# - Shell access for debugging
# - Custom domains & automatic HTTPS
# - Free and paid tier options
# - Auto-scaling available on paid plans

Pros

  • + Infrastructure as Code
  • + Auto-deploy from Git
  • + Free tier available

Cons

  • - Slower builds
  • - Free tier has cold starts
  • - Volume support limited

Other deployment options: Hetzner, Google Cloud Platform (GCP), Northflank, and exe.dev are also supported. Check the official deployment docs for platform-specific guides.

Connecting Messaging Channels

Clawdbot supports 10+ messaging platforms. Here's how to connect the most popular ones.

💬 WhatsApp (via Baileys)

Uses the open-source Baileys library — no WhatsApp Business API required. Links to your personal WhatsApp account.

# Local installation:
openclaw channels login

# Docker installation:
docker compose run --rm openclaw-cli channels login

# A QR code will appear in your terminal.
# Scan it with WhatsApp on your phone:
# WhatsApp → Settings → Linked Devices → Link a Device

✈️ Telegram (via grammY)

Create a bot via @BotFather on Telegram, then add the token:

# Get your bot token from @BotFather on Telegram, then:
openclaw channels add --channel telegram --token "<your-bot-token>"

# Docker:
docker compose run --rm openclaw-cli channels add \
  --channel telegram --token "<your-bot-token>"

🎮 Discord

Create a bot in the Discord Developer Portal, enable Message Content Intent, and add the token:

# Add your Discord bot token:
openclaw channels add --channel discord --token "<your-bot-token>"

# Docker:
docker compose run --rm openclaw-cli channels add \
  --channel discord --token "<your-bot-token>"

Also supported: Slack, iMessage, Signal, Matrix, and Mattermost. Run openclaw channels list to see all available channels, or check the channel documentation.

Security & Sandboxing

Clawdbot executes real commands on your system. Security isn't optional — it's built into the core architecture.

Container Isolation

  • • Agent tools run in isolated Docker containers
  • • Default network: none (no egress)
  • • Read-only root filesystem by default
  • • PID limits, memory limits, CPU limits

Access Policies

  • • Tool allow/deny policies (deny wins over allow)
  • • Seccomp and AppArmor profile support
  • • Per-agent sandbox profiles for multi-agent setups
  • • Auto-prune: idle containers removed after 24h

Sandbox Configuration Example

~/.openclaw/openclaw.json — sandbox section
{
  "sandbox": {
    "enabled": true,
    "network": "none",
    "readOnlyRootFilesystem": true,
    "memoryLimit": "512m",
    "cpuLimit": "1.0",
    "pidLimit": 100,
    "maxAge": "7d",
    "idleTimeout": "24h",
    "seccompProfile": "default",
    "toolPolicies": {
      "allow": ["file_read", "file_write", "shell_execute"],
      "deny": ["network_request"]
    }
  }
}

Best Practices:

  • • Always run with sandbox enabled in production
  • • Start with network: none and only enable network for specific tools
  • • Set memory and CPU limits to prevent runaway processes
  • • Use deny policies as your primary access control (deny wins over allow)
  • • Review tool permissions before granting shell access

Environment Variables Reference

VariablePurposeRequired
ANTHROPIC_API_KEYAPI key for Claude modelsOne of these
OPENAI_API_KEYAPI key for GPT modelsOne of these
GEMINI_API_KEYAPI key for Google GeminiOptional
OPENCLAW_GATEWAY_TOKENAuthentication for the gatewayCloud deploys
OPENCLAW_HOMECustom home directoryOptional
OPENCLAW_STATE_DIRCustom state directoryOptional

Troubleshooting

"Node.js version too old"

Clawdbot requires Node.js 22.12.0+. Upgrade using nvm:

nvm install 22
nvm use 22
node -v  # Should show v22.12.0 or higher

"Cannot connect to model" / API key errors

Verify your API key is correctly set and the model service is reachable:

# Check model status
openclaw models status

# Verify environment variable is set
echo $ANTHROPIC_API_KEY

# Re-set if needed (add to ~/.zshrc or ~/.bashrc for persistence)
export ANTHROPIC_API_KEY="sk-ant-your-actual-key"

Docker permission errors

If Docker commands fail with permission denied:

# Add your user to the docker group
sudo usermod -aG docker $USER

# Log out and back in, then verify
docker ps

WhatsApp QR code not scanning

The QR code expires quickly. Make sure your terminal window is large enough to display it properly, and scan within 30 seconds. If it expires, press Enter to generate a new one.

Port 18789 already in use

Another process is using the default Clawdbot port:

# Find what's using the port
lsof -i :18789

# Kill the process or change the port in openclaw.json
# Alternatively, stop any existing openclaw instances:
openclaw daemon stop

Frequently Asked Questions

Is Clawdbot really free?

Yes. Clawdbot (OpenClaw) is MIT-licensed and completely free to use. You only pay for the AI model API calls (e.g., Anthropic or OpenAI charges) and any cloud hosting if you choose to deploy remotely. You can use local models via Ollama for a fully free setup.

Can I use local AI models instead of cloud APIs?

Absolutely. Clawdbot supports Ollama and LM Studio for running local models. This means zero data leaves your machine and zero API costs. The trade-off is that local models are generally less capable than Claude or GPT-4, but they're improving rapidly.

Is it safe to let an AI run commands on my computer?

Clawdbot includes a sandboxed execution system using Docker containers with network isolation, read-only filesystems, PID limits, and memory constraints. You can configure tool allow/deny policies to restrict exactly what the AI can do. That said, always review the sandbox configuration before granting shell access to any AI system.

What's the difference between Clawdbot and ChatGPT?

ChatGPT is a cloud-hosted conversation tool. Clawdbot is a self-hosted automation assistant. It can execute shell commands, manage files, control your browser, send messages on your behalf, and interact with 50+ services. It's also connected to your messaging apps (WhatsApp, Telegram, Discord) so you can interact with it from anywhere.

Can I run Clawdbot on a Raspberry Pi?

Technically yes, if the Pi supports Node.js 22.12.0+ (Raspberry Pi 4/5 with 64-bit OS). Performance depends on your AI model choice — cloud APIs work fine, but running local models on a Pi would be very slow. For 24/7 operation, a cheap VPS ($7/month on Hostinger) is a better choice.

How do I update Clawdbot?

For npm installations: npm update -g openclaw. For Docker: pull the latest image and restart. For the macOS app: download the latest release from GitHub. The onboarding wizard will run again if there are breaking config changes.

Can multiple people use the same Clawdbot instance?

Yes. Clawdbot uses a gateway-based architecture with a Node system designed for multi-device access. WebSocket real-time communication keeps all connected clients in sync. Each user can connect from different messaging platforms simultaneously.

Build Your AI Agent Stack

Clawdbot is a powerful starting point for your AI automation journey. Need help picking the right hosting, database, and deployment tools to go with it? Use our AI-powered stack generator to build a complete infrastructure — optimized for your budget and use case.