Updated April 2026 15 min read Open source | free

Guide OpenClaw the complete
A personal AI assistant that runs on your machine, 24/7

OpenClaw is an open-source personal AI assistant that runs locally on your machine. It connects to WhatsApp, Telegram, and Discord — and from there controls your entire computer: managing emails, scheduling meetings, running scripts, browsing the internet, and building automations.

50+
Integrations
100%
Local privacy
24/7
Runs in the background

What is OpenClaw?

OpenClaw is an open-source project created by Peter Steinberger — a developer who wanted a real AI assistant that works like a "background coworker". The idea is simple: an AI that has eyes and hands — sees your screen, downloads emails, runs scripts, and performs tasks in the real world.

Unlike ChatGPT or Claude, which you talk to in a browser, OpenClaw runs locally on your machine — the data doesn't leave to external servers, it works even without an internet connection (with a local model), and you send it messages through apps you already have: WhatsApp, Telegram, Discord.

psychology
A definition: "a model with eyes and hands at your desk"

Peter Steinberger described OpenClaw as "a smart language model that sits at your desk — sees the screen, types, clicks, sends emails and manages the calendar. Like a personal clerk who works 24/7 and never gets tired."

What's the difference between OpenClaw and others?

Criterion OpenClaw ChatGPT Claude
Runs locally ✓ Yes ✗ No ✗ No
Sends messages via WhatsApp ✓ Yes
Computer control ✓ Full Partial Computer Use
Persistent memory ✓ 24/7 Limited Projects
Cron Jobs and automation ✓ Built-in
Open source and free ✓ Yes ✗ Paid ✗ Paid
AI model Claude / GPT / local GPT only Claude only

Supported messaging apps

chat
WhatsApp
Most convenient
send
Telegram
Recommended for developers
headset_mic
Discord
For gamers and communities
work
Slack
For business use
lock
Signal
Maximum privacy
apple
iMessage
Mac only

Installation & Setup — step by step

OpenClaw runs on macOS, Windows and Linux. Installation requires Node.js and Git, and setup takes about 15 minutes.

Prerequisites

Step 1 — clone the project

# clone the repo
git clone https://github.com/steipete/OpenClaw.git
cd OpenClaw

# install dependencies
npm install

Step 2 — set environment variables

Create a .env file in the project directory:

# AI key — choose at least one
ANTHROPIC_API_KEY=sk-ant-api03-...
OPENAI_API_KEY=sk-proj-...

# default model (Claude recommended)
DEFAULT_MODEL=claude-3-5-sonnet-20241022

# language and region
LANGUAGE=he
TIMEZONE=Asia/Jerusalem

Step 3 — set up an initial identity

OpenClaw requires you to define an "identity" — who you are, what it needs to know about you, and how it should behave. This is saved in a identity.md:

# identity.md — an example

## Who I am
My name is John Doe. A Full Stack developer working from home in Tel Aviv.
Working on a B2B SaaS startup. English is my native language.

## Schedule
- working hours: 09:00-18:00, Sun-Thu
- weekly team meeting: Monday 10:00
- sprint: two weeks

## Tools I use
- Gmail (work): john@startup.example
- GitHub: @israel-dev
- Notion: project management
- Slack: dev team

## Preferences
- short, to-the-point answers
- prefer English, with technical terminology in English
- don't ask for approval on routine tasks

## What not to touch
- don't send commercial emails without approval
- don't delete files without explicit approval

Step 4 — run

# start OpenClaw
npm start

# or in the background (recommended)
npm run start:background

# check that it's running
npm run status
lightbulb
Run as a LaunchAgent on Mac (starts automatically with the machine)

Add OpenClaw to launchctl so it starts automatically with the Mac: npm run install:launchagent. From now on OpenClaw runs in the background 24/7.

Connecting WhatsApp & Telegram

OpenClaw's main interface is your messaging apps. You talk to it on WhatsApp like you'd talk to a friend — and it performs actions in the real world.

Connecting Telegram (the fastest)

Telegram is the simplest way to start:

1
Create a Bot in Telegram
Open @BotFather in Telegram, send /newbot, and give the bot a name. You'll get a Token.
2
Add to the .env file
TELEGRAM_BOT_TOKEN=7614939069:AAGWer...
TELEGRAM_CHAT_ID=123456789  # your ID
3
Restart and send "hi"
After npm restart, send a message to your bot. OpenClaw will respond within a second.

Connecting WhatsApp

Connecting WhatsApp is more complex because WhatsApp doesn't provide an official API. OpenClaw useswhatsapp-web.js — a library that emulates the WhatsApp Web interface:

# in the .env file
WHATSAPP_ENABLED=true
WHATSAPP_SESSION_DIR=./whatsapp-session

# start with a QR code
npm run connect:whatsapp

A QR image will appear — scan it with WhatsApp on your phone (like connecting WhatsApp Web). From that moment, OpenClaw "sits" in your WhatsApp account and listens for messages.

security
Recommended: a separate phone number for OpenClaw

For the WhatsApp connection it's recommended to use a separate SIM (or a cheap eSIM) rather than your main number. That way OpenClaw won't get mixed up with your personal messages, and you'll control permissions better.

First commands to test

Send OpenClaw a message on Telegram/WhatsApp:

A basic test
"What's your status?"
You'll get a report on what it's connected to
An email test
"How many unread emails do I have?"
It will request Gmail permissions the first time
Calendar
"What do I have on my calendar tomorrow?"
Connects to Google Calendar
A system command
"How much free memory is on the computer?"
Runs a Shell command and returns the result

Capabilities & Skills — what OpenClaw can do

OpenClaw comes with over 50 built-in integrations. Here are the most important for everyday use:

mail Email management — Gmail and Outlook
A daily summary"Summarize the important emails from today" — get a short digest on WhatsApp every morning
Inbox cleanup"Unsubscribe from everything I haven't opened in 30 days" — finds unsubscribe links and clicks them
Writing an email"Email yoav@startup.example that I'll make the meeting" — writes and sends on your behalf
Labeling and sorting"Move all emails from domain.com to the Clients folder" — sets up filters automatically
calendar_month Calendar — Google Calendar
Scheduling a meeting"Schedule a standup meeting with Sarah on Wednesday at 10:00"
A smart reminder"Remind me 30 minutes before every meeting to summarize the topics"
Optimization"Find me a free slot for a 2-hour meeting outside peak hours"
A weekly roundup"What do I have this week? Give me an organized summary"
computer Computer control — Shell, Files, Browser
Shell commands"Run npm test in the project folder and report the results"
File management"Find all the PDFs in my Downloads older than 6 months"
Browsing"Check if my site is up and send me a link to the report"
Screenshot + analysis"Take a screenshot and tell me if there are errors in the console"
code Dev tools — GitHub, Obsidian, Spotify and more
GitHub"Summarize the open PRs in my repo"
Obsidian"Add a note to the journal that I finished Feature X today"
Spotify"Play a focus playlist and auto-mute at 17:00"
Web Scraping"Check every day whether the price of X dropped below $60"

Memory & identity — how OpenClaw remembers you

One of OpenClaw's big advantages is Persistent memory — it doesn't "forget" between conversations. It saves everything: your preferences, the decisions you made, the projects you worked on.

The memory layers

person
Identity
Who you are, your role, language and communication preferences. Saved inidentity.md.
history
Conversation history
OpenClaw keeps a log of all conversations. You can ask "what did we say about the project a week ago?"
bookmark
Facts & Preferences
When you say "remember that..." it saves it in structured memory. For example: "remember that the client prefers short answers".
work
Project context
You can define "projects" with separate context — like Projects in Claude but local.

Useful memory commands

# saving a fact
"Remember that client ABC pays on the 15th of the month and prefers short summaries"

# querying memory
"What do you know about my project with Yoav?"

# clearing
"Forget everything you said about the old project"

# exporting
"Export all my memory to JSON"

Automations & Cron Jobs — working in the background

OpenClaw can perform tasks automatically without your prompt — just like Cron Jobs, but with natural language.

Setting up an automation

You simply tell it in natural language:

Example 1 — a morning briefing
"Every morning at 8:00 send me on Telegram: a summary of new emails + today's meetings + the weather in Tel Aviv"
OpenClaw sets up a cron job, runs every morning, and sends an organized message.
Example 2 — price monitoring
"Check every hour if the stock price dropped below $30 and send me an alert"
It browses the site, checks the price, and sends an alert only when there's a change.
Example 3 — a GitHub Monitor
"Every hour check if there's a new PR in my repo, and summarize it for me"
Connected to the GitHub API, responds to new PRs in real time.

Managing automations

# show all active automations
"Show me all the cron jobs I set up"

# stop an automation
"Stop the morning briefing automation"

# edit
"Change the briefing time from 8:00 to 7:30"

# run manually to test
"Run the price-monitoring automation now"

Advanced automations — Multi-Step

OpenClaw supports multi-step automations that run different tools in a specific order:

# a complex automation
"Every Sunday at 09:00:
1. Pull all the GitHub PRs opened this week
2. Check if there are failing tests
3. Write a weekly summary to Notion
4. Send me on Telegram with links to items that need attention"

10 practical uses

OpenClaw works well because you can talk to it in natural language, it understands your context, and it connects to the tools we all use.

trending_up
Freelancer management
"Every day at 17:00 send me a summary of working hours per client + calculate how much I earned this week"
apartment
Small business management
"Check every morning if new orders arrived at the store and send confirmations to customers automatically"
school
Students
"Every evening at 21:00 send me a reminder of what's tomorrow + check if there are submissions this week"
health_and_safety
Health and fitness
"Check every evening if I hit 8,000 steps and if not — send an encouraging message"
payments
Financial management
"On the 1st of every month send me an expense summary + compare to the previous month"
home
Smart home
"When I send 'left' — turn off all the lights and stop the living-room AC"
code
DevOps and development
"On every failed deploy — send me an alert with the log and perform an automatic rollback"
newspaper
A personal newsletter
"Every morning at 7:00 send me the 5 most important tech headlines from Hacker News"
travel_explore
Travel
"Track flight prices to NYC and message me when there's a price under $600"
groups
Community management
"Monitor my Discord and send me a summary of questions that went unanswered"

Tips & tricks — getting the most out of it

1. Talk to it naturally — it understands well

OpenClaw passes your instructions to Claude or GPT, which have full language support. There's no need to switch languages when giving commands. File names, folders and emails work too.

2. Build custom "Skills"

OpenClaw lets you write Skills — snippets of Python code that extend its capabilities:

# skills/check_price.py
import requests

def check_price(product_name: str, max_price: float) -> str:
    """Checks the price of a product on Amazon"""
    # search Amazon
    response = requests.get(f"https://api.example.com/price/{product_name}")
    current_price = response.json()["price"]

    if current_price <= max_price:
        return f"✅ The price dropped to ${current_price}! (your max: ${max_price})"
    else:
        return f"Current price: ${current_price} (still above ${max_price})"

After saving the Skill, you can ask: "Check the price of the iPhone 16 — message me when it's under $900"

3. Parallel running — multiple Instances

You can run several instances of OpenClaw in parallel — one for work, one for home, one for a specific project. Each with a separate identity, memory and integrations.

# Instance 1 — work
PORT=3001 CONFIG_DIR=./work npm start

# Instance 2 — personal
PORT=3002 CONFIG_DIR=./personal npm start

4. Safety — set Guardrails

OpenClaw can do a lot — so it's important to set clear boundaries in identity.md:

# identity.md — a safety section

## What not to do without explicit approval
- don't send emails to external clients
- don't delete files (only move to trash)
- don't make purchases over $30
- don't change system settings
- always ask "are you sure?" before irreversible actions
warning
The golden rule: "Sandbox Mode" for the first two weeks

For the first two weeks, set in identity.md: "before any external action (sending an email, deleting a file, updating the calendar) — stop and ask me for approval". Once you feel comfortable with the tool, relax the restrictions gradually.

5. Logging and tracking — know what OpenClaw is doing

# watch the log in real time
npm run logs

# log of the last 24 hours
npm run logs:day

# check API cost (how many tokens you used)
npm run usage:today

6. Upgrade the model by task

OpenClaw lets you set a different model per task type — a cheap, fast model for simple questions, a strong model for complex tasks:

# config/models.yml
default: claude-3-5-haiku-20241022      # fast and cheap — for everyday commands
complex_tasks: claude-3-5-sonnet-20241022  # strong — for analysis and writing
coding: claude-3-5-sonnet-20241022         # code — Sonnet is excellent for this
local: llama3.1:8b                          # local — Ollama, full privacy
rocket_launch

Ready to start?

OpenClaw is one of the most exciting projects in the world of personal AI. It's not just another chatbot — it's an assistant that actually does work. Open source, free, and running locally.