application-use:比 Computer Use 更快、更准,专为 AI Agent 打造的 macOS 原生自动化利器

3 月 29 日
 adorehb

最近一直在关注 AI Agent 操控电脑的方向,Anthropic 的 Computer Use 确实很惊艳,但在实际使用中发现:单纯依赖“截图+坐标点击”的视觉推断模式,在 macOS 上不仅慢,而且经常点不准,对 Token 的消耗也非常大。

于是,我开发了一个更符合“原生直觉”的工具,并且开源出来:https://github.com/qdore/application-use

💡 它是什么?

application-use 是一个高性能的 macOS 应用程序自动化命令行工具。它没有走全视觉推断的老路,而是直接构建在 macOS 原生 Accessibility API 和 Apple Vision 框架 之上。

简单来说,它是为了让 LLM / AI Agent 能够像“老司机”一样精准操控 macOS 软件而设计的。

🚀 核心优势:

原生级性能:基于 Go + Swift 构建,直接调用 AXUIElement 。获取 UI 结构是毫秒级的,点击和输入也是系统原生的,告别等待截图和视觉推断的延迟。 文本化理解( Textual Understanding ):它会把复杂的窗口 UI 转换为带有 Alphabet Hints (类似 Vimium 的 JK, AA 标签)的结构化文本。AI 不需要猜坐标,只需告诉工具“点击 JK”即可。 Vision 强力辅助:对于那些 Accessibility 支持不好的 App ,它会自动调用 Apple Vision OCR 进行补全,确保没有死角。 AI Agent 友好:完美的 Snapshot -> Interact 闭环。哪怕是坐标偏移或窗口位移,基于 Hint 的操作逻辑依然能保持 100% 的准确率。

🛠️ 怎么用?

安装非常简单:

npm install -g application-use@latest

核心命令演示:

# 搜索并打开 Safari
application-use search "safari"
application-use open --appName "Safari"
# 获取窗口快照( AI 友好的结构化文本 + 操作标签)
application-use snapshot --appName "Safari"
# 根据标签点击(比如标签是 JK )
application-use click JK --appName "Safari"
# 发送组合键
application-use sendkey cmd+t --appName "Safari"

AI Coding Assistant 配合: 如果你在用类似 Antigravity/OpenClaw/Claude Code 等的 AI 助手,可以直接运行 npx skills add qdore/application-use 获取更好的上下文。

目前这个工具还处在快速迭代阶段,欢迎感兴趣的同学试用、提 issue 或者讨论更高效的 Agent 交互模式!

2107 次点击
所在节点    分享创造
9 条回复
xing7673
3 月 29 日
openclaw 的 peekaboo 已经支持了你这个 AX 空间/Apple Vision 能力了,缺点就是对其他 GUI 框架比如 electron 的 app 里的按钮根本没法识别,还是要识图
我自己有尝试过除了使用这两个,配合用 omniparser 去进行 icon 识别,准确率会高很多,点击肯定是准的,但是缺点还是 token 使用量大以及慢。

在原生 icon-use 的大模型出来之前,我自己下一步的优化方案是使用 opencv 来做轨迹路径,类似于 autohotkey 但是是 llm 先导的步骤,这样走过一遍的流程就不用再次识图,节省 token 。
adorehb
3 月 29 日
@xing7673 没有原生覆盖的场景,包括无法识别的按钮,我都加了识图做补充。对 electron app 的按钮,大部分都能正确识别的。后面时间够了会微调一个 yolo 用于进一步支持。
你可以试试如果有问题欢迎 issue 反馈讨论。
xing7673
3 月 29 日
@adorehb 我试了,AX 组件能找到一些菜单栏的按钮,但是大部分的 electron 按钮还是识别不到,llm 评价是太稀疏了。我自己为什么会发现这个问题呢,是有一次我想让 agent 去点击远程软件里的连接按钮,怎么都点不到。所以必要的兜底方案还是很重要的
adorehb
3 月 30 日
@xing7673 上面的意思是我加了兜底了,如果可以,用我这个给一个现场给我,我分析一下
tonyyet
3 月 31 日
这个功能太需要了!什么时候出 Windows 版本啊?
adorehb
3 月 31 日
目前计划是先打磨好在 mac 上的操作体验,后面再在其他 OS 开发。Windows 下可以先用用 OmniParser ,不过问题是速度很慢。
xing7673
4 月 5 日
提交了一个 pr 你看看
https://github.com/qdore/application-use/pull/1
加了 omniparser 用来识别比如 vscode 终端的右上一排按钮,这些 ax 组件就无法检测了。

好用还是挺好用的,我之前的工作流以图片识别为主既费 token 又费时间,你这个效率更高一些
adorehb
4 月 8 日
@xing7673 点赞,我也试试
kujo
6 月 30 日
@xing7673 图像识别? 跳过验证码吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1201972

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX