A 26MB Rust agent that sips 16MB RAM while rivals guzzle 700MB
It exists because coding agents shouldn't need more RAM than the projects they're editing.

What it does
zerostack is a terminal-based coding agent written in Rust that connects to multiple LLM providers (OpenAI, Anthropic, Gemini, Ollama, OpenRouter, and custom endpoints) and manipulates your local codebase through standard read/write/bash tools. It wraps this in a crossterm-based TUI with session save/resume, runtime-switchable prompt modes, and an input queue that lets you type ahead while the agent is busy. Think of it as a lightweight alternative to opencode or Claude Code that stays out of your way and out of your RAM.
The interesting bit
Where most agents treat memory and safety as afterthoughts, zerostack bakes them in: a five-tier permission system with per-tool glob patterns and “doom-loop detection” to stop runaway repetitive tool calls, plus side questions via /btw that fork the agent’s context so you can ask read-only questions without interrupting the main workflow. It also persists memory across sessions through plain Markdown files—no vector databases, just injected notes—keeping the implementation as lean as the runtime.
Key highlights
- Tiny footprint: ~16MB RAM average (peaks ~24MB) and a 26MB binary, compared to the hundreds of megabytes typical of JS-based agents.
- Runtime prompt modes (
code,plan,review,debug,ask, etc.) let you change the agent’s behavior on the fly without managing external skill files. - Non-blocking UX: queue inputs while the agent runs, or fire off read-only
/btwside questions in parallel without disturbing the main session. - Gated compile-time features for persistent Markdown memory, ACP editor integration (e.g., Zed), and experimental multithreaded subagents.
- Sandboxed execution via bubblewrap or zerobox for bash commands, plus granular permission modes ranging from “ask every time” to “yolo”.
Caveats
- Windows support is completely untested; the maintainers explicitly warn against expecting it to work.
- Several headline features—persistent memory, ACP server support, and experimental multithreaded subagents—are gated behind compile-time Cargo features and absent from the default build.
- The iterative loop system for long-horizon tasks is marked experimental.
Verdict
Developers who want a fast, local-first coding agent with strict permission controls and a tiny resource footprint should take a look. If you need a polished GUI, first-class Windows support, or a plug-and-play experience without compiling features, this isn’t your stack yet.
Frequently asked
- What is gi-dellav/zerostack?
- It exists because coding agents shouldn't need more RAM than the projects they're editing.
- Is zerostack open source?
- Yes — gi-dellav/zerostack is open source, released under the GPL-3.0 license.
- What language is zerostack written in?
- gi-dellav/zerostack is primarily written in Rust.
- How popular is zerostack?
- gi-dellav/zerostack has 1.5k stars on GitHub and is currently accelerating.
- Where can I find zerostack?
- gi-dellav/zerostack is on GitHub at https://github.com/gi-dellav/zerostack.