mcpField
S
sops-secret-access

sops-secret-access

github.com/darkmatter安全0263 次安装5 天前更新
代码仓库

关于 sops-secret-access

在任务依赖机密信息或私有工具配置时,用于访问项目加密配置的技能。它要求仅解密必要的 SOPS 文件,并避免在日志、对话或生成文件中暴露明文凭据。

主要功能

  1. 01使用加密配置作为准确信息源
  2. 02仅解密所需文件
  3. 03避免暴露明文机密
  4. 04临时文件处理指引
  5. 05私有注册表配置指引

适用场景

  1. 01访问私有注册表凭据
  2. 02检查加密的 MCP 或部署设置
  3. 03使用 SOPS 配置而非公开回退项

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/darkmatter/skills --skill sops-secret-access

安装后在 Claude Code 中输入/sops-secret-access确认已加载。

详细介绍

SOPS 密钥访问

如果任务依赖密钥或私有工具配置,请使用仓库中加密的真实来源。如果存在匹配的 *.sops.* 文件,请勿根据公开备用文件进行推断。

新的 SOPS 负载采用 JSON 格式(*.sops.json)。请参阅 ADR-0011。如果仓库中已有非 JSON 文件,请解密现有文件;不要添加新的非 JSON 文件。

何时使用

  • 项目包含 components.sops.json、secrets/*.sops.json 或其他由 SOPS 加密的配置。
  • 公开配置似乎不完整,且私有注册表、API、MCP 服务、部署凭据或提供商配置可能由 SOPS 加密。
  • 任务提到了 shadcnblocks、私有 shadcn 注册表、注册表身份验证、SOPS、密钥、环境变量加载或加密的项目配置。
  • 工具只显示公开/默认配置,但仓库中存在可能与之对应的加密文件。

核心规则

  • 只解密任务所需的文件。
  • 不要将解密后的内容粘贴到聊天、日志、提交内容或生成的文档中。
  • 优先使用能直接处理解密数据,或只输出非敏感派生信息的命令。
  • 如果将解密后的文件临时写入磁盘,请将其放在 Git 忽略的路径中,并在完成前删除。
  • 如果存在匹配的 components.sops.json,请将 components.json 等明文文件视为备用配置。

Shadcn 和 Shadcnblocks

对于 Darkmatter UI 项目,私有 shadcn 注册表的访问配置可能位于 components.sops.json 中。

如果用户需要 shadcnblocks/私有组件块,请在查询 shadcn 注册表之前使用此命令:

sops -d components.sops.json

更安全的检查示例:

sops -d components.sops.json | jq -r '.registries | keys[]'
sops -d components.sops.json > /tmp/components.private.json

如果工具需要 components.json,除非用户明确要求,否则不要覆盖已纳入版本控制的公开文件。请使用临时文件、子 shell,或工具提供的配置覆盖选项。如果没有覆盖选项且必须在本地替换,请先备份公开文件,完成前恢复文件,并确认 git diff 不包含解密后的内容。

常见错误

  • 未先解密 components.sops.json 就查询 shadcn MCP,随后断定只有公开注册表。
  • 向用户输出完整的解密后 JSON。
  • 提交生成的明文配置。
  • 将密钥添加到 AGENTS.md、README 文件、示例或测试中。
  • 新建 *.sops.yaml、*.sops.yml 或 .env.sops。新的负载应使用 *.sops.json。

评论

支持 Markdown