适用于 Claude Code 的 zn-gate

为 Claude Code 安装 zn-gate 插件:阻止读取含真实值的 .env 文件,对工具输出进行脱敏,并拦截粘贴到提示词中的密钥。

查看 .md

你需要 Node.js 18 或更高版本、Git,以及 Claude Code 2.1.295 或更高版本。在终端中逐行粘贴以下命令,每行后按回车:

claude plugin marketplace add usezn/zn
claude plugin install zn-gate@usezn

然后启动一个新的 Claude Code 会话。

之前运行过 zn hooks install claude-code?请先运行 zn hooks uninstall claude-code,否则两套钩子会同时运行。

你将获得的保护

  • Claude Code 无法读取含真实值的 .env 文件和凭据文件。
  • 工具返回的内容中如有密钥,会在模型看到之前被替换为标记或脱敏。
  • 粘贴到提示词中的密钥会被拦截。
  • Claude 可以检查不可信的文本是否包含提示词注入。

未覆盖的范围: 云端的 Claude Code 会话、Cowork 和聊天。

如果 zn 钩子无法运行(例如缺少 node),工具调用将不经检查直接运行,而提示词会被拦截。

把 .env 中的值存入保险库

智能体无法读取含真实值的 .env 文件。请把这些值移入 zn-gate 的加密保险库,文件中会保留 __ZN_STRIPE_KEY__ 等标记:

npx -y zn-gate unlock            # 首次运行时创建保险库
npx -y zn-gate env shadow .env

完成后,你自己的应用读取 .env 时也只会得到标记:在你允许之后,用 zn-gate 的 run 命令启动它。env shadow 会告诉你如何撤销。更多信息:保险库。

检查是否正常工作

在新的终端中运行 npx -y zn-gate check。应显示 Claude Code 的 OK。输出含义。

在 Windows PowerShell 中,如果 npm 或 npx 提示 "running scripts is disabled on this system",请改用 npx.cmd(不用 npx):参见安装。