Skip to content

OpenClaw Agent: Beginner Guide to a Safer Setup

A beginner's guide to the OpenClaw agent: what it actually does, how to install it, and which skills to leave switched off on day one.

9 min readBeginner

You’ve got Claude or GPT in one tab, your inbox in another, your calendar somewhere, and a messaging app on your phone. The AI gives advice but can’t actually do anything. You context-switch a dozen times to act on its suggestions. That’s the problem the OpenClaw agent tries to solve – turning a frontier LLM into something that can read your email, check your calendar, and reply to you in Telegram or Discord, without you opening a single browser tab.

It mostly works. It’s also one of the riskier things you can install on a personal machine, and almost no beginner tutorial says that part out loud.

Why the usual “agent” options fall short for this

Cloud agents (ChatGPT’s tasks, Claude’s projects, off-the-shelf SaaS) are safer but can’t touch your local files, your shell, or your real Gmail with anything resembling the access you’d give a coworker. n8n and Zapier are great for fixed workflows but feel weird the moment you want to talk to them. And rolling your own with raw API calls means writing the same glue every weekend.

OpenClaw sits in the awkward middle. A free, open-source agent that runs locally (per KDnuggets, March 2026), it connects LLMs to real software via simple chat commands – and it talks to you over messaging channels like Telegram or Discord while running on your machine with full system access: email, financial platforms, the local filesystem. That “full system access” is the feature and the catch.

The minimum safe install

Skip the 11-step “production-ready” guides for now. Here’s the smallest setup that gets you a working agent you can trust enough to leave running.

Prerequisites. As of the official GitHub README (last checked June 2026): Node 24 is recommended, or Node 22.19+ at minimum. You’ll need an API key from Anthropic, OpenAI, or Google. Windows users should set up WSL2 – the README lists it as strongly recommended over native Windows.

# install
npm install -g openclaw@latest

# run the onboarding wizard and install the background daemon
openclaw onboard --install-daemon

# sanity-check your config for risky DM policies
openclaw doctor

The onboard command walks you through the gateway, workspace, channels, and skills one step at a time. Pick one channel. Multi-channel routing is genuinely cool but it’s also more attack surface and more places to debug when something silently breaks.

Which channel to pick first

OpenClaw supports a long list of messaging platforms – WhatsApp, Telegram, Slack, Discord, Google Chat, Signal, iMessage, IRC, Microsoft Teams, Matrix, Feishu, LINE, and more, per the official README. Honestly, only three are worth considering for your first run:

  • Telegram – easiest. Make a bot with @BotFather, paste the token, done. Best for solo use where you mostly DM yourself.
  • Discord – most capable. Slash commands, threads, buttons. But it has one gotcha that bites everyone (see below).
  • WhatsApp – connects via QR pairing. Works, but the channel docs note it uses an unofficial pairing library – worth checking whether your WhatsApp version is still compatible before committing to it.

The Discord gotcha: you have to explicitly enable “Message Content Intent” (under Privileged Gateway Intents in the Discord Developer Portal) or the bot receives messages but cannot read what anyone typed. This is a Discord requirement, not an OpenClaw limitation – the OpenClaw Discord docs flag it as the most common day-one setup failure. Miss the toggle and your bot sits there looking healthy while ignoring every message you send.

The part nobody warns you about: skills

Skills are the bundled and third-party extensions that give your agent capabilities – reading your inbox, sending messages on your behalf, executing shell commands. Most tutorials treat the skill list like a buffet. It isn’t.

There’s a meaningful difference between two things that sound identical:

What you install What it can actually do
The built-in message tool Sends a message out via a channel. That’s it.
A channel skill (wacli, imsg, slack, discord) Gives OpenClaw deep access to that platform – searching message history, syncing conversations, managing channels. Full access to your data on that platform, not just sending. (Source: yu-wenhao.com config analysis)

Installing the WhatsApp skill is not “connecting WhatsApp.” It’s handing the agent the ability to read every chat you’ve ever had on WhatsApp. That might be what you want. It might absolutely not be.

The official README’s typical sandbox default: allow bash, process, read, write, edit, sessions_list, sessions_history, sessions_send, sessions_spawn; deny browser, canvas, nodes, cron, discord, gateway. Leave it that way until you have a specific use case for each thing you turn on.

Worth doing: Use the allowBundled whitelist instead of the default “load everything bundled” behavior. If you can’t name a scenario for a skill in one sentence, it stays off.

A real example: morning brief, without giving away the keys

Here’s a concrete workflow that’s useful but doesn’t require the dangerous skills. OpenClaw on Telegram, pointed at Claude, with three things wired up: calendar (read-only), an RSS reader, and the message tool restricted to sending only to yourself.

At 7 AM a cron job tells the agent: “Summarize my calendar for today and three headlines I’d care about, send to me on Telegram.” The agent reads your calendar API, pulls RSS, writes a five-line message, posts it to your own chat. You read it on your phone before getting out of bed.

Nothing the agent does here is irreversible – and that’s the whole point of this as a starter project. It reads, summarizes, sends a message to you. If it hallucinates or gets prompt-injected by a malicious RSS item, the worst case is a weird message. Nobody else sees it.

Compare that with the popular tutorial example of “AI agent that replies to my emails.” Same setup, but now a prompt injection in any incoming email can make your agent send things in your name. Messages sent in your name by AI can’t be unsent – if it misunderstands context, uses the wrong tone, or gets tricked into sending something, you bear the consequences.

Edge cases the docs don’t lead with

The exec allowlist is leakier than it looks. A Texas A&M security taxonomy reviewed 190 advisories filed against the framework. Turns out the exec allowlist – the framework’s primary command-filtering mechanism – embeds a closed-world assumption that command identity is recoverable by lexical parsing. That assumption breaks down via line continuation, busybox multiplexing, and GNU long-option abbreviation. Translation: just because a command isn’t on the allowlist doesn’t mean a creative LLM (or attacker) can’t get it to run. Run OpenClaw on a machine where you’d be okay if something escaped the sandbox.

Pairing has hard limits. Per the official channel docs: pairing codes expire after 1 hour, and pending DM pairing requests are capped at 3 per channel. If your pairing keeps “not working,” you’re probably hitting one of these – not a config error.

Missing config blocks fail closed, silently. Also from those channel docs: if a provider block is missing entirely, runtime group policy falls back to allowlist (fail-closed) with only a startup warning. The agent looks alive but ignores groups. Check the startup log before you debug anything else.

Honest tradeoffs

Cisco’s AI security team tested a third-party OpenClaw skill and found it performed data exfiltration and prompt injection without user awareness – the skill repository, they noted, lacked adequate vetting. One of the project’s own maintainers warned that “if you can’t understand how to run a command line, this is far too dangerous of a project for you to use safely” (both via Wikipedia citing primary sources).

That doesn’t mean don’t use it. The right beginner setup looks less like “install everything and see what happens” and more like: one channel, one model, sandbox defaults, one boring workflow that only talks to you, run it for a week before adding anything.

I’ve been running it that way for a month. The morning brief works. The agent has not deleted anything. But I also haven’t given it write access to my email, and I don’t plan to until I understand the threat model better – which is probably the right disposition for most people starting out.

FAQ

Is OpenClaw really free?

The software is open source and free. You still pay for the LLM API you point it at.

Can I use a local model instead of paying for Claude or GPT?

Yes, but the honest answer is: it depends heavily on which local model you use and what tasks you’re running. Smaller models tend to struggle with multi-step agent reasoning – you’ll notice it quickly if you try anything beyond simple queries. Most people experimenting with local inference end up hitting model-size limits before they hit hardware limits. If you go this route, test with a simple single-step task first and see whether the outputs are reliable before wiring up anything with real data access.

Why does my Discord bot connect but never reply?

Nine times out of ten: the Message Content Intent isn’t enabled in the Discord Developer Portal. It’s not on by default, Discord treats it as a privileged permission, and OpenClaw can’t tell you it’s missing – the bot just silently ignores every message. Flip the toggle, restart the gateway.

What to do next

One terminal. npm install -g openclaw@latest, then openclaw onboard --install-daemon. Pick Telegram. Wire up exactly one workflow that only sends messages to yourself – the morning brief above is a fine starting point. Run it for a week without adding anything.

After that week, before you turn on any new skill: ask yourself what the worst case looks like if that skill misbehaves. If the answer is “a weird message I’ll see” – fine. If the answer is “an email sent in my name” or “files deleted” – think carefully. The agent is only as safe as the permissions you hand it.