Repo Year in Review

openclaw/openclaw

Open-source AI assistant that runs on your own devices and answers in chat channels like Discord, Slack, Telegram and WhatsApp, via one Gateway.

  • 392k GitHub stars
  • TypeScript
  • ⚖️ MIT
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw/openclaw preview image

What it is

OpenClaw is an open-source AI assistant that runs on your own computer and meets you in channels you already use, such as Discord, iMessage, Slack, Teams, Telegram and WhatsApp, plus native apps for macOS, iOS, Android, Windows and Linux. One Gateway runs it as a personal assistant or a shared team deployment. State, memory and credentials stay on your hardware, and models and agent harnesses (Claude, Codex, local models) are swappable plugins.

Who it's for

  • Individuals who want a personal AI assistant running on their own hardware and reachable from their existing chat apps
  • Teams that want a shared assistant deployment, since the same Gateway supports team use and only configuration differs
  • Developers who want to extend an assistant with tools, skills and plugins built on the plugin SDK

Requirements

Requirements

  • Node 24.16+ or 26.1+ (Node 26 recommended) if you install the npm package yourself; the installer scripts provision a supported Node.js runtime when needed
  • macOS, Linux (or WSL2), or Windows for the installer
  • A model provider or local model configured during onboarding (onboarding verifies model access)
  • For development from source: a pnpm workspace; plain npm install at the repository root is not supported

Setup

  1. Install on macOS / Linux / WSL2

    Run the installer script. It provisions a supported Node.js runtime when needed and starts onboarding automatically on a fresh install.

    bash
    curl -fsSL https://openclaw.ai/install.sh | bash
  2. Install on Windows PowerShell

    Run the PowerShell installer.

    powershell
    iwr -useb https://openclaw.ai/install.ps1 | iex
  3. Install via npm (if you manage Node.js)

    For npm 12 or npm 11.16+. On npm 11.15 and earlier, omit --allow-scripts=openclaw.

    bash
    npm install -g openclaw@latest --allow-scripts=openclaw
  4. Run onboarding

    If you installed the package directly with npm, pnpm or Bun, run onboarding to verify model access, create the workspace and configure the Gateway.

    bash
    openclaw onboard --install-daemon
  5. Check the Gateway and open the Control UI

    After onboarding, check status and open the dashboard, then send a message there to confirm the assistant works.

    bash
    openclaw gateway status
    openclaw dashboard

Examples

Verify the Gateway and open the Control UI

bash
bash
openclaw gateway status
openclaw dashboard

What it does: Post-onboarding check: confirms the Gateway is running, then opens the Control UI where you can send a test message.

Approve a pairing request

bash
bash
openclaw pairing approve <channel> <code>

What it does: DM-capable channels pair unknown senders by default; this approves a pending sender using the channel name and pairing code.

Build from source

bash
bash
git clone https://github.com/openclaw/openclaw.git
cd openclaw
pnpm install
pnpm build
pnpm ui:build

What it does: Development setup for the pnpm workspace repository.

Pros & cons

Pros

  • Pro:Runs on your own hardware, with state, memory and credentials kept local
  • Pro:Reachable from 20+ chat channels plus native apps on macOS, iOS, Android, Windows and Linux
  • Pro:Models and agent harnesses are swappable plugins, with support for hosted and local model providers
  • Pro:MIT-licensed with no paid tier, hosted service or token; default telemetry is limited to a daily version check, and anonymous statistics are opt-in

Cons

  • Con:Tools run on the host for the main session unless sandboxing is configured, so extra security setup is needed before exposing it to other users
  • Con:Inbound messages must be treated as untrusted input, and unknown DM senders need pairing approval
  • Con:Source development requires pnpm; plain npm install at the repository root is not supported

Images