mcpField
L
ln-760-security-setup

ln-760-security-setup

github.com/levnikolaevich安全584382 次安装2 天前更新
代码仓库

关于 ln-760-security-setup

用于项目安全初始化的协调型 Skill,整合密钥扫描与依赖漏洞检查,汇总风险和发现,并创建或更新安全文档、提交前配置、CI 工作流及忽略规则。

主要功能

  1. 01协调密钥与漏洞扫描
  2. 02按严重性汇总发现
  3. 03创建或更新 SECURITY.md
  4. 04配置提交前与 CI 模板
  5. 05添加密钥相关 .gitignore 规则

适用场景

  1. 01初始化项目安全控制措施
  2. 02准备 CI/CD 安全流水线
  3. 03检查密钥与依赖漏洞

安装

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

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-760-security-setup

安装后在 Claude Code 中输入/ln-760-security-setup确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
meta_analysis_protocol.md
references/templates/
ci_workflow_template.yaml
precommit_config_template.yaml
security_md_template.md

详细介绍

路径: 文件路径(references/、../ln-*)均相对于此技能目录。

安全设置协调器

类型: L2 领域协调器 类别: 7XX 引导

目的与范围

  • 协调密钥扫描(ln-761)和依赖项漏洞审计(ln-625)
  • 将两个工作器的发现汇总为统一报告
  • 生成安全基础设施:SECURITY.md、pre-commit 钩子、CI 工作流
  • 提供总体安全评分和风险评估

使用时机

  • 项目引导期间(由 ln-700-project-bootstrap 调用)
  • 手动请求安全审计时
  • 初始化 CI/CD 流水线时

工作流

阶段 1:预检

步骤 1:检测项目类型

  • 识别主要生态系统:Node.js、.NET、Python、Go 等
  • 检查是否已有安全配置(.gitleaks.toml、SECURITY.md)

步骤 2:检查工具是否可用

  • 确认 gitleaks/trufflehog 可用于密钥扫描
  • 确认对应生态系统的审计工具可用
  • 记录缺少工具的警告(不要失败)

步骤 3:加载现有配置

  • 如果存在 .gitleaks.toml:注明需要保留
  • 如果存在 SECURITY.md:注明需要更新(而非覆盖)
  • 如果存在 .pre-commit-config.yaml:检查是否包含 gitleaks 钩子
阶段 2:委派扫描

步骤 1:调用 ln-761 密钥扫描器

  • 通过 Agent 工具委派
  • 接收:发现项列表、严重性摘要、修复指导

步骤 2:调用 ln-625 依赖项审计器(mode=vulnerabilities_only)

  • 通过 Agent 工具委派(可与步骤 1 并行运行)
  • 传递参数:mode=vulnerabilities_only
  • 接收:漏洞列表、CVSS 评分、修复建议
阶段 3:汇总报告

步骤 1:合并发现项

  • 合并两个工作器的发现项
  • 按严重性分组(严重优先)
  • 计算总体安全评分

步骤 2:风险评估

  • 严重发现项:标记为需要立即处理
  • 高危发现项:建议在 48h 内修复
  • 中危/低危发现项:加入待办列表

步骤 3:生成摘要

  • 已扫描文件数
  • 发现的密钥(按严重性分类)
  • 发现的漏洞(按严重性分类)
  • 总体通过/警告/失败状态
阶段 4:生成输出

步骤 1:创建/更新 SECURITY.md

  • 使用 references/templates/security_md_template.md 中的模板
  • 如果文件已存在:更新并保留自定义章节
  • 如果是新文件:使用占位符生成

步骤 2:配置 Pre-commit 钩子

  • 如果缺少 .pre-commit-config.yaml:使用模板创建
  • 如果文件已存在但不含 gitleaks:建议添加
  • 模板:references/templates/precommit_config_template.yaml

步骤 3:生成 CI 工作流

  • 如果缺少 .github/workflows/security.yml:使用模板创建
  • 模板:references/templates/ci_workflow_template.yaml
  • 包含对应生态系统的审计任务

步骤 4:更新 .gitignore

  • 确保包含与密钥相关的模式:
    • .env、.env.*、!.env.example
    • *.pem、*.key
  • 保留现有条目

Worker Invocation(强制)

Host Skill 调用: 必须委派 Skill(skill: "...", args: "...")。

  • Claude:严格按上述形式调用 Skill 工具。
  • Codex:如果没有 Skill 工具,请在可用技能中找到指定技能,阅读其 SKILL.md,将 args 作为 $ARGUMENTS,执行该技能工作流,然后携带结果/产物返回此处。
  • 不要内联执行 worker 逻辑,也不要在未执行目标技能的情况下将 worker 标记为已完成。

关键: 所有委派都必须使用 subagent_type: "general-purpose" 的 Agent 工具,以隔离上下文。

Worker并行用途
ln-761-secret-scanner是硬编码机密检测
ln-625-dependency-reuse-auditor是漏洞扫描(mode=vulnerabilities_only)

提示词模板:

Agent(description: "Secret scanning via ln-761",
     prompt: "Execute security scanner.

Step 1: Invoke worker:
  Skill(skill: \"ln-761-secret-scanner\")

CONTEXT:
Project: {projectPath}",
     subagent_type: "general-purpose")

Agent(description: "Dependency vulnerability scan via ln-625",
     prompt: "Execute vulnerability scanner.

Step 1: Invoke worker:
  Skill(skill: \"ln-625-dependency-reuse-auditor\")

CONTEXT:
Project: {projectPath}
Mode: vulnerabilities_only (only CVE scan, skip outdated/unused checks)",
     subagent_type: "general-purpose")

模式: 两个 worker 都可以通过 Agent 工具并行执行,然后汇总结果。

反模式:

  • ❌ 不通过 Agent 包装器直接调用 Skill 工具
  • ❌ 以任何绕过子 Agent 上下文隔离的方式执行
  • ❌ 调用 ln-625 时未提供 mode 参数(否则会运行完整审计)

完成定义

  • 已调用并完成两个 worker(ln-761、ln-625)
  • 已汇总发现并进行严重程度分类
  • 已创建/更新 SECURITY.md
  • 已配置 pre-commit 钩子(或记录建议)
  • 已生成 CI 工作流(或记录建议)
  • 已使用机密模式更新 .gitignore
  • 已向父级协调器返回总结报告

TodoWrite 格式(强制)

- Phase 1: Invoke secret scanner ln-761 (pending)
- Phase 2: Invoke dependency auditor ln-625 (pending)
- Phase 3: Aggregate findings (pending)
- Phase 4: Generate security artifacts (pending)
- Phase 5: Return summary (pending)

元分析

可选参考:仅当用户要求进行运行后元分析或采用协议格式的运行反思时,才加载 references/meta_analysis_protocol.md。

技能类型:planning-coordinator。收到请求时,在所有阶段完成后运行。使用协议格式在聊天中输出。

参考文件

文件用途
references/templates/security_md_template.md生成 SECURITY.md 的模板
references/templates/precommit_config_template.yamlPre-commit 钩子配置
references/templates/ci_workflow_template.yamlGitHub Actions 安全工作流

关键规则

  • 始终向 ln-625 传递 mode=vulnerabilities_only — 完整审计模式不适用于引导场景
  • 保留现有配置 — 如果存在 .gitleaks.toml、SECURITY.md 或 .pre-commit-config.yaml,请更新而不是覆盖
  • 所有 worker 委派都使用 subagent_type: "general-purpose" 的 Agent 工具(隔离上下文)
  • 工具缺失时绝不能失败 — 记录扫描器不可用的警告,并使用可用工具继续
  • 严重发现会阻止完成 — 返回父级之前,标记为需要立即处理

版本: 3.0.0 最后更新: 2026-02-05

评论

支持 Markdown