macOS Harness ⌘
最简单、最轻量的工具,让LLM能够几乎不受限制地完成Mac上的任何任务。
代理会在任务中途自行编写缺失的代码。没有框架、没有预设流程、没有限制。 一个直接连接macOS、真实浏览器和文件的Python进程。
● 代理:想做某件事,但没有现成的辅助工具
│
● 它看到应用,并使用macOS原生原语
│
● 它用普通Python编写缺失的逻辑
│
✓ 任务完成 无需添加特定于应用的工具
你的代理现在拥有一台Mac。
交给你的代理
将以下内容粘贴到Codex或Claude Code中:
使用Python 3.12通过uv从https://github.com/browser-use/macos-harness安装或升级macOS Harness。注册`macos-harness skill`输出的技能,然后运行`macos-harness doctor`。解释任何缺失的macOS权限,并在请求前征得同意。最后,通过捕获一个已在运行的应用(不将其置于前台)来验证工具是否正常工作。
就这样。代理会安装包、自学工作流程、检查权限并验证连接。也提供手动安装。
六种原语,覆盖整个Mac
macos-harness <<'PY'
frame = mac.see("Spotify")
mac.key("cmd+k", app="Spotify")
mac.type("Alessia Cara", app="Spotify")
mac.click(640, 420, app="Spotify")
item = mac.ax.at(640, 420, app="Spotify")
mac.script('tell application "Spotify" to play')
print(browser.page_info())
print(list(Path.home().iterdir()))
PY
思考方式:see、key、type、click、ax和script。browser、Path和subprocess已在同一Python进程中就绪。
没有Spotify工具、Slack工具或Final Cut工具。模型获得原始原语,其余自行编写。
工作原理
一个持久的Python进程
│
┌──────────────────────┼──────────────────────┐
│ │ │
mac.* browser.* Path / subprocess
│ │ │
┌───────────┼───────────┐ Browser Harness files + shell
│ │ │ │
CGWindow CGEvent AX + Apple CDP
screenshots to PID Events │
│ │ │ real Chrome
└───────────┴───────────┘
│
native + Electron apps
- 捕获后台应用窗口,无需将其置于前台
- 直接向应用PID发送键盘和坐标输入
- 绘制一个动画的、可点击穿透的指针,而不移动真实光标
- 当视觉不足时,暴露原始Apple Accessibility和Apple Events
- 使用Browser Harness处理真实的、已登录的浏览器
- 让普通Python和本地文件系统触手可及
权限与隐私
macos-harness doctor会报告实际需要的macOS权限。该工具永远不会激活或将目标应用置于前台,也永远不会移动物理指针。
默认启用匿名遥测。它只记录CLI命令类别、成功与否、时长、包版本、操作系统/架构和检测到的代理客户端。它从不记录提示词、应用名称、截图、UI文本、脚本、路径或窗口标题。
macos-harness telemetry disable
实验性项目。仅支持macOS。MIT许可证。