smol-machines/smolvmPublic

An embeddable, portable, branchable virtual machine to safely run Agents locally.

AI summary: A minimal, educational virtual machine implementation designed to teach core systems programming concepts.

Stars
6.6K
+117 today
Forks
318
Watchers
17
Open issues
27
Open PRs
47
Contributors
~48
Commits
1.7K
Branches
554

RustApache-2.0Created Dec 18, 2025Last push 1d agoLatest release v1.22.0+227 stars this week+655 this month

Quick answers

What is smolvm?
A minimal, educational virtual machine implementation designed to teach core systems programming concepts.
What does smolvm do?
SmolVM is a highly simplified virtual machine designed explicitly for educational purposes. It strips away the overwhelming complexity of production systems like the JVM or V8 to focus entirely on the fundamental mechanics of computing. It implements a custom instruction set architecture, memory management, and basic execution loops, allowing developers to see exactly how bytecode is processed by a machine. By studying and modifying SmolVM, engineers can gain hands-on experience with concepts like stack manipulation, register allocation, and bytecode interpretation in a highly constrained, easily understandable environment.
Who is smolvm for?
Computer science students, hobbyist systems programmers, and developers interested in learning about virtual machines and compilers. It requires basic knowledge of low-level programming concepts.
How do I get started with smolvm?
Clone the repository and inspect the core execution loop in the source code.
How popular is smolvm on GitHub?
smol-machines/smolvm has 6,556 stars and 318 forks on GitHub, and gained 227 stars in the last 7 days.
What license does smolvm use?
smol-machines/smolvm is released under the Apache-2.0 license.

Star history

since Jul 29, 2026
02K4K6KJul 2026Aug 2026Sep 2026Oct 2026
6.6K 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
OctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-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: 4 commits2026-01-15: 3 commits2026-01-16: 0 commits2026-01-17: 1 commit2026-01-18: 4 commits2026-01-19: 2 commits2026-01-20: 1 commit2026-01-21: 4 commits2026-01-22: 18 commits2026-01-23: 5 commits2026-01-24: 17 commits2026-01-25: 3 commits2026-01-26: 14 commits2026-01-27: 2 commits2026-01-28: 10 commits2026-01-29: 13 commits2026-01-30: 3 commits2026-01-31: 6 commits2026-02-01: 9 commits2026-02-02: 6 commits2026-02-03: 4 commits2026-02-04: 7 commits2026-02-05: 16 commits2026-02-06: 1 commit2026-02-07: 0 commits2026-02-08: 3 commits2026-02-09: 15 commits2026-02-10: 2 commits2026-02-11: 8 commits2026-02-12: 2 commits2026-02-13: 0 commits2026-02-14: 3 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 1 commit2026-02-18: 7 commits2026-02-19: 11 commits2026-02-20: 9 commits2026-02-21: 14 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 3 commits2026-02-25: 4 commits2026-02-26: 1 commit2026-02-27: 2 commits2026-02-28: 1 commit2026-03-01: 14 commits2026-03-02: 14 commits2026-03-03: 6 commits2026-03-04: 2 commits2026-03-05: 0 commits2026-03-06: 2 commits2026-03-07: 1 commit2026-03-08: 3 commits2026-03-09: 3 commits2026-03-10: 1 commit2026-03-11: 3 commits2026-03-12: 0 commits2026-03-13: 1 commit2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 3 commits2026-03-18: 1 commit2026-03-19: 1 commit2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 1 commit2026-03-24: 0 commits2026-03-25: 4 commits2026-03-26: 2 commits2026-03-27: 0 commits2026-03-28: 1 commit2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 1 commit2026-04-01: 8 commits2026-04-02: 1 commit2026-04-03: 2 commits2026-04-04: 7 commits2026-04-05: 7 commits2026-04-06: 10 commits2026-04-07: 6 commits2026-04-08: 6 commits2026-04-09: 0 commits2026-04-10: 5 commits2026-04-11: 6 commits2026-04-12: 16 commits2026-04-13: 12 commits2026-04-14: 22 commits2026-04-15: 11 commits2026-04-16: 10 commits2026-04-17: 4 commits2026-04-18: 13 commits2026-04-19: 5 commits2026-04-20: 7 commits2026-04-21: 5 commits2026-04-22: 7 commits2026-04-23: 3 commits2026-04-24: 1 commit2026-04-25: 1 commit2026-04-26: 0 commits2026-04-27: 8 commits2026-04-28: 1 commit2026-04-29: 0 commits2026-04-30: 2 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 1 commit2026-05-06: 1 commit2026-05-07: 0 commits2026-05-08: 4 commits2026-05-09: 1 commit2026-05-10: 2 commits2026-05-11: 9 commits2026-05-12: 4 commits2026-05-13: 6 commits2026-05-14: 3 commits2026-05-15: 2 commits2026-05-16: 1 commit2026-05-17: 1 commit2026-05-18: 12 commits2026-05-19: 3 commits2026-05-20: 2 commits2026-05-21: 4 commits2026-05-22: 3 commits2026-05-23: 1 commit2026-05-24: 1 commit2026-05-25: 0 commits2026-05-26: 3 commits2026-05-27: 1 commit2026-05-28: 0 commits2026-05-29: 4 commits2026-05-30: 7 commits2026-05-31: 15 commits2026-06-01: 9 commits2026-06-02: 16 commits2026-06-03: 7 commits2026-06-04: 10 commits2026-06-05: 9 commits2026-06-06: 1 commit2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 4 commits2026-06-11: 8 commits2026-06-12: 4 commits2026-06-13: 10 commits2026-06-14: 3 commits2026-06-15: 10 commits2026-06-16: 1 commit2026-06-17: 8 commits2026-06-18: 0 commits2026-06-19: 3 commits2026-06-20: 10 commits2026-06-21: 7 commits2026-06-22: 10 commits2026-06-23: 12 commits2026-06-24: 3 commits2026-06-25: 6 commits2026-06-26: 7 commits2026-06-27: 16 commits2026-06-28: 14 commits2026-06-29: 2 commits2026-06-30: 13 commits2026-07-01: 20 commits2026-07-02: 18 commits2026-07-03: 6 commits2026-07-04: 11 commits2026-07-05: 3 commits2026-07-06: 1 commit2026-07-07: 0 commits2026-07-08: 2 commits2026-07-09: 11 commits2026-07-10: 11 commits2026-07-11: 33 commits2026-07-12: 20 commits2026-07-13: 20 commits2026-07-14: 19 commits2026-07-15: 13 commits2026-07-16: 7 commits2026-07-17: 3 commits2026-07-18: 6 commits2026-07-19: 17 commits2026-07-20: 2 commits2026-07-21: 11 commits2026-07-22: 12 commits2026-07-23: 3 commits2026-07-24: 7 commits2026-07-25: 1 commit2026-07-26: 3 commits2026-07-27: 14 commits2026-07-28: 7 commits2026-07-29: 2 commits2026-07-30: 4 commits2026-07-31: 8 commits2026-08-01: 9 commits2026-08-02: 13 commits2026-08-03: 10 commits2026-08-04: 7 commits2026-08-05: 3 commits2026-08-06: 2 commits2026-08-07: 1 commit2026-08-08: 1 commit2026-08-09: 5 commits2026-08-10: 2 commits2026-08-11: 14 commits2026-08-12: 7 commits2026-08-13: 6 commits2026-08-14: 4 commits2026-08-15: 3 commits2026-08-16: 15 commits2026-08-17: 5 commits2026-08-18: 2 commits2026-08-19: 5 commits2026-08-20: 5 commits2026-08-21: 19 commits2026-08-22: 4 commits2026-08-23: 13 commits2026-08-24: 12 commits2026-08-25: 8 commits2026-08-26: 4 commits2026-08-27: 4 commits2026-08-28: 4 commits2026-08-29: 6 commits2026-08-30: 1 commit2026-08-31: 3 commits2026-09-01: 4 commits2026-09-02: 6 commits2026-09-03: 8 commits2026-09-04: 4 commits2026-09-05: 19 commits2026-09-06: 12 commits2026-09-07: 10 commits2026-09-08: 11 commits2026-09-09: 7 commits2026-09-10: 2 commits2026-09-11: 5 commits2026-09-12: 8 commits2026-09-13: 10 commits2026-09-14: 8 commits2026-09-15: 16 commits2026-09-16: 8 commits2026-09-17: 6 commits2026-09-18: 11 commits2026-09-19: 8 commits2026-09-20: 2 commits2026-09-21: 1 commit2026-09-22: 9 commits2026-09-23: 10 commits2026-09-24: 26 commits2026-09-25: 16 commits2026-09-26: 12 commits2026-09-27: 11 commits2026-09-28: 22 commits2026-09-29: 16 commits2026-09-30: 3 commits2026-10-01: 0 commits2026-10-02: 0 commits2026-10-03: 0 commits
1,566 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Very active

    1,566 commits in 52 weeks

  • Permissive license

    Apache-2.0

  • Continuous integration

    Automated checks passing

What smolvm does

SmolVM is a highly simplified virtual machine designed explicitly for educational purposes. It strips away the overwhelming complexity of production systems like the JVM or V8 to focus entirely on the fundamental mechanics of computing. It implements a custom instruction set architecture, memory management, and basic execution loops, allowing developers to see exactly how bytecode is processed by a machine. By studying and modifying SmolVM, engineers can gain hands-on experience with concepts like stack manipulation, register allocation, and bytecode interpretation in a highly constrained, easily understandable environment.

Computer science students, hobbyist systems programmers, and developers interested in learning about virtual machines and compilers. It requires basic knowledge of low-level programming concepts.

  • Minimalist Design: Focuses strictly on core VM concepts, avoiding the bloat of production-grade features or optimizations.
  • Custom Instruction Set: Implements a simple, bespoke set of opcodes designed for clarity and ease of implementation.
  • Stack-Based Execution: Utilizes a straightforward stack architecture for processing instructions and managing function calls.
  • Educational Focus: Prioritizes readable code and clear architecture over execution speed or advanced functionality.
  • Extensible Architecture: Provides a clean foundation that developers can easily fork and expand with new instructions or features.

Where teams use it

Systems Programming Education

Serve as a practical learning tool for students trying to understand how high-level code is executed by low-level hardware.

Language Design Prototyping

Act as a simple backend target for developers building their first compiler or exploring programming language design.

Embedded Execution Environment

Provide a starting point for building highly constrained, sandboxed execution environments for specialized embedded systems.

Computer Science Curriculum

Used as reference material in university courses covering computer architecture or compiler construction.

Getting started: Clone the repository and inspect the core execution loop in the source code.

README

main branch

smol machines

Discord Release License npm PyPI crates.io

smolvm

Branchable microVMs for AI agents. Embed lightweight virtual machines into your software, portable dev environments, and local sandboxing.

Install

curl -sSL https://smolmachines.com/install.sh | bash   # macOS + Linux

Windows: unzip the windows-x86_64 release and run smolvm.exe (needs the Windows Hypervisor Platform). Coding agents: run smolvm --help after installing to discover every command.

Quick Start

smolvm machine run --net --image alpine -- uname -a          # one-off VM, removed on exit
smolvm machine run --net -it --image alpine -- /bin/sh       # interactive shell

Local

Real VMs with their own kernel, free on your laptop or your own servers. They boot in under a second, and memory is elastic, so the host only commits what the guest uses. Machines persist across restarts, and any OCI image works, including ones you build locally.

smolvm machine create --net --name dev && smolvm machine start --name dev
smolvm machine exec --name dev -- apk add git
docker save myapp | smolvm machine run --image - -- ./app    # local image, no registry

Declare a machine in a Smolfile: image, resources, ports, mounts and network policy in one checked-in file.

Embeddable

Drive machines from your own code with one Machine API. The SDKs run in your process with no daemon, locally or on smol cloud.

npm install smolmachines     # Node / TypeScript
pip install smolmachines     # Python
cargo add smolmachines       # Rust
import { Machine } from 'smolmachines';

const m = await Machine.create({ image: 'python:3.12-alpine', network: true });
const r = await m.exec(['python3', '-c', 'print(2 ** 10)']);
console.log(r.stdout); // 1024
await m.delete();

Source and docs: smol-machines/smol · smolmachines.com/docs/sdk

Branchable

Save a running machine mid-execution, rewind it, or branch it into copies that keep running from the same point. Checkpoints capture RAM, CPU state and disks; branches are copy-on-write children of a live machine.

smolvm machine create --net --name agent --image alpine
smolvm machine start --name agent --branchable
smolvm machine branch --from agent --name try-1                   # live copy-on-write child
smolvm machine checkpoint --name agent -o agent.checkpoint        # save it, processes and all
smolvm machine create --name agent2 --from agent.checkpoint       # resume later or elsewhere

Rewind to an earlier generation with --from <checkpoint> --at '~N' (see machine checkpoint-log), and stop without losing execution with pause and resume. More in Branching and incremental checkpoints.

Portable

Pack a machine, however you set it up, into a single .smolmachine file. Push it to any OCI registry, or run it as a self-contained executable that boots in under 200 ms with nothing to install.

smolvm machine stop --name dev && smolvm pack create --from-vm dev -o dev
smolvm pack push --file dev.smolmachine ghcr.io/you/dev:v1
smolvm pack create --image python:3.12-alpine -o ./python312
./python312 run -- python3 --version

Checkpoints are portable too: restore one on another host or on smol cloud.

Safe

Each workload gets a hardware-isolated VM with its own kernel. Networking is off by default, egress can be limited to named hosts, and code can use a credential without ever reading it.

Safety is a shared responsibility. smolvm provides the boundary: a separate VM and kernel for every workload, with nothing reaching the host unless you allow it. You decide what crosses that boundary. Every folder you mount, port you open, host you allow, and secret or SSH agent you forward becomes something the workload can use, so give an untrusted workload only what it needs.

smolvm machine run --net --image alpine --allow-host registry.npmjs.org -- wget -qO- https://google.com   # blocked
smolvm machine run --net --image alpine --allow-host-pattern registry.npmjs.org -- wget -qO- https://registry.npmjs.org   # exact host only
NOTION_API_KEY=secret_… smolvm machine run --net --image alpine \
  --credential [email protected] -- sh -c 'echo $NOTION_API_KEY'   # a placeholder

See credential substitution and the security model. Use --allow-host-pattern '*.example.com' to allow subdomains only. The older --allow-host example.com continues to allow both the apex and subdomains. A stopped machine's allow list can be changed with smolvm machine update (--allow-host, --allow-host-pattern, --allow-cidr and their --remove- forms).

How It Works

Each workload runs in a hardware-virtualized VM with its own guest kernel on Hypervisor.framework (macOS), KVM (Linux), or the Windows Hypervisor Platform (Windows). libkrun is the VMM and libkrunfw supplies the guest kernel. Images use the OCI format, so anything on Docker Hub, ghcr.io or another registry boots as a microVM, with no Docker daemon.

Defaults: 4 vCPUs, 8 GiB RAM. Memory is elastic via virtio balloon and idle vCPUs sleep in the hypervisor, so over-provisioning costs almost nothing. Override with --cpus and --mem.

Comparison

smolvm Containers Colima QEMU Firecracker Kata
Workload boundary VM + guest kernel Namespace + shared kernel Namespace inside shared VM VM + guest kernel VM + guest kernel VM per container
Boot time <200ms ~100ms ~seconds ~15-30s <125ms ~500ms
Architecture Library (libkrun) Daemon Daemon (in VM) Process Process Runtime stack
Per-workload VMs Yes No No (shared) Yes Yes Yes
macOS native Yes Via Docker VM Yes (krunkit) Yes No No
Embeddable SDK Yes No No No No No
Portable artifacts .smolmachine Images (need daemon) No No No No

Platform Support

Host Guest Requirements
macOS Apple Silicon arm64 Linux macOS 11+
macOS Intel x86_64 Linux macOS 11+ (untested)
Linux x86_64 x86_64 Linux KVM (/dev/kvm)
Linux aarch64 aarch64 Linux KVM (/dev/kvm)
Windows x86_64 x86_64 Linux Windows Hypervisor Platform (WHP) enabled

Windows supports portable checkpoints, pause/resume, and branches with --freeze-source. GPU acceleration remains unavailable; see known limitations.

More

Apache-2.0 · made by @binsquare · twitter · github

View on GitHub

Recent activity

commits and pull requests

Releases and announcements

151 total
  1. smolvm v1.22.0v1.22.0Sep 30, 202654 downloads

    ## What's Changed * Seed image machines on macOS and in the SDKs by @BinSquare in https://github.com/smol-machines/smolvm/pull/1486 * Serialize the tests that depend on SMOLVM_MACHINE_NAME by @BABTUNA in https://github.com/smol-machines/smolvm/pull/1490 * Seed ephemeral machine run from the shared image seed by @BABTUNA in https://github.com/smol-machines/smolvm/pull/1491 * Let a machine stop itself when its workload exits by @BinSquare in https://github.com/smol-machines/smolvm/pull/1444 * Cache recent checkpoint restores and add checkpoint-warm by @BinSquare in https://github.com/smol-machines/smolvm/pull/1492 * Bump the workspace to 1.22.0 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1487 **Full Changelog**: https://github.com/smol-machines/smolvm/compare/v1.21.1...v1.22.0

  2. smolvm v1.21.1v1.21.1Sep 30, 202683 downloads

    ## What's Changed * Stream macOS checkpoints sparsely so saves scale with memory in use by @BinSquare in https://github.com/smol-machines/smolvm/pull/1484 * Reword the README description, add an SDK example, and explain shared responsibility by @BinSquare in https://github.com/smol-machines/smolvm/pull/1483 * Bump the workspace to 1.21.1 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1485 **Full Changelog**: https://github.com/smol-machines/smolvm/compare/v1.21.0...v1.21.1

  3. smolvm v1.21.0v1.21.0Sep 29, 202643 downloads

    ## What's Changed * Let machine update change a stopped machine's egress allow list by @BinSquare in https://github.com/smol-machines/smolvm/pull/1471 * Bump the Nix package to 1.20.2 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1472 * Support Windows memory checkpoints and frozen branches by @BinSquare in https://github.com/smol-machines/smolvm/pull/1474 * Restore a checkpoint's layered disk as a copy-on-write top instead of copying its top layer by @BinSquare in https://github.com/smol-machines/smolvm/pull/1475 * Let a stopping server finish in-flight requests for a configurable grace by @BinSquare in https://github.com/smol-machines/smolvm/pull/1473 * Cut machine exec latency: wake on exit, stop crun re-cloning itself, fork less in the wrapper by @LoganGrasby in https://github.com/smol-machines/smolvm/pull/1479 * Speed up cold checkpoint restore by hashing during extraction by @BinSquare in https://github.com/smol-machines/smolvm/pull/1480 * Let embedders create detached machines and list every machine by @BinSquare in https://github.com/smol-machines/smolvm/pull/1478 * Key a restored machine's VMM uid on its own data dir by @BinSquare in https://github.com/smol

  4. smolvm v1.20.2v1.20.2Sep 29, 2026240 downloads

    ## What's Changed * Resize CPUs, RAM and disks of a running machine in one command by @BinSquare in https://github.com/smol-machines/smolvm/pull/1466 * Let a stopped machine's egress policy be replaced by @BinSquare in https://github.com/smol-machines/smolvm/pull/1449 * Give a machine that is still starting time before the ephemeral sweep reaps it by @BinSquare in https://github.com/smol-machines/smolvm/pull/1470 * Bump the Nix package to 1.20.1 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1469 * End a foreground packed run's VM with its CLI, and watch its mounts from the CLI by @BinSquare in https://github.com/smol-machines/smolvm/pull/1467 * Bump the workspace to 1.20.2 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1468 **Full Changelog**: https://github.com/smol-machines/smolvm/compare/v1.20.1...v1.20.2

  5. smolvm v1.20.1v1.20.1Sep 29, 202663 downloads

    ## What's Changed * Bump the Nix package to 1.20.0 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1463 * Count file-backed cache as headroom for live RAM growth on macOS by @BinSquare in https://github.com/smol-machines/smolvm/pull/1464 * Bump the workspace to 1.20.1 by @BinSquare in https://github.com/smol-machines/smolvm/pull/1465 **Full Changelog**: https://github.com/smol-machines/smolvm/compare/v1.20.0...v1.20.1

Code frequency

additions and deletions
+22.3K-22.3KWeek of 2026-01-11: +17,705 linesWeek of 2026-01-11: -5,815 linesWeek of 2026-01-18: +12,350 linesWeek of 2026-01-18: -3,162 linesWeek of 2026-01-25: +13,202 linesWeek of 2026-01-25: -1,514 linesWeek of 2026-02-01: +8,508 linesWeek of 2026-02-01: -3,663 linesWeek of 2026-02-08: +5,951 linesWeek of 2026-02-08: -5,347 linesWeek of 2026-02-15: +4,586 linesWeek of 2026-02-15: -2,241 linesWeek of 2026-02-22: +1,476 linesWeek of 2026-02-22: -414 linesWeek of 2026-03-01: +5,229 linesWeek of 2026-03-01: -3,650 linesWeek of 2026-03-08: +3,119 linesWeek of 2026-03-08: -126 linesWeek of 2026-03-15: +570 linesWeek of 2026-03-15: -78 linesWeek of 2026-03-22: +2,104 linesWeek of 2026-03-22: -2,161 linesWeek of 2026-03-29: +13,234 linesWeek of 2026-03-29: -7,700 linesWeek of 2026-04-05: +6,316 linesWeek of 2026-04-05: -5,194 linesWeek of 2026-04-12: +16,110 linesWeek of 2026-04-12: -4,586 linesWeek of 2026-04-19: +3,810 linesWeek of 2026-04-19: -1,051 linesWeek of 2026-04-26: +1,173 linesWeek of 2026-04-26: -572 linesWeek of 2026-05-03: +2,328 linesWeek of 2026-05-03: -320 linesWeek of 2026-05-10: +2,364 linesWeek of 2026-05-10: -395 linesWeek of 2026-05-17: +8,855 linesWeek of 2026-05-17: -4,908 linesWeek of 2026-05-24: +2,855 linesWeek of 2026-05-24: -379 linesWeek of 2026-05-31: +13,723 linesWeek of 2026-05-31: -3,559 linesWeek of 2026-06-07: +5,104 linesWeek of 2026-06-07: -933 linesWeek of 2026-06-14: +3,280 linesWeek of 2026-06-14: -739 linesWeek of 2026-06-21: +9,657 linesWeek of 2026-06-21: -2,562 linesWeek of 2026-06-28: +9,248 linesWeek of 2026-06-28: -1,169 linesWeek of 2026-07-05: +22,322 linesWeek of 2026-07-05: -1,328 linesWeek of 2026-07-12: +18,727 linesWeek of 2026-07-12: -2,245 linesWeek of 2026-07-19: +11,354 linesWeek of 2026-07-19: -883 linesWeek of 2026-07-26: +19,996 linesWeek of 2026-07-26: -1,884 linesWeek of 2026-08-02: +10,150 linesWeek of 2026-08-02: -1,617 linesJan 11, 2026Aug 2, 2026
+255.4K lines added, -70.2K removed over the last year.

Commits per week

last 52 weeks
880Week 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: 8 commitsWeek of 2026-01-18: 51 commitsWeek of 2026-01-25: 51 commitsWeek of 2026-02-01: 43 commitsWeek of 2026-02-08: 33 commitsWeek of 2026-02-15: 42 commitsWeek of 2026-02-22: 11 commitsWeek of 2026-03-01: 39 commitsWeek of 2026-03-08: 11 commitsWeek of 2026-03-15: 5 commitsWeek of 2026-03-22: 8 commitsWeek of 2026-03-29: 19 commitsWeek of 2026-04-05: 40 commitsWeek of 2026-04-12: 88 commitsWeek of 2026-04-19: 29 commitsWeek of 2026-04-26: 11 commitsWeek of 2026-05-03: 7 commitsWeek of 2026-05-10: 27 commitsWeek of 2026-05-17: 26 commitsWeek of 2026-05-24: 16 commitsWeek of 2026-05-31: 67 commitsWeek of 2026-06-07: 26 commitsWeek of 2026-06-14: 35 commitsWeek of 2026-06-21: 61 commitsWeek of 2026-06-28: 84 commitsWeek of 2026-07-05: 61 commitsWeek of 2026-07-12: 88 commitsWeek of 2026-07-19: 53 commitsWeek of 2026-07-26: 47 commitsWeek of 2026-08-02: 37 commitsWeek of 2026-08-09: 41 commitsWeek of 2026-08-16: 55 commitsWeek of 2026-08-23: 51 commitsWeek of 2026-08-30: 45 commitsWeek of 2026-09-06: 55 commitsWeek of 2026-09-13: 67 commitsWeek of 2026-09-20: 76 commitsWeek of 2026-09-27: 52 commitsOct 4, 2025Sep 27, 2026
1.6K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 8 commitsSun 1:00 — 14 commitsSun 2:00 — 8 commitsSun 3:00 — 9 commitsSun 4:00 — 7 commitsSun 5:00 — 7 commitsSun 6:00 — 0 commitsSun 7:00 — 1 commitsSun 8:00 — 5 commitsSun 9:00 — 6 commitsSun 10:00 — 6 commitsSun 11:00 — 4 commitsSun 12:00 — 8 commitsSun 13:00 — 10 commitsSun 14:00 — 15 commitsSun 15:00 — 14 commitsSun 16:00 — 8 commitsSun 17:00 — 14 commitsSun 18:00 — 15 commitsSun 19:00 — 14 commitsSun 20:00 — 10 commitsSun 21:00 — 8 commitsSun 22:00 — 22 commitsSun 23:00 — 19 commitsMon 0:00 — 10 commitsMon 1:00 — 10 commitsMon 2:00 — 11 commitsMon 3:00 — 12 commitsMon 4:00 — 11 commitsMon 5:00 — 3 commitsMon 6:00 — 6 commitsMon 7:00 — 7 commitsMon 8:00 — 6 commitsMon 9:00 — 11 commitsMon 10:00 — 7 commitsMon 11:00 — 12 commitsMon 12:00 — 21 commitsMon 13:00 — 14 commitsMon 14:00 — 16 commitsMon 15:00 — 18 commitsMon 16:00 — 10 commitsMon 17:00 — 12 commitsMon 18:00 — 8 commitsMon 19:00 — 15 commitsMon 20:00 — 14 commitsMon 21:00 — 2 commitsMon 22:00 — 10 commitsMon 23:00 — 8 commitsTue 0:00 — 11 commitsTue 1:00 — 11 commitsTue 2:00 — 9 commitsTue 3:00 — 9 commitsTue 4:00 — 11 commitsTue 5:00 — 2 commitsTue 6:00 — 1 commitsTue 7:00 — 7 commitsTue 8:00 — 2 commitsTue 9:00 — 8 commitsTue 10:00 — 8 commitsTue 11:00 — 14 commitsTue 12:00 — 12 commitsTue 13:00 — 10 commitsTue 14:00 — 9 commitsTue 15:00 — 19 commitsTue 16:00 — 14 commitsTue 17:00 — 13 commitsTue 18:00 — 3 commitsTue 19:00 — 10 commitsTue 20:00 — 9 commitsTue 21:00 — 10 commitsTue 22:00 — 19 commitsTue 23:00 — 14 commitsWed 0:00 — 14 commitsWed 1:00 — 8 commitsWed 2:00 — 8 commitsWed 3:00 — 13 commitsWed 4:00 — 3 commitsWed 5:00 — 3 commitsWed 6:00 — 3 commitsWed 7:00 — 4 commitsWed 8:00 — 5 commitsWed 9:00 — 6 commitsWed 10:00 — 8 commitsWed 11:00 — 11 commitsWed 12:00 — 11 commitsWed 13:00 — 9 commitsWed 14:00 — 12 commitsWed 15:00 — 12 commitsWed 16:00 — 19 commitsWed 17:00 — 21 commitsWed 18:00 — 10 commitsWed 19:00 — 10 commitsWed 20:00 — 6 commitsWed 21:00 — 12 commitsWed 22:00 — 7 commitsWed 23:00 — 5 commitsThu 0:00 — 10 commitsThu 1:00 — 7 commitsThu 2:00 — 13 commitsThu 3:00 — 6 commitsThu 4:00 — 6 commitsThu 5:00 — 6 commitsThu 6:00 — 1 commitsThu 7:00 — 6 commitsThu 8:00 — 5 commitsThu 9:00 — 8 commitsThu 10:00 — 9 commitsThu 11:00 — 14 commitsThu 12:00 — 13 commitsThu 13:00 — 4 commitsThu 14:00 — 11 commitsThu 15:00 — 23 commitsThu 16:00 — 7 commitsThu 17:00 — 10 commitsThu 18:00 — 16 commitsThu 19:00 — 12 commitsThu 20:00 — 7 commitsThu 21:00 — 12 commitsThu 22:00 — 7 commitsThu 23:00 — 3 commitsFri 0:00 — 7 commitsFri 1:00 — 4 commitsFri 2:00 — 10 commitsFri 3:00 — 10 commitsFri 4:00 — 3 commitsFri 5:00 — 4 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 4 commitsFri 9:00 — 4 commitsFri 10:00 — 15 commitsFri 11:00 — 2 commitsFri 12:00 — 10 commitsFri 13:00 — 9 commitsFri 14:00 — 14 commitsFri 15:00 — 9 commitsFri 16:00 — 15 commitsFri 17:00 — 9 commitsFri 18:00 — 5 commitsFri 19:00 — 5 commitsFri 20:00 — 3 commitsFri 21:00 — 10 commitsFri 22:00 — 10 commitsFri 23:00 — 8 commitsSat 0:00 — 6 commitsSat 1:00 — 11 commitsSat 2:00 — 13 commitsSat 3:00 — 8 commitsSat 4:00 — 9 commitsSat 5:00 — 3 commitsSat 6:00 — 7 commitsSat 7:00 — 3 commitsSat 8:00 — 2 commitsSat 9:00 — 14 commitsSat 10:00 — 8 commitsSat 11:00 — 16 commitsSat 12:00 — 16 commitsSat 13:00 — 17 commitsSat 14:00 — 4 commitsSat 15:00 — 5 commitsSat 16:00 — 11 commitsSat 17:00 — 14 commitsSat 18:00 — 9 commitsSat 19:00 — 9 commitsSat 20:00 — 20 commitsSat 21:00 — 5 commitsSat 22:00 — 9 commitsSat 23:00 — 20 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Apr 18, 2026daily#13+236
  • ultraworkers/claw-code

    An agent-managed museum exhibit, built in Rust with Gajae-Code / LazyCodex — developed and maintained with no human intervention.

    195.2K stars · Rust

  • farion1231/cc-switch

    A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

    140K stars · Rust

  • kubernetes/kubernetes

    Production-Grade Container Scheduling and Management

    128.3K stars · Go

  • openai/codex

    Lightweight coding agent that runs in your terminal

    127.8K stars · Rust

  • denoland/deno

    A modern runtime for JavaScript and TypeScript.

    108.6K stars · Rust

  • ruvnet/RuView

    π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.

    96.4K stars · Rust