Virtual Desktop Browser Skill
This skill provides a deterministic GUI automation runtime:
- - Xvfb virtual display (
1200x720x24) - Chromium non-headless browser
- PyAutoGUI control (click/type/hotkey/scroll)
Required system packages
CODEBLOCK0
Python dependencies
CODEBLOCK1
Tool surface
All tools return JSON dicts.
- -
browser_start(url=None, display=None) — start Xvfb + Chromium - INLINECODE2 — close processes
- INLINECODE3 — screenshot as Base64 PNG
- INLINECODE4 — move + click
- INLINECODE5 — type at focus
- INLINECODE6 — key combos
- INLINECODE7 — mouse wheel
- INLINECODE8 — template matching (OpenCV)
- INLINECODE9 — read RGB
- INLINECODE10 — focus window by title
Notes
- - Browser lifecycle is manual: start once, multi-step flow, then stop.
- Display auto-assigns (
:99..:199) if not provided. - Failsafe: moving mouse to bottom-right corner triggers pyautogui abort.
Language
See docs/ for translations:
虚拟桌面浏览器技能
该技能提供确定性的GUI自动化运行环境:
- - Xvfb虚拟显示器(1200x720x24)
- Chromium非无头浏览器
- PyAutoGUI控制(点击/输入/快捷键/滚动)
所需系统包
bash
apt-get update
apt-get install -y xvfb chromium-browser \
libnss3 libgconf-2-4 libxss1 libasound2 \
libatk1.0-0 libatk-bridge2.0-0 libcups2 \
libdrm2 libgbm1 libgtk-3-0 libxshmfence1 x11-utils
Python依赖
bash
pip install -r requirements.txt
工具接口
所有工具均返回JSON字典。
- - browserstart(url=None, display=None) — 启动Xvfb + Chromium
- browserstop() — 关闭进程
- browsersnapshot(region=None) — 截取屏幕截图并返回Base64编码的PNG
- browserclick(x, y, button=left, clicks=1, duration=0.5) — 移动并点击
- browsertype(text, interval=0.05, wpm=None) — 在当前焦点处输入文本
- browserhotkey(keys, interval=0.05) — 组合键操作
- browserscroll(clicks=1, direction=vertical, x=None, y=None) — 鼠标滚轮滚动
- browserfindimage(imagepath, confidence=0.8) — 模板匹配(基于OpenCV)
- browsergetpixelcolor(x, y) — 读取RGB颜色值
- browseractivatewindow(titlesubstring) — 根据标题激活窗口
注意事项
- - 浏览器生命周期需手动管理:启动一次,执行多步操作,然后关闭。
- 若未指定显示器,系统会自动分配(:99..:199)。
- 安全机制:将鼠标移至右下角会触发pyautogui中止操作。
语言
详见 docs/ 目录下的翻译文档: