agent-sh/computer-use-linux
Native Linux desktop control for AI agents (MCP, Pi, CLI) — semantic AT-SPI trees, screenshots, window targeting, and input across GNOME, KDE, Hyprland, niri, COSMIC, i3, and X11.
해결하는 문제
computer-use-linux는 AI 에이전트가 실제 Linux 데스크톱을 제어할 수 있도록 합니다. 대부분의 "컴퓨터 사용" 도구가 macOS 전용이거나 불안정한 X11 전용 방식에 의존하는 일반적인 한계를 극복하며, Wayland 우선 지원을 포함한 다양한 Linux 윈도우 매니저 및 데스크톱 환경과 에이전트가 상호작용할 수 있는 강력한 방법을 제공합니다.
작동 원리
Rust 기반의 Model Context Protocol (MCP) 서버 및 CLI로 작동합니다. 다음과 같은 메커니즘을 통해 데스크톱과 상호작용합니다:
- 접근성 트리 (Accessibility Trees): AT-SPI를 사용하여 UI 구조를 읽고, 픽셀 좌표에만 의존하는 대신 의미론적 작업(이름으로 특정 버튼 클릭 등)을 수행합니다.
- 컴포지터 인식 (Compositor Awareness): GNOME, KDE, Hyprland, niri, i3, COSMIC 등 다양한 환경에 맞는 특정 백엔드를 사용하여 창을 정확하게 나열하고 포커스를 맞춥니다.
- 입력 시뮬레이션 (Input Simulation): Wayland에서는
org.freedesktop.portal.RemoteDesktop인터페이스를 사용하고, 대체 수단으로ydotool을 사용하며, X11 세션에서는xdotool을 사용합니다. - 시각적 피드백 (Visual Feedback): 색상이 지정된 커서와 상태 표시줄을 포함한 화면 표시기를 통해 사용자가 에이전트의 작업을 실시간으로 확인할 수 있습니다.
대상 사용자
- AI 에이전트 개발자: Linux 소프트웨어와 상호작용해야 하는 에이전트를 구축하는 개발자.
- MCP 호스트 사용자: Claude Desktop, Codex Desktop, Hermes Agent 등의 클라이언트를 사용하며 에이전트에게 Linux 머신 제어 권한을 부여하려는 사용자.
- 시스템 관리자: LLM을 통해 복잡한 데스크톱 UI 작업을 자동화해야 하는 사용자.
주요 특징
- 광범위한 Linux 지원: GNOME, KDE/KWin, Hyprland, niri, i3, COSMIC을 지원합니다.
- Wayland 우선: Wayland 포인터 및 키보드 작업의 복잡성을 처리하도록 특별히 설계되었습니다.
- 의미론적 상호작용: AT-SPI를 통해 역할, 이름, 텍스트로 요소를 타겟팅할 수 있어 좌표 기반 클릭에 대한 의존도를 줄입니다.
- 상세 진단:
doctor명령어를 통해 구조화된 JSON 준비 상태 보고서를 제공하여 차단 요소를 식별합니다. - 안전 주석: MCP
ToolAnnotations를 사용하여 읽기 전용 관찰, 설정 변경, 파괴적인 데스크톱 작업을 구분합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트