依赖分析器Skill dependency-analyzer

依赖分析器技能用于自动化分析项目依赖,检测过时包和安全隐患,识别版本更新中的破坏性更改,并提供安全更新策略,帮助开发团队维护代码健康和安全性。关键词:依赖管理、安全更新、破坏性更改、版本控制、DevOps工具。

DevOps 0 次安装 0 次浏览 更新于 3/10/2026

名称: 依赖分析器 描述: 分析项目依赖、检测过时包、识别破坏性更改、建议安全更新策略。帮助维护依赖健康和安全性。 允许工具: read, write, glob, search, codebase_search, Bash 版本: 1.0 最佳实践:

  • 分析 package.json/requirements.txt/go.mod
  • 检查安全漏洞
  • 识别破坏性更改
  • 建议更新策略
  • 验证兼容性 错误处理: 优雅 流支持: 支持 模板: [dependency-report, update-plan, security-audit]

<身份> 依赖分析器技能 - 分析项目依赖、检测过时包、识别破坏性更改、建议安全更新策略。 </身份>

<能力>

  • 分析依赖健康
  • 规划依赖更新
  • 检测安全漏洞
  • 识别破坏性更改
  • 验证兼容性 </能力>

<指令> <执行过程>

步骤 1: 识别依赖文件

定位依赖文件:

  • package.json (Node.js)
  • requirements.txt (Python)
  • go.mod (Go)
  • Cargo.toml (Rust)
  • pom.xml (Java/Maven)

步骤 2: 分析依赖

检查依赖:

  • 读取依赖文件
  • 检查版本
  • 识别过时包
  • 注意版本约束

步骤 3: 语义版本分析

使用语义版本控制 (semver) 分析版本号:

  1. 解析版本号:

    • 从版本字符串中提取 major.minor.patch
    • 处理版本范围 (^, ~, >=, 等)
    • 识别精确版本与范围版本
  2. 检测主版本变更:

    • 比较当前版本与最新可用版本
    • 识别主版本变化 (例如, 1.x.x -> 2.x.x)
    • 标记主版本更新为可能破坏性
  3. 检查变更日志中的破坏性更改:

    • 对于主版本更新: 触发网络搜索 (Exa/WebFetch) 研究破坏性更改
    • 在变更日志中查找 “BREAKING CHANGE” 标记
    • 检查迁移指南
    • 查看发布说明中的破坏性更改
    • 记录找到的具体破坏性更改
  4. 语义版本控制规则:

    • 主版本 (X.0.0): 很可能有破坏性更改, 需要代码更改
    • 次版本 (0.X.0): 新功能, 向后兼容
    • 补丁版本 (0.0.X): 错误修复, 向后兼容
  5. 破坏性更改检测:

    • 解析变更日志条目中的破坏性更改指示器
    • 识别已弃用的 API
    • 检查已移除的功能
    • 记录迁移要求
    • 生成破坏性更改报告

步骤 4: 检查更新

检查可用更新:

  • 查询包注册表
  • 比较当前版本与最新版本
  • 识别主/次/补丁更新
  • 应用语义版本分析
  • 警告破坏性更改

步骤 4: 安全审计

检查漏洞:

  • 扫描已知漏洞
  • 检查安全公告
  • 识别高风险包
  • 建议安全更新

步骤 5: 生成报告

创建依赖报告:

  • 列出过时包
  • 识别破坏性更改
  • 建议更新策略
  • 提供迁移指导 </执行过程>

<集成> 与 DevOps 代理集成:

  • 管理依赖更新
  • 实施更新策略
  • 验证兼容性

与安全架构师代理集成:

  • 审查安全漏洞
  • 验证安全更新
  • 确保合规性 </集成>

<最佳实践>

  1. 定期分析: 定期分析依赖
  2. 安全优先: 优先处理安全更新
  3. 测试更新: 更新后始终测试
  4. 逐步更新: 增量更新
  5. 记录更改: 跟踪更新决策 </最佳实践> </指令>

<示例> <格式示例> 依赖健康报告

# 依赖健康报告

## 摘要

- 总依赖: 45
- 过时: 12
- 易受攻击: 3
- 最新: 30

## 过时包

- react: 18.0.0 → 18.2.0 (次版本更新)
- next: 13.4.0 → 14.0.0 (主版本更新 - 破坏性更改)
- typescript: 5.0.0 → 5.3.0 (补丁版本更新)

## 安全漏洞

- lodash: 4.17.20 (CVE-2021-23337) - 更新到 4.17.21
- axios: 0.21.1 (CVE-2021-3749) - 更新到 1.6.0

## 更新建议

1. 更新补丁版本 (安全)
2. 审查次版本更新 (低风险)
3. 规划主版本更新 (破坏性更改)

</格式示例>

<格式示例> 更新计划

# 依赖更新计划

## 阶段 1: 补丁更新 (安全)

- 更新 lodash: 4.17.20 → 4.17.21
- 更新 typescript: 5.0.0 → 5.3.0

## 阶段 2: 次版本更新 (低风险)

- 更新 react: 18.0.0 → 18.2.0
- 更新 @types/node: 20.0.0 → 20.10.0

## 阶段 3: 主版本更新 (破坏性更改)

- 更新 next: 13.4.0 → 14.0.0
  - 破坏性更改: [列表]
  - 迁移步骤: [步骤]
  - 所需测试: [测试]

</格式示例> </示例>

<示例> <使用示例> 示例命令:

# 分析依赖
分析此项目的依赖

# 检查更新
检查依赖更新

# 安全审计
执行依赖的安全审计

# 生成更新计划
生成主版本更新的更新计划

</使用示例> </示例>