核心用法
mac-use 采用「截图 → OCR 识别 → 元素编号 → 点击操作 → 验证结果」的闭环工作流控制 macOS 图形界面。用户通过 screenshot 命令捕获目标窗口,Apple Vision 框架在本地完成 OCR 检测并生成带编号标注的 1000×1000 画布图像,返回 JSON 格式的元素列表(含编号、文本内容、中心坐标)。随后可通过 clicknum 按编号点击文本元素,或使用 click 以画布坐标点击无文本图标,配合 type(剪贴板粘贴)、key(按键组合)、scroll 完成完整交互。每次操作后需再次截图验证,形成可靠的视觉反馈循环。
显著优点
可视化精准控制:OCR 标注将抽象 UI 转化为可编号引用的元素,大幅降低坐标猜测成本;本地化隐私保障:Apple Vision 框架设备端运行,截图仅存于 /tmp,无网络传输;多语言输入支持:type 命令采用剪贴板粘贴机制,完美支持中文、日文等 Unicode 字符;多窗口精细管理:list 命令枚举所有可见窗口,,--id 参数精准定位弹窗、小程序等独立窗口;安全兜底机制:集成 pyautogui.FAILSAFE,鼠标移至屏幕角落即可中止失控自动化。
潜在缺点与局限性
平台强绑定:仅支持 macOS,且依赖 Apple Vision 框架,Intel Mac 及旧版系统兼容性存疑;OCR 识别盲区:纯图标按钮(箭头、购物车、关闭按钮)无法被编号,需退化为坐标点击,增加使用门槛;权限门槛较高:需用户手动授予屏幕录制和辅助功能权限,首次配置体验较重;剪贴板副作用:type 命令覆盖系统剪贴板内容,可能干扰用户正常工作流;无断言机制:缺乏内置的「等待元素出现/消失」逻辑,复杂异步场景需人工插入 sleep;坐标系统一性:1000×1000 画布坐标与物理像素分离,高分屏场景下直觉性下降。
适合的目标群体
自动化测试工程师:为 macOS 原生应用构建可视化回归测试流程;效率极客:将重复性 GUI 操作(报表导出、数据录入、定时任务)脚本化;AI Agent 开发者:赋予大模型「看见屏幕并操作」的具身能力,实现真正的 GUI Agent;无障碍辅助场景:为视障用户或操作受限者提供语音/文本驱动的应用控制接口;教学演示制作:通过编号标注生成清晰的操作指引截图序列。
使用风险
权限失控风险:辅助功能权限一旦被恶意利用,可导致键盘记录或未经授权的操作,建议在专用账户或虚拟机中运行;剪贴板敏感信息泄露:type 命令将文本写入剪贴板,若系统存在剪贴板历史工具(如 Paste、Maccy),密码等敏感信息可能被记录——务必遵守「不输入密码」的警告;OCR 误识别导致误操作:模糊界面、艺术字体或低对比度场景下编号可能错位,点击前务必核对标注图像;窗口状态竞争:若目标应用在截图与点击之间弹出对话框或改变布局,,clicknum 可能点击错误位置,高频操作场景建议降低系统动画速度;依赖版本漂移:requirements.txt 使用 >= 而非 == 锁定版本,长期运行可能因 PyAutoGUI 或 Pillow 更新引入破坏性变更。