OpenClaw

An open-source AI assistant that runs on your own hardware and meets you in Discord, Slack, WhatsApp, iMessage, Telegram, and 20+ other channels, with native apps for every major platform.

390Kstars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
88/100Excellent
Development Activity100
Maintenance100
Community80
Maturity32
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
88/100Excellent
Architecture90
Code Quality92
Innovation78
Learning Curve90

OpenClaw is a self-hosted AI assistant gateway that runs entirely on your own computer and connects to the messaging apps and devices you already use — Discord, iMessage, Slack, Microsoft Teams, Telegram, WhatsApp, Signal, Matrix, and more than 20 other channels — plus native companion apps for macOS, iOS, Android, Windows, and Linux. A single Gateway process acts as the local control plane for sessions, tool execution, and channel connections; the same install works as a personal assistant on a laptop or as a shared team deployment, with configuration as the only difference.

Its defining decision is where things run: state, memory, and credentials stay on the user’s own hardware rather than a vendor’s servers, and the AI model or agent harness (Claude, Codex, or a local model) is a swappable plugin rather than something wired into the core. OpenClaw phones home for nothing beyond an optional daily version check, and feature telemetry is opt-in only. That “trusted gateway, untrusted execution” split extends to how the Gateway treats inbound messages from unpaired senders, and to an optional sandboxing layer for tools that would otherwise run directly on the host.

Extensibility is the other half of the design: 167 extension packages cover model providers (Anthropic, Google, Mistral, Amazon Bedrock, Azure, and dozens more), messaging channels, and device integrations, all built against a documented plugin SDK and distributed independently through ClawHub. Tools, skills, and Model Context Protocol servers extend what the assistant can actually do once it’s connected to a channel.

OpenClaw is stewarded by the OpenClaw Foundation, an independent 501(c)(3) that employs the core engineering team and signs releases; it has no paid tier or hosted product, and is funded by sponsors including Amazon, OpenAI, Red Hat, and the University of Michigan. Originally built for Molty, a fictional lobster AI mascot, by Peter Steinberger (creator of PSPDFKit) and a large open-source community, the project has grown to nearly 390,000 GitHub stars and over 3,300 contributors in under a year.

What You Get

  • A local Gateway process that runs sessions, tools, and channel connections entirely on your own hardware, with no required hosted backend.
  • Native companion apps for macOS, iOS, Android, Windows, and Linux that connect to the Gateway as thin clients and add voice, camera, and screen actions.
  • Ready-made connectors for 20+ messaging channels — Discord, Slack, Microsoft Teams, WhatsApp, iMessage, Telegram, Signal, Matrix, Google Chat, and more.
  • Swappable model provider plugins for Claude, Codex, and local models, so the assistant isn’t locked to one vendor.
  • A documented plugin SDK plus ClawHub distribution for adding new tools, skills, and channel integrations without touching core code.
  • Built-in pairing and approval flows that treat inbound messages from unknown senders as untrusted by default.

Common Use Cases

  • Personal assistant across every chat you use - reach the same assistant from Discord, iMessage, or Slack without juggling separate bots per platform.
  • Self-hosted alternative to hosted AI assistant products - keep prompts, memory, and credentials on your own hardware instead of a vendor’s cloud.
  • Shared team deployment - run one Gateway as a team-wide assistant with per-user pairing instead of standing up separate integrations per tool.
  • Device automation via companion nodes - trigger voice, camera, screen, or local actions on a phone or desktop through the Gateway.
  • Custom AI workflows via plugins - build and publish new tools, skills, or channel connectors on the plugin SDK and share them through ClawHub.

Under The Hood

Architecture The repo is a pnpm workspace monorepo built around a local Gateway (src/gateway/) that acts as the control plane for sessions, agent runtime, and approval flows, while messaging channels and model providers live as independent, isolated packages under extensions/ (167 of them — Discord, Slack, WhatsApp via baileys, Telegram via grammY, Matrix via matrix-js-sdk, Anthropic, Google GenAI, Mistral, Amazon Bedrock, and more) registered against a stable plugin SDK (src/plugin-sdk/) rather than being wired into the gateway core. The entry point (src/entry.ts, node-runtime-recovery.mjs) handles Node runtime negotiation, respawn, and compile caching before handing control to a daemon (src/daemon/) that owns Gateway process lifecycle. Native companion apps (apps/macos, apps/ios, apps/android, apps/linux) connect to the Gateway as thin clients over a defined client protocol (crates/openclaw-gateway-client), keeping the split between a trusted local gateway and untrusted execution baked into the structure rather than bolted on. Swapping a model harness or adding a channel touches only its own plugin package, not the gateway core.

Tech Stack The core is TypeScript on Node.js (24.16+ or 26.1+), built as ESM with tsdown and NodeNext resolution; native platform layers are separate stacks — Swift/SwiftUI for macOS and iOS, Kotlin/Gradle for Android, and Rust crates (openclaw-gateway-client, openclaw-node-host) for cross-platform native hooks. Persistence runs on node:sqlite behind a project-owned shim plus LanceDB for vector/memory storage. The 66 direct runtime dependencies span model SDKs (@anthropic-ai/sdk, @google/genai, @mistralai/mistralai, the AWS SDK for Bedrock), messaging protocol libraries (baileys, grammY, matrix-js-sdk, the Model Context Protocol SDK), and infra (Express, chokidar, execa, croner). Testing runs on Vitest 5 with V8 coverage and Playwright for e2e; linting uses the Rust-based oxlint plus a type-aware tsgolint pass instead of the slower ESLint stack. CI is GitHub Actions with dozens of workflows, including dedicated CodeQL security scans and a pnpm-level minimum-release-age policy with an explicit, dated allowlist ledger for security-patch exceptions.

Code Quality The repository carries an extensive suite of colocated .test.ts files (thousands, sitting directly beside their source files — e.g. agent-list.ts next to agent-list.test.ts), and tsconfig.json enables the strict end of the TypeScript compiler (strict, noUncheckedIndexedAccess, noImplicitOverride, noImplicitReturns) rather than a loose default. Linting combines an extensive oxlint rule configuration with a type-aware tsgolint pass, plus dedicated shellcheck, stylelint, and native-language linters for the Swift and Kotlin layers, backed by baseline files that appear to gate regressions in CI rather than serve as aspirational style guides. Error handling favors typed helper functions and explicit state machines over ad hoc try/catch, and naming is consistent (kebab-case files, verb-object function names). CI enforces all of this through a large, specialized workflow set rather than a single lint-and-test job.

What Makes It Unique OpenClaw’s differentiator is architectural rather than a single novel algorithm: it inverts the usual cloud-AI-assistant model by running the assistant, its memory, and its credentials entirely on the user’s own device while treating model providers and agent harnesses as swappable plugins behind a stable SDK, and treating messaging channels as a second, symmetrical plugin surface — so the same assistant is reachable from any chat surface a user already has, or runs as a shared team deployment with only a config change. Its explicit trusted-gateway-vs-untrusted-execution security model, with per-channel pairing/approval flows and an opt-in-only telemetry stance, is a more deliberate self-hosting and privacy posture than most AI assistant projects formalize. The innovation here is in packaging an extremely wide integration surface — channels, native platforms, and model providers — behind a coherent, self-hosted, plugin-first architecture, rather than in a new agent-loop or model technique.

Self-Hosting

Licensing Model MIT licensed — all features are available in self-hosted deployments with no restrictions or license keys required.

Self-Hosting Restrictions None found. No ee/, enterprise/, or pro/ directories, license-check code, or feature-flag gating were found in the source.

Enterprise Features None — there is no paid tier. The project is explicitly non-commercial: it has no hosted service or token, and is funded by foundation donors rather than a subscription product.

Cloud vs Self-Hosted Not applicable — OpenClaw has no hosted cloud offering. Every deployment, personal or team, is self-hosted.

License Key Required No.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search