Bind) and the input hooks,
Macro/Timer/Math/Net/File/JSON/Regex/Config/Process/System.Exec,
UI/Log/Input, and the Run/Sleep/After/Async globals. A few namespaces depend on OS-specific APIs and are limited or absent
on some platforms. This page maps what runs where, and why.
Platform support
The table below lists every namespace with platform-specific behavior. Everything not in the table is fully cross-platform.
Software and hardware mode run the same scripts; neither changes this
table: namespace availability is a property of the OS, not the transport. The one
capability split between modes is
mouse_block: suppressing or transforming mouse
movement requires a Rebind device on every OS (see The Rebind Link
for why). Key, button, and scroll blocking work in both
modes. For hardware setup, see Hardware.
- Screen samples pixels on Windows and macOS. On Linux pixel sampling is stubbed, not absent:
Screen.GetPixelColoris still callable but returns a fixed"000000"(black) instead of a real pixel, andScreen.SearchForColorreturnsnil. Neither raises an error. OnlyScreen.List(display enumeration) is real on Linux. - Window is full on Windows. On macOS, enumeration (
Find,List) plusKill,IsActive,WaitActive, andWaitCloseare real.Moveworks through the Accessibility grant Rebind already holds, but it targets the frontmost focused window (the handle is advisory) and can fail silently. The remaining manipulation calls split two ways:Activate,Minimize,Maximize,Restore, andCloseare silent no-ops (they return success and do nothing, so apcallaround them will not catch an error), while the Accessibility-gated callsSetTitle,SetAlwaysOnTop,SetTransparency,GetClass,Hide, andShowraise a “not supported on macOS without accessibility” error you can guard withpcall.Window.GetTitlereturns an empty string on macOS; titles are only available via thetitlefield onWindow.List/Window.Findentries. On Linux, Window is a stub. - Pipe (inter-process messaging) and Registry are Windows-only. They raise an error on macOS and Linux. Pipe support on macOS and Linux is planned.
- Clipboard works on Windows and macOS; it is a stub on Linux.
- Dialog is native on Windows and macOS; on Linux it needs Zenity, KDialog, or YAD installed.
- App (application-level launch / focus / hide / quit) is macOS-only; it
raises an error on Windows and Linux. For cross-platform app control, reach for
Window(find / activate by title) andProcess(exists / list / kill).
pcall catches the
“not available” error a Windows-only namespace raises on macOS or Linux: