zerostack: agent lập trình Rust chỉ cần 8MB RAM
Một lập trình viên tự viết coding agent bằng Rust thuần với RAM idle chỉ 8MB. HN tranh cãi liệu con số đó có ý nghĩa không.

Một buổi sáng tôi gõ claude --version chỉ để kiểm tra con số. Con trỏ đứng yên. Bốn giây sau terminal in ra một chuỗi version rồi im lặng.
Tôi không phải người duy nhất để ý chuyện này. Một tài khoản tên mohsen1 trên HN đã bấm giờ nghiêm chỉnh và đăng kết quả lên:
$ time claude --version
2.1.143 (Claude Code)
Executed in 4.39 secs fish external
usr time 29.68 millis 0.26 millis 29.41 millis
sys time 71.30 millis 1.30 millis 70.00 millis
Benchmark đó giờ đang nằm trong thread bình luận của zerostack, một coding agent Rust vừa xuất hiện trên HN hôm qua với 335 upvote.
Câu chuyện trong một câu
zerostack là một coding agent full-featured viết bằng 7.000 dòng Rust thuần - hỗ trợ đa provider (OpenRouter, OpenAI, Anthropic, Gemini, Ollama), hệ thống phân quyền bốn mức, quản lý session, hệ thống prompts có thể chuyển đổi, MCP cho công cụ mở rộng, tích hợp git worktree, và vòng lặp tác vụ dài hạn - với RAM idle chỉ khoảng 8MB và binary nặng 8.9MB.
Để so sánh: opencode và các agent nền JS khác chạy ở mức khoảng 300MB lúc rảnh.
Vì sao bài này leo top HN
So sánh kiến trúc runtime: ZeroStack (Rust binary 8MB) vs. Node.js Agent cồng kềnh:
Công thức quen thuộc: Rust, một lập trình viên, một dự án lớn dần thành thứ gì đó thật sự, và một README có bảng hiệu năng khiến các tool khác trông ngại.
| Chỉ số | zerostack | opencode / agent JS |
|---|---|---|
| RAM (rảnh) | ~8MB | ~300MB |
| RAM (đang làm) | ~12MB | ~300MB+ |
| CPU (rảnh) | 0,0% | ~2% |
| CPU (dùng tool) | ~1,5% | ~20% |
| Kích thước binary | 8,9MB | - |
Cú đấm càng mạnh hơn khi nhìn vào danh sách tính năng thật sự. Đây không phải toy project bị cắt xén. Nó có hệ thống prompts với các chế độ chuyển đổi được: code, plan, review, debug, ask, brainstorm, frontend-design, review-security… Nó tự đọc AGENTS.md và CLAUDE.md từ thư mục dự án, y như mọi agent lớn khác. Nó có bộ phát hiện doom-loop - tự động dừng lại khi agent lặp đúng một tool call ba lần liên tiếp.
Nói cách khác: đủ tính năng, nhưng chỉ bằng một phần bốn mươi bộ nhớ.
Thread HN đang tranh cãi gì
Bình luận nổi nhất đến từ throwa356262, thẳng vào con số:
“RAM footprint: ~8MB khi session rỗng, ~12MB khi đang làm việc. Tôi thích điều này lắm, Claude Code đang dùng nhiều gigabyte, cực kỳ khó chịu trên laptop cấu hình thấp.”
Tiếp theo, 360MustangScope thú nhận họ đang giữa chừng tự viết một agent Rust thì zerostack xuất hiện:
“Thật buồn cười khi opencode cứ leak bộ nhớ dần, đến khi làm dự án lớn thì leo lên 6GB rồi chậm dần đều.”
Rồi bình luận sắc bén nhất thread đến từ 2001zhaozhao:
“Hơi buồn cười khi coding agent cần kéo 1000W+ và dùng 2TB+ bộ nhớ ở data center để chạy, vậy mà người ta cứ tập trung vào vài watt và vài trăm megabyte trên laptop - vốn đã bị chi phí compile code che khuất rồi.”
Kỹ thuật mà nói, điều này đúng. Model không chạy trên máy của bạn. Inference nằm đâu đó ở một data center, và chi phí năng lượng mỗi request lớn hơn nhiều so với những gì client địa phương tiêu tốn. Liệu process local dùng 8MB hay 300MB chỉ là nhiễu so với đó.
Nhưng tôi nghĩ lập luận ngược lại cũng có lý: hiệu năng client-side không phải chuyện bảo vệ môi trường - mà là chuyện cảm giác dùng tool. Một tool ngốn 2% CPU khi bạn không dùng nó, một tool mất bốn giây để in ra version của chính nó - tool đó đang nói với bạn điều gì đó về những giả định mà tác giả đã mặc định. Và những giả định đó không phải của tôi.
Nên thử không?
Thử zerostack nếu: bạn đang dùng agent dòng lệnh và muốn thứ gì đó không ngốn 2% CPU lúc nhàn, máy bạn có RAM hạn chế và 300MB thật sự gây khó chịu, bạn muốn chuyển LLM provider mà không phải đổi tool, hoặc bạn tò mò xem một lập trình viên solo xây dựng toàn bộ agent stack trong ~7k dòng như thế nào.
Bỏ qua nếu: bạn cần tích hợp VS Code của Claude Code, cần hỗ trợ Windows được kiểm thử kỹ (zerostack nói thẳng là không test), hoặc workflow của bạn phụ thuộc vào thứ gì đó provider-specific.
Cài đặt chỉ một lệnh:
cargo install zerostack
export OPENROUTER_API_KEY="your-key"
zerostack
Có một tính năng tôi thích: sandbox mode. Cài bubblewrap rồi truyền --sandbox, mọi lệnh bash sẽ chạy trong môi trường cô lập. Loại tính năng này cho thấy tác giả đã nghĩ đến những gì có thể xảy ra nếu mọi thứ đi sai hướng.
Toàn bộ codebase nhỏ đến mức một người dùng (hiAndrewQuinn) đã đút cả source code vào một agent khác để kiểm tra tự động và không thấy gì đáng ngờ. Đó là ưu điểm của codebase nhỏ và dễ đọc.
Các Kiến Trúc AI Agent Liên Quan
Nếu anh em coi trọng các workflow coding tự hành tốc độ cao, siêu nhẹ và kiểm soát tài nguyên chặt chẽ, hãy đọc tiếp:
- Pi Mono Explained: Kiến Trúc Autonomous AI Coding Agent: Khám phá cách các composable primitives, cây phân nhánh session và extension TypeScript tạo nên vòng lặp tự hành hoàn chỉnh.
- 9Router: Cổng Định Tuyến AI Coding Miễn Phí Không Giới Hạn: Định tuyến các terminal coding agent qua reverse proxy chịu lỗi cao với cơ chế fallback tự động.
- Context Hub: Kho Tài Liệu Tinh Gọn Cho Coding Agent: Nạp tài liệu chuẩn hóa, tiết kiệm token thẳng vào context window của agent.
- Understand Anything: Đồ Thị Dạy Học Codebase Cho Coding Agent: Biến toàn bộ repo đồ sộ thành bản đồ tri thức trực quan giúp coding agent hiểu dự án ngay lập tức.
Thảo luận trên Hacker News · Nguồn: crates.io · Đăng bởi gidellav
Bài viết liên quan
Microsoft open source pg_durable: Đưa workflow vào lòng Postgres
Microsoft vừa open source pg_durable, một extension chạy workflow bền vững ngay trong Postgres. Dân tình tranh cãi việc mang logic trở lại database.
AutoResearch Giải Thích: Vì Sao Karpathy Đóng Góp Cho AI Scientist Này
Mổ xẻ AutoResearch: kiến trúc AI scientist đa mô hình, cơ chế Ralph loop hồi phục trạng thái và lý do Karpathy trực tiếp đóng góp vào repo.
Understand Anything: Bản Đồ Codebase Dạy Người Đọc, Không Phải Khoe Đồ
Plugin Claude Code (chạy luôn trên Cursor, Codex, Copilot, Gemini CLI) biến mọi codebase thành knowledge graph tương tác - bấm, kiếm, hỏi câu nào cũng có.
Buổi Sáng Mở IDE Lên Thì Thấy Chatbot
Google cập nhật Antigravity 2.0 tại I/O 2026 và âm thầm xóa IDE của lập trình viên, thay bằng một hộp chat. Cách sửa duy nhất: xóa sạch tất cả rồi cài lại.