打开网易新闻 查看精彩图片

2024年,AI Agent开始真正"动手"了——不是写诗,是写代码、读文件、调API、无限循环执行任务。但一个没人敢忽视的问题浮出水面:你怎么保证它不会顺手把你的数据库删了?

NVIDIA和Node9给出了两套完全不同的答案。一套是"基础设施沙箱",一套是"执行治理层"。这不是技术路线的微调,是安全哲学的根本分野。

沙箱派:把Agent当成病毒来防

NVIDIA OpenShell的底层假设很直白——Agent本身就是威胁。它借鉴了浏览器标签页的安全模型:每个Agent会话被扔进一个高度隔离的执行环境,权限由运行时逐条核验。

技术实现上,OpenShell用Linux内核级的Landlock LSM(安全模块)加容器化,把Agent裹进一个"一次性盒子"。 hallucination(幻觉)的破坏力被严格锁死在盒内,不会蔓延到宿主机。

这套架构对云部署和多租户场景几乎是刚需。你的Agent在AWS上跑三个月无人值守?OpenShell确保它就算疯了也只能疯在自己的笼子里。

但沙箱的边界也很明显。OpenShell管的是"在哪里执行",不管"执行什么"。

打开网易新闻 查看精彩图片

举个例子:你给Agent开了Postgres数据库的访问权限,OpenShell能保证Agent碰不到隔壁的服务器进程,但它不会拦截Agent自己生成的DROP TABLE users;。删库指令在沙箱里照样能跑,只是跑完之后整个沙箱可以被一键销毁——这算是事后止损,不是事前拦截。

更麻烦的是开发体验。用Claude Code或Cursor写React组件的开发者,没人愿意为了内核级隔离而频繁同步文件。沙箱的安全是有摩擦成本的。

治理派:在命令流里装安检门

治理派:在命令流里装安检门

Node9 Proxy走了另一条路。它不建笼子,而是在Agent和外界之间设了一道透明的安检门。

Node9的核心是执行治理(Execution Governance)。它解析Agent发出的每一条命令,用确定性规则做实时判断:npm run build?放行。SELECT * FROM users WHERE id=1?放行。但DELETE * FROM users?拦截。

这套系统的关键是不依赖沙箱的重量级隔离,而是在命令语义层面做治理。 它允许Agent在本地环境自由运行,只对危险操作设卡。开发者几乎感知不到它的存在,直到Agent试图越界。

Node9的架构假设是:Agent的"意图"比它的"位置"更重要。沙箱防的是Agent被攻破后的横向移动,治理层防的是Agent被误导后的纵向破坏。两者不是替代关系,是互补关系。

打开网易新闻 查看精彩图片

但治理层的挑战在于规则完备性。你怎么定义"危险"?DROP TABLE在测试环境可能是常规操作,在生产环境就是事故。Node9需要上下文感知的策略引擎,这比沙箱的边界控制复杂一个数量级。

2026年的部署现实:不是二选一,是叠buff

2026年的部署现实:不是二选一,是叠buff

技术社区正在形成共识:单一方案都不够用。

生产环境的推荐架构是分层防御。OpenShell打底,确保Agent的物理边界;Node9 Proxy叠加,在命令流里做语义拦截。沙箱管"跑不跑得出去",治理层管"跑的是什么"。

NVIDIA自己在Agent Toolkit的文档里也暗示了这种分层思路。OpenShell是"必要非充分"条件——没有它,你无法上生产;但只有它,你无法安心睡觉。

一个值得关注的细节是性能损耗。OpenShell的Landlock隔离在微秒级,Node9的命令解析在毫秒级。对于高频调用的Agent,治理层的延迟可能成为瓶颈。Node9的优化方向是预编译规则集,把运行时判断尽量前移。

另一个变量是模型能力演进。GPT-5级别的Agent可能生成更隐蔽的恶意代码,绕过基于正则或AST(抽象语法树)的静态规则。Node9的应对是引入轻量级LLM做二次验证——用AI审AI,成本又上去了。

回到最根本的问题:当Agent开始自主决策,"安全"的定义本身在漂移。传统的输入过滤、输出审核都是静态思维,Agent安全的本质是行为的不确定性管理。

OpenShell和Node9代表了两种不确定性应对策略——一个是空间隔离,一个是时间拦截。前者假设"坏结果必然发生,但可 containment(遏制)",后者假设"坏意图可被识别,但需持续对抗"。