browser-use/browser-harness
Browser Harness | Self-healing harness that enables LLMs to complete any task.
Browser Harness – 실제 브라우저에 직접 연결하는 LLM
무엇인가요 – Browser Harness는 Python 기반의 가벼운 라이브러리로, Chrome DevTools Protocol (CDP)를 통해 로컬 Chrome/Edge 브라우저를 언어모델 기반 에이전트가 제어할 수 있게 해줍니다. 에이전트는 작업 중에 필요한 보조 함수를 즉시 작성하고, 자신의 작업 공간에 저장함으로써 각 작업마다 더 지능적으로 발전합니다.
작동 방식
- 하나의 편집 가능한 CDP WebSocket이 열립니다 (
chrome://inspect/#remote-debugging). - 라이브러리는 스킬 (
browser-harness skill)을 함께 제공하여 LLM이 기본적인 브라우저 작업(탭 열기, 클릭, 스크롤, 파일 다운로드 등)을 배우도록 합니다. - 에이전트가 필요한 보조 함수가 없을 경우, Python 코드를
agent-workspace/agent_helpers.py에 작성합니다. 이 보조 함수는 이후 실행에서도 재사용 가능해집니다. - 선택 사항으로 MCP (Multi-Chat-Protocol) 서버 (
browser-harness-mcp)를 사용하면 동일한 제어 기능을 stdio를 통해 제공하여, Claude Code, Cursor, Devin 등과 같은 모든 MCP 호환 클라이언트가 CDP를 다시 구현하지 않고도 브라우저를 제어할 수 있습니다.
주요 기능
- 파일 업로드/다운로드 – 예: 사이트에 파일 업로드 또는 데모 GIF에서 보여주는 대로 동영상 크롤링.
- 병렬/확장형 브라우징 – 개인 작업용으로 무료 로컬 브라우저를 사용하거나, Browser Use Cloud로 전환하여 여러 브라우저, 프록시, CAPTCHA 해결 등 기능을 활용할 수 있습니다.
- 에이전트 생성 보조 함수 – LLM이 세션 중에 자체 도구 상자를 확장할 수 있어 시스템이 시간이 지남에 따라 개선됩니다.
- 사용자 설정 없음 – 한 번의 "원격 디버깅 활성화" 클릭만으로 에이전트가 나머지를 처리합니다.
일반적인 워크플로우
uv(Python 3.12)로 설치/업그레이드하고 스킬을 등록합니다.- 허니스를 실행하면 원격 디버깅 페이지가 열립니다.
- 사용자가 연결을 승인합니다.
- LLM은 프롬프트(예: "내 X 프로필을 열고 최근 20개의 동영상 게시물을 찾아 다운로드해줘.")를 받고 CDP 명령을 실행하기 시작합니다.
- 필요한 보조 함수가 없을 경우, LLM은
agent_helpers.py에 코드를 작성하고 계속 진행합니다.
시작하기
- Claude Code 또는 Codex에 복사하여 붙여넣을 수 있는 짧은 설정 프롬프트를 따르세요. 이 프롬프트는 패키지 설치, 스킬 등록, 선택적 로컬 녹화 설정 여부를 묻습니다.
- 자세한 설치 절차는
install.md에 있습니다. - 스킬 정의는
SKILL.md에 있으며, 핵심 라이브러리 코드는src/browser_harness/아래에 있습니다.
확장성 – 고부하 작업을 위해 Browser Use Cloud에서 API 키를 발급받아 클라우드 서비스가 여러 브라우저를 실행하도록 하세요. 추가 기능(스텔스 모드, 프록시, CAPTCHA 해결, 실시간 미리보기 등)을 활용할 수 있습니다.
커뮤니티 – 버그 수정, 문서 작성, 새로운 에이전트 생성 도메인 스킬 등에 대한 기여를 환영합니다. 지침은 CONTRIBUTING.md를 참고하세요.
결론적으로 – Browser Harness는 현대 LLM 에이전트가 실제 웹 브라우저와 상호작용하고, 실시간으로 새로운 동작을 학습하며, 필요 시 클라우드 호스팅 브라우저로 확장할 수 있도록 실질적인 다리 역할을 합니다. 웹 에이전트 애플리케이션을 구축하기 위한 구체적인 인프라입니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트