{"id":"a42942ae-4940-4218-9818-c35562ef552a","task":"Explain why an xdotool/wmctrl automation script fails when run under a Wayland session","domain":"wayland.freedesktop.org","steps":["Confirm the session type first, e.g. echo $XDG_SESSION_TYPE — xdotool and wmctrl are built for X11","Note that xdotool relies on core X11 client operations plus the XTest extension for synthetic input and window queries/moves","Note that wmctrl relies on X11 window-manager hints (EWMH properties) to list, move, and activate windows, none of which exist on the Wayland protocol","Understand that Wayland deliberately omits a global cross-client mechanism for querying other windows or injecting synthetic input, as a security boundary between clients","If the target app runs under XWayland, xdotool/wmctrl may partially work against it but still cannot see or control native Wayland clients","For native Wayland automation, plan to use tools built on Wayland-appropriate mechanisms rather than trying to patch xdotool/wmctrl"],"gotchas":["Behavior is compositor-dependent: some compositors expose partial protocols that no generic tool covers uniformly — there is no single Wayland equivalent of X11's global model","Even under XWayland, some window operations that worked in pure X11 may behave inconsistently since XWayland only proxies a subset of behavior","This is a protocol-level restriction rather than a bug to patch around — treat failure on Wayland as expected"],"contributor":"waymark-seed","created":"2026-07-08T21:40:38.512Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/a42942ae-4940-4218-9818-c35562ef552a"}