关于 dependency-auditor
面向工程团队的离线依赖审计 Skill,用于检查漏洞、许可证和升级风险。其确定性脚本解析 8 种包生态的清单与锁定文件;内置漏洞模式不能替代实时公告工具。
主要功能
- 01离线漏洞模式扫描
- 02解析 8 种生态的清单与锁定文件
- 03解析传递依赖
- 04许可证分类与冲突检测
- 05按风险排序升级计划并附回滚说明
适用场景
- 01在 CI 中扫描依赖
- 02发布前检查许可证兼容性
- 03安排安全和维护升级优先级
- 04验证升级是否消除高危发现
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ alirezarezvani/ claude-skills --skill dependency-auditor安装后在 Claude Code 中输入/dependency-auditor确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdtest-inventory.jsonassets/sample_go.modsample_package.jsonsample_requirements.txtexpected_outputs/sample_license_report.txtsample_upgrade_plan.txtsample_vulnerability_report.jsonreferences/dependency_management_best_practices.mdlicense_compatibility_matrix.mdvulnerability_assessment_guide.mdscripts/dep_scanner.pylicense_checker.pyupgrade_planner.pytest-project/package.json详细介绍
Dependency Auditor
Skill 类型: POWERFUL · 分类: Engineering · 领域: Dependency Management & Security
离线、确定性的依赖审计,覆盖 8 个以上包生态。三个脚本是基于模式匹配的工具,作用于清单文件和锁文件,不会调用实时漏洞公告 API;如需当前 CVE 覆盖,请将其结果与 npm audit / pip-audit / cargo audit 搭配使用。
快速开始
# 1. Scan for vulnerabilities (built-in offline CVE pattern set; exit non-zero on high severity)
python3 scripts/dep_scanner.py /path/to/project --format json --fail-on-high -o scan.json
# 2. Check license compliance and conflicts
python3 scripts/license_checker.py /path/to/project --policy strict --format json -o licenses.json
# 3. Plan upgrades from the scanner's inventory
python3 scripts/upgrade_planner.py scan.json --risk-threshold medium --timeline 90 --format json -o plan.json
使用输出结果:scan.json 中的发现项决定当前需要固定版本或打补丁的包;licenses.json 中的冲突应作为法律风险清单交给用户;plan.json 按风险对升级进行排序,并附带回滚说明。--quick-scan 会跳过传递依赖;--security-only 会将计划限制为安全修复。
验证循环: 应用升级后,重新运行第 1 步,并确认高危发现项为 0,之后再结束审计。
支持的生态
| 语言 | 解析的清单 |
|---|---|
| JavaScript/Node | package.json, package-lock.json, yarn.lock |
| Python | requirements.txt, pyproject.toml, Pipfile.lock, poetry.lock |
| Go | go.mod, go.sum |
| Rust | Cargo.toml, Cargo.lock |
| Ruby | Gemfile, Gemfile.lock |
| Java | pom.xml, gradle.lockfile |
| PHP | composer.json, composer.lock |
| C#/.NET | packages.config, project.assets.json |
许可证分类
- 宽松型(Permissive):MIT、Apache 2.0、BSD(2/3 条款)、ISC
- 强 Copyleft:GPL v2/v3、AGPL v3 —— 在宽松型项目中会标记污染风险
- 弱 Copyleft:LGPL v2.1/v3、MPL 2.0
- 专有 / 双重许可 / 未知 —— 未知许可证会被提出,供人工审查
检查器会沿依赖链分析许可证继承关系,并输出带有修复建议的冲突对。
升级风险矩阵
| 风险 | 更新类型 | 处理方式 |
|---|---|---|
| 低 | 补丁、安全修复 | 立即应用 |
| 中 | 带新功能的次版本 | 合并到定期更新中 |
| 高 | 主版本、API 变更 | 专门的迁移任务 + 测试 |
| 严重 | 已知破坏性变更 | 制定带回滚流程的迁移计划 |
优先级:安全补丁 > 缺陷修复 > 功能更新 > 大规模重写;已弃用的功能需要立即关注。
脚本(准确的能力说明)
scripts/dep_scanner.py—— 多格式解析器;内置离线漏洞模式集(约 16 个 CVE 模式,属于冒烟级检测层,不能替代实时漏洞公告);从锁文件进行传递依赖解析;输出 JSON 和文本格式。scripts/license_checker.py—— 从包元数据中检测许可证;覆盖 20 种以上许可证类型的兼容性矩阵;--policy permissive|strict;冲突检测及修复建议。scripts/upgrade_planner.py—— 基于语义化版本的破坏性变更预测;按风险排序的迁移计划,包含测试清单和工期估算。
示例夹具:本目录下的 test-project/ 和 test-inventory.json;预期输出格式见 expected_outputs/。
CI 集成
# Security gate in CI
python3 scripts/dep_scanner.py . --format json --fail-on-high
python3 scripts/license_checker.py . --policy strict --format json
最佳实践
- 优先处理安全问题:立即处理高危和严重发现项;许可证合规优先于功能需求。
- 循序渐进地更新:增量升级并进行充分测试;对高风险版本升级使用功能开关。
- 节奏:每次提交进行安全扫描;每月进行许可证审计;每季度进行一次完整审计。
- 误报:通过有文档记录的白名单处理;对许可证含义不明确的情况,联系维护者确认。
详细用法请参阅 README.md,漏洞和许可证知识库请参阅 references/。