linux-gui-control
Control the Linux desktop GUI using xdotool, wmctrl, and dogtail. Use when you need to interact with non-browser applications, simulate mouse/keyboard input, manage windows, or inspect the UI hierarchy of applications on X11/GNOME. Supports: (1) Clicking/typing in apps, (2)
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Control the Linux desktop GUI using xdotool, wmctrl, and dogtail. Use when you need to interact with non-browser applications, simulate mouse/keyboard input, manage windows, or inspect the UI hierarchy of applications on X11/GNOME. Supports: (1) Clicking/typing in apps, (2) Resizing/moving windows, (3) Extracting text-based UI trees from apps (A11y), (4) Taking screenshots for visual analysis.
How to use
Zainstaluj umiejętność w swoim środowisku agenta (sklonuj repozytorium i dodaj do katalogu skills).
Zidentyfikuj okno docelowe, uruchamiając wmctrl -l — wyświetli listę wszystkich otwartych okien z ich nazwami.
Dla aplikacji wspierających dostępność (aplikacje GNOME, Electron z flagą --force-renderer-accessibility) uruchom skrypt inspekcji, aby odczytać strukturę przycisków i pól wejściowych bez robienia zrzutów: python3 scripts/inspect_ui.py "nazwa_aplikacji".
Wykonuj akcje za pomocą skryptów pomocniczych — aktywuj okno (./scripts/gui_action.sh activate "nazwa_okna"), klikaj w współrzędne (./scripts/gui_action.sh click 500 500), pisz tekst (./scripts/gui_action.sh type "Twój tekst") lub naciskaj klawisze (./scripts/gui_action.sh key "Return").
Jeśli inspekcja tekstowa zawiedzie, zrób zrzut ekranu i użyj analizy wizualnej do identyfikacji elementów interfejsu.
Dla aplikacji Electron (VS Code, Discord, Chrome), które nie ujawniają struktury UI, zamknij aplikację i uruchom ją z flagą --force-renderer-accessibility, aby włączyć dostępność.