← Back to Skills Marketplace
362
Downloads
0
Stars
1
Active Installs
2
Versions
Install in OpenClaw
/install pyautogui-controller
Description
Control Windows desktop with natural-language commands for screenshots, app launching, typing, clicking, and multi-step UI automation using a local Python co...
Usage Guidance
This skill appears to be what it says: a local Windows desktop automation controller using pyautogui and an optional Playwright DOM bridge. Before installing or invoking it, consider the following:
- It will control your screen, move/click the mouse, type (including via clipboard), take screenshots, and launch arbitrary executables found on the machine — only run it on a machine and account you trust. Treat it like a remote-control tool.
- The code writes logs and state to runtime/ and saves learned configs under your home directory (~/.pyautogui-controller). Expect persistent state and profile directories (e.g., runtime/playwright_profile).
- The Playwright bridge can navigate to web URLs and may connect to a CDP endpoint if DOM_BRIDGE_CDP_URL is set; that can create network interactions. If you do not need DOM-level automation, ensure PYAUTOGUI_CONTROLLER_USE_DOM is set to disable it, or avoid providing bridge env vars.
- There are minor metadata mismatches: SKILL.md declares python/python3 as required but the registry entry lists no required binaries; the code reads multiple env vars that are not declared in registry metadata. Verify and set expected environment variables intentionally rather than relying on defaults.
- Recommended precautions: run in a sandbox or throwaway VM to test, inspect runtime/playwright_profile and runtime/logs after running, and avoid providing elevated privileges or network-facing CDP URLs unless necessary. If you need to grant less privilege, consider running the skill with a limited user account and without the DOM bridge enabled.
If you want, I can list the specific files that create or write to disk, the env variables the code reads, and the exact paths the skill will scan/modify.
Capability Analysis
Type: OpenClaw Skill
Name: pyautogui-controller
Version: 1.0.1
The bundle provides a powerful desktop and browser automation framework using PyAutoGUI and Playwright. It contains high-risk capabilities, including the ability to execute arbitrary local binaries via os.startfile and subprocess.Popen in action/desktop_backend.py, and the ability to attach to existing browser sessions via CDP in bridges/playwright_dom_bridge.py. While these features align with the stated goal of 'advanced automation,' the lack of robust input sanitization in the NLU parser (nlu/parser.py) poses a risk of command injection if the agent is prompted with malicious input. The inclusion of security tools like 'Burp Suite' in the application mapping and the use of hardcoded local paths (C:\Users\dev\Desktop\昱昱\...) suggest a highly specialized and potentially intrusive automation environment.
Capability Assessment
Purpose & Capability
The repository implements local desktop automation (pyautogui, keyboard/mouse controllers, window manager, OCR, Playwright DOM bridge) which aligns with the skill description: screenshots, app launching, typing, clicking and multi-step UI automation.
Instruction Scope
SKILL.md tells the agent to run the local controller script in a specific path and use it for screen-based automation. The code is consistent with those instructions but contains actions that go beyond simple 'click and type' (searches Program Files / desktop for installed apps, launches arbitrary executables, reads/writes configs and logs, takes screenshots, and may attach to browser CDP sessions via the bridge). Those behaviors are expected for this purpose but are powerful — the SKILL.md does not explicitly enumerate all filesystem locations scanned or the logging/state files created.
Install Mechanism
No install spec is provided (instruction-only wrapper). All code is included in the bundle; nothing is downloaded at install time. That lowers risk compared with remote downloads.
Credentials
The registry declared no required env vars, but the code reads several environment variables (e.g., BROWSER_DOM_BRIDGE_CMD, BROWSER_DOM_DEFAULT_URL, DOM_BRIDGE_CDP_URL, DOM_BRIDGE_* envs, PYAUTOGUI_CONTROLLER_USE_DOM). SKILL.md metadata lists python/python3 as required, but registry metadata did not — a small mismatch. The env usage is plausible for the bridge functionality but these vars can change runtime behavior (e.g., connecting to a CDP URL).
Persistence & Privilege
The skill writes state, logs, profiles and learned site configs under runtime/ and the user's home directory (~/.pyautogui-controller). It also can start arbitrary local executables and navigate browsers via Playwright/CDP. These are expected for a desktop automation tool but give it broad local privileges (screenshots, launching apps, clipboard access).
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install pyautogui-controller - After installation, invoke the skill by name or use
/pyautogui-controller - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.1
Public upload from desktop skill folder
v1.0.0
Initial public release
Metadata
Frequently Asked Questions
What is PyAutoGUI Controller?
Control Windows desktop with natural-language commands for screenshots, app launching, typing, clicking, and multi-step UI automation using a local Python co... It is an AI Agent Skill for Claude Code / OpenClaw, with 362 downloads so far.
How do I install PyAutoGUI Controller?
Run "/install pyautogui-controller" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is PyAutoGUI Controller free?
Yes, PyAutoGUI Controller is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does PyAutoGUI Controller support?
PyAutoGUI Controller is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created PyAutoGUI Controller?
It is built and maintained by hzj520lyx (@hzj520lyx); the current version is v1.0.1.
More Skills