MacOS Desktop Control

🖥️ Retina 级桌面自动化双管道方案

macOS 桌面自动化工具集,通过 AppleScript 语义控制与视觉识别双管道实现精准的鼠标、键盘及窗口操作,支持 Retina 屏幕坐标映射。

收藏
4.6k
安装
1k
版本
1.0.8
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心功能概述

macos-desktop-control 是一套专为 macOS 设计的桌面自动化技能,采用显式双管道架构:AppleScript 负责应用语义层(激活应用、查询窗口状态),视觉识别+PyAutoGUI 负责 UI 操作层(点击、拖拽、输入)。这种设计边界既利用了 macOS 原生 API 的稳定性,又避免了 AppleScript UI Scripting 的脆弱性。

显著优点

1. 坐标系统一:针对 Retina 屏幕首创"逻辑坐标"工作模式,自动处理截图像素(2x)与 PyAutoGUI 点坐标的转换,通过 /tmp/macos_desktop_control/calibration.json 持久化校准数据
2. 双模定位:支持 Apple Vision OCR 文本定位与 OpenCV 模板匹配,覆盖标准控件与自定义绘制界面

3. 安全兜底:强制启用 pyautogui.FAILSAFE = True,鼠标移至左上角即中止自动化

4. 权限最小化:AppleScript 仅限应用/窗口语义,不触及深层辅助功能树,降低系统权限依赖

潜在局限

  • 硬件假设:V1 限定单屏 Retina 环境,非 Retina、多显示器、缩放分辨率需后续扩展
  • 输入法敏感--action write 受当前输入法状态影响,中文/混合文本需改用剪贴板+Command+V 流程
  • 无原生辅助功能:有意排除 AX API 深度遍历,无法获取标准控件的 accessibility 属性

适用人群

  • 需要自动化跨应用工作流的效率用户
  • 开发自定义 RPA/自动化脚本的开发者
  • 需与视觉界面(聊天行、画布、图片)交互的场景

常规风险

| 风险类型 | 说明 |
|---------|------|
| 误点击 | OCR/模板匹配失败可能导致点击错误坐标,建议配合 `pyautogui.moveTo` 预检 |
| 输入干扰 | 输入法候选栏、全角/半角模式可能影响 `write` 动作,关键文本强制走 paste 流程 |
| 权限撤销 | 屏幕录制/辅助功能权限可能被系统收回,需重新授权 |
| 焦点抢占 | 自动化过程中前台应用切换可能中断操作序列 |

技术栈

AppleScript → Python/PyObjC (Apple Vision) → OpenCV → PyAutoGUI,零外部 Tesseract 依赖。

MacOS Desktop Control 内容

scripts文件夹
手动下载zip · 14.8 kB
applescript_app.pytext/plain
请选择文件