Install
openclaw skills install clawdosClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.
Windows automation via Clawdos API: screen capture, mouse/keyboard input, window management, file-system operations, and shell command execution. Standalone CLI execution via Python script. Use when the user wants to control or inspect a Windows host remotely.
openclaw skills install clawdosThis skill exposes a CLI wrapper around the Clawdos REST API, allowing you to operate a Windows machine securely from OpenClaw via shell commands.
Instead of loading tools, use exec to call the standalone python script scripts/clawdos.py.
File System Sandbox Protection:
fs_list, fs_read, fs_write, fs_delete, fs_move) are restricted to a sandboxed root directory on the Windows host.CLAWDOS_FS_ROOT_ID environment variable and enforced server-side.../../../) are blocked.Network Isolation:
CLAWDOS_BASE_URL and does not establish unauthorized external connections.CLAWDOS_API_KEY and encrypted over HTTPS when applicable.This skill grants access to powerful Windows automation capabilities. Users must explicitly understand and authorize the following operations:
Shell Command Execution (shell_exec)
File Deletion (fs_delete)
File Upload/Download (--file, --out)
Persistent Screen/Window Monitoring
screen_capture, window_list, window_focus) can observe active GUI content.This skill requires a corresponding server running on your Windows host.
Ensure the Windows host is running danzig233/clawdos. The connection parameters (CLAWDOS_BASE_URL and CLAWDOS_API_KEY) must be configured via OpenClaw's skill configuration UI or environment variables, as specified in this file's metadata.
You interact with Clawdos by running the scripts/clawdos.py CLI using the exec tool. The script will automatically pick up the CLAWDOS_BASE_URL and CLAWDOS_API_KEY environment variables injected by OpenClaw.
Basic Syntax:
python3 ~/.nvm/versions/node/v22.22.1/lib/node_modules/openclaw/skills/clawdos/scripts/clawdos.py <action> --args '{"key":"value"}'
health: Check service status.get_env: Get screen resolution, DPI scale, and active window.window_list: List all open windows.window_focus: Focus a window. Args: {"titleContains": "..."} or {"processName": "..."}screen_capture: Take a screenshot. Use --out path/to/save.png to save binary. Args: {"format": "png", "quality": 80}(Prioritize keyboard/shell when possible to avoid visual estimation errors)
click: Click the mouse. Args: {"x": 100, "y": 200, "button": "left"}move: Move cursor. Args: {"x": 100, "y": 200}drag: Drag mouse. Args: {"fromX": 100, "fromY": 200, "toX": 300, "toY": 400}keys: Press key combos. Args: {"combo": ["ctrl", "c"]}type_text: Type text. Args: {"text": "hello"}scroll: Scroll wheel. Args: {"amount": -500}batch: Execute multiple input actions sequentially. Args: {"actions": [...]}fs_list: List directory contents. Args: {"path": "/"}fs_read: Read a file (prints raw contents to stdout). Use --out path/to/save.bin to save binary files. Args: {"path": "/hello.txt"}fs_write: Write to a file. Args: {"path": "/hello.txt", "content": "hello world"}. Or use --file path/to/local.bin to upload a local binary file.fs_mkdir: Create a directory. Args: {"path": "/newdir"}fs_delete: Delete a file or directory. Args: {"path": "/newdir", "recursive": true}fs_move: Move or rename. Args: {"from": "/src", "to": "/dst"}shell_exec: Run a shell command on the Windows host. Args: {"command": "dir", "args": ["/w"], "workingDir": ""}key_combo, type_text) or shell commands (shell_exec) over mouse operations whenever possible.mouse_click, mouse_move, mouse_drag) strictly for necessary UI interactions (e.g., clicking a specific button on a web page, navigating a software interface, or focusing an input field).mouse_scroll is safe and recommended for navigating long pages or documents.shell_exec commands before execution. Avoid running commands from untrusted sources.--file with sensitive credentials or system files.fs_delete. Deleted files cannot be recovered.Focus MS Edge and type:
python3 scripts/clawdos.py window_focus --args '{"processName": "msedge"}'
python3 scripts/clawdos.py type_text --args '{"text": "https://openclaw.ai\n"}'
Take a screenshot and save it locally:
python3 scripts/clawdos.py screen_capture --out /tmp/windows_screen.png --args '{"format":"png"}'
Read a file from Windows:
python3 scripts/clawdos.py fs_read --args '{"path": "logs/app.log"}'
Execute PowerShell on Windows:
python3 scripts/clawdos.py shell_exec --args '{"command": "powershell", "args": ["-Command", "Get-Process"]}'