自动化与运维 environment-variablessecrets-managementvarlocksecuritydotenv-schemacli

Varlock 密钥防护技能

在 Claude 会话中安全地管理环境变量,确保密钥永不暴露于终端输出、日志、Git 提交或 Claude 上下文。

FollowSkills 评估 · FSRS-2.0
谨慎使用
51/ 100 五分制 2.6 / 5
1 2 3 4 5 6
1信任安全14 / 25 · 2.8/5

技能本身以最小暴露为核心原则,明确禁止 echo/cat .env/printenv,拒绝代改密钥并要求用户确认式手动操作,数据流披露清晰,MIT 许可与上游 Varlock 出处注明。扣分项:推荐 curl | sh 安装脚本未校验完整性,依赖外部 exec() 集成 1Password/AWS 增加攻击面,无回滚/恢复指引,发布者身份未经认证。

2可靠稳定10 / 20 · 2.5/5

快乐路径(varlock load/run)与错误处理(command not found、schema 校验失败)有覆盖,失败反馈模式可读。扣分项:全部为静态文档,无测试、无 CI 证据、无行为验证;部分 grep 输出格式(如 🔐sensitive ▒▒▒▒▒)依赖上游版本,可能不一致。

3适用触发8 / 15 · 2.7/5

触发词与场景(密钥、.env、API key、凭证)明确,拒绝场景(更新/展示密钥)界定了非适用范围。扣分项:核心依赖 varlock CLI 及 varlock.dev 安装脚本,海外服务在中国大陆网络可达性未验证且无镜像替代方案,无中文支持说明。

4规范维护9 / 15 · 3.0/5

结构清晰、渐进披露良好、含故障排查表、速查卡、集成说明、版本号 1.0.0、MIT 许可及上游署名。扣分项:无 changelog、无维护者承诺与更新路径声明、SKILL.md 日期为未来日期(2025-12-22)、对本地 clerk/docker 技能的引用属于未验证假设。

5有效结果6 / 15 · 2.0/5

若 Varlock 行为与文档一致,该技能能直接完成'不暴露密钥地管理环境变量'的任务,模式与 npm/CI/Docker 集成示例可直接使用。扣分项:静态审查无法验证输出效果,边际价值取决于用户尚未安装 Varlock 的前提,成本收益未量化。

6证据核验4 / 10 · 2.0/5

核心命令与注解可对照上游 varlock.dev 文档审计,README 署名清晰。扣分项:无任何测试、CI 记录或第三方执行证据,所有'确保永不暴露'的声明均为作者断言,未独立复现。

证据充分度: 评估于 2026年9月10日 审查版本 348a435345b7
使用前请注意
  • 安装方式依赖 curl | sh 远程脚本,建议先审查脚本或改用包管理器安装 Varlock。
  • 技能效果完全取决于 Varlock CLI 的实际行为,未经执行验证;'永不暴露'是设计目标而非已证保证。
  • varlock.dev 及 GitHub 原始文件在中国大陆的可达性未验证,核心功能可能受网络环境限制。
  • SKILL.md 中的'最后更新'日期晚于常规审查时点,且无 changelog,版本治理薄弱。
  • 对本地 clerk/docker 技能的集成引用是假设,用户环境未必存在这些文件。
评估证据 [1][2][3]
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

这是一个用于 Claude Code 的开源(MIT)技能,封装了 Varlock 工具,强制执行安全的密钥处理模式。它通过一组明确的安全规则,阻止 echo 密钥、直接读取 .env、在命令中硬编码凭据等危险行为,并指导改用 varlock load / varlock run 等安全命令。技能以单个 SKILL.md 文件形式存在,适用于任何处理 API 密钥、数据库密码或敏感配置的开发场景。

指导 Claude 在处理环境变量时遵守安全规则:用 varlock load 校验配置(输出掩码值)、用 varlock run 注入环境变量执行命令、读取不含真实值的 .env.schema 而非 .env、为缺失的变量更新 schema;当用户要求直接查看或修改密钥时,按技能内建话术拒绝并引导用户手动操作。

  1. 使用 Claude Code 开发、项目 .env 中含有 Stripe/Clerk 等第三方 API 密钥的开发者,希望避免密钥进入对话上下文
  2. 需要将密钥接入 CI/CD 或 Docker 的团队,可按技能内的 GitHub Actions 与 Dockerfile 示例集成 varlock
  3. 从 1Password 或 AWS Secrets Manager 读取密钥、并希望经 schema 校验后注入的工程团队
  4. 调试认证问题时希望 Claude 只检查密钥是否存在与格式是否正确,而非打印密钥值

这个 Skill 有哪些优点和局限?

优点
  • 规则明确具体,给出大量正反命令示例,易于模型遵循
  • 以单个 SKILL.md 文件安装,方式简单且提供一键命令
  • 涵盖 CI/CD、Docker、1Password、AWS Secrets Manager 等常见集成示例
  • MIT 许可,无使用限制
局限
  • 依赖用户自行安装 Varlock CLI,未安装时技能无法生效
  • 仓库未提供测试套件或跨平台验证说明
  • 安全规则只是提示层面的约束,无法在技术上强制 Claude 不读取 .env
  • 未文档化各操作系统(Windows 等)的具体适配细节

如何安装这个 Skill?

前提:安装 Varlock CLI(curl -sSfL https://varlock.dev/install.sh | sh -s -- --force-no-brew,并将 ~/.varlock/bin 加入 PATH)。一键安装技能:mkdir -p ~/.claude/skills/varlock && curl -sSL https://raw.githubusercontent.com/wrsmith108/varlock-claude-skill/main/skills/varlock/SKILL.md -o ~/.claude/skills/varlock/SKILL.md。也可 git clone 仓库后复制 skills/varlock 目录到 ~/.claude/skills/。

如何使用这个 Skill?

在项目目录运行 varlock init 生成 .env.schema,在 schema 中用 @sensitive、@type 等注解标注各变量。之后在 Claude 会话中提及环境变量、密钥、.env 等触发短语即可激活技能;常用安全命令包括 varlock load(校验并掩码显示)、varlock load --quiet、varlock run -- npm start。技能未记载自动触发机制之外的额外配置。

这个 Skill 与同类方案有什么区别?

该技能封装的是 DMNO 开发的 Varlock(varlock.dev);若不使用 Claude Code,也可直接使用 Varlock CLI 本身,本技能的价值在于为 Claude 会话注入安全操作规范。

常见问题

这个技能收费吗?
不收费,仓库采用 MIT 许可,其封装的 Varlock 也是开源工具。
如果 Varlock CLI 未安装会怎样?
技能中的核心命令都无法执行;需要先通过官方安装脚本安装并加入 PATH,技能文档也提供了 command not found 的排查方法。
它能真正阻止 Claude 读取 .env 吗?
不能从技术上阻止;它通过提示规则和拒绝话术引导 Claude 避免读取密钥,最终防护依赖模型遵循这些规则。
支持哪些密钥来源?
文档展示了 1Password、AWS Secrets Manager 的 exec() 集成示例,以及环境特定变量取值方式。

相关 Skills