browser-use/macos-harness

The simplest, thinnest harness that gives an LLM complete freedom to control a Mac.

해결하는 문제

Mac 컴퓨터를 제어할 수 있는 최소한의 얇은 인터페이스를 제공합니다. 사전에 구축된 앱 전용 도구나 고정된 프레임워크에 의존하지 않고, 어떤 앱, 브라우저, 로컬 파일 시스템과도 직접 상호작용할 수 있는 원시적인 기능을 에이전트에게 제공합니다.

작동 방식

이 프로젝트는 단일 지속적인 Python 프로세스로 실행되며, 여러 저수준 메커니즘을 사용해 LLM을 macOS에 연결합니다:

  • 시각 및 입력: CGWindow을 사용해 스크린샷을 캡처하고, CGEvent를 사용해 특정 앱의 프로세스 ID(PID)에 직접 키보드 및 좌표 입력을 전달합니다. 사용자의 실제 마우스 커서는 이동하지 않습니다.
  • 접근성: 시각적 데이터만으로는 부족할 경우, 더 깊은 상호작용을 위해 원시 Apple Accessibility(AX) 및 Apple Events를 노출합니다.
  • 브라우저 제어: Browser Harness와 통합하여 Chrome DevTools Protocol(CDP)을 통해 실제 로그인된 웹 브라우저를 제어합니다.
  • 시스템 접근: Path를 통해 로컬 파일 시스템에 직접 접근하고, subprocess를 통해 시스템 셸에 접근합니다.

대상 사용자

macOS에서 정해진 플러그인이나 도구 세트에 제한되지 않고, 복잡한 다중 앱 작업을 수행해야 하는 AI 에이전트를 개발하는 개발자들입니다.

주요 특징

  • 사전 정의된 도구 없음: 에이전트는 작업 중에 see, key, type, click, ax, script와 같은 원시 기능을 사용해 자체 Python 로직을 작성할 수 있습니다.
  • 비침습적: 앱을 앞쪽으로 띄우거나 실제 마우스 포인터를 움직이지 않고도 백그라운드 창을 캡처하고 입력을 전달합니다.
  • 애니메이션된 클릭 스루 포인터를 통해 시각 피드백 제공.
  • 자기 부팅 가능: 간단한 지침 세트를 사용해 에이전트 자체가 설치 및 설정할 수 있도록 설계되었습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트