browser-use 团队的实验性项目:不造 Spotify 工具、Slack 工具,只给 LLM 六个最薄原语("Six primitives. The whole Mac."),让模型在任务中途按需自己写缺失的逻辑,完成 Mac 上几乎任何操作。agent 工具链普遍在"每个应用封装一堆专用 tool",脆且难维护。

| 项目 | 内容 |
|---|---|
| 仓库 | browser-use/macos-harness |
| 语言 / 许可证 | Python / MIT |
| 总星标 | ⭐ 784(截至 2026-08-26) |
| 创建时间 | 2026-08-17 |
| 榜单 | 近30天新星榜 第29名 |
browser-use 团队的实验性项目:不造 Spotify 工具、Slack 工具,只给 LLM 六个最薄原语("Six primitives. The whole Mac."),让模型在任务中途按需自己写缺失的逻辑,完成 Mac 上几乎任何操作。
agent 工具链普遍在"每个应用封装一堆专用 tool",脆且难维护。macos-harness 反其道而行——"No framework, no recipes, no rails",把屏幕捕获、键鼠输入、无障碍 API、AppleScript 全部摊给模型。这种"薄原语 + 模型即席编程"的理念撞上了 computer-use 叙事的风口;来自 browser-use 官方团队的信誉加持使其十天破八百星。
单一持久 Python 进程分三路:mac.\* 三支底层能力(CGWindow 截图、CGEvent 按 PID 输入、AX+Apple Events)、browser.\* 复用姊妹项目 Browser Harness 的 CDP 通道、Path/subprocess 直连文件系统。核心设计铁律:"The model gets raw primitives and writes the rest."
仅 macOS;uv + Python 3.12;需要辅助功能、屏幕录制、自动化等系统权限——官方推荐把一段安装提示词直接粘给 Codex 或 Claude Code,由 agent 自行装包注册 skill 并运行 `macos-harness doctor` 解释缺失权限、请求授权后用"不置前截取一个正在运行的应用"作验收测试;也提供手动安装文档 install.md。
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
一段 heredoc 即完成截图定位、快捷键唤起搜索、输入、点击、AX 元素查询与 AppleScript 播放的完整链路。
`doctor` 是权限体检入口,agent 应先解释缺什么再向用户请求授权;遥测默认开启但仅匿名记录命令类别、成败、时长等,可用 `macos-harness telemetry disable` 关闭;README 明示项目为实验性质。
对比 OpenInterpreter、各类 macOS MCP 工具集,本项目赌的是"少工具 + 强模型"路线;浏览器侧复用自家 Browser Harness 形成组合拳,理念上更接近操作系统级 agent 底座而非应用插件堆叠。
仓库:https://github.com/browser-use/macos-harness ;手动安装见 install.md;许可证 MIT;默认遥测可关闭。