OpenClaw is an open-source personal AI agent that lives on your hardware and connects to your entire digital life. Not a chatbot. Not an API wrapper. A persistent agent with memory, tools, and the ability to act on your behalf across messaging platforms, home automation, email, calendars, and more.
I have been running OpenClaw since early 2026, and it has fundamentally changed how I work. This is the guide I wish existed when I started.
What Makes OpenClaw Different
Most AI tools are stateless β you open a chat, get an answer, close the tab. OpenClaw is stateful and persistent:
- Always on β runs as a daemon on your hardware (Mac Mini, Raspberry Pi, VPS, or Kubernetes)
- Memory β remembers conversations, decisions, preferences, and context across sessions
- Multi-channel β one agent, reachable via Discord, Telegram, WhatsApp, Signal, email, or web UI
- Tool use β executes commands, reads files, browses the web, controls smart home devices
- Self-hosted β your data stays on your hardware, with your API keys
Think of it as a personal assistant that never sleeps, never forgets (unless you tell it to), and gets better the longer you use it.
Architecture Overview
βββββββββββββββββββββββββββββββββββββββββββ
β OpenClaw Gateway β
β βββββββββββ βββββββββββ ββββββββββββ β
β β Discord β βTelegram β β WhatsApp β β
β β Channel β β Channel β β Channel β β
β ββββββ¬βββββ ββββββ¬βββββ ββββββ¬ββββββ β
β βββββββββββββΌββββββββββββ β
β ββββββΌβββββ β
β β Agent β β
β β Core β β
β ββββββ¬βββββ β
β ββββββββ¬βββββββΌβββββββ¬βββββββ β
β β β β β β β
β Memory Tools Web Files Nodes β
β (.md) (exec) (fetch) (r/w) (devices) β
βββββββββββββββββββββββββββββββββββββββββββQuick Start: Docker Installation
The fastest way to get OpenClaw running:
# Create workspace directory
mkdir -p ~/.openclaw/workspace
# Run OpenClaw with Docker
docker run -d \
--name openclaw \
--restart unless-stopped \
-v ~/.openclaw:/home/node/.openclaw \
-p 3000:3000 \
ghcr.io/openclaw/openclaw:latestOpen http://localhost:3000 to access the Control UI.
Configuration
OpenClaw is configured through ~/.openclaw/config.yaml. Here is a minimal production configuration:
# ~/.openclaw/config.yaml
gateway:
bind: "0.0.0.0" # LAN access (use 127.0.0.1 for local only)
controlUI:
allowedOrigins:
- "http://localhost:3000"
- "http://192.168.1.100:3000" # Your LAN IP
agents:
defaults:
model: "anthropic/claude-sonnet-4-20250514"
# Or use a cheaper model for routine tasks:
# model: "openai/gpt-4o-mini"
# API keys for model providers
env:
ANTHROPIC_API_KEY: "sk-ant-..."
# OPENAI_API_KEY: "sk-..."
# Connect messaging channels
channels:
discord:
enabled: true
token: "your-discord-bot-token"
telegram:
enabled: true
token: "your-telegram-bot-token"The allowedOrigins Gotcha
The most common setup issue is the allowedOrigins configuration. If you see βOrigin not allowedβ errors, you need to add your browserβs origin to the allowed list:
gateway:
controlUI:
allowedOrigins:
- "http://localhost:3000"
- "http://YOUR_LAN_IP:3000"See the complete allowedOrigins guide for Docker, LAN, Tailscale, and reverse proxy setups.
Memory: How OpenClaw Remembers
OpenClaw uses file-backed memory β Markdown files in your workspace that persist across sessions:
~/.openclaw/workspace/
βββ MEMORY.md # Long-term curated knowledge
βββ SOUL.md # Agent personality and behavior
βββ USER.md # Information about you
βββ AGENTS.md # Workspace conventions
βββ memory/
β βββ 2026-04-01.md # Daily notes
β βββ 2026-04-02.md
β βββ 2026-04-03.md
βββ ...your files...The agent reads these files at the start of each session. It writes to daily memory files during conversations and periodically curates MEMORY.md with long-term insights.
This is not a vector database or embeddings-based RAG. It is plain Markdown files that you can read, edit, and version control. Simple, transparent, and debuggable.
For more on the memory system, see file-backed memory guide and memory search configuration.
Multi-Channel Messaging
One agent, every platform. OpenClaw connects to:
- Discord β full server integration with channel-specific behavior
- Telegram β personal bot or group chat
- WhatsApp β via linked device (QR code pairing)
- Signal β privacy-focused messaging
- Email β Gmail integration for inbox monitoring
- Web UI β built-in Control UI at port 3000
The agent maintains context across channels. Tell it something on Telegram, reference it later on Discord β it remembers.
See the channel setup guide for detailed configuration.
Tool Use: What OpenClaw Can Do
OpenClaw is not just a chat interface. It has access to tools:
File Operations
Read, write, and edit files in your workspace. Create scripts, update configs, manage documentation.
Shell Execution
Run commands on the host machine. Git operations, system monitoring, deployment scripts, and anything you would do in a terminal.
Web Access
Search the web, fetch and read web pages, and extract information. Research topics, check documentation, and monitor websites.
Browser Automation
Control a web browser for tasks that need JavaScript rendering β fill forms, navigate SPAs, and take screenshots.
Node Control
Manage paired devices (phones, Raspberry Pis) β camera snapshots, screen recording, location, notifications, and remote command execution.
Messaging
Send messages proactively, create polls, react to messages, manage channels β the agent can participate in conversations as a full member.
Real-World Use Cases
Personal Knowledge Management
OpenClaw reads your files, remembers your decisions, and helps you find things you discussed weeks ago. It curates your memory files over time, acting as a persistent second brain.
Home Automation
Connected to Home Assistant, OpenClaw can control lights, check security cameras via Frigate, manage NAS storage, and monitor your UPS power.
Development Assistant
It reads your codebase, runs tests, commits changes, and pushes to Git. I use it to manage this very website β it writes blog posts, generates thumbnails, fixes broken links, and deploys changes.
Communication Hub
Monitor email, respond to messages across platforms, schedule meetings, and manage your calendar. One agent handling all your communication channels.
Proactive Monitoring
Heartbeat checks run periodically β the agent checks email, calendar, weather, and project status, then notifies you only when something needs attention.
Hardware Options
OpenClaw runs on anything that runs Docker:
| Hardware | Cost | Best For |
|---|---|---|
| Raspberry Pi 5 | $80-120 | Budget always-on agent |
| Mac Mini M4 | $499+ | Power users, local LLM option |
| VPS (2GB RAM) | $5-10/mo | Remote access, always-on |
| Kubernetes | Varies | Production scale |
See the hardware comparison guide and the Raspberry Pi budget setup.
Cost: What It Actually Costs to Run
OpenClaw itself is free (open source). Your costs are:
- LLM API calls: $5-30/month depending on usage and model choice
- Hardware: One-time (Pi/Mac) or $5-10/month (VPS)
- Optional: Local LLM with Ollama = $0 API costs (but needs decent hardware)
For a detailed comparison of API vs local models, see the honest comparison guide.
Security Considerations
OpenClaw runs on your hardware with your credentials. Security best practices:
- Bind to localhost unless you need LAN access
- Use allowedOrigins to restrict Control UI access
- Keep API keys in config, not in workspace files
- Review agent actions β enable confirmation for external actions (emails, public posts)
- Use Tailscale for secure remote access without exposing ports
The agent follows safety principles: it asks before sending external communications, prefers trash over rm, and will not exfiltrate private data.
Getting Started Today
- Install Docker on your machine
- Run the Docker command above
- Open
http://localhost:3000 - Add your LLM API key in the config
- Start talking β the agent will guide you through setup
The first conversation is special: OpenClaw will ask your name, figure out its own identity, and set up the workspace files. After that, it remembers everything.
Troubleshooting
Common issues and fixes:
- βOrigin not allowedβ β Fix allowedOrigins
- Docker connection refused β Docker networking guide
- API key errors β API key troubleshooting
- Discord intents error β Privileged intents fix
- Gateway startup issues β Health check guide
Related Resources
- OpenClaw CLI Reference
- Config Migration Guide
- Hot Reload Configuration
- VPS Deployment Guide
- OpenClaw on Kubernetes
- OpenClaw Project
About the Author
I am Luca Berton, AI and Cloud Advisor. I run OpenClaw daily and have written 38+ articles on setup, troubleshooting, and advanced use cases. Book a consultation to discuss AI agent deployment for your team.