What you can do with it, by example.
OpenClaw is a personal AI assistant that runs on your laptop. You talk to it through Discord, Telegram, Slack, or WhatsApp. It uses Claude under the hood. Everything stays on your machine.
You write a short config: pick a model, list what tools it can use, give it a personality. That's it — no code, no deployment.
"chef" → Sonnet, tools: [recipe-search], identity: "friendly cook""reviewer" → Opus, tools: [file-read, git-diff], identity: "senior engineer"Message your agent on Telegram. Or Discord. Or Slack. OpenClaw receives the message, runs Claude with your conversation history, and sends the reply back to whatever app you used.
Assign specific people, servers, or groups to specific agents. Everyone else hits a default. Just config, no code.
chef agentreviewer agentgeneral agent (default)
Need your agent to check the weather, search files, or hit an API? Install a plugin. It registers its tools in one function call, and any agent you allow can use them.
get_forecast"weather" to your chef agent's skill listAn agent can spawn another agent mid-conversation. The child does its job, and the result gets injected back automatically.
researcher to analyze a repo.reviewer to read the code, and summarizer to condense findings.Hooks run automatically when things happen — a message arrives, an agent starts up. You don't call them; they fire on their own.
session-memory hook fires after every message.runEmbeddedPiAgent is an in-process call, not a proxy. This means one process handles everything (simple, but single point of failure). Docker sandboxing exists but defaults to subagents-only. For multi-tenant or untrusted deployments, see the systems comparison.