browser-use/macos-harness
The simplest, thinnest harness that gives an LLM complete freedom to control a Mac.
解决的问题
提供一个极简、轻量的接口,使 LLM 代理能够控制 Mac 计算机。不依赖预构建的、应用特定的工具或僵化的框架,而是为代理提供原始的原语,以与任何应用程序、浏览器和本地文件系统进行交互。
工作原理
该项目以单个持久的 Python 进程运行,通过多种低级机制将 LLM 与 macOS 连接:
- 视觉与输入:使用 CGWindow 进行截图,使用 CGEvent 直接向特定应用程序的进程 ID(PID)发送键盘和坐标输入,而无需移动用户的物理光标。
- 可访问性:在视觉数据不足时,暴露原始的 Apple Accessibility(AX)和 Apple Events 以实现更深层次的交互。
- 浏览器控制:与 Browser Harness 集成,通过 Chrome DevTools Protocol(CDP)控制一个真实且已登录的网页浏览器。
- 系统访问:通过
Path提供对本地文件系统的直接访问,通过subprocess提供对系统 shell 的访问。
适用人群
需要在 macOS 上执行复杂、多应用任务,但不受预定义插件或工具集限制的 AI 代理开发者。
特色
- 无预定义工具:代理可在任务执行过程中使用原始原语(
see、key、type、click、ax、script)编写自己的 Python 逻辑。 - 非侵入式:在不将应用置于前台或移动物理鼠标指针的情况下,捕获后台窗口并发送输入。
- 带动画的可点击穿透指针,用于视觉反馈。
- 自引导:设计为可通过一组简单指令由代理自身完成安装和配置。
相关
- 项目
- 项目
- 项目
- 项目
- 项目