프로젝트 소개

perfuncted는 Linux 데스크톱 애플리케이션 자동화를 단순화하기 위해 설계된 Go 라이브러리 및 명령줄 인터페이스입니다. 런타임에 사용자의 세션 유형(X11 또는 Wayland)을 감지하고 적절한 백엔드를 자동으로 선택하여 수동 구성이 필요 없습니다. 이 도구는 화면 캡처, 입력 주입(타이핑, 클릭, 드래그), 창 관리(활성화, 이동, 크기 조정, 닫기) 등 포괄적인 기능을 제공합니다. Sway, KDE Plasma, GNOME과 같은 다양한 Wayland 컴포지터를 지원하며, 특히 GNOME Shell 확장과 같은 특정 통합을 통해 네이티브 제어가 가능합니다. 라이브러리는 화면, 입력, 창, 출력, 클립보드, 접근성(AT-SPI)을 위한 퍼사드를 노출하여 개발자가 견고한 자동화 스크립트를 구축할 수 있도록 합니다. 또한 백엔드 가용성을 탐색하고 명령을 실행하기 위한 CLI 도구 `pf`가 포함되어 있습니다. 설치는 Go 설치 또는 Flatpak 번들을 통해 지원되며, 특정 기능을 위해 `wl-clipboard` 또는 `xclip`과 같은 선택적 종속성이 필요할 수 있습니다.