쉘 명령어 한 줄로 브라우저를 제어하는 Vercel의 agent-browser
![]()
Playwright를 쓰려면 코드를 작성해야 하고, Playwright MCP는 MCP 프로토콜을 지원하는 클라이언트가 필요해요. 그런데 AI 에이전트에게 Bash 접근 권한만 있다면 어떨까요? Vercel Labs에서 만든 agent-browser는 모든 브라우저 자동화 기능을 쉘 명령어로 제공해요. 의존성을 극한까지 걷어낸 접근이죠.
Rust로 만들어진 네이티브 CLI라서 명령어 파싱 오버헤드가 거의 없어요. npm으로 전역 설치하거나 npx로 바로 시험해볼 수 있고, macOS에서는 Homebrew로도 설치할 수 있죠.
snapshot 명령어가 AI 에이전트의 눈이 된다
가장 중요한 명령어는 `snapshot`이에요. 현재 페이지의 접근성 트리를 텍스트로 출력하는데, AI 에이전트가 페이지 구조를 이해하는 데 최적화된 형태로 정보를 제공하죠. 각 요소 앞에 `ref=e1` 같은 참조 ID가 붙어서, CSS 셀렉터 대신 `@e4`처럼 간단하게 요소를 지정할 수 있어요.
`find` 명령어는 역할(role), 텍스트, 레이블 같은 의미 기반으로 요소를 찾아서 바로 동작을 수행해요. CSS 셀렉터보다 사람이 읽기 쉽고 페이지 구조 변경에도 강하죠. 데이터 추출도 간단해요. `get text`, `get html`, `get value`, `get count` 등의 명령어를 사용하면 돼요.
프로토콜이 아니라 인터페이스를 줄인 것이 핵심
agent-browser의 설계 철학은 명확해요. AI 에이전트가 브라우저를 다루기 위해 넘어야 할 문턱을 최소화한 거예요. MCP 서버를 띄울 필요도, SDK를 임포트할 필요도, 특정 언어로 코드를 작성할 필요도 없어요. 쉘 접근만 가능하면 어떤 AI 에이전트든 바로 브라우저를 열고 클릭하고 텍스트를 입력하고 스크린샷까지 찍을 수 있거든요.
이건 브라우저 자동화의 민주화라고 볼 수 있어요. 도구 간 호환성 문제를 프로토콜로 해결하는 MCP와는 다른 방향이지만, "가장 보편적인 인터페이스는 쉘이다"라는 관점에서 보면 오히려 더 근본적인 접근일 수 있죠.