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.
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:
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.
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).
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.
Method 1: One-Liner Install (macOS / Linux)
The fastest way to get started. One command downloads and installs everything:
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemonThe 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:
# 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-daemonMethod 3: macOS Desktop App
Prefer a native app? Download the macOS app directly from GitHub releases:
- DMG installer: 17.1 MB — double-click to install
- ZIP archive: 21.3 MB — extract and run
- Download from github.com/steipete/clawdbot/releases
After Installation: First-Time Setup
Regardless of which method you chose, follow these steps to get Clawdbot up and running:
Run the onboarding wizard
openclaw onboard --install-daemonConfigure your AI model
# 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"Verify your model connection
openclaw models statusOpen the Control UI
# The Control UI runs at:
# http://127.0.0.1:18789/
# Or launch it directly:
openclaw dashboardConfig 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:
# Clone the repository
git clone https://github.com/steipete/clawdbot.git
cd clawdbot
# Run the automated Docker setup
./docker-setup.shThis 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:
# 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-gatewayConnect Channels in Docker
Once the gateway is running, add your messaging channels:
# 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
One-click deployment with Docker pre-installed. The most hands-off cloud option.
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
The easiest deployment option. Web-based setup wizard, no terminal required.
/data/setup# One-click deploy URL:
# https://railway.com/deploy/clawdbot-1
# Or deploy via Railway CLI:
railway login
railway init
railway upPros
- + 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
Deploy globally with the flyctl CLI. Free tier available, automatic HTTPS, and persistent storage.
# 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 deployPros
- + 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
Infrastructure as Code deployment using Render Blueprint. Great for teams who want reproducible deployments with auto-deploy on push.
# 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 plansPros
- + 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
{
"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: noneand 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
| Variable | Purpose | Required |
|---|---|---|
| ANTHROPIC_API_KEY | API key for Claude models | One of these |
| OPENAI_API_KEY | API key for GPT models | One of these |
| GEMINI_API_KEY | API key for Google Gemini | Optional |
| OPENCLAW_GATEWAY_TOKEN | Authentication for the gateway | Cloud deploys |
| OPENCLAW_HOME | Custom home directory | Optional |
| OPENCLAW_STATE_DIR | Custom state directory | Optional |
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 stopFrequently 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.
Related Articles
AI coding assistants compared
Best Tech Stack for SaaS 2026Complete guide to building modern SaaS
Build an AI App with Next.jsStep-by-step AI app tutorial
Lovable vs Bolt vs v0 2026AI app builders comparison
Solo Founder Tech Stack 2026Build your MVP for under $50/month
Vercel vs Railway HostingCompare hosting platforms