Install
openclaw skills install windows-automationAutomate Windows desktop by simulating mouse/keyboard input, managing clipboard, capturing screenshots, running commands, and launching apps.
openclaw skills install windows-automationAutomate Windows desktop interactions using PyAutoGUI
This skill provides comprehensive Windows desktop automation capabilities. Use it when you need to:
The required packages are already installed:
pyautogui - Core automation enginepywin32 - Windows API accesspyperclip - Clipboard operationsIf needed, install manually:
pip install pyautogui pywin32 pyperclip
windows_clickClick at specified screen coordinates.
windows_click(x=100, y=200, button="left", clicks=1)
Parameters:
| Param | Type | Default | Description |
|---|---|---|---|
x | float | required | X coordinate |
y | float | required | Y coordinate |
button | str | "left" | "left", "right", "middle" |
clicks | int | 1 | Number of clicks |
windows_double_clickDouble click at position.
windows_double_click(x=500, y=300)
windows_right_clickRight click at position.
windows_right_click(x=100, y=200)
windows_moveMove mouse to position.
windows_move(x=800, y=600, duration=0.5)
Parameters:
| Param | Type | Default | Description |
|---|---|---|---|
x | float | required | X coordinate |
y | float | required | Y coordinate |
duration | float | 0.2 | Movement duration in seconds |
windows_typeType text using keyboard.
windows_type(text="Hello World!", interval=0.05)
Parameters:
| Param | Type | Default | Description |
|---|---|---|---|
text | str | required | Text to type |
interval | float | 0.05 | Delay between keystrokes |
windows_pressPress a single key.
windows_press(key="enter")
Supported keys:
f1 - f24enter, esc, tab, space, backspace, deleteup, down, left, rightctrl, alt, shift, winwindows_hotkeyPress keyboard shortcut combination.
windows_hotkey("ctrl", "c") # Copy
windows_hotkey("ctrl", "v") # Paste
windows_hotkey("alt", "f4") # Close window
windows_hotkey("win", "r") # Open Run dialog
windows_screenshotTake a screenshot.
windows_screenshot(filename="screenshot.png")
Parameters:
| Param | Type | Default | Description |
|---|---|---|---|
filename | str | "screenshot.png" | Filename to save |
windows_cursor_positionGet current cursor position.
windows_cursor_position()
# Returns: {"x": 500, "y": 300}
windows_screen_sizeGet screen resolution.
windows_screen_size()
# Returns: {"width": 1920, "height": 1080}
windows_system_infoGet basic system information.
windows_system_info()
# Returns: {
# "platform": "Windows",
# "version": "10.0.22631",
# "screen_size": {"width": 1920, "height": 1080},
# "cursor_position": {"x": 500, "y": 300}
# }
windows_launch_appLaunch a Windows application.
windows_launch_app(name="notepad")
windows_launch_app(name="calc")
windows_launch_app(name="excel")
windows_launch_app(name="C:\\Program Files\\App\\app.exe")
windows_commandRun a PowerShell or cmd command.
windows_command(command="ipconfig")
windows_command(command="Get-Process | Select-Object -First 5")
windows_command(command="dir C:\\")
windows_clipboard_readRead clipboard content.
windows_clipboard_read()
# Returns: "clipboard content"
windows_clipboard_writeWrite text to clipboard.
windows_clipboard_write(text="Hello from OpenClaw!")
User: Open notepad and type hello
→ windows_launch_app with name="notepad"
→ windows_type with text="Hello World!"
User: Click on the name field and enter John
→ windows_click x=300 y=200
→ windows_type text="John"
→ windows_press key="tab"
→ windows_type text="john@example.com"
User: Take a screenshot
→ windows_screenshot filename="screen_20260101.png"
User: Copy C:\Documents\file.txt to clipboard
→ windows_clipboard_write text="C:\\Documents\\file.txt"
User: What's my screen resolution?
→ windows_screen_size
| Package | Purpose |
|---|---|
| pyautogui | Core automation |
| pywin32 | Windows API |
| pyperclip | Clipboard |
Built for OpenClaw 🦞