한줄 요약
Rust로 만든 초경량 AI 코딩 에이전트, JS 기반 도구 대비 메모리 사용량 25분의 1 수준
무엇이 달라지나?
AI 코딩 에이전트 시장에 Rust로 작성된 새로운 선택지가 등장했다. Zerostack은 약 7,000줄 수준의 코드베이스로 구현된 미니멀한 코딩 에이전트로, 성능 수치가 꽤 인상적이다.
공식 수치 기준으로 바이너리 크기는 8.9MB이며, 빈 세션 기준 RAM 점유는 약 8MB, 작업 중에도 약 12MB 수준에 머문다. 비교 대상으로 명시된 opencode 등 JS 기반 에이전트는 약 300MB의 RAM을 사용하는 것으로 나타나, 단순 수치상으로는 약 25배 차이다. CPU 사용률도 유휴 시 0.0%, 도구 사용 중 약 1.5%로 측정됐다고 밝히고 있다(측정 환경: Intel i5 7세대).
기능 면에서는 단순 경량화에만 머물지 않는다. OpenRouter, OpenAI, Anthropic, Gemini, Ollama 등 주요 AI 제공자를 모두 지원하며, 커스텀 엔드포인트도 설정할 수 있다. 파일 읽기·쓰기·편집, grep, 디렉터리 탐색 등 파일 도구와 Bash 실행 기능을 갖추고 있으며, MCP(Model Context Protocol) 서버 연동도 지원한다.
눈에 띄는 부분은 프롬프트 시스템이다. code, plan, review, debug, ask, brainstorm, frontend-design, review-security, simplify, write-prompt 등 10가지 빌트인 프롬프트 모드를 런타임에 전환할 수 있다. 별도의 스킬이나 플러그인 관리 없이 에이전트의 행동 방식을 즉석에서 바꿀 수 있다는 점에서 실무 적용 유연성이 높다.
Git Worktree 통합도 흥미롭다. /worktree, /wt-merge, /wt-exit 커맨드를 통해 채팅 UI 안에서 브랜치 단위 작업 흐름을 관리할 수 있다. 다만 이 기능은 현재 실험적(experimental)으로 표기돼 있다.
실무에서 어떤 의미인가?
AI 코딩 에이전트는 현재 개발자 워크플로에서 빠르게 자리를 잡아가고 있다. 그런데 기존 도구 대부분은 Node.js나 Electron 기반으로 구현돼 있어, 항상 실행 상태를 유지하기엔 리소스 부담이 적지 않다. 개발 머신 사양이 넉넉하지 않거나, 서버 환경에서 헤드리스로 운용하려는 경우라면 이런 부담이 더 뚜렷하게 느껴진다.
Zerostack이 주목받는 이유는 여기에 있다. 낮은 메모리 점유와 바이너리 단일 배포라는 특성은 CI/CD 파이프라인이나 원격 서버에 코딩 에이전트를 붙이려는 시나리오에서 실질적인 이점이 된다. cargo install zerostack 한 줄로 설치가 끝나는 구조도 도입 장벽을 낮춘다.
루프 시스템도 주목할 만하다. 장기 태스크를 위한 반복 실행 기능(/loop)은 태스크를 단계별로 쪼개 계획을 세우고, 테스트를 돌리고, 결과를 반영하며 이터레이션을 돌리는 방식으로 동작한다. 헤드리스 모드에서도 --loop, --loop-max, --loop-run 플래그로 동일한 흐름을 CLI에서 실행할 수 있다. 이 역시 실험적 기능으로 분류돼 있으므로, 프로덕션 자동화에 바로 적용하기보다는 검증 후 사용하는 편이 안전하다.
권한 시스템도 실무 관점에서 잘 설계돼 있다. restrictive, standard, accept-all, yolo 네 단계의 모드를 지원하며, 글로브 패턴으로 도구별 세분화된 권한 설정이 가능하다. 반복되는 동일한 작업에 매번 확인을 요청받지 않도록 세션 단위 허용 목록도 유지된다. Bash 실행 시에는 bubblewrap 기반 샌드박스 옵션도 제공해 시스템 보호 수단을 갖추고 있다.
보안 측면에서 특이한 기능으로 "Doom-loop detection"이 있다. 동일한 도구 호출이 3회 이상 반복되면 경고를 발생시키거나 차단하는 구조로, 에이전트가 오작동하며 파괴적인 명령을 반복 실행하는 상황을 방어한다.
도입 전 체크포인트
Zerostack은 분명 매력적인 수치를 가진 도구다. 하지만 실제 도입 전에 몇 가지를 점검하는 것이 좋다.
첫째, 아직 1.0.0 버전이다. Git Worktree 통합과 루프 시스템이 실험적 기능으로 명시된 만큼, 핵심 기능만 안정적이고 일부 기능은 변경될 가능성이 있다고 보는 것이 맞다.
둘째, 라이선스가 GPL-3.0이다. 내부 도구로 활용하는 것과 상업 제품에 통합하는 것은 다른 이야기다. 라이선스 조건을 사전에 법무팀과 확인해야 한다.
셋째, 성능 수치는 특정 환경(Intel i5 7세대)에서 측정된 값이다. 자신의 환경에서 동일한 수치가 보장되지는 않으며, 비교 대상인 opencode와의 차이도 직접 재현해볼 필요가 있다.