CrossMacro łączy nagrywanie kliknięć, skróty klawiszowe i harmonogram na trzech systemach operacyjnych
Spróbuj zautomatyzować rutynowe kliknięcia myszą na nowoczesnym Linuksie z Wayland. W dziewięciu na dziesięć przypadków stare, sprawdzone narzędzia takie jak xdotool po prostu rozkładają ręce z powodu ograniczeń bezpieczeństwa serwera wyświetlania. Na Windowsie do takich zadań zazwyczaj używa się AutoHotkey, a na macOS ludzie instalują osobne programy do klikania i rozwijania tekstu. Efekt jest taki, że każda stacja robocza kończy z niekompatybilną kolekcją oprogramowania.
Projekt CrossMacro próbuje wypełnić tę lukę i zapewnić jedno przejrzyste narzędzie do automatyzacji dla Linuksa, Windowsa i macOS.

Pod maską
Autor napisał aplikację w C# z użyciem frameworka Avalonia UI. Zapewnia to przejrzysty interfejs, który wygląda identycznie na wszystkich systemach i obsługuje tuzin wbudowanych motywów (od Nord i Gruvbox po Dracula i Catppuccin).
Ale najważniejsza tutaj nie jest GUI — to jak rozwiązano problem wprowadzania danych. Na Linuksie aplikacja może działać w dwóch trybach: przez własny demon systemowy lub bezpośrednio przez urządzenia wejściowe (uinput / bezpośredni dostęp do urządzenia). Dzięki temu makra wykonują się bez problemów zarówno w klasycznym X11, jak i pod Wayland.
Główne funkcje
CrossMacro zbudowane jest jak szwajcarski scyzoryk dla pulpitu. Wewnątrz zawiera od razu cztery kierunki automatyzacji.
Nagrywanie i odtwarzanie akcji
Wszystko zaczyna się od klasycznego rejestratora. Naciśnij F8, wykonaj akcje myszą i klawiaturą, naciśnij ponownie F8. Gotowe.
Odtwarzanie przez F9 można dostosować do własnych potrzeb:
- zmiana prędkości od 0,1x do 10,0x;
- wstawienie pauzy w
F10; - ustawienie liczby powtórzeń lub nieskończonej pętli;
- dodanie losowych opóźnień między iteracjami, aby symulować działania żywej osoby.
Edytor makr z logiką
Zapisany plik z rozszerzeniem .macro nie wymaga ponownego nagrywania od zera, jeśli przypadkowo chybiłeś o kilka pikseli. Wbudowany edytor pozwala ręcznie edytować współrzędne, zmieniać kolejność akcji, wstawiać pauzy i bloki tekstu.
Podstawowe warunki i odczytywanie ekranu są również dostępne tutaj:
pixelcolor— odczytywanie koloru konkretnego piksela;waitcolor— oczekiwanie na właściwy odcień w określonym punkcie ekranu;pixelsearch— wyszukiwanie właściwego koloru w danym obszarze.
Takie polecenia przydają się, gdy trzeba poczekać na załadowanie okna lub zmianę stanu przycisku przed następnym kliknięciem.
| Odtwarzanie | Rozszerzanie tekstu | Skróty | | :---: | :---: | :---: | |
|
|
| | Zaplanowane zadania | Edytor | Ustawienia | |
|
|
|
Fragmenty tekstu i klawisze skrótów
Jeśli nie potrzebujesz skomplikowanych ruchów kursora i chcesz tylko szybko wstawić szablony odpowiedzi, adresy lub fragmenty kodu, CrossMacro ma wbudowany moduł rozszerzania tekstu. Wpisz zdefiniowany skrót, a narzędzie natychmiast zastąpi go długim tekstem.
Makra można też powiązać z kombinacjami klawiszy. Dostępne są dwa tryby: normalne uruchomienie przy naciśnięciu i wykonanie tylko podczas przytrzymywania klawisza.
Harmonogram i praca przez terminal
Dowolną akcję można zaplanować: raz, w interwale, co tydzień lub w wybrane dni.
Dla entuzjastów skryptów bash dostępna jest pełna linia poleceń. Aplikacja może uruchomić się bez otwierania głównego okna, działając w tle i wykonując makra bezpośrednio z terminala:
# Валидация файла макроса
crossmacro macro validate ./demo.macro
# Запуск макроса с ускорением в 1.25x и тремя повторами
crossmacro play ./demo.macro --speed 1.25 --repeat 3 --repeat-delay-ms 500
# Выполнение цепочки действий одной строкой
crossmacro run --step "move abs 800 400" --step "click left" --dry-run
Warto o tym pamiętać: tryb konsolowy nadal wymaga aktywnej sesji pulpitu. Nie będziesz w stanie uruchomić go na zdalnym serwerze bez wyświetlania graficznego.
Jak zainstalować i skonfigurować
Projekt jest dystrybuowany przez praktycznie wszystkie popularne kanały dystrybucji.
Na Linuksie dostępne są:
- Flatpak przez Flathub (
io.github.alper_han.crossmacro); - pakiety
.debi.rpmna stronie wydań; - AUR dla Arch Linuksa (
yay -S crossmacro); - Oficjalny moduł dla NixOS (
services.crossmacro).
Na Windowsie aplikacja jest instalowana przez winget (winget install AlperHan.CrossMacro), Microsoft Store lub przenośny plik exe. Na macOS dostępne są pakiety DMG dla Apple Silicon i Intela.
Jeśli coś pójdzie nie tak po instalacji (na przykład brak uprawnień do gniazda demona na Linuksie lub zapomnienie o przyznaniu uprawnień do nagrywania ekranu na macOS), deweloper dodał wbudowaną diagnostykę:
crossmacro doctor --json --verbose
Polecenie wyświetli status wszystkich usług i zasugeruje, których uprawnień brakuje w bieżącej sesji.
Czy warto wypróbować
CrossMacro nadaje się dla osób zmęczonych konfigurowaniem różnych narzędzi na różnych systemach operacyjnych. Jeśli regularnie wypełniasz te same formularze w starszych programach desktopowych, testujesz interfejsy za pomocą kliknięć lub wykonujesz powtarzalne czynności według harmonogramu, projekt z pewnością zaoszczędzi kilka godzin żmudnej pracy. Repozytorium jest otwarte na licencji GPL-3.0, aktywnie rozwijane i gotowe do użycia.
Powiązane projekty