터미널 기반 로컬 코딩 에이전트
Zero는 로컬 터미널에서 다양한 모델과 권한 정책을 사용해 코드 검사·수정·명령 실행을 자동화하는 오픈소스 코딩 에이전트이다.
TL;DR
Zero는 로컬 터미널에서 동작하는 코딩 에이전트로, 다양한 모델 프로바이더(README의 배지 기준 25+ providers)를 연결해 코드 검사·편집·명령 실행을 자동화한다. 내부적으로는 권한 기반 샌드박스와 파일 쓰기 루트 제한을 통해 에이전트의 부작용을 제어하고 세션을 로컬에 영속화해 재개와 검색을 지원한다. 대화형 TUI와 stream-json을 쓰는 headless exec을 모두 제공해 인터랙티브한 탐색과 CI·자동화 파이프라인 연동을 동시에 가능하게 한다. 제약으로는 빌드와 일부 기능이 Go 1.25+ 환경을 필요로 하며 리눅스에서는 추가 샌드박스 헬퍼를 구성해야 한다.
주요 기능
- 로컬 리포지토리를 검사하고 파일을 편집하는 기능을 제공한다. 에이전트가 생성한 변경은 파일 쓰기 권한 정책과 샌드박스 검사를 거쳐 적용되며 의도하지 않은 외부 쓰기를 미연에 방지한다. 이 과정은 안전한 자동화를 유지하면서도 반복 가능한 코드 수정 워크플로를 지원한다.
- 대화형 TUI와 headless exec 인터페이스를 동시에 제공한다. TUI는 모델·프로바이더 선택, 이미지 입력, 플랜·툴 렌더링, 스크롤백 및 세션 재개 기능을 지원하며 UI 내에서 권한 모드를 전환할 수 있다. Headless exec은 stream-json 같은 구조화된 입출력 포맷과 의미 있는 종료 코드를 제공해 CI 및 자동화 파이프라인에 적합하다.
- 다수의 모델 제공자를 연결할 수 있도록 설계되었다. README 배지와 문서는 25개 이상의 프로바이더 지원을 강조하며 OpenAI·Anthropic·Ollama·LM Studio 등 다양한 엔드포인트를 사용할 수 있다. API 키 기반 설정과 로컬 모델 감지 기능을 통해 클라우드와 온프레미스 모델을 모두 활용할 수 있다.
- 세션을 로컬에 저장해 지속성과 가시성을 확보한다. 세션은 디스크에 저장되어 검색·재개·포크가 가능하며 텔레메트리로 전송되지 않는다는 점이 명시되어 있다. 이 설계는 민감한 코드·컨텍스트를 외부에 노출하지 않고 장기적 작업 흐름을 유지할 수 있게 한다.
어떻게 동작하는가
Zero는 Go 기반 CLI와 TUI를 중심으로 동작하며 외부 모델 프로바이더와 MCP 도구를 통해 기능을 확장한다. 사용자의 명령은 내부 에이전트 루프에서 처리되어 파일 시스템·쉘·네트워크 접근을 권한 정책과 샌드박스 검사로 필터링한 뒤 실제 부작용을 발생시킨다. 세션과 대화 기록은 로컬에 영속화되어 재개·검색이 가능하고 headless 모드는 stream-json 규격을 통해 자동화 시스템과 연동된다.
해결 문제
로컬 개발 환경에서 모델 기반 코드 작업을 자동화하면서도 안전한 권한 통제를 유지하는 문제가 해결된다. Zero는 파일 쓰기 루트 제한, 쉘 명령 권한, 네트워크 접근 제어 같은 샌드박스 정책을 적용해 에이전트의 부작용을 최소화한다. 또한 세션 영속화와 headless 인터페이스를 통해 재현 가능한 자동화와 CI 통합 문제를 동시에 다룰 수 있다.
지금 주목받는 이유
터미널 중심의 에이전트라는 점과 다수의 모델 프로바이더 지원이 결합되어 관심을 받고 있다. README 배지에 25+ providers가 표시되어 다양한 모델 실험과 온프레미스 통합 시나리오에 적합함이 확인된다. 또한 TUI와 headless 모드를 동시에 제공해 개발자 경험과 자동화 요구를 동시에 만족시키는 점이 주목 요인이다.
차별점
- 프로바이더·모델 비종속성으로 다양한 엔드포인트를 선택할 수 있게 한다. README는 OpenAI, Anthropic, Ollama, LM Studio 등 다수의 옵션을 나열하며 로컬 모델과 클라우드 모델을 동일한 워크플로에서 사용할 수 있도록 구성되어 있다. 이 접근은 특정 벤더에 락인되는 위험을 낮추고 실험과 전환을 용이하게 한다.
- 권한 기반 샌드박스와 작업 격리로 안전한 자동화를 보장한다. 파일 쓰기와 위험한 쉘 명령은 명시적 권한 부여를 필요로 하며 추가 쓰기 루트는 --add-dir 또는 대화형 명령으로 한정적으로 허용된다. 이 설계는 민감한 리포지토리에서 에이전트 실행 시 의도치 않은 변경을 방지하는 핵심 차별점이다.
- 대화형 TUI와 스크립트 가능한 headless 모드를 함께 제공해 개발자 워크플로를 폭넓게 커버한다. TUI는 플랜·툴 렌더링과 세션 관리 기능을 제공하고 headless는 stream-json 출력과 의미 있는 종료 코드로 CI 통합을 용이하게 만든다. 이 조합은 실시간 탐색과 자동화 배포를 하나의 도구로 통합하는 이점을 준다.
- 로컬 세션 영속화와 스페셜리스트 확장으로 장기적 작업 흐름을 지원한다. 세션은 디스크에 저장되어 나중에 검색·재개·포크가 가능하며 스페셜리스트와 MCP 도구를 통해 도메인 특화 작업을 모듈화할 수 있다. 이 설계는 반복적인 리팩터링, 검증 작업, 복잡한 자동화 시나리오를 안정적으로 처리하게 한다.
사용 사례
- 대화형 TUI를 이용해 리포지토리 내부 코드를 검토하고 바로 수정·테스트하는 작업에 활용할 수 있다. 플랜 작성과 툴 렌더링 기능으로 변경 절차를 미리 점검하고 권한 모드 전환으로 위험을 통제하면서 작업을 진행할 수 있다. 이 방식은 복잡한 리팩터링이나 긴밀한 코드 리뷰 루프를 단축하는 데 유용하다.
- CI 파이프라인이나 자동화 스크립트에서 headless exec과 stream-json 포맷을 사용해 반복적 수리·검증 작업을 자동화할 수 있다. 명령형 실행은 의미 있는 종료 코드와 구조화된 출력을 반환하므로 자동화 도구가 결과를 판정하고 후속 단계를 결정하기에 적합하다. 이 패턴은 대규모 리포지토리의 자동 화이트리스팅·검증·리팩터링 작업에서 효율을 높인다.
- 로컬 모델이나 보안상 민감한 코드로 실험할 때 샌드박스 권한과 로컬 세션 저장을 조합해 프라이버시를 유지한 채 모델 기반 보조를 적용할 수 있다. 추가 쓰기 루트나 네트워크 권한은 명시적으로 부여해야 하므로 내부 데이터가 외부로 유출되는 리스크를 줄일 수 있다. 이 접근은 기업 내부 개발 환경이나 규제된 코드베이스에서 유용하다.
시작하기
가장 빠른 시작 경로는 npm 래퍼를 이용한 설치이며 npm install -g @gitlawb/zero 후 zero 명령으로 TUI를 실행하면 된다. 운영체제별 설치 스크립트는 curl -fsSL https://raw.githubusercontent.com/Gitlawb/zero/main/scripts/install.sh | bash 같은 명령으로 자동화된 설치가 가능하며 수동으로 소스 빌드를 원할 경우 git clone 후 go run ./cmd/zero로 실행할 수 있다. 첫 실행 시 설정 마법사가 모델 프로바이더와 API 키 입력을 안내하며 zero setup, zero providers list, zero models list 같은 명령으로 환경을 점검할 수 있다.
요구사항
- 빌드와 일부 소스 실행은 Go 1.25 이상을 요구한다. npm 래퍼를 사용할 경우 Node/npm 환경이 필요하며 npm 패키지는 플랫폼 별 네이티브 바이너리를 GitHub Releases에서 내려받는다. Linux에서 네이티브 샌드박스 지원을 원하면 추가로 zero-linux-sandbox 같은 헬퍼 바이너리를 같은 PATH에 배치해야 한다.
846
Stars
72
Forks
+227
Trending
1
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.