Show HN:通过逆向工程将Web应用转化为代理工具
摘要
一个基于浏览器的代理,能够逆向工程Web应用API,自动生成代理工具,实现无需修改代码的深度集成。
大家好!我们构建了一个基于浏览器的代理,它运行在经过身份验证的Web应用内部,观察应用如何调用自身的API,并自动将其转化为代理工具。你可以把它想象成一个自动生成的MCP服务器,随着宿主应用的变化而自我更新。<p>结果就是一个熟练的AI助手,能够以最少的精力真正深度集成任何产品(不仅仅是聊天和RAG)。<p>下面是一些简短的演示,展示了该代理在你可能熟悉的软件中的运行情况:<p>- Jira: <a href="https://demo.frigade.com/hn?skill=jira">https://demo.frigade.com/hn?skill=jira</a><p>- Spotify: <a href="https://demo.frigade.com/hn?skill=spotify">https://demo.frigade.com/hn?skill=spotify</a><p>- Hacker News (lol): <a href="https://demo.frigade.com/hn?skill=hackernews">https://demo.frigade.com/hn?skill=hackernews</a><p>- 完整演示: <a href="https://demo.frigade.com/hn?skill=full-demo">https://demo.frigade.com/hn?skill=full-demo</a><p>正如你在示例中所见,你可以做的比平时点按操作更多(也更快)。而且我们从未触及这些产品的源代码!<p>为什么要这么做?<p>在理想的世界里,每个应用都有一个MCP服务器或易于消化的API供AI代理使用。但实际上,我们发现即便是非常现代的软件也往往有一张由混乱的API和服务组成的蛛网,AI代理无法直接使用。安全性也成为一个大问题,因为不同的应用有不同的(通常是自制的)端点安全标准(JWTs/cookies/两者的混合)。最后,让一个实际的浏览器代理进入并代表用户使用应用(即计算机使用),实在太脆弱、太慢,而且消耗大量令牌。<p>我们利用现有的已经训练好的浏览器代理——它已经学会了如何使用和了解经过身份验证的应用——并增加了一个额外步骤,将应用的认证API自动转化为“配方”。一个配方包含以下内容:<p>- API端点 + 方法<p>- 认证方法(以及如何获取刷新认证令牌/cookies)<p>- 响应模式<p>- 输入模式(用于POST/PUT)<p>- 工具功能的人类可读描述<p>综合起来,这些就成为LLM的可复用工具,无需编写或维护任何代码。即使API发生变化,我们的代理也能找出变化,并用更新后的版本替换工具的配方。<p>通过这种方式,为AI代理添加工具变得超级简单:<p>- 我们的代理在应用上进行训练并构建配方<p>- 应用所有者从我们的仪表板启用已发现的工具<p>- 代理现在可以直接在应用内部代表用户执行操作。例如,说出像“邀请我的队友加入我的工作区”这样的指令,就会安全地调用现有的用于邀请用户的API端点,而无需通过第三方代理或中继。<p>当然,尝试这样做时你会遇到大量的边界情况——每个应用本质上是不同的,尽管存在许多“标准”。有趣的事实:graphql是标准化配方时最难以处理的API。<p>期待您的反馈和评论!
查看缓存全文
缓存时间: 2026/07/09 16:37
# Show HN:将 Web 应用逆向工程为智能体工具
来源:https://news.ycombinator.com/item?id=48847834
大家好!我们构建了一个基于浏览器的智能体,它可以运行在已认证的 Web 应用内部,观察应用如何调用自身的 API,并自动将这些调用转换为智能体工具。你可以把它看作一个自动生成的 MCP 服务器,当宿主应用发生变化时,它会自我更新。
最终成果是一个能力出众的 AI 助手,它能与任何产品深度集成(而不仅仅是聊天和 RAG),几乎不需额外工作。
下面是一些简短的演示,展示了这个智能体在大家可能熟悉的软件中的工作效果:
- Jira:https://demo.frigade.com/hn?skill=jira
- Spotify:https://demo.frigade.com/hn?skill=spotify
- Hacker News(笑):https://demo.frigade.com/hn?skill=hackernews
- 完整演示:https://demo.frigade.com/hn?skill=full-demo
正如你在示例中看到的,你可以做更多操作(而且速度更快),远超常规的点按操作所能达到的效果。而且我们从未碰过这些产品的源代码!
**为什么要这样做?**
理想情况下,每个应用都会提供一个 MCP 服务器或易于解析的 API,供 AI 智能体使用。但实际上,我们发现即便最现代的软件也往往有一套错综复杂的 API 和服务,AI 智能体根本无法直接使用。安全性也是个巨大问题,因为不同应用对端点(JWT / Cookie / 两者混合)的保护标准各不相同。最后,让一个浏览器智能体代表用户实际进入应用操作(即 computer-use)往往过于脆弱、缓慢,且消耗大量 token。
我们在此基础上做了改进:让已有的、经过训练能够使用和学习已认证应用的浏览器智能体增加一个步骤,自动将应用的已验证 API 转换为“配方”(recipe)。一个配方包含以下内容:
- API 端点 + 方法
- 认证方式(以及如何获取刷新令牌 / Cookie)
- 响应 Schema
- 输入 Schema(用于 POST / PUT)
- 工具的人可读描述
将这些组合起来,就成为了 LLM 可复用的工具,完全不需要编写或维护任何代码。即使 API 发生变化,我们的智能体也会识别并自动将对应的工具配方更新为最新版本。
这样一来,为 AI 智能体添加工具变得极其简单:
- 我们的智能体在应用上训练,构建配方
- 应用所有者通过我们的仪表盘启用已发现的工具
- 智能体现在可以直接在应用内部代表用户执行操作。例如,说一句“邀请我的同事加入工作区”,就能安全地调用现有的邀请用户 API 端点,无需通过第三方代理或转发。
当然,尝试这样做时会遇到大量边界情况——尽管存在许多“标准”,但每个应用本质上都是不同的。有趣的发现:GraphQL 在标准化配方时是最难处理的 API。
期待大家的反馈和评论!
相似文章
Show HN: peerd – 完全在浏览器中运行的 AI 代理工具集
peerd 是一个开源浏览器扩展,作为 AI 代理工具集,使代理能够在无需后端的情况下完全在浏览器内运行,利用 WebAssembly 进行沙箱计算,并通过 WebRTC 实现点对点代理通信。
5个企业级AI智能体集群(Lemonade、CrowdStrike、Siemens)被逆向工程化为可运行的浏览器模板。
作者分享了一款基于浏览器的工具,该工具将Lemonade和CrowdStrike等企业级AI智能体架构逆向工程化为可运行的可视化模板。这些模板允许开发者无需编写代码即可探索保险、制造、网络安全、教育和零售等领域的复杂多智能体工作流。
我制作了一个工具,让编程代理能够看到你的浏览器!
一个Chrome扩展,让编程代理(LLM)能够查看浏览器,无需无头浏览器即可迭代设计。
“代理需要浏览器”问题——我开源了自己的解决方案
Otto (MIT) 是一个开源浏览器扩展,它通过 CLI 或代理将真实标签页转化为可控节点,解决了“代理需要浏览器”的问题,无需无头农场或昂贵的云服务。
@DeRonin_: 你明白 Browserbase 刚刚开源了什么吗???一个只需学习一次任何网站,就能以十分之一成本永久完成任务的智能体……
Browserbase 开源了 Autobrowse,这是一个智能网页浏览工具,通过迭代探索学习网站结构,并将发现的模式保存为可复用的 Markdown 技能文件,大幅减少重复网页自动化任务的时间和成本。