远程桌面控制与自动化。捕获屏幕截图,控制鼠标和键盘,自动化 UI 交互。支持 VNC、RDP 和本地桌面环境。
Desktop Control - 远程桌面控制是一项面向实际任务的技能,主要用于基于 Bytebot Computer Use 模式实现的桌面自动化控制工具;Version : 1.0.0;
查看远程/本地桌面状态 (截图);控制鼠标和键盘进行 UI 交互;自动化执行桌面任务;与虚拟机、容器、远程服务器交互。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
基于 Bytebot Computer Use 模式实现的桌面自动化控制工具。
Version: 1.0.0
Features: 截图、鼠标控制、键盘输入、应用管理、文件操作
让 OpenClaw 能够:
# 连接到 VNC 桌面 python3 scripts/main.py connect --host localhost --port 5900 --password secret # 连接到本地桌面 (Linux) python3 scripts/main.py connect --local
# 截图 python3 scripts/main.py screenshot --output /tmp/screen.png # 移动鼠标 python3 scripts/main.py mouse move --x 500 --y 300 # 点击 python3 scripts/main.py mouse click --x 500 --y 300 --button left # 输入文本 python3 scripts/main.py type "Hello World" # 按键 python3 scripts/main.py key press --keys ctrl,c
# 执行脚本 python3 scripts/main.py script examples/open_browser.txt
# Ubuntu/Debian sudo apt-get install python3-pil python3-xlib scrot # macOS brew install pillow # Python dependencies pip3 install -r requirements.txt
# 设置环境变量 export DESKTOP_HOST=localhost export DESKTOP_PORT=5900 export DESKTOP_PASSWORD=secret export DESKTOP_TYPE=vnc # vnc, rdp, local
# 基本截图 python3 scripts/main.py screenshot # 保存到文件 python3 scripts/main.py screenshot --output /path/to/save.png # 指定区域 python3 scripts/main.py screenshot --region "100,100,800,600" # 返回 base64 (用于 AI 分析) python3 scripts/main.py screenshot --base64
# 移动 python3 scripts/main.py mouse move --x 500 --y 300 # 点击 python3 scripts/main.py mouse click --x 500 --y 300 python3 scripts/main.py mouse click --button right # 右键 python3 scripts/main.py mouse click --clicks 2 # 双击 # 拖拽 python3 scripts/main.py mouse drag --from "100,100" --to "500,500" # 滚动 python3 scripts/main.py mouse scroll --direction down --amount 3 # 获取位置 python3 scripts/main.py mouse position
# 输入文本 python3 scripts/main.py keyboard type "Hello World" # 按键 (支持组合键) python3 scripts/main.py keyboard press --keys ctrl,alt,t # 打开终端 python3 scripts/main.py keyboard press --keys ctrl,c # 复制 python3 scripts/main.py keyboard press --keys ctrl,v # 粘贴 # 按住/释放 python3 scripts/main.py keyboard hold --key shift python3 scripts/main.py keyboard release --key shift
# 打开应用 python3 scripts/main.py app open --name firefox python3 scripts/main.py app open --name terminal python3 scripts/main.py app open --name vscode # 关闭应用 python3 scripts/main.py app close --name firefox # 切换到桌面 python3 scripts/main.py app desktop
# 读取文件 (从桌面环境) python3 scripts/main.py file read --path /home/user/document.txt # 写入文件 python3 scripts/main.py file write --path /home/user/hello.txt --content "Hello" # 截图并 OCR 识别文字 python3 scripts/main.py file ocr --region "100,100,400,200"
# 执行脚本文件 python3 scripts/main.py automation run --script script.txt # 录制操作 python3 scripts/main.py automation record --output script.txt # 等待元素出现 (基于图像匹配) python3 scripts/main.py automation wait --template button.png --timeout 10
创建自动化脚本文件 (script.txt):
# 注释以 # 开头 screenshot wait 1000 mouse move 500 300 mouse click wait 500 type "Hello World" key press return wait 1000 screenshot
作为 Python 库使用:
from desktop_controller import DesktopController
# 初始化
controller = DesktopController(host="localhost", port=5900)
# 截图
screenshot = controller.screenshot()
# 鼠标操作
controller.mouse_move(500, 300)
controller.mouse_click(500, 300)
# 键盘操作
controller.type_text("Hello World")
controller.key_press(["ctrl", "c"])
# 关闭
controller.disconnect()
在 Skill 中调用:
import subprocess
def analyze_desktop():
# 截图
result = subprocess.run(
["python3", "skills/desktop-control/scripts/main.py",
"screenshot", "--base64"],
capture_output=True, text=True
)
screenshot_base64 = result.stdout.strip()
# 发送给 AI 分析
return f""
def click_element(x, y):
subprocess.run([
"python3", "skills/desktop-control/scripts/main.py",
"mouse", "click", "--x", str(x), "--y", str(y)
])
desktop-control/ ├── scripts/ │ └── main.py # CLI 入口 ├── lib/ │ ├── __init__.py │ ├── desktop_controller.py # 核心控制器 │ ├── vnc_client.py # VNC 协议实现 │ ├── rdp_client.py # RDP 协议实现 │ ├── local_display.py # 本地显示控制 │ └── image_matcher.py # 图像匹配 ├── templates/ # 图像模板示例 ├── examples/ # 脚本示例 │ ├── open_browser.txt │ └── login_form.txt └── requirements.txt
⚠️ 重要安全提示:
MIT License - 基于 Bytebot 的 Computer Use 模式实现
相关专题
热门下载
相关下载
精品课程
共1课时 | 168人学习
共0课时 | 0人学习
共1课时 | 215人学习
最新文章