lexmount/moli
AI 에이전트를 위한 경량 헤드리스 브라우저 Moli 공개
원제 lexmount/moli
스타 22,424당일 +240Rust
Key Point
AI 에이전트가 웹 자동화 작업을 할 때 매번 전체 브라우저를 렌더링할 필요가 없다는 점을 구현한 새로운 브라우저로, 메모리와 CPU를 대폭 절감하면서도 Chrome과 유사한 호환성을 제공한다.
핵심 요약
- Rust로 만들어진 프로덕션급 헤드리스 브라우저 Moli는 온디맨드 레이아웃 및 렌더링 방식으로 완전한 브라우저 런타임을 가볍게 유지한다.
- CLI, CDP, WebDriver Classic, WebDriver BiDi를 모두 지원하며 Linux, macOS, Windows에서 동작한다.
- 페이지 구조 추출, DOM 쿼리, 자바스크립트 실행은 레이아웃과 페인트를 건너뛰고 브라우저 런타임 상태를 직접 읽는다.
- 요소의 박스 정보나 좌표 입력이 필요하면 한 번만 레이아웃 계산을 수행하고, 스크린샷은 필요할 때만 렌더링을 재구성하고 버린다.
- V8 자바스크립트, CSS 캐스케이드, Fetch/XHR/WebSocket, 쿠키, WebCrypto, localStorage, IndexedDB 등을 포함한 완전한 웹 런타임을 지원한다.
- 벤치마크에서 192개 공개 URL 크롤 테스트에서 53.6% 성공률과 중간값 73 MiB 메모리를 기록했다.
- Chrome Headless가 773 MiB 메모리를 사용할 때 Moli는 73 MiB로 약 10분의 1 수준의 메모리만 사용한다.
- 에이전트 워크로드 테스트에서 Moli는 102.46 MiB 피크 메모리를 사용하며 Chrome의 348.82 MiB의 약 29% 수준이다.
- WPT 테스트에서 한 번의 풀 런으로 1,612만 개 테스트를 통과했다.
- Lexbench-Headless-Browser 벤치마크에서 1,308개 작업 중 1,071개(81.88%)를 통과하며 Chrome(99.85%)에 이은 성적을 기록했다.
- Moli는 Chrome 대비 약 15% 수준의 CPU 시간과 13% 수준의 피크 메모리를 사용한다.
- Apache License 2.0 또는 MIT 라이선스로 제공되며, 개별 설치 시 Linux/macOS에서 한 줄 명령어로 설치할 수 있다.
- 레이아웃은 기본값으로 비활성화되며, --layout 옵션으로만 실제 레이아웃과 렌더링을 활성화할 수 있다.
저장소 보기 ↗github.com