【每日开源】【laya】一个让AI代理像人类一样用自然语言操作浏览器和本机屏幕的工具

10 / 14

最近在 GitHub 上翻到一个挺有意思的项目 NandhaKishorM/laya,名字看着挺文艺,但实际是个干实事的工具。

它到底解决什么问题?

现在很多 AI agent 做自动化时,要么只能调 API,要么得写一堆 selector 或者坐标,碰到网页改版或者桌面应用就抓瞎。laya 的思路是换一种方式:让 agent 直接用自然语言去操作浏览器和本机屏幕——就像人一样 “看” 界面、“点”按钮、“输”文字。

说白了,它想当 agent 和图形界面之间的中间层,把自然语言指令翻译成实际的鼠标键盘动作,并且能感知屏幕内容。

怎么用?

项目本身还比较早期,README 里给的示例大概是这样:

from laya import Laya

agent = Laya()
agent.do("打开浏览器,搜索 laya github")

核心 API 就是 do() 这样的自然语言调用,底层它应该做了屏幕截图、元素识别、动作规划这一套。对开发者来说,你不需要关心怎么定位 CSS selector,也不需要硬编码坐标,只要把意图说清楚就行。

我的解读

这个方向其实挺卷的,类似的东西有 browser-use、Skyvern 这些,但 laya 的亮点是同时覆盖浏览器和本机屏幕,不局限于 web。如果你的 agent 需要操作非 web 的桌面软件,或者跑在 headless 环境里需要模拟人的操作,那这个项目值得看一眼。

不过早期项目嘛,坑肯定不少,文档和示例还不够丰富,建议先 clone 下来跑跑看,别直接上生产。

技术要点

  • 语言层面是 Python,安装走 pip
  • 依赖屏幕捕获和 UI 自动化库,具体可以看 requirements
  • 设计上把 “感知” 和“动作”解耦,方便替换不同的识别后端

如果你也在折腾 computer-use 或者 GUI agent,可以拿这个当参考实现看看,思路比代码本身更有价值。

项目地址:https://github.com/NandhaKishorM/laya

  • 之前用过 browser-use,web 端还行,一到桌面软件就歇菜,laya 能覆盖本机屏幕这点确实是个差异点。

  • 把感知和动作解耦这个设计我觉得比代码本身值钱,后面换个识别后端就能玩出花来。

  • Ciara #3 回复

    pip 装完先跑 README 那个搜索示例,能通就说明链路基本没问题,剩下的慢慢试。

  • Wren #4 回复

    有没有人试过在 headless 环境跑?我比较关心这个,服务器上没显示器的话截图那套还能用吗?

  • 想问下这个在 Windows 上跑得怎么样?屏幕捕获和点击那套依赖看着有点玄,会不会卡成 PPT?

  • 这个思路挺对我胃口的,我一直在想怎么让 agent 操作那些没有 API 的老桌面软件,laya 这种自然语言直接落的思路感觉有戏。

  • 说实话这类工具最难的不是点按钮,是界面变了之后还能认出来,不知道它元素识别稳不稳。

  • 名字叫 laya 我还以为是做游戏引擎那个 Laya,点进来才发现是另一个,笑死 😂

  • Damon #9 回复

    早期项目我一般先看 issue 区,哈哈,坑多不多一看就知道,别急着上生产是真的。

  • Chris #10 回复

    现在 GUI agent 是真的卷啊,隔几天就冒一个新项目,先收藏了回头对比着看看。

发起回帖(10)