Pillar · Ultra-Lightweight Harness

No Runtime. No Idle Tax. Measured, Not Vibe.

A single static Rust binary that starts in 12 ms and idles at ~4 MB, ranking first on median own-process RSS in our Phase 1 campaign of six agentic CLIs.

Direct answer

An ultra-lightweight coding agent adds no language runtime to your machine, idles in single-digit MB and starts in milliseconds. Anvaya CLI is a single static Rust binary (14–19 MB build-dependent) with no Node or Python dependency: 12 ms to first TUI frame, 4.2 MB idle kernel footprint (12.4 MB ps RSS), 2.8 MB headless setup, and roughly 11 MB held across a 17.6-hour session. In Phase 1 of our open benchmark program (six harnesses, three gateway models, ten task classes, 238 runs, external verification) anv ran --no-mind at 25.6 MB median own-process RSS, ahead of jcode (45.0 MB), codex (97.2 MB), aider (248.9 MB), claude (432.1 MB) and opencode (582.3 MB). Persistent memory is a separate daemon you can leave off; the harness never pays for it.

The Profile

Where The Weight Went.

Every number below is dated and scoped; the benchmark claim policy is on the records page.

01One static binaryAnvaya CLI compiles to a single Rust executable (14–19 MB depending on build) with no Node, Python or JVM runtime. No package tree to audit, no runtime version to pin, no GC pauses in the loop.
0212 ms to first frameMeasured first TUI frame at 12 ms; --version at 17 ms (macOS 26, arm64, 2026-08-14 protocol). Startup is not a budget line you feel.
034.2 MB idle footprintTUI idle measured 4.2 MB kernel footprint (12.4 MB ps RSS: RSS includes mmap and hides compressed pages). Headless setup measured 2.8 MB. A 17.6-hour live session held roughly 11 MB footprint.
0425.6 MB median under loadPhase 1 measured the median own-process RSS across ten task classes: anv 25.6 MB (21 MB idle floor) vs jcode 45.0, codex 97.2, aider 248.9, claude 432.1 and opencode 582.3 MB. 238 runs, 228 externally verified.
05No runaway auxiliary processesIn --no-mind mode anv spawns no auxiliary process at all; codex adds a git child and claude up to 75 MB of helpers in the same campaign. Whole-tree accounting is published alongside each harness's own RSS.
06Where the weight goes when you opt inThe memory daemon is a separate binary: cold it uses ~3–6 MB footprint, warm with the embedding model mapped ~47–51 MB, with a transient ingest burst. It is a deliberate subsystem you can leave off.

Phase 1 · Own RSS

Median Harness RSS, Six CLIs.

Same models, same tasks, external verifier. Node and Python runtimes set their own floor; Rust harnesses lead on memory. Read wall time as model latency, not harness skill.

HarnessRuntimeMedian own RSSVerified
anv (--no-mind)Rust · static25.6 MB (21 MB floor)49/49
jcodeRust · static45.0 MB (43 MB floor)44/44
codexRust + git child97.2 MB (93 MB floor)17/17
aiderPython248.9 MB (242 MB floor)38/46
claudeNode432.1 MB (390 MB floor)32/34
opencodeNode/Bun582.3 MB (537 MB floor)48/48

Questions

Asked About Weight.

Q

What makes a coding agent lightweight?

Three things measured independently: no language runtime (a static binary), idle footprint in single-digit MB, and startup in milliseconds. Anvaya CLI measures 12 ms to first frame and 4.2 MB idle footprint; the Phase 1 campaign compared median harness RSS across six CLIs on identical tasks.

Q

Is Anvaya the lightest coding agent?

Not claimed. The Phase 1 ranking is scoped to six harnesses on three gateway models on macOS, with anv run in a pre-release --no-mind build. The site's claim policy gates 'lightest' on a shipped default mode, default-configuration comparison, more harnesses and a non-macOS rerun.

Q

Does persistent memory make it heavy?

The harness and the memory engine are separate binaries. The harness stays in the single-digit-to-25 MB band; the Mind daemon warms to ~47–51 MB footprint with the 127 MB ONNX embedding model mapped, and bursts transiently on first ingest. You can run the harness with no Mind at all (--no-mind).

Q

Why is Rust the right choice here?

Predictable memory and startup without a runtime. The trade is compile time and a smaller extension ecosystem, for an agent loop that must stay resident beside your editor and shell for hours, the runtime-free profile wins.

Q

How do you measure footprint on macOS?

Kernel phys_footprint is the truth; ps RSS misleads in both directions because it includes shared mmap'd pages and excludes compressed pages. We publish both numbers plus the measurement protocol, and on Linux we report RSS + PSS + Private_Dirty from smaps_rollup.

Run Agents That Fit On Your Laptop.

25.6 MB median RSS. 25 agents ran in parallel on a Core 2 Duo with 4 GB RAM. Hundreds on your machine. Zero cloud required on the Ollama path.

Requires Rust/cargo to build from source. Linux and macOS today, Windows not yet supported. Pre-1.0, public beta. Pricing TBD.