Index / zclaw · updated Oct 2, 2026

zclaw

tnm/zclaw · healthy · rank 21 of 43 by stars

An ultra-minimalist AI personal assistant that squeezes onto an ESP32 microcontroller with an all-in firmware budget of 888 KiB. It trades heavyweight agent frameworks for bare-metal C, GPIO control, cron scheduling, and Telegram/web relay chat.

#esp32#embedded#c#tinyml#personal-assistant
Compare vs OpenClaw
GitHub ↗

Facts

Repository

Contributors4
Open issues11
Last commitMay 17, 2026
Release cadence~7 days
Latest releasev2.13.0

Runtime

LanguageC
Memory1 MB
Boot time8 ms
Deploymentedge · self-hosted
Setup difficultyMedium
Plugin ecosystemLimited

Posture

LicenseMIT
Local-firstYes
Cloud dependencyOptional
Multi-userNo
Privacy postureStrong

Community

Sentiment55% positive
Reddit mentions0
Web results10

Security breakdown

Composite 72 / 100 · how these are scored

Sandboxing6 / 10

higher is safer

API security7 / 10

higher is safer

Network isolation5 / 10

higher is safer

Telemetry safety8 / 10

higher is safer

Shell access risk3 / 10

higher is riskier

Model access

Read from the repository, not written by a model · 57 files examined

2 providers · runs locally · gateway support

Direct
AnthropicOpenAI
Gateway
OpenRouter
Local
Ollama
Compatible
OpenAI-compatible

Pinned models

gpt-5.4OpenAI

claude-sonnet-4-6 released 2026-02-17 — 8 months old (from the public model catalogue)

Pin last edited 7 months ago

Several defaults are pinned; the project picks one per provider rather than shipping a single default.

Evidence

Decision

Why choose zclaw over OpenClaw?

Why choose this

  • Runs on a $5 ESP32 with an 888 KiB all-in firmware budget
  • Direct GPIO, I2C, and DHT sensor control via natural language tools
  • No server, Node runtime, or heavy dependencies required

Tradeoffs

  • Far smaller ecosystem and no multi-channel/agent routing depth
  • Requires embedded toolchain setup and hardware flashing
  • Limited LLM throughput due to rate limits and device constraints

Best fit

  • Makers wanting an AI assistant on ESP32 hardware
  • Developers who want GPIO/sensor control via natural language
  • Users who value extreme footprint constraints over feature breadth

Avoid if

  • You need a rich plugin ecosystem or multi-agent routing
  • You want a desktop/cloud assistant without flashing firmware
  • You need strong community support and third-party integrations
Good Confidence78%

Strong evidence from README, docs, and recent commits for architecture and features; community sentiment is uncertain due to zero Reddit matches and only indirect web mentions.

AI layer reviewed Sep 21, 2026 · how this is written

Star activity

2,229 stars today

Overview

zclaw is a radically minimal take on the personal AI assistant: instead of a Node.js or Python runtime, it is written in C and targets ESP32 microcontrollers with a strict all-in firmware budget of 888 KiB — including the ESP-IDF/FreeRTOS runtime, Wi-Fi, TLS, and certificate bundles, with only ~35 KB of actual application code. Despite the tiny footprint, it supports scheduled tasks (daily, periodic, one-shot), persistent memory, GPIO control, and user-defined tools composed through natural language.

Users interact with zclaw via Telegram or a hosted web relay, and credentials (Wi-Fi, LLM API keys, Telegram allowlists) are provisioned via scripts and can be stored encrypted in flash using a secure flash mode. It supports both cloud LLM backends and local Ollama endpoints, with compile-time rate limits (default 100/hour, 1000/day). Recent releases added hardware-oriented tools like DHT sensors and generic I2C, reinforcing its identity as a bridge between LLM agents and physical computing.

Compared to OpenClaw, zclaw sacrifices the rich multi-channel routing, dashboards, and plugin ecosystems for extreme portability and hackability. It is best understood as the embedded edge node of the Claw ecosystem: a fun, hackable assistant you can solder onto a board rather than a full-featured agent platform.

Nominate a clone

Add a new Claw

Paste a GitHub repository and tell us why it belongs on the tracker.

Opens a prefilled issue on GitHub — every nomination is public. Comfortable with a PR? Adding the repo to projects.json is faster.