tnm/zclawPublic

Your personal AI assistant at all-in 888KiB (~35KB in app code). Running on an ESP32. GPIO, cron, custom tools, memory, and more.

AI summary: A bare-metal C firmware implementation of an AI assistant for ESP32 microcontrollers.

Stars
2.2K
Forks
192
Watchers
16
Open issues
7
Open PRs
4
Contributors
~4
Commits
200
Branches
26

CMITCreated Feb 16, 2026Last push 4mo agoLatest release v2.13.0+1 stars this week+7 this month

Quick answers

What is zclaw?
A bare-metal C firmware implementation of an AI assistant for ESP32 microcontrollers.
What does zclaw do?
Zclaw is a highly specialized, bare-metal C firmware implementation designed to run AI assistant capabilities directly on heavily resource-constrained ESP32 microcontrollers. It targets extreme minimal memory usage, operating within an 888 KiB total firmware budget, which includes all Real-Time Operating System and networking overhead. The firmware allows users to control hardware GPIO pins using natural language conversational instructions, effectively bridging local hardware control with AI parsing. It is meticulously engineered to avoid heavy interpreted languages, maximizing performance and enabling autonomous hardware scheduling directly on the edge device.
Who is zclaw for?
Embedded systems developers and hardware hackers who want to deploy capable AI assistants on highly resource-constrained microcontrollers.
How do I get started with zclaw?
idf.py build
How popular is zclaw on GitHub?
tnm/zclaw has 2,230 stars and 192 forks on GitHub, and gained 1 stars in the last 7 days.
What license does zclaw use?
tnm/zclaw is released under the MIT license.

Star history

since Jul 29, 2026
01K2KJul 2026Aug 2026Sep 2026Oct 2026
2.2K stars as of Oct 3, 2026. Measured daily since Jul 29, 2026; GitHub no longer exposes earlier star timestamps.

Contribution activity

commits per day, last 52 weeks
SepOctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 30 commits2026-02-21: 49 commits2026-02-22: 25 commits2026-02-23: 2 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 1 commit2026-02-27: 0 commits2026-02-28: 10 commits2026-03-01: 2 commits2026-03-02: 11 commits2026-03-03: 0 commits2026-03-04: 6 commits2026-03-05: 1 commit2026-03-06: 10 commits2026-03-07: 7 commits2026-03-08: 2 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 6 commits2026-03-19: 0 commits2026-03-20: 1 commit2026-03-21: 1 commit2026-03-22: 2 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 0 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 0 commits2026-04-28: 0 commits2026-04-29: 0 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 0 commits2026-05-13: 0 commits2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 1 commit2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 0 commits2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 0 commits2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 0 commits2026-06-30: 0 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 0 commits2026-07-07: 0 commits2026-07-08: 0 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 0 commits2026-07-12: 0 commits2026-07-13: 0 commits2026-07-14: 0 commits2026-07-15: 0 commits2026-07-16: 0 commits2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 0 commits2026-07-22: 0 commits2026-07-23: 0 commits2026-07-24: 0 commits2026-07-25: 0 commits2026-07-26: 0 commits2026-07-27: 0 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 0 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits2026-08-09: 0 commits2026-08-10: 0 commits2026-08-11: 0 commits2026-08-12: 0 commits2026-08-13: 0 commits2026-08-14: 0 commits2026-08-15: 0 commits2026-08-16: 0 commits2026-08-17: 0 commits2026-08-18: 0 commits2026-08-19: 0 commits2026-08-20: 0 commits2026-08-21: 0 commits2026-08-22: 0 commits2026-08-23: 0 commits2026-08-24: 0 commits2026-08-25: 0 commits2026-08-26: 0 commits2026-08-27: 0 commits2026-08-28: 0 commits2026-08-29: 0 commits2026-08-30: 0 commits2026-08-31: 0 commits2026-09-01: 0 commits2026-09-02: 0 commits2026-09-03: 0 commits2026-09-04: 0 commits2026-09-05: 0 commits2026-09-06: 0 commits2026-09-07: 0 commits2026-09-08: 0 commits2026-09-09: 0 commits2026-09-10: 0 commits2026-09-11: 0 commits2026-09-12: 0 commits2026-09-13: 0 commits2026-09-14: 0 commits2026-09-15: 0 commits2026-09-16: 0 commits2026-09-17: 0 commits2026-09-18: 0 commits2026-09-19: 0 commits2026-09-20: 0 commits2026-09-21: 0 commits2026-09-22: 0 commits2026-09-23: 0 commits2026-09-24: 0 commits2026-09-25: 0 commits2026-09-26: 0 commits
167 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

What zclaw does

Zclaw is a highly specialized, bare-metal C firmware implementation designed to run AI assistant capabilities directly on heavily resource-constrained ESP32 microcontrollers. It targets extreme minimal memory usage, operating within an 888 KiB total firmware budget, which includes all Real-Time Operating System and networking overhead. The firmware allows users to control hardware GPIO pins using natural language conversational instructions, effectively bridging local hardware control with AI parsing. It is meticulously engineered to avoid heavy interpreted languages, maximizing performance and enabling autonomous hardware scheduling directly on the edge device.

Embedded systems developers and hardware hackers who want to deploy capable AI assistants on highly resource-constrained microcontrollers.

  • Strict Memory Constraints: Operates within an 888 KiB total firmware budget, including all RTOS and networking overhead.
  • Natural Language GPIO Control: Allows users to command hardware pins using conversational instructions rather than code.
  • Custom Tool Composition: Supports chaining together basic actions into complex tasks via sophisticated language parsing.
  • Persistent Memory Management: Stores schedules and state data efficiently on the limited flash storage available on microcontrollers.
  • Bare-Metal C Implementation: Avoids heavy interpreted languages to maximize performance and minimize latency on the ESP32.

Where teams use it

Voice-Controlled IoT

Makers build smart home devices that respond to complex natural language commands processed locally on the microcontroller.

Automated Hardware Scheduling

Engineers configure the ESP32 to autonomously execute scheduled GPIO tasks without relying on external servers.

Embedded AI Research

Developers study the firmware to learn how to fit AI logic and secure networking into extreme memory constraints.

Custom Assistant Deployment

Hobbyists flash the firmware onto cheap ESP32 boards to create dedicated, single-purpose AI helpers for specific tasks.

Getting started: idf.py build

README

main branch

zclaw

Lobster soldering a Seeed Studio XIAO ESP32-C3

The smallest possible AI personal assistant for ESP32.

zclaw is written in C and runs on ESP32 boards with a strict all-in firmware budget target of <= 888 KiB on the default build. It supports scheduled tasks, GPIO control, persistent memory, and custom tool composition through natural language.

The 888 KiB cap is all-in firmware size, not just app code. It includes zclaw logic plus ESP-IDF/FreeRTOS runtime, Wi-Fi/networking, TLS/crypto, and cert bundle overhead.

Fun to use, fun to hack on.

Full Documentation

Use the docs site for complete guides and reference.

Quick Start

One-line bootstrap (macOS/Linux):

bash <(curl -fsSL https://raw.githubusercontent.com/tnm/zclaw/main/scripts/bootstrap.sh)

Already cloned?

./install.sh

Non-interactive install:

./install.sh -y
Setup notes
  • bootstrap.sh clones/updates the repo and then runs ./install.sh. You can inspect/verify the bootstrap flow first (including ZCLAW_BOOTSTRAP_SHA256 integrity checks); see the Getting Started docs.
  • Linux dependency installs auto-detect apt-get, pacman, dnf, or zypper during install.sh runs.
  • In non-interactive mode, unanswered install prompts default to no unless you pass -y (or saved preferences/explicit flags apply).
  • For encrypted credentials in flash, use secure mode (--flash-mode secure in install flow, or ./scripts/flash-secure.sh directly).
  • After flashing, provision WiFi + LLM credentials with ./scripts/provision.sh.
  • You can re-run either ./scripts/provision.sh or ./scripts/provision-dev.sh at any time (no reflash required) to update runtime credentials: WiFi SSID/password, LLM backend/model/API key (or Ollama API URL), and Telegram token/chat ID allowlist.
  • Default LLM rate limits are 100/hour and 1000/day; change compile-time limits in main/config.h (RATELIMIT_*).
  • Quick validation path: run ./scripts/web-relay.sh and send a test message to confirm the device can answer.
  • If serial port is busy, run ./scripts/release-port.sh and retry.
  • For repeat local reprovisioning without retyping secrets, use ./scripts/provision-dev.sh with a local profile file (provision-dev.sh wraps provision.sh --yes).

Highlights

  • Chat via Telegram or hosted web relay
  • Timezone-aware schedules (daily, periodic, and one-shot once)
  • Built-in + user-defined tools
  • For brand-new built-in capabilities, add a firmware tool (C handler + registry entry) via the Build Your Own Tool docs.
  • Runtime diagnostics via get_diagnostics (quick/runtime/memory/rates/time/all scopes)
  • GPIO, DHT, and I2C control with guardrails (including gpio_read_all, i2c_scan, i2c_read/i2c_write, and dht_read)
  • USB local admin console for recovery, safe mode, and pre-network bring-up
  • Persistent memory across reboots
  • Persona options: neutral, friendly, technical, witty
  • Provider support for Anthropic, OpenAI, OpenRouter, and Ollama (custom endpoint)

Hardware

Tested targets: ESP32, ESP32-C3, ESP32-S3, and ESP32-C6. Classic ESP32-WROOM/ESP32 DevKit boards are supported. Test reports for other ESP32 variants are very welcome!

Recommended starter board: Seeed XIAO ESP32-C3

Local Dev & Hacking

Typical fast loop:

./scripts/test.sh host
./scripts/build.sh
./scripts/flash.sh --kill-monitor /dev/cu.usbmodem1101
./scripts/provision-dev.sh --port /dev/cu.usbmodem1101
./scripts/monitor.sh /dev/cu.usbmodem1101

Profile setup once, then re-use:

./scripts/provision-dev.sh --write-template
# edit ~/.config/zclaw/dev.env
./scripts/provision-dev.sh --show-config
./scripts/provision-dev.sh

# if Telegram keeps replaying stale updates:
./scripts/telegram-clear-backlog.sh --show-config

More details in the Local Dev & Hacking guide.

Other Useful Scripts

Show scripts
  • ./scripts/flash-secure.sh - Flash with encryption
  • ./scripts/provision.sh - Provision credentials to NVS
  • ./scripts/provision-dev.sh - Local profile wrapper for repeat provisioning
  • ./scripts/telegram-clear-backlog.sh - Clear queued Telegram updates
  • ./scripts/erase.sh - Erase NVS only (--nvs) or full flash (--all) with guardrails
  • ./scripts/monitor.sh - Serial monitor
  • ./scripts/emulate.sh - Run QEMU profile
  • ./scripts/web-relay.sh - Hosted relay + mobile chat UI
  • ./scripts/benchmark.sh - Benchmark relay/serial latency
  • ./scripts/test.sh - Run host/device test flows
  • ./scripts/test-api.sh - Run live provider API checks (manual/local)

Local Admin Console

When the board is in safe mode, unprovisioned, or the LLM path is unavailable, you can still operate it over USB serial without Wi-Fi or an LLM round trip.

./scripts/monitor.sh /dev/cu.usbmodem1101
# then type:
/wifi status
/wifi scan
/bootcount
/gpio all
/reboot

Available local-only commands:

  • /gpio [all|pin|pin high|pin low]
  • /diag [scope] [verbose]
  • /reboot
  • /wifi [status|scan]
  • /bootcount
  • /factory-reset confirm (destructive; wipes NVS and reboots)

Full reference: Local Admin Console

Size Breakdown

Current default esp32 breakdown (grouped image bytes from idf.py -B build size-components):

Segment Bytes Size Share
zclaw app logic (libmain.a) 39276 ~38.4 KiB ~4.6%
Wi-Fi + networking stack 378624 ~369.8 KiB ~44.4%
TLS/crypto stack 134923 ~131.8 KiB ~15.8%
cert bundle + app metadata 98425 ~96.1 KiB ~11.5%
other ESP-IDF/runtime/drivers/libc 201786 ~197.1 KiB ~23.7%

Total image size from this build is 853034 bytes; padded zclaw.bin is 853184 bytes (~833.2 KiB), leaving 56128 bytes (~54.8 KiB) under the 888 KiB cap.

Latency Benchmarking

Relay path benchmark (includes web relay processing + device round trip):

./scripts/benchmark.sh --mode relay --count 20 --message "ping"

Direct serial benchmark (host round trip + first response time). If firmware logs METRIC request ... lines, the report also includes device-side timing:

./scripts/benchmark.sh --mode serial --serial-port /dev/cu.usbmodem1101 --count 20 --message "ping"

License

MIT

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

4 total
  1. v2.13.0v2.13.0Mar 22, 2026

    ## Highlights - Added first-class `dht_read` support for `DHT11` and `DHT22` temperature/humidity reads. - Added generic raw I2C tools: `i2c_scan`, `i2c_write`, `i2c_read`, and `i2c_write_read`. - Trimmed outbound TLS features to preserve headroom under the `888 KiB` firmware budget. - Hardened zero-argument built-in tool schemas for OpenAI-compatible validators. - Fixed benchmark counter sequencing so serial soaks do not trip replay suppression across warmup and measured phases. ## Verification - `./scripts/test.sh host` - `./scripts/build.sh` - `./scripts/check-binary-size.sh --build-dir build --binary zclaw.bin --max-bytes 909312` - Built binary size: `850048 bytes (830.12 KiB)` ## Bootstrap Integrity Checks Main bootstrap: ```bash ZCLAW_BOOTSTRAP_SHA256="b4ab00adef5cf2ede1406b9700d5156b72fe9e3a6224e5dcd9e068db67cc8a3b" \ bash <(curl -fsSL https://raw.githubusercontent.com/tnm/zclaw/main/scripts/bootstrap.sh) ``` Web relay bootstrap: ```bash ZCLAW_WEB_RELAY_BOOTSTRAP_SHA256="3ca42317273f4de2ff02610851f3dce3a754b38fea2b5cfe51062570cfb407e9" \ bash <(curl -fsSL https://raw.githubusercontent.com/tnm/zclaw/main/scripts/bootstrap-web-relay.sh) -- --mock-agent ``` Raw values:

  2. v2.11.2v2.11.2Mar 7, 2026

    ## What's Changed * provision: add model selection prompt by @alpaim in https://github.com/tnm/zclaw/pull/31 * provision: curate model selection menu by @tnm in https://github.com/tnm/zclaw/pull/32 * Fix classic ESP32 HTTPS contention by @tnm in https://github.com/tnm/zclaw/pull/33 * fix: make sidebar links visible with reduced motion by @benben6515 in https://github.com/tnm/zclaw/pull/34 ## New Contributors * @alpaim made their first contribution in https://github.com/tnm/zclaw/pull/31 * @benben6515 made their first contribution in https://github.com/tnm/zclaw/pull/34 **Full Changelog**: https://github.com/tnm/zclaw/compare/v2.10.3...v2.11.2

  3. v2.10.1v2.10.1Mar 3, 2026

    ## What's Changed * Harden some edge cases and add host tests by @tnm in https://github.com/tnm/zclaw/pull/26 **Full Changelog**: https://github.com/tnm/zclaw/compare/v2.10.0...v2.10.1

  4. v2.8.2v2.8.2Mar 1, 2026

    ## What's Changed * fix: default UART on non-USB targets and improve flash chip detection by @tnm in https://github.com/tnm/zclaw/pull/13 * feat: add scoped diagnostics tool and local /diag command by @tnm in https://github.com/tnm/zclaw/pull/18 * fix: prevent gpio read/write on ESP32 flash pins (VROOM crash) by @tnm in https://github.com/tnm/zclaw/pull/19 **Full Changelog**: https://github.com/tnm/zclaw/compare/v2.7.1...v2.8.2

Commits per week

last 52 weeks
790Week of 2025-09-27: 0 commitsWeek of 2025-10-04: 0 commitsWeek of 2025-10-11: 0 commitsWeek of 2025-10-18: 0 commitsWeek of 2025-10-25: 0 commitsWeek of 2025-11-01: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 79 commitsWeek of 2026-02-22: 38 commitsWeek of 2026-03-01: 37 commitsWeek of 2026-03-08: 2 commitsWeek of 2026-03-15: 8 commitsWeek of 2026-03-22: 2 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 0 commitsWeek of 2026-04-19: 0 commitsWeek of 2026-04-26: 0 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 1 commitsWeek of 2026-05-17: 0 commitsWeek of 2026-05-24: 0 commitsWeek of 2026-05-31: 0 commitsWeek of 2026-06-07: 0 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 0 commitsWeek of 2026-06-28: 0 commitsWeek of 2026-07-05: 0 commitsWeek of 2026-07-12: 0 commitsWeek of 2026-07-19: 0 commitsWeek of 2026-07-26: 0 commitsWeek of 2026-08-02: 0 commitsWeek of 2026-08-09: 0 commitsWeek of 2026-08-16: 0 commitsWeek of 2026-08-23: 0 commitsWeek of 2026-08-30: 0 commitsWeek of 2026-09-06: 0 commitsWeek of 2026-09-13: 0 commitsWeek of 2026-09-20: 0 commitsSep 27, 2025Sep 20, 2026
167 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 7 commitsSun 1:00 — 2 commitsSun 2:00 — 4 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 0 commitsSun 9:00 — 0 commitsSun 10:00 — 0 commitsSun 11:00 — 0 commitsSun 12:00 — 0 commitsSun 13:00 — 0 commitsSun 14:00 — 0 commitsSun 15:00 — 0 commitsSun 16:00 — 0 commitsSun 17:00 — 1 commitsSun 18:00 — 1 commitsSun 19:00 — 7 commitsSun 20:00 — 3 commitsSun 21:00 — 4 commitsSun 22:00 — 1 commitsSun 23:00 — 1 commitsMon 0:00 — 0 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 0 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 5 commitsMon 11:00 — 1 commitsMon 12:00 — 1 commitsMon 13:00 — 0 commitsMon 14:00 — 0 commitsMon 15:00 — 0 commitsMon 16:00 — 0 commitsMon 17:00 — 0 commitsMon 18:00 — 0 commitsMon 19:00 — 0 commitsMon 20:00 — 3 commitsMon 21:00 — 0 commitsMon 22:00 — 3 commitsMon 23:00 — 0 commitsTue 0:00 — 0 commitsTue 1:00 — 0 commitsTue 2:00 — 0 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 0 commitsTue 6:00 — 0 commitsTue 7:00 — 0 commitsTue 8:00 — 0 commitsTue 9:00 — 0 commitsTue 10:00 — 0 commitsTue 11:00 — 0 commitsTue 12:00 — 0 commitsTue 13:00 — 0 commitsTue 14:00 — 0 commitsTue 15:00 — 0 commitsTue 16:00 — 0 commitsTue 17:00 — 0 commitsTue 18:00 — 0 commitsTue 19:00 — 0 commitsTue 20:00 — 0 commitsTue 21:00 — 0 commitsTue 22:00 — 0 commitsTue 23:00 — 0 commitsWed 0:00 — 0 commitsWed 1:00 — 0 commitsWed 2:00 — 0 commitsWed 3:00 — 0 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 0 commitsWed 11:00 — 0 commitsWed 12:00 — 3 commitsWed 13:00 — 1 commitsWed 14:00 — 0 commitsWed 15:00 — 0 commitsWed 16:00 — 0 commitsWed 17:00 — 1 commitsWed 18:00 — 0 commitsWed 19:00 — 0 commitsWed 20:00 — 0 commitsWed 21:00 — 5 commitsWed 22:00 — 0 commitsWed 23:00 — 2 commitsThu 0:00 — 0 commitsThu 1:00 — 0 commitsThu 2:00 — 0 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 0 commitsThu 10:00 — 0 commitsThu 11:00 — 0 commitsThu 12:00 — 0 commitsThu 13:00 — 0 commitsThu 14:00 — 0 commitsThu 15:00 — 0 commitsThu 16:00 — 0 commitsThu 17:00 — 1 commitsThu 18:00 — 0 commitsThu 19:00 — 0 commitsThu 20:00 — 0 commitsThu 21:00 — 0 commitsThu 22:00 — 1 commitsThu 23:00 — 0 commitsFri 0:00 — 0 commitsFri 1:00 — 0 commitsFri 2:00 — 0 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 0 commitsFri 9:00 — 0 commitsFri 10:00 — 0 commitsFri 11:00 — 0 commitsFri 12:00 — 0 commitsFri 13:00 — 2 commitsFri 14:00 — 1 commitsFri 15:00 — 1 commitsFri 16:00 — 2 commitsFri 17:00 — 6 commitsFri 18:00 — 2 commitsFri 19:00 — 3 commitsFri 20:00 — 2 commitsFri 21:00 — 2 commitsFri 22:00 — 12 commitsFri 23:00 — 8 commitsSat 0:00 — 3 commitsSat 1:00 — 1 commitsSat 2:00 — 3 commitsSat 3:00 — 0 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 1 commitsSat 10:00 — 4 commitsSat 11:00 — 7 commitsSat 12:00 — 3 commitsSat 13:00 — 0 commitsSat 14:00 — 1 commitsSat 15:00 — 6 commitsSat 16:00 — 11 commitsSat 17:00 — 6 commitsSat 18:00 — 4 commitsSat 19:00 — 3 commitsSat 20:00 — 3 commitsSat 21:00 — 5 commitsSat 22:00 — 6 commitsSat 23:00 — 1 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits197 (99%)
Community commits3 (2%)

200 commits in total over the last year.

DateListRankStars gained
Feb 22, 2026daily#15+232
  • Genymobile/scrcpy

    Display and control your Android device

    151K stars · C

  • microsoft/PowerToys

    Microsoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows

    139.2K stars · C

  • colbymchenry/codegraph

    Pre-indexed code knowledge graph, auto syncs on code changes, for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, CoPilot, and Hermes Agent — fewer tokens, fewer tool calls, 100% local

    73.2K stars · C

  • DeusData/codebase-memory-mcp

    High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

    45.7K stars · C

  • JustVugg/colibri

    Run frontier MoE models on hardware you already own — pure C, zero deps, experts streamed from disk. Tiny engine, immense model. 🐦

    39.3K stars · C

  • facebook/zstd

    Zstandard - Fast real-time compression algorithm

    28K stars · C