agent-platform · verified 2026-09-01 ✓ Verified

openclaw

Verified2026-09-01: npm Tsinghua-mirror install + gateway start verified; cron + multi-channel + browser automation (Node 22.22.3+).

Self-hosted personal AI assistant: local Gateway, chat channels, cron automations and browser automation.

Category: agent-platform Complete entry Security: Deep audit pending Domain: other Verified 2026-09-01 v2026.8.1~2026.8.1 Conflicts: none Source: Trove (independent adaptation, unofficial)

Install: npm_config_registry=https://registry.npmmirror.com npm install -g openclaw@latest --no-audit --no-fund

What you are dealing with

You want an AI assistant that lives on your own machine: reachable from multiple chat channels (Telegram/WhatsApp/Slack/Discord...), able to run scheduled jobs (daily 9am digest), drive a browser, and keep cross-session memory - instead of opening a web chat every time. OpenClaw does exactly that: a local Gateway (control plane) + CLI/TUI/web Control UI + channel integrations + cron automations, all in one self-hosted personal AI assistant platform (GitHub 388k stars, 2026 top open-source project, formerly Clawdbot). Use it when: you want a persistent local AI assistant you can drive from messaging apps (multi-channel); you need scheduled/triggered automation (daily jobs, periodic digests, reminders) - openclaw cron is built in; you want AI to operate a browser (form filling, posting, cross-page tasks) - openclaw browser is built in; you want the skills/plugin ecosystem (ClawHub 54k+ skills) to extend the assistant. Do not use it for: one-off chat sessions (use a chat client); single-command coding utilities (that is a CLI tool's job); environments sensitive to Node runtimes / persistent services (it is a Node platform with a resident Gateway).

Path: Quick fix (one command to install and verify) → Step by step (Node version check + isolated install) → How to confirm it works → FAQ (Node version too old).

Why it works this way

OpenClaw uses a Gateway architecture: a resident local Gateway process is the control plane (sessions, tools, events, channel connections); the CLI/TUI/web Control UI all talk to it. Channels bring the assistant to WhatsApp/Telegram/Slack/Discord etc.; the cron/automations subcommands run scheduled jobs on the Gateway; the browser subcommand manages a dedicated browser instance. The model layer supports hosted and local providers (ollama can be plugged in). What it touches: an npm global package (Node runtime) + ~/.openclaw/ workspace created by first-run openclaw onboard (config + database + logs) + optional systemd user service (daemon). Zero-account policy: onboarding/channel setup needs model API keys or chat accounts; this guide covers install and CLI verification only and touches no accounts.

Quick fix (no explanations, one command to install and verify)

note: Node must be >=22.22.3 (or 24.15.0+ / 25.9.0+); if not, see "Dependency warnings" for the isolated-deploy workaround. Command uses the Tsinghua npm mirror; verified 331 packages in 9s
npm_config_registry=https://registry.npmmirror.com npm install -g openclaw@latest --no-audit --no-fund && openclaw --version

预期输出: OpenClaw 2026.8.1 (ea80657) (version follows latest; if npm rejects the Node version, see Step 1)

Step by step

Step 1: Check the Node version (prerequisite)

Stuck here: node: command not found -> install Node first (apt/nvm/official binary); version <22.22.3 -> do NOT touch the system Node, use the isolated deploy in Dependency warnings (verified path here: /opt/node-v24.15.0-linux-x64/bin prepended to PATH).

node --version

预期输出: v22.22.3 or newer (any of 22.22.3+ / 24.15.0+ / 25.9.0+). Verified pit: system Node v22.22.1 is rejected (patch-level shortfall); npm install fails with [openclaw] detected Node 22.22.1 - do not touch the system Node, use the isolated deploy (see Dependency warnings).

Step 2: Install (Tsinghua mirror)

Stuck here: [openclaw] detected Node xx -> Node version unmet, go back to Step 1 for the isolated deploy; enoent spawn sh -> PATH is broken (check /usr/bin, /bin are on PATH); timeout -> if the mirror is unreachable try registry.npmjs.org directly (depends on network).

npm_config_registry=https://registry.npmmirror.com npm install -g openclaw@latest --no-audit --no-fund

预期输出: changed 331 packages in 9s (package ~204MB unpacked; 9s was cache-accelerated, first install may take 1-3 minutes)

Step 3: Verify the install

Stuck here: openclaw: command not found -> confirm the global bin is on PATH (npm prefix -g; prepend the isolated Node bin when used).

openclaw --version && openclaw --help | head -20

预期输出: first line OpenClaw 2026.8.1 (ea80657), then the command surface (acp/agent/channels/cron/gateway/memory/models/browser...)

Step 4: Check Gateway status (diagnostics only, no service start)

Stuck here: connection errors -> config missing before onboarding is normal, not a fault; full use requires openclaw onboard (interactive wizard + API key; zero-account policy, not covered here).

openclaw gateway status

预期输出: Service: systemd user (disabled) + Gateway: bind=loopback (127.0.0.1), port=18789 + Dashboard: http://127.0.0.1:18789/. Config missing before onboarding is normal - full first use requires openclaw onboard (interactive wizard, needs a model API key; not covered in this guide).

How to confirm it works

  • openclaw --version prints a version (2026.8.1) without error;
  • openclaw --help lists the full command surface (cron/browser/channels/gateway all present);
  • openclaw gateway status exits 0 and prints diagnostics.
  • Full usability (chat/scheduling) requires onboarding with a model - that step needs an API key and was not tested here (zero-account policy); we do not fake it.

Other environments

EnvironmentBehaviorNotes
Linux (tested here)npm global install + full CLI surface worksverified with isolated Node 24.15.0
macOSofficial installer or npm; homebrew has node@24not tested
Windowsofficial PowerShell installer (install.ps1); npm needs a supported Nodenot tested
Docker/Nixdocumented deployment paths (docs.openclaw.ai/install)not tested
System Node too oldnpm postinstall rejects the installhit and fixed here via isolated deploy

Daily usage

Prerequisite note: all cron/browser/channels subcommands run through the local Gateway. First use requires openclaw onboard (interactive wizard + model API key / chat account; no-account policy — not tested here). Without credentials the commands fail with an explicit error (real output below) — that is normal "not onboarded yet", not a fault. Commands and expected outputs below are from the verified command surface.

Scheduled jobs (cron / automations)

note: command surface verified; actual execution requires Gateway credentials (after onboard)

List current automations. Real output without credentials:

openclaw cron list

Expected output: gateway cron.list requires credentials before opening a websocket Fix: configure gateway.auth token/password, pair this device, or pass --token/--password. Config: ~/.openclaw/openclaw.json Meaning: not onboarded yet / device not paired. Configure gateway.auth (token/password) or pair the device, then retry; or run openclaw doctor first for an overall status view. cron subcommands (verified command surface, usable after onboard): add create, list list, show/get inspect one, edit modify, enable/disable toggle, rm remove, run run once now, runs run history, status scheduler status, scratch read/write private scratch. Parameter details: docs.openclaw.ai/cli/cron.

Browser automation (browser)

note: command surface verified; execution requires Gateway credentials

Check browser plugin readiness. Real output without credentials:

openclaw browser doctor

Expected output: FAIL gateway: GatewayCredentialsRequiredError: gateway browser.request requires credentials before opening a websocket Fix: configure gateway.auth token/password, pair this device, or pass --token/--password. Config: ~/.openclaw/openclaw.json Meaning: same as above — all browser subcommands go through the Gateway and report the credentials error until onboarded. browser subcommands (verified command surface, usable after onboard): create-profile/delete-profile manage dedicated browser profiles, click/click-coords/fill/drag/highlight page interaction, evaluate run a function against the page, close close a tab, console/errors page logs, download save a download, batch run a batch of actions, doctor readiness check. Parameter details: docs.openclaw.ai/cli/browser.

Channels (channels)

note: command surface verified; connecting channels needs chat accounts (no-account policy — not tested)

List configured channels. Real output when none configured:

openclaw channels list

Expected output: Chat channels:

  • no configured chat channels (run openclaw channels list --all to see installable channels)

Model provider usage moved out of channels list — see openclaw status or openclaw models list. List the installable channel catalog:

openclaw channels list --all

Expected output: installable channel list (telegram/whatsapp/slack/discord etc., as printed) channel subcommands (verified command surface): add add/update a channel, login/logout link/unlink sessions, remove delete, status --probe status probes, logs channel logs, capabilities provider capabilities. Non-interactive example (from command-surface Examples; needs a real token): openclaw channels add --channel telegram --token <token>.

Health check (doctor)

note: command surface verified
openclaw doctor

Expected output: health report (model/gateway/channel config status; unconfigured items before onboard are normal diagnostics)

Uninstall & cleanup

note: uninstall = remove the npm global package; cleanup = delete the workspace (config/database/logs). Stop the daemon first if enabled
npm uninstall -g openclaw --no-audit --no-fund && rm -rf ~/.openclaw

预期输出: npm removal output (removed N packages); ~/.openclaw gone means clean. Warning: deleting the workspace loses all config/memory/channel bindings - run openclaw backup first if you need to keep anything

Dependency warnings

note: version/environment/conflict four-state; pair states follow the conflict matrix
  • Version: Node >= 22.22.3 / 24.15.0+ / 25.9.0+ (npm 12+ recommended; on npm 11.15 and earlier omit --allow-scripts). Verified: Node 22.22.1 rejected.
  • Environment: Linux/macOS/Windows supported; a resident Gateway needs systemd user or equivalent service management (daemon subcommand); ~1GB disk (204MB unpacked package + workspace/log growth).
  • Conflict (matrix): adjacent to moltis (Rust single-binary personal agent server) - different command names, non-overlapping write surfaces (each has its own ~/.config dir), static judgment: can coexist; no write-surface overlap with CLI tools like herdr/ruflo/claude-mem. Pair states: see the conflict matrix page.
  • Network: npm install must use a mirror (official registry is slow directly); first onboarding pulls models/connects channels depending on network (not covered here, zero accounts).
  • Security: treat inbound messages as untrusted input; DM channels pair by default (openclaw pairing approve <channel> <code>); tools run on the host for the main session unless sandboxed (configure sandboxing before exposing the Gateway remotely).

FAQ

  • Q: npm says [openclaw] detected Node 22.22.1 - what now?
  • A: Your system Node does not meet 22.22.3+. Do not touch the system Node - deploy a supported Node (e.g. 24.15.0) to a separate directory and prepend its bin to PATH for the npm install (verified path here: /opt/node-v24.15.0-linux-x64/bin). Run openclaw with that PATH prefix afterwards.
  • Q: openclaw gateway status shows config missing - is it broken?
  • A: No. That is the normal state before onboarding; onboarding creates ~/.openclaw/openclaw.json and configures the Gateway.
  • Q: openclaw command not found after install?
  • A: Check the global bin is on PATH (npm prefix -g shows the global dir); with an isolated Node deploy, make sure its bin prefix is on PATH.
  • Q: Does onboarding require an API key? Can I use local models?
  • A: Officially both hosted and local providers are supported (ollama and other local models can be configured). Onboarding is an interactive wizard; not tested here (zero accounts); details in docs.openclaw.ai/concepts/model-providers.
  • Q: Do scheduled jobs need the Gateway always running?
  • A: Yes - cron/automations run on the Gateway and need the daemon resident. Not tested here (zero accounts + no persistent processes), honestly marked.
  • Q: What is the difference between OpenClaw and moltis?
  • A: OpenClaw = Node-based complete personal AI assistant (multi-channel + cron + browser + skills ecosystem); moltis = Rust single-binary lightweight agent server (security-first). Adjacent positioning, different form: choose by "complete assistant vs lightweight server".
Verification Evidence
  • Evidence file: local repro log 2026-09-01 (2026-09-01, WSL Ubuntu root)
  • Verified: isolated Node 24.15.0 deploy (npmmirror 31MB/10s), Tsinghua-mirror npm install (331 packages/9s), openclaw --version (2026.8.1), --help command surface, gateway status (loopback 18789, exit 0)
  • Not tested (honestly marked): onboard wizard (needs API key, zero accounts), resident Gateway service, channel integration, actual cron/browser execution (command surface visible but requires onboarding)

← Trove | evidence & precheck records kept locally; conclusions and sources published here