Agent-Desktop: 운영체제 접근성 트리를 통한 구조화된 데스크톱 자동화

✍️ OpenClawRadar📅 게시일: May 2, 2026🔗 Source
Agent-Desktop: 운영체제 접근성 트리를 통한 구조화된 데스크톱 자동화
Ad

Agent-desktop은 Rust로 구축된 네이티브 데스크탑 자동화 CLI로, 프로그래밍 방식으로 데스크탑 애플리케이션을 제어해야 하는 AI 에이전트를 위해 설계되었습니다. 일반적인 스크린샷 기반 접근 방식(스크린샷 촬영, 픽셀 좌표 예측, 클릭, 반복) 대신 운영 체제의 접근성 트리(화면 리더가 사용하는 것과 동일한 구조화된 데이터)를 통해 상호 작용합니다. 즉, 모델이 요소 역할, 이름, 계층 구조 및 상태를 직접 확인하므로 상호 작용이 더 빠르고 저렴하며 UI 변경에도 더 강력합니다.

주요 기능

  • 단일 Rust 바이너리(~15MB), 런타임 종속성 없음
  • 관찰, 상호 작용, 키보드, 마우스, 알림, 클립보드 및 창 관리에 걸친 53개 명령어
  • JSON 출력 — 오류 코드 및 복구 힌트가 포함된 기계 판독 가능 형식
  • 접근성 우선 활성화 체인: 순수 접근성 API 전략을 먼저 사용하고, 실패 시 마우스 이벤트로 대체
  • 결정론적 요소 참조(예: @e1, @e2), UI 변경 시 낙관적 재식별
  • 프로그레시브 스켈레톤 탐색: 먼저 얕은 트리(깊이 ~3), children_count로 주석 처리, 그런 다음 특정 영역으로 드릴다운
  • 창, 메뉴, 시트, 팝오버, 알림, 알림 지원
  • Chromium/Electron 접근성 트리의 특수 처리를 통해 노이즈 감소
  • cdylib을 통한 C ABI — 명령어당 프로세스를 생성하지 않고 Python, Swift, Go, Node, Ruby 또는 C에서 직접 로드 가능
Ad

일반적인 워크플로

Slack이나 VS Code처럼 복잡한 앱의 경우, 프로그레시브 스켈레톤 탐색을 사용하여 토큰 사용량을 최소화하세요:

# 1. 얕은 개요 — depth-3 맵, 잘린 컨테이너는 children_count 표시
esktop snapshot --skeleton --app Slack -i --compact

2. 관심 영역으로 드릴다운 (이름이 있는 컨테이너는 refs를 얻음)

agent-desktop snapshot --root @e3 -i --compact

3. 드릴다운에서 찾은 요소에 대해 작업 수행

agent-desktop click @e12

4. 동일한 영역을 다시 드릴다운하여 상태 변경 확인

agent-desktop snapshot --root @e3 -i --compact

더 간단한 앱의 경우 전체 스냅샷으로 충분합니다: agent-desktop snapshot --app Finder -i.

설치

npm install -g agent-desktop
# 또는 npx 사용: npx agent-desktop snapshot --app Finder -i
# 소스에서: cargo build --release

성능 통계

실제로 프로그레시브 스켈레톤 접근 방식은 Slack, VS Code, Notion과 같은 Electron 앱에서 전체 트리 덤프와 비교하여 토큰 사용량을 78%에서 96%까지 줄였습니다. 예를 들어 Slack의 전체 접근성 트리는 50,000개 토큰을 초과할 수 있으며, 이는 대부분의 LLM 컨텍스트에 비실용적입니다.

대상 사용자

데스크탑 에이전트, 내부 자동화 도구 또는 연구 프로토타입을 구축하는 개발자로서 스크린샷 기반 제어 루프의 비용과 불안정성을 피하고자 하는 분들.

📖 전체 소스 읽기: HN AI Agents

Ad

👀 See Also

Swarm Leak Detector: OpenClaw 구성에서 노출된 API 키를 스캔하는 무료 도구
Tools

Swarm Leak Detector: OpenClaw 구성에서 노출된 API 키를 스캔하는 무료 도구

한 개발자가 21개 이상의 자격 증명 패턴(OpenAI, Anthropic, OpenRouter, Stripe 등)을 일반 텍스트 JSON 구성 파일에서 스캔하는 제로 종속성 MIT 라이선스 도구인 swarm-leak-detector를 출시했습니다. npx swarm-leak-detector scan ~/.clawdbot/ 명령어로 약 30초 만에 유출 여부를 확인할 수 있습니다.

OpenClawRadar
Nit: AI 에이전트 토큰 효율성을 위해 최적화된 Zig 언어 기반 Git 대체 도구
Tools

Nit: AI 에이전트 토큰 효율성을 위해 최적화된 Zig 언어 기반 Git 대체 도구

Nit는 Zig로 작성된 네이티브 Git 대체 도구로, status, diff, log, show와 같은 일반적인 명령어에서 토큰 사용량을 35-87% 감소시킵니다. 이는 간결한 출력 기본값과 직접적인 libgit2 통합을 통해 하위 프로세스 오버헤드를 제거함으로써 달성됩니다.

OpenClawRadar
SwiftUI 에이전트 스킬: AI로 뷰 개발 향상하기
Tools

SwiftUI 에이전트 스킬: AI로 뷰 개발 향상하기

SwiftUI Agent Skill은 AI를 활용하여 SwiftUI 뷰 개발을 개선하는 오픈소스 도구로, 모범 사례와 최적화 기법을 내장하고 있습니다.

OpenClawRadar
클로드 코드를 사용하여 LLM으로 4,000건 이상의 블라인드 웨어울프 게임 시뮬레이션
Tools

클로드 코드를 사용하여 LLM으로 4,000건 이상의 블라인드 웨어울프 게임 시뮬레이션

한 개발자가 Claude Code를 사용해 LLM들이 눈가리개 원나이트 웨어울프를 플레이하는 시뮬레이터를 구축했으며, OpenAI와 xAI 모델을 대상으로 약 4,600게임을 실행했습니다. 이 실험은 게임 신호가 최소한임에도 불구하고 일관된 이름 기반 투표 패턴을 드러냈습니다.

OpenClawRadar