openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > PC Master

Control the Windows PC from WSL2. Use when the user asks to open/close applications, manage processes, take screenshots, control windows, manage files on Win...

系统与自动化

作者:Amine Rguig @Amirgu

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.0

统计:⭐ 0 · 547 · 2 current installs · 2 all-time installs

0

安装量(当前) 2

🛡 VirusTotal :可疑 · OpenClaw :良性

Package:amirgu/pc-master

安全扫描(ClawHub)

  • VirusTotal :可疑
  • OpenClaw :良性

OpenClaw 评估

The skill's instructions and files are coherent with its stated purpose (controlling Windows from WSL2); it does not request unrelated credentials or install anything, but it grants powerful access to the Windows host which the user should consider before enabling.

目的

Name/description match the behavior found in SKILL.md: all commands and examples are about interacting with Windows from WSL2 (launching apps, managing processes, screenshots, reading C:). No unrelated environment variables, binaries, or install steps are requested.

说明范围

The instructions explicitly show how to run Windows executables and PowerShell from WSL2 and how to read and manipulate files under /mnt/c/. This is expected for the stated purpose but gives the agent the ability to perform sensitive actions (kill processes, read arbitrary files, take screenshots, launch arbitrary executables). The SKILL.md does not attempt to read unrelated system configs or exfiltrate data, but the described actions are powe…

安装机制

Instruction-only skill with no install step or downloaded code. No files are written by an installer, which reduces surface area.

证书

No environment variables, credentials, or config paths are requested. The ability to access the Windows host comes from normal WSL interop rather than special credentials, which is proportionate to the stated purpose.

持久

always is false and there is no self-install behavior. However, the platform default allows the agent to invoke the skill autonomously; because the skill enables host control, autonomous invocation increases blast radius. Consider requiring human confirmation before any destructive or privacy-sensitive actions.

综合结论

This skill does what it says: it teaches the agent how to run Windows binaries from WSL2 and how to manipulate files/processes and take screenshots on the Windows host. That capability is powerful and can be privacy-invasive or destructive (reading any file under C:, killing processes, launching executables, saving screenshots). Before installing: 1) only enable it if you trust the skill source/author (source is unknown here); 2) prefer user-i…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「PC Master」。简介:Control the Windows PC from WSL2. Use when the user asks to open/close applicat…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/amirgu/pc-master/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: pc-master
description: Control the Windows PC from WSL2. Use when the user asks to open/close applications, manage processes, take screenshots, control windows, manage files on Windows (C:), automate tasks, or do anything that requires interacting with the Windows host from WSL2 (e.g. "open Chrome", "kill Spotify", "take a screenshot", "list running apps", "move a file on Windows").
---

# PC Master — Windows Control from WSL2

All Windows binaries are accessible via `/mnt/c/Windows/System32/`. Call them directly from bash.

## Prerequisites

WSL2 interop must be working. If `.exe` calls fail with `UtilAcceptVsock` errors, ask the user to run `wsl --shutdown` in Windows and relaunch WSL.

## Core Commands

### Processes
```bash
# List all processes
/mnt/c/Windows/System32/tasklist.exe

# Filter by name
/mnt/c/Windows/System32/tasklist.exe /FI "IMAGENAME eq chrome.exe"

# Kill by name
/mnt/c/Windows/System32/taskkill.exe /F /IM chrome.exe

# Kill by PID
/mnt/c/Windows/System32/taskkill.exe /F /PID 1234
```

### Launch Applications
```bash
# Open a URL in default browser
/mnt/c/Windows/System32/cmd.exe /c "start https://google.com"

# Open an app by name
/mnt/c/Windows/System32/cmd.exe /c "start chrome"
/mnt/c/Windows/System32/cmd.exe /c "start spotify"
/mnt/c/Windows/System32/cmd.exe /c "start notepad"

# Open a file with its default app
/mnt/c/Windows/System32/cmd.exe /c "start C:\Users\User\file.pdf"

# Launch full path
/mnt/c/Windows/System32/cmd.exe /c "start "" "C:\Program Files\App\app.exe""
```

> ⚠️ `cmd.exe /c start` must be run from a Windows path. Use `/mnt/c/Windows/System32/cmd.exe /c "cd /d C: && start ..."` if cwd is a UNC path (WSL path).

### PowerShell (advanced)
```bash
PS=/mnt/c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe

# Run a command
$PS -NonInteractive -Command "Get-Process | Select-Object -First 10"

# Get window titles
$PS -NonInteractive -Command "Get-Process | Where-Object {$_.MainWindowTitle} | Select-Object Name, MainWindowTitle"

# Set volume
$PS -NonInteractive -Command "(New-Object -ComObject WScript.Shell).SendKeys([char]174)"
```

### Screenshot
```bash
# Take a screenshot and save to Windows desktop
PS=/mnt/c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe
$PS -NonInteractive -Command "Add-Type -AssemblyName System.Windows.Forms; [System.Windows.Forms.Screen]::PrimaryScreen | ForEach-Object { $bmp = New-Object System.Drawing.Bitmap($_.Bounds.Width, $_.Bounds.Height); $g = [System.Drawing.Graphics]::FromImage($bmp); $g.CopyFromScreen($_.Bounds.Location, [System.Drawing.Point]::Empty, $_.Bounds.Size); $bmp.Save('C:\screenshot.png') }"
```

### File System (Windows paths)
```bash
# Windows C: is at /mnt/c/ in WSL
ls /mnt/c/Users/
cat /mnt/c/Users/Username/Desktop/file.txt
cp /mnt/c/Users/Username/Downloads/file.zip /mnt/c/Users/Username/Desktop/

# Find Windows username
ls /mnt/c/Users/ | grep -v "Public|Default|All Users"
```

### System Info
```bash
# Windows version
/mnt/c/Windows/System32/cmd.exe /c "ver"

# Disk usage
/mnt/c/Windows/System32/cmd.exe /c "wmic logicaldisk get size,freespace,caption"

# Network info
/mnt/c/Windows/System32/ipconfig.exe
```

## Common Patterns

**Close and reopen an app:**
```bash
/mnt/c/Windows/System32/taskkill.exe /F /IM chrome.exe
sleep 2
/mnt/c/Windows/System32/cmd.exe /c "start chrome"
```

**Check if app is running:**
```bash
/mnt/c/Windows/System32/tasklist.exe /FI "IMAGENAME eq spotify.exe" | grep -i spotify && echo "Running" || echo "Not running"
```

**Open a specific website:**
```bash
/mnt/c/Windows/System32/cmd.exe /c "start https://www.google.com"
```

## Notes
- Output may contain garbled characters (Windows encoding vs UTF-8) — this is normal, content is still readable
- Some GUI apps launched via `start` won't produce output — that's expected
- For interactive PowerShell scripts, write to a temp file and read it back instead of capturing stdout directly
- See `references/windows-apps.md` for common app executable names