brijr/iris
Rust0 / 0
Chrome 기반 웹사이트 캡처를 CLI와 MCP로 자동화하는 Rust 도구
TL;DR
Iris는 설치된 Chrome을 Chrome DevTools Protocol로 제어해 웹사이트를 PNG, JPG, WebP 이미지로 캡처하는 Rust 기반 CLI 도구입니다. URL, 전체 페이지, 첫 번째 CSS selector 요소, mobile preset, dark mode, 대기 조건을 명령행 옵션으로 조합하고, 여러 URL은 동시 처리 결과를 JSON Lines로 받을 수 있습니다. 같은 엔진을 local stdio MCP server로 노출해 coding agent가 파일을 찾지 않고 이미지와 구조화된 크기 메타데이터를 inline으로 받습니다. 브라우저 설치가 필수이고 selector는 첫 번째 일치 요소만 지원하므로, 정적 시각 캡처와 agent 기반 UI 확인에는 적합하지만 브라우저 상호작용이나 diff·review까지 포함한 자동화에는 범위가 부족합니다.
핵심 포인트
- Iris는 Rust로 만든 standalone CLI 도구이자 MCP server입니다. Chrome DevTools Protocol로 설치된 Chrome 계열 브라우저를 제어해 웹사이트 이미지를 생성합니다. Codex 같은 coding agent에 로컬 stdio MCP tool로 연결할 수 있습니다.
- CLI 한 번으로 URL, 전체 페이지, CSS selector, viewport, dark mode, 출력 형식을 지정해 캡처합니다. 폰트와 이미지 로드, entrance animation, lazy-loaded content를 기다린 뒤 이미지를 저장합니다. 여러 URL은 하나의 브라우저 프로세스에서 동시에 처리하며 실패한 URL이 전체 batch를 중단하지 않습니다.
- `--selector`는 문서 순서상 첫 번째 일치 요소만 찾아 화면에 넣고 새로 노출된 콘텐츠가 안정화된 뒤 여백을 적용해 자릅니다. `--full`은 전체 페이지를 캡처하며 selector와 동시에 사용할 수 없습니다. Cross-origin iframe 내부와 모든 일치 요소 캡처는 지원하지 않습니다.
- 설치는 설치 스크립트 또는 `cargo install iris-screenshot`로 진행하며 실행 파일 이름은 `iris`입니다. 실행 시 Chrome, Chromium, Edge, Brave 중 하나가 설치되어 있어야 하고 소스 빌드에는 Rust 1.88 이상이 필요합니다. 브라우저 상호작용 scripting, 이미지 diff, review workflow가 필요하면 별도 도구를 함께 사용해야 합니다.
벤치마크
| 벤치마크 | 지표 | 값 | 비교 |
|---|---|---|---|
| Iris CLI 단일 캡처 | median | 1.00 s | Iris 0.4.1, Apple M2 Max, macOS 26.5.2, Chrome 151.0.7922.138에서 local precise-capture.html을 10회 실행한 README 기준값이며 일반적인 성능 보장은 아닙니다. |
| Iris MCP 첫 캡처 | capture time | 965 ms | Iris 0.4.1, Apple M2 Max, macOS 26.5.2, Chrome 151.0.7922.138에서 측정한 README 공개 기준값이며 현재 환경의 측정치가 아닙니다. |
| Iris MCP 후속 10회 캡처 | median / p95 | 366 ms median, 383 ms p95 | Iris 0.4.1, Apple M2 Max, macOS 26.5.2, Chrome 151.0.7922.138에서 MCP가 Chrome 프로세스를 유지한 상태로 측정한 README 공개 기준값이며 현재 환경의 측정치가 아닙니다. |
이미지 분석

249
STARS
10
FORKS
+207
TRENDING
0
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.