Repolode
vercel-labs

vercel-labs/agent-desktop

OS 접근성 트리를 통해 AI 에이전트가 macOS, Windows, Linux의 데스크톱 앱을 읽고 조작할 수 있게 해 주는 CLI 및 C 라이브러리입니다.

스타
18,740
포크
1,367
열린 이슈
26
마지막 커밋
19시간 전

어떤 프로젝트인가요?

agent-desktop은 스크린샷이나 픽셀 매칭에 의존하지 않고 AI 에이전트가 데스크톱을 사용할 수 있게 합니다. 스냅샷을 요청하면 에이전트가 조작할 수 있는 모든 요소와 각 요소의 안정적인 ref를 나열한 JSON을 반환합니다. 에이전트는 ref를 대상으로 작업한 다음 새 스냅샷을 받아 결과를 확인하고 이 과정을 반복합니다. 의사 결정 루프는 에이전트 내부에서 처리됩니다.

macOS, Windows, Linux에서 실행되며, x64 및 ARM64용 네이티브 바이너리가 포함된 npm 패키지나 릴리스 아카이브로 배포됩니다. Linux 지원에는 AT-SPI가 필요하며, X11과 Wayland처럼 플랫폼 및 디스플레이 서버에 따라 일부 기능이 다릅니다. ref를 이용한 작업은 기본적으로 헤드리스 방식이므로 포인터를 움직이거나 포커스를 가져오지 않습니다. 전역 --headed 플래그를 사용하면 실제 입력을 활성화할 수 있습니다.

프로젝트에는 프로그램이 프로세스 내부에서 호출할 수 있는 C FFI 라이브러리도 포함되어 있으며, README에는 Python 예제가 있습니다. 스냅샷과 스크린샷에 비공개 데스크톱 콘텐츠가 포함될 수 있으므로, 이를 공개 로그에 남기지 않는 방법도 문서화되어 있습니다.

핵심 기능

  • 01접근성 트리 스냅샷을 JSON으로 반환하며, 조작 가능한 각 요소에 ref를 부여합니다.
  • 02ref는 해당 스냅샷에 연결되며, 오래되었거나 대상이 모호한 경우 오류로 보고합니다.
  • 03기본적으로 헤드리스 ref 작업은 포인터를 움직이거나 포커스를 가져오지 않습니다.
  • 04관찰, 클릭, 입력, 창 관리, 클립보드 및 알림 기능을 지원합니다.
  • 05다른 언어에서 프로세스 내부 호출을 할 수 있도록 C FFI 라이브러리를 제공합니다.

활용 사례

  • API가 없는 네이티브 데스크톱 앱을 AI 에이전트가 조작하도록 하기.
  • macOS, Windows 또는 Linux에서 반복적인 GUI 작업을 자동화하기.
  • 매 작업 후 새 스냅샷으로 결과를 확인하는 컴퓨터 사용 에이전트 만들기.
  • C 라이브러리를 통해 다른 프로그램에 데스크톱 자동화 기능 통합하기.

빠른 시작

  1. 1

    npm으로 패키지를 전역 설치합니다

    npm install -g agent-desktop
  2. 2

    설치된 버전을 확인합니다

    agent-desktop version
  3. 3

    macOS에서 손쉬운 사용 권한을 부여합니다(가이드 참조)

    agent-desktop permissions --guide
  4. 4

    Finder와 같은 앱의 대화형 스냅샷을 찍습니다

    agent-desktop snapshot --app Finder -i

사용 전 알아둘 점

  • macOS에서는 손쉬운 사용 권한이 필요하며, Linux에서는 at-spi2-core가 설치된 그래픽 세션이 필요합니다.
  • Wayland 스크린샷이나 Linux에서 GNOME 전용 알림처럼 일부 기능은 플랫폼에 따라 제한됩니다.
  • key-down, key-up, mouse-down, mouse-up 명령은 아직 작동하지 않습니다.
  • 스냅샷과 스크린샷에는 데스크톱의 비공개 콘텐츠가 노출될 수 있으므로 공개 로그에 포함하지 마세요.

포함된 컬렉션

토픽

자주 묻는 질문

agent-desktop은(는) 무엇인가요?
OS 접근성 트리를 통해 AI 에이전트가 macOS, Windows, Linux의 데스크톱 앱을 읽고 조작할 수 있게 해 주는 CLI 및 C 라이브러리입니다. agent-desktop은 스크린샷이나 픽셀 매칭에 의존하지 않고 AI 에이전트가 데스크톱을 사용할 수 있게 합니다. 스냅샷을 요청하면 에이전트가 조작할 수 있는 모든 요소와 각 요소의 안정적인 ref를 나열한 JSON을 반환합니다. 에이전트는 ref를 대상으로 작업한 다음 새 스냅샷을 받아 결과를 확인하고 이 과정을 반복합니다. 의사 결정 루프는 에이전트 내부에서 처리됩니다.
agent-desktop은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
agent-desktop은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
agent-desktop은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. agent-desktop의 마지막 커밋은 2026년 11월 7일입니다.
agent-desktop은(는) 어디에 사용할 수 있나요?
API가 없는 네이티브 데스크톱 앱을 AI 에이전트가 조작하도록 하기. macOS, Windows 또는 Linux에서 반복적인 GUI 작업을 자동화하기. 매 작업 후 새 스냅샷으로 결과를 확인하는 컴퓨터 사용 에이전트 만들기. C 라이브러리를 통해 다른 프로그램에 데스크톱 자동화 기능 통합하기.
agent-desktop는 어떻게 설치하나요?
npm으로 패키지를 전역 설치합니다: npm install -g agent-desktop 설치된 버전을 확인합니다: agent-desktop version macOS에서 손쉬운 사용 권한을 부여합니다(가이드 참조): agent-desktop permissions --guide Finder와 같은 앱의 대화형 스냅샷을 찍습니다: agent-desktop snapshot --app Finder -i
agent-desktop은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/vercel-labs/agent-desktop

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트