Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Remote Windows desktop control from WSL/Linux via screenshot + mouse/keyboard simulation. Use when: user asks to control their PC, click something, open an a...
Remote Windows desktop control from WSL/Linux via screenshot + mouse/keyboard simulation. Use when: user asks to control their PC, click something, open an a...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Control a Windows desktop from WSL/Linux via screenshots (mss) + mouse/keyboard simulation (pyautogui). A FastAPI server runs on Windows; a Python client calls it from WSL.
Edit config.json in the skill directory. Set python_path to a Windows Python with pip: { "server": { "host": "127.0.0.1", "port": 18888, "python_path": "C:\\Python312\\python.exe" }, "powershell": "/mnt/c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe", "auto_shutdown_minutes": 10, "screenshot": { "default_scale": 0.5, "default_quality": 50 } }
python3 scripts/install.py Installs fastapi uvicorn mss pyautogui pillow into the Windows Python.
python3 scripts/launcher.py start
import sys; sys.path.insert(0, 'skills/pc-control/scripts') from client import PCControl pc = PCControl() img_path = pc.screenshot(scale=0.5, quality=50) # Use image analysis tool to understand the screen Important: Screenshots are scaled. When clicking, divide target coordinates by the scale factor to get actual screen coordinates. E.g., if scale=0.5 and target is at (400, 300) in the image, click at (800, 600).
pc.click(x, y) # Left click pc.double_click(x, y) # Double click pc.right_click(x, y) # Right click pc.move(x, y) # Move cursor pc.scroll(x, y, clicks) # Scroll (negative = down) pc.drag(x1, y1, x2, y2) # Drag pc.type_text("hello") # Type text pc.press("enter") # Press key pc.hotkey("ctrl", "c") # Key combo
Always screenshot after an action to confirm it worked before proceeding.
python3 scripts/launcher.py stop
screenshot โ analyze โ decide action โ execute โ screenshot verify โ continue or done
Server listens on localhost only with token auth (token auto-generated per session) Win+R โ type app name โ Enter is more reliable than clicking taskbar icons Wait 1โ2 seconds after clicks before re-screenshotting Prefer CLI/PowerShell when available โ use this only for GUI-only tasks
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.