用途:根据仓库项目结构,生成完整的 .github/workflows/security.yml,把安全扫描接入 GitHub Actions CI/CD,实现“安全左移”。
主要能力:包含五个阶段——SAST(Semgrep)、SCA(npm audit / pip-audit / govulncheck)、密钥检测(Gitleaks)、容器扫描(Trivy)、DAST(Nuclei,默认注释,需已部署的 staging 环境并配置 vars.STAGING_URL)。会先检测 package.json、setup.py/pyproject.toml/requirements.txt、Dockerfile/docker-compose.yml、go.mod 等文件判断生态,多生态则生成多组阶段。默认在 Critical/High 失败、Medium 警告、Low 忽略;对支持 SARIF 的工具上传到 GitHub Security 标签页,并用 actions/upload-artifact@v4 保存结果。触发条件为 push/PR 到 main/master 及每周一定时扫描,权限最小化,并配置并发取消。
使用方式:当用户要求生成安全流水线、创建 security.yml 或为 CI 添加安全扫描时启用;输出单个可复制粘贴的 YAML 代码块,并提示用户按需调整阈值、增删阶段、配置通知与分支保护。
限制:不用于立即扫描代码或依赖、不生成安全测试代码、不调试已有工作流、不扫描运行中的应用;这些情况应改用相应扫描或测试技能。DAST 需部署环境,默认不启用。所有引用的 Action 需在提交前对照 GitHub Marketplace 核实版本,不确定的参数应省略并加 TODO。