Getting Started

This page covers the first steps to install OpenClaw and run an initial agent session using the CLI.

Prerequisites

OpenClaw requires Node.js 24 (recommended) or Node 22.19 or later.

Install

Install the CLI globally with npm:

npm install -g openclaw@latest

From a pnpm workspace checkout, run commands directly with:

pnpm openclaw onboard --install-daemon

or

pnpm openclaw setup

The setup variant writes local config and workspace files.

Verify the install:

openclaw --version

Onboard

Run the recommended first-run command:

openclaw onboard

Add --install-daemon to also install a launchd or systemd user service:

openclaw onboard --install-daemon

The command guides you through gateway, workspace, channels, and skills setup. It works on macOS, Linux, and Windows. Companion apps are available for Windows, macOS, iOS, and Android nodes.

Start the Gateway

If you did not install the daemon, start the gateway in the foreground:

openclaw gateway

Common flags include port and bind address:

openclaw gateway --port 18789 --bind lan

Check status:

openclaw gateway status

Stop the gateway:

openclaw gateway stop

The gateway serves the Control UI at the default address http://127.0.0.1:18789/.

Send Your First Message

Open the Control UI in a browser:

openclaw dashboard

Or send a message directly from the CLI:

openclaw agent --message "Hello"

Connect Channels

To receive messages from apps such as Telegram or WhatsApp, configure one or more channels after onboarding. See the Channels page for per-channel setup steps.

Basic Configuration

Configuration lives at ~/.openclaw/openclaw.json. Inspect or change values with the config subcommand:

openclaw config get agents.defaults.workspace
openclaw config set agents.defaults.heartbeat.every "2h"
openclaw config unset plugins.entries.brave.config.webSearch.apiKey

See Configuration for the full schema and validation rules.

Diagnostics

Run the doctor command after upgrades or when the gateway refuses to start:

openclaw doctor

Add --fix (and optionally --yes) to repair last-known-good config, prefixed entries, or certain runtime issues:

openclaw doctor --fix

Next Steps