Agentinel icon

Agentinel

Agentinel 是面向自主编码代理的本地安全层,可在包安装决策执行前拦截,帮助阻止幻觉或恶意 npm 包,无需云服务或账号。

Agentinel

概述

Agentinel 是一个本地运行的安全层,面向自主编码代理,可在 npm 安装决策执行前将其拦截。它的目的是阻止代理式工作流中出现的幻觉或恶意包安装,在这类场景下,可能没有人逐条审核每个命令。

该产品完全在开发者机器上离线运行。它使用捆绑的 OSV 数据库加上启发式检查来标记可疑包,然后进行阻止或警告,并把结构化说明发送回代理,以便其自行纠正。

核心能力

执行前拦截

Agentinel 会挂钩到 AI 代理的预工具或预执行事件,因此在安装命令到达 npm 或其他包管理器之前就会被拦截。

本地 OSV 包检查

扫描器会将请求的包与捆绑的 Open Source Vulnerabilities 数据库本地副本进行比对,文档称其覆盖 216,000+ 个恶意或存在漏洞的包。

启发式威胁检测

启发式规则会补充数据库查询,用于发现 slopsquatting、幻觉式包名以及数据库中可能尚未出现的可疑情况。

代理反馈闭环

当某个包被阻止时,Agentinel 会将结构化 JSON 原因返回到代理上下文中,使模型无需人工干预即可自我纠正。

依赖树扫描

该工具会在本地解析并扫描依赖树,因此不仅能检查顶层安装目标,还能检查传递依赖。

失败开放错误处理

文档记录了扫描失败时的失败开放(fail-open)模式:如果扫描器内部出错,它会允许安装继续并记录警告,而不是静默破坏工作流。

适用场景

  • 保护自主安装

    当 AI 编码助手可以自行运行安装命令,并且你希望在任何包落盘前进行本地检查时,使用 Agentinel。

  • 捕获幻觉式包名

    用它来降低 slopsquatting 风险,即攻击者预先注册一个 LLM 很可能会幻觉出的包名。

  • 流水线防护

    在 CI 或 CD 流水线中使用它来扫描清单,并在可疑包到达审查或执行之前进行拦截。

  • 代理自我纠正

    当你希望代理本身理解某次安装为何被阻止,而不是留给人去解释一条普通的终端错误时,使用它。

  • 离线安全审查

    在不能或不应将包检查发送到云服务的环境中使用它,因为该产品设计为完全离线运行。

Pros and Cons

Pros

  • 完全本地运行,扫描时无需账号、服务器、遥测或网络调用。
  • 在包管理器运行之前就拦截代理,这比事后扫描器更早处理自主安装。
  • 使用结构化反馈闭环,因此被阻止的操作会被解释给代理,便于自我纠正。
  • 覆盖完整依赖树,而不只是顶层包名。
  • 可通过单条 npm install 命令添加,并被描述为零配置。

Cons

  • 本地 OSV 数据源据说比实时数据源滞后约 1–3 天,因此并非实时。
  • 它主要侧重于数据库匹配和启发式规则,而不是行为分析或机器学习。
  • 如果扫描在内部失败,文档中的失败开放行为会允许安装继续。

FAQ

Agentinel 如何融入 AI 编码工作流?

Agentinel 在开发者的本地机器上运行,扫描时不使用网络调用。它位于 AI 代理与包管理器之间,扫描请求的包,并根据结果阻止或允许安装。

它是为哪些 AI 编码代理设计的?

文档列出了 Claude Code、GitHub Copilot CLI、OpenAI Codex CLI 和 Gemini CLI 作为支持示例。Agentinel 会挂钩它们的预执行事件,因此可以在命令运行前拦截安装决策。

如果 Agentinel 无法扫描某个包,会发生什么?

是。文档描述的是失败开放(fail-open)设计:如果由于内部错误导致扫描无法完成,则允许安装继续并记录警告。这样做是为了避免无意中破坏工作流。

Agentinel 在允许安装前会检查什么?

Agentinel 会将包与捆绑的本地 OSV 数据库副本以及启发式规则进行比对。主页还说明它可以扫描完整依赖树,而不只是顶层包。

Agentinel 需要云服务或账号吗?

源描述将 Agentinel 说成是一个本地运行的开源防护层,没有账号、没有 API 密钥、没有遥测,也没有服务器。它被定位为通过 npm 安装的零配置即插即用工具。

Quick Facts

类别
开发者工具
主要用途
自主 AI 编码代理的安全防护层
平台
本地/离线,基于 npm
来源域名
agentinel.habitwala.in
运行模式
拦截预工具或预命令安装操作
价格信号
网站将其呈现为免费;价格页面返回 404,而不是计划表