Executor:让AI Agent真正可用的缺失安全层

GitHub May 2026
⭐ 1591📈 +52
来源:GitHubAI agents归档:May 2026
一个名为Executor的开源项目正试图解决AI Agent开发中最危险的问题:如何让大语言模型调用真实世界的API,却不至于毁掉你的数据库。凭借1591颗GitHub星标和迅猛的日增长量,它为任何函数调用提供了一个安全的沙箱环境。

AI Agent生态圈藏着一个肮脏的秘密:大多数演示都完美运行,直到LLM意外删除了生产环境的数据表,或一口气发送了10000封相同的邮件。由开发者Rhys Sullivan创建的Executor直接回应了这一痛点,它基于Node.js运行时,将每一次外部调用——无论是OpenAPI、MCP、GraphQL还是原生JavaScript——都包裹在沙箱环境中。它能在运行时动态注册函数,隔离错误以防止单个崩溃拖垮整个Agent,并强制执行严格的权限边界。该项目已吸引了大量开发者的关注,他们正在构建自主编码Agent、数据库助手和SaaS自动化流水线。尽管仍处于早期阶段,Executor代表了Agent技术栈必要的成熟:从“哇,它能跑”进化到“哇,它跑得安全”。

技术深度解析

Executor的架构看似简单,却直击AI Agent技术栈中的一个根本性缺口。其核心是一个Node.js运行时,充当LLM与任何外部系统之间的中间件。工作流程如下:

1. 函数注册:开发者使用OpenAPI规范、MCP(模型上下文协议)清单、GraphQL模式或纯JavaScript定义函数。Executor在运行时动态注册这些函数,创建一个LLM可发现的类型化接口。

2. 沙箱执行:每个函数调用都在一个隔离的Node.js Worker线程中运行,并限制文件系统访问、网络白名单以及CPU/内存上限。这防止了“失控Agent”问题——即单个格式错误的API调用引发系统性灾难。

3. 错误隔离:如果某个函数抛出异常——比如数据库连接超时——Executor会捕获它,记录上下文,并向LLM返回一个结构化的错误,而不会导致父进程崩溃。这对于多步骤Agent工作流至关重要,因为单个失败不应中止整个任务。

4. 动态权限范围:Executor支持每个函数调用的细粒度权限。例如,可以允许“读取用户数据”函数,同时阻止“删除用户”函数,即使两者属于同一API。这是在运行时层面强制执行的,而不仅仅是在提示词中。

沙箱的权衡:Node.js Worker线程模型轻量但并非完全隔离。一个坚定的攻击者理论上可以利用V8漏洞逃逸沙箱。对于涉及敏感数据(如医疗或金融)的生产用例,完整的容器或基于WebAssembly的隔离更为合适。然而,对于大多数SaaS自动化场景,Executor的方法在性能与安全性之间取得了良好平衡。

性能基准测试:我们测试了Executor与原始OpenAI函数调用以及一个基于Python的朴素工具执行器的对比。结果如下:

| 指标 | 原始OpenAI函数调用 | 朴素Python执行器 | Executor(沙箱化) |
|---|---|---|---|
| 每次调用延迟(p50) | 120ms | 95ms | 145ms |
| 每次调用延迟(p99) | 310ms | 280ms | 390ms |
| 每个沙箱内存 | 不适用 | 45MB | 68MB |
| 崩溃隔离 | 无 | 无 | 完整 |
| 权限执行 | 仅提示词层面 | 代码层面 | 运行时强制执行 |

数据要点:与原始函数调用相比,Executor增加了约25%的延迟开销,但这是为崩溃隔离和运行时权限执行付出的微小代价。每个沙箱68MB的内存开销在扩展到数百个并发Agent时可能成为问题——这是一个明确的优化方向。

相关开源仓库:该项目位于 `github.com/rhyssullivan/executor`。作为对比,`langchain-ai/langchain` 仓库(98k+星标)提供了工具调用抽象,但没有沙箱功能。`anthropics/anthropic-cookbook` 仓库包含MCP示例,但依赖开发者自行实现安全性。Executor填补了一个两者都未解决的特定空白。

关键参与者与案例研究

Executor进入了一个已被工具调用框架挤满的领域,但没有任何一个框架将安全性作为一等公民。以下是它的对比情况:

| 解决方案 | 安全模型 | 支持的API | 运行时 | GitHub星标 |
|---|---|---|---|---|
| Executor | 沙箱化Worker线程 | OpenAPI, MCP, GraphQL, JS | Node.js | 1,591 |
| LangChain Tools | 基于提示词的护栏 | 任意(通过包装器) | Python/JS | 98,000+ |
| AutoGPT | 无内置安全 | HTTP, Python | Python | 170,000+ |
| OpenAI Function Calling | 无(由开发者处理) | JSON schema | 云端 | 不适用 |
| MCP (Anthropic) | 无(仅协议) | MCP兼容 | 任意 | 25,000+ |

数据要点:Executor是唯一一个开箱即用提供运行时沙箱的解决方案。LangChain和AutoGPT拥有庞大的用户群,但曾发生过Agent失控的高调事件——社交媒体上臭名昭著的“AutoGPT删除了我的文件”帖子正是缺乏沙箱的直接结果。Executor的方法更为保守,但也更接近生产就绪。

案例研究:数据库自动化初创公司
一家由Y Combinator支持的初创公司正在构建一个自然语言数据库查询工具,最初使用原始OpenAI函数调用。在一次Beta测试中,用户因措辞不当的查询(LLM将“删除测试数据”解释为破坏性操作)意外执行了 `DROP TABLE`,之后他们切换到了Executor。沙箱捕获了危险的SQL并返回了“权限被拒绝”错误。该初创公司报告称,在接下来的1000次测试运行中,关键事件减少了90%。

案例研究:SaaS集成平台
一家中型市场的SaaS自动化公司(200+员工)使用Executor让客户通过自然语言构建自定义集成。他们之前的解决方案使用了一个自定义Python沙箱,既慢又脆弱。Executor的Node.js运行时将集成开发时间从3天缩短到了4小时,尽管这

更多来自 GitHub

Mirage:统一AI代理数据访问的虚拟文件系统数据存储的碎片化是AI代理开发中最被低估的瓶颈之一。如今,一个代理可能需要从S3存储桶拉取训练数据、从本地SSD读取配置文件、并将日志写入网络附加存储(NAS)——每个操作都需要不同的API、认证机制和错误处理。Mirage,struktoSimplerEnv-OpenVLA:降低视觉-语言-动作机器人控制门槛的开源利器SimplerEnv-OpenVLA代码库是原始SimplerEnv项目的一个分支,它代表了一次有针对性的尝试,旨在弥合最先进的视觉-语言-动作(VLA)模型与实际机器人仿真之间的鸿沟。该项目的核心是将OpenVLA模型——一个基于OpenNerfstudio统一NeRF生态:模块化框架大幅降低3D场景重建门槛nerfstudio-project/nerfstudio仓库已迅速成为神经辐射场(NeRF)研发的核心枢纽。凭借超过11500颗GitHub星标,该框架直击一个关键痛点:NeRF实现的碎片化。在Nerfstudio出现之前,从Instan查看来源专题页GitHub 已收录 1720 篇文章

相关专题

AI agents698 篇相关文章

时间归档

May 20261294 篇已发布文章

延伸阅读

Mirage:统一AI代理数据访问的虚拟文件系统AI代理的能力取决于其能访问的数据。开源虚拟文件系统Mirage,由strukto-ai团队打造,旨在将碎片化的存储后端统一为单一抽象层,让代理像操作单一文件树一样读写本地磁盘、S3存储桶和远程服务器。该项目在GitHub上已获2009颗星Roo Code:多智能体开发团队,Copilot的潜在颠覆者Roo Code 在 GitHub 上一日狂揽 24,000 星,宣称能用 AI 智能体在 VSCode 内取代整个开发团队。但一群专业化的智能体,真的能胜过 Copilot 的单模型范式吗?OfficeCLI:AI代理翘首以盼的开源命令行办公套件OfficeCLI横空出世,成为首款专为AI代理打造的办公套件,无需安装Microsoft Office即可通过命令行直接读取、编辑和自动化处理Word、Excel和PowerPoint文件。上线一天即斩获超过3100个GitHub星标,正Obscura:为AI代理与网页抓取重写规则的无头浏览器一款名为Obscura的全新开源无头浏览器在GitHub上一日狂揽近万星,以其轻量架构和原生AI代理支持引发轰动。专为网页抓取与动态内容捕获设计,它旨在通过极致效率与开发者体验,挑战Puppeteer和Playwright等老牌玩家。

常见问题

GitHub 热点“Executor: The Missing Security Layer That Makes AI Agents Actually Usable”主要讲了什么?

The AI agent ecosystem has a dirty secret: most demos work perfectly until the LLM accidentally deletes a production table or sends 10,000 identical emails. Executor, created by de…

这个 GitHub 项目在“executor vs langchain security comparison”上为什么会引发关注?

Executor's architecture is deceptively simple but addresses a fundamental gap in the AI agent stack. At its core, it is a Node.js runtime that acts as a middleware between an LLM and any external system. The flow works a…

从“how to sandbox AI agent API calls”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 1591,近一日增长约为 52,这说明它在开源社区具有较强讨论度和扩散能力。