개요

PyTorchKR 9bow 게시물은 JavaScript 런타임 기반 코딩 에이전트의 메모리 부담을 줄이기 위해 Rust로 작성된 터미널 코딩 에이전트 zerostack을 소개한다. 저자가 공개한 측정값 기준으로 핵심 코드는 약 3만 줄, 바이너리는 26MB이며 평균 메모리 사용량은 약 16MB, 최대 약 24MB다. 게시물은 여러 LLM 제공자, 프롬프트 모드, 서브에이전트, MCP, 세션 저장·복원과 자동 압축 등 기능도 함께 설명한다. 다만 수치 비교는 저자가 제시한 측정이며, Windows 지원은 검증되지 않았다고 명시되어 있다.

핵심 포인트

  • 자원 사용량: Intel i5 7세대 환경에서 zerostack의 유휴 CPU 사용량은 0.0%, 도구 실행 시 약 1.5%로 제시됐다. 같은 조건에서 opencode는 각각 약 2%, 약 20%였다는 저자의 비교다.
  • 경량 실행 모델: 단일 바이너리로 동작해 사양이 낮은 원격 머신이나 여러 세션을 동시에 실행하는 환경을 겨냥한다.
  • 멀티 프로바이더·도구: OpenRouter를 기본으로 OpenAI, Anthropic, Gemini, Ollama, 사용자 정의 제공자를 지원하며 파일 읽기·쓰기·편집, bash, Exa 검색을 제공한다.
  • 프롬프트 모드와 세션: code, plan, review, debug, ask, brainstorm, review-security 등의 모드를 /prompt로 전환할 수 있고, brainstorm → plan → code → review 체이닝과 사용자 정의 프롬프트를 지원한다. 세션 저장·복원·재개와 컨텍스트 자동 압축도 포함된다.
  • 확장 기능: 컴파일 타임 기능으로 MCP, 영속 마크다운 메모리, Claude Code 스키마와 대체로 호환되는 hooks, advisor, 이미지·PDF 입력, ACP 서버 등을 선택할 수 있다.
  • 권한·안전장치: restrictive, readonly, guarded, standard, yolo의 다섯 권한 모드, 세션 allowlist, 반복 도구 호출을 감지하는 doom-loop 경고를 제공한다. --sandbox는 bubblewrap 설치가 필요하다.
  • 설치·라이선스: 설치 스크립트, Cargo, Homebrew 경로를 제공하며 기본 예시는 OpenRouter API 키를 사용한다. 프로젝트는 GPL-3.0이므로 파생물을 배포할 때 카피레프트 조건을 확인해야 한다.

왜 중요한가

이 사례는 터미널 코딩 에이전트의 기능을 유지하면서 런타임과 상주 메모리 비용을 줄이려는 설계 방향을 보여 준다. 특히 원격 저사양 장비, 동시 다중 세션, 로컬·다중 프로바이더 구성에서 자원 사용량이 중요한 선택 기준이 될 수 있다. 다만 제시된 성능·메모리 수치는 독립 재현 결과가 아니라 게시물 작성자가 공개한 측정값으로 해석해야 한다.

후속 링크와 키워드