核心用法
claw-mouse 是一个轻量级 Linux X11 桌面 GUI 自动化工具,采用"视觉循环"设计模式:截图 → 分析决策 → 执行鼠标/键盘操作 → 重复。底层封装 scrot 实现屏幕捕获,xdotool 完成鼠标移动、点击、键盘输入及窗口管理。
CLI 使用方式直接:
screenshot— 全屏截图click x y— 绝对坐标点击type "text"— 模拟键盘输入key combo— 发送快捷键(如ctrl+l)windows/activate "Name"— 窗口枚举与激活
支持 DISPLAY 和 XAUTHORITY 参数,便于守护进程或 SSH 会话中操控图形会话。
---
显著优点
1. 极简架构:仅依赖两个成熟系统工具,无重型框架
2. 脚本友好:CLI 设计便于与 Python/Shell 自动化流程集成
3. 视觉驱动:基于截图的决策模式,无需应用内 API 或 DOM 访问
4. 会话兼容:支持非标准环境下的 X11 会话指定
---
潜在局限
- X11 专属:不支持 Wayland 现代合成器,适用场景逐年收窄
- 无内置 CV:仅提供截图,图像识别需外部处理
- 坐标硬编码:绝对像素定位,分辨率/窗口位置变化时失效
- 无沙箱:直接操作真实用户会话,无权限隔离机制
---
适合人群
- Linux 自动化测试开发者
- 需快速原型验证的 RPA 场景
- 个人本地环境的辅助操作脚本
- 避免使用重量级工具(Selenium、PyAutoGUI)的极简主义者
---
常规风险
| 风险类型 | 说明 |
|---------|------|
| 误操作 | 绝对坐标点击可能触发非预期 UI 元素 |
| 会话安全 | XAUTHORITY 暴露可导致会话劫持 |
| 输入注入 | `type`/`key` 命令可能被恶意利用 |
| 兼容性 | 未来 Wayland 迁移导致工具失效 |
建议:仅在受控本地环境使用,避免生产服务器或敏感账户。