Python · 项目报告

browser-use/macos-harness

The simplest, thinnest harness that gives an LLM complete freedom to control a Mac.

已完成 打开 GitHub
B
501星标
36Fork
5Issue
MIT许可证

分析结果

项目分析

macos-harness 是一个面向 LLM/Agent 的极简 macOS 控制层,让 AI 通过一个持久 Python 进程直接操作真实 Mac、浏览器、本地文件和应用窗口。它提供少量底层原语,例如截图观察、键盘输入、文本输入、坐标点击、Accessibility 访问、AppleScript 执行,并允许 Agent 在任务过程中自行编写 Python 逻辑完成自动化,而不是依赖预置的应用专用工具。

适用领域 AI Agent / 桌面自动化 / macOS 自动化 / LLM Computer Use / 浏览器自动化 / 可访问性 Accessibility / AppleScript / Apple Events / Python 自动化 / 本地办公自动化 / 人机交互测试
配置难度 中高。对于熟悉 Python、macOS 权限、AppleScript、Accessibility、LLM Agent 工具调用的开发者,上手难度中等;但要构建稳定、可控、安全的真实桌面 Agent,需要较强的系统自动化、安全隔离和提示工程经验。
商业价值 该项目的商业价值主要体现在帮助企业和开发者快速验证并构建 macOS 上的通用 AI 桌面 Agent。相比为每个应用开发专用插件,它通过少量底层能力让 LLM 直接操作真实软件,适合用于办公自动化、测试自动化、浏览器任务执行、内部工具操作、AI 助手原型和 RPA 替代方案。对于面向 macOS 专业用户的软件公司、AI Agent 创业团队和企业自动化团队,它可以显著降低原型开发成本。不过,由于仍属实验性质且权限较高,商业落地前需要重点投入安全隔离、权限管控、审计日志、任务回滚和稳定性测试。
01

技术亮点

  • 设计极简,只暴露 see、key、type、click、ax、script 等底层原语,避免复杂框架和大量应用专用工具。
  • Agent 可以在任务中动态编写普通 Python 逻辑,灵活性高。
  • 能够捕获后台应用窗口,不需要把目标应用切到前台。
  • 可以直接向指定应用 PID 发送键盘和坐标输入,不依赖真实鼠标移动。
  • 支持 Apple Accessibility 与 Apple Events,适合处理视觉识别不足或需要结构化 UI 信息的场景。
  • 与真实浏览器连接,能使用已有登录状态完成网页任务。
  • 同一个 Python 进程内可同时访问 macOS 原语、browser、Path、subprocess,便于组合复杂工作流。
  • MIT 许可证,商业和二次开发友好。
  • 项目定位清晰,适合构建真正的 Mac Computer Use Agent。
  • README 中提供了面向 Codex/Claude Code 的直接提示词,降低初始接入成本。
02

目标用户

  • 希望让 LLM 操作真实 macOS 桌面的 AI 应用开发者
  • 构建本地 AI Agent、Computer Use Agent 的研发团队
  • 需要自动化 macOS 原生应用、Electron 应用或浏览器任务的开发者
  • 使用 Claude Code、Codex 等编码 Agent 的高级用户
  • 做桌面 RPA、自动化测试、办公自动化的工程师
  • 研究 AI 操作系统交互能力的团队
03

配置要求

  • 操作系统:macOS only,不支持 Windows 或 Linux。
  • Python:推荐或要求 Python 3.12。
  • 包管理:README 推荐使用 uv 安装。
  • 权限:需要根据实际使用场景授予 macOS 权限,可能包括辅助功能 Accessibility、屏幕录制 Screen Recording、自动化 Automation、Apple Events 等。
  • 浏览器:如需 browser.* 能力,需要真实 Chrome 或兼容 CDP 的浏览器环境。
  • Agent 集成:需要将 macos-harness skill 注册到 Codex、Claude Code 或其他支持调用本地工具的 Agent 中。
  • 隐私配置:默认启用匿名遥测,可通过 macos-harness telemetry disable 关闭。
  • 安全策略:由于 Agent 能控制应用、读取文件、执行 subprocess,建议在受控账号、测试机或沙箱环境中使用。
04

适用场景

  • 让 LLM 自动操作 Spotify、Slack、Chrome、Finder 等真实 macOS 应用
  • 在不切换前台窗口的情况下捕获后台应用窗口画面
  • 通过键盘、点击、文本输入模拟用户操作
  • 结合 Accessibility API 获取 UI 元素信息,辅助视觉识别不足的场景
  • 通过 AppleScript 控制支持脚本化的 macOS 应用
  • 操作真实登录态 Chrome 浏览器,执行网页任务
  • 让 Agent 访问本地文件系统并调用 subprocess 执行 shell 命令
  • 开发通用桌面 Agent,而不是为每个 App 单独写插件
  • 自动化办公流程,例如搜索、复制、填写表单、读取文件、执行脚本
  • 验证 LLM 在真实操作系统环境中的端到端执行能力
05

部署与配置

  • 确认运行环境为 macOS,该项目仅支持 macOS。
  • 安装 Python 3.12。
  • 安装或准备 uv 包管理工具。
  • 从 GitHub 仓库 https://github.com/browser-use/macos-harness 安装或升级 macos-harness。
  • 运行 macos-harness skill,获取并注册给 Codex、Claude Code 或其他 Agent 使用的 skill 信息。
  • 运行 macos-harness doctor 检查本机权限和运行环境。
  • 根据 doctor 输出授予必要的 macOS 权限,例如 Accessibility、Automation、Screen Recording 等,实际权限以检测结果为准。
  • 验证安装:捕获一个已经运行的应用窗口,并确认不需要将该应用切换到前台。
  • 可选:如不希望启用匿名遥测,执行 macos-harness telemetry disable。
06

风险与注意事项

  • 项目标注为 Experimental,稳定性和 API 兼容性可能尚未成熟。
  • 仅支持 macOS,跨平台能力有限。
  • 需要较高权限,一旦 Agent 行为失控,可能误操作真实应用、文件或系统设置。
  • Agent 可访问本地文件和执行 subprocess,存在数据泄露、破坏性命令执行和供应链安全风险。
  • 默认启用匿名遥测,虽然声明不采集敏感内容,但对隐私敏感团队需要主动关闭并审计。
  • 底层原语自由度高,但缺少框架约束,复杂任务的可靠性高度依赖 LLM 能力和提示设计。
  • 坐标点击和视觉识别可能受窗口尺寸、分辨率、主题、语言、动态 UI 影响。
  • macOS 权限授权流程可能对普通用户不够友好,也可能受企业设备管理策略限制。
  • 控制真实登录态浏览器存在账号安全和误操作风险。
  • 仓库星标约 501、fork 约 36,社区规模尚处早期阶段。

历史记录

热榜历史快照

2026-08-20 第30名 新收录 · github_search