关于 dependency-manager
面向软件项目依赖管理的技能,涵盖版本解析、冲突处理、安全审计和锁文件维护。适用于需要升级依赖、执行生态系统迁移或制定依赖策略的开发团队。
主要功能
- 01更新依赖并处理版本冲突
- 02审计漏洞并跟进修复
- 03维护锁文件与构建可复现性
- 04支持包管理器迁移
- 05制定依赖策略并分析依赖规模
适用场景
- 01升级项目依赖并验证兼容性
- 02排查多包生态中的版本冲突
- 03审查直接及传递依赖的安全风险
- 04确保锁文件与项目状态一致
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ 404kidwiz/ claude-supercode-skills --skill dependency-manager安装后在 Claude Code 中输入/dependency-manager确认已加载。
详细介绍
依赖管理器
用途
提供软件包管理、版本解析和软件供应链安全方面的专业知识。处理多个软件包生态系统中的依赖更新、漏洞审计和冲突解决。
适用场景
- 更新项目依赖
- 解决版本冲突
- 审计安全漏洞
- 管理锁文件并确保可复现性
- 在不同软件包管理器之间迁移
- 实施依赖策略
- 通过依赖分析减小捆绑包体积
快速开始
在以下情况下调用此技能:
- 更新项目依赖
- 解决版本冲突
- 审计安全漏洞
- 管理锁文件并确保可复现性
- 实施依赖策略
请勿在以下情况下调用:
- 构建 CI/CD 流水线(使用 devops-engineer)
- 向注册表发布软件包(使用 build-engineer)
- 管理容器镜像(使用 kubernetes-specialist)
- 管理云基础设施依赖(使用 terraform-engineer)
决策框架
Update Strategy:
├── Security patch → Update immediately
├── Bug fix (patch) → Update with tests
├── Minor version → Review changelog, test
├── Major version → Full compatibility review
└── Deprecated package → Find replacement
Ecosystem Tools:
├── Node.js → npm, yarn, pnpm
├── Python → pip, poetry, uv
├── Go → go mod
├── Rust → cargo
├── Java → Maven, Gradle
└── .NET → NuGet
核心工作流
1. 依赖审计
- 运行软件包审计工具
- 查看漏洞报告
- 按严重程度(CVSS)确定优先级
- 检查是否有可用补丁
- 更新或寻找替代方案
- 验证修复不会破坏应用
- 记录修复情况
2. 主版本升级
- 阅读变更日志和迁移指南
- 检查是否存在破坏性变更
- 在独立分支中更新
- 运行完整测试套件
- 修复破坏性变更
- 检查是否有已弃用的 API
- 先部署到预发布环境
3. 锁文件管理
- 确保锁文件已提交
- 使用 CI 验证锁文件是否匹配
- 解决冲突后重新生成
- 审计锁文件是否遭到篡改
- 以原子方式更新锁文件
最佳实践
- 始终使用锁文件确保可复现性
- 在 CI/CD 中运行安全审计
- 在生产环境中固定精确版本
- 使用 renovate/dependabot 实现自动化
- 审计传递依赖
- 尽量减少依赖数量
反模式
| 反模式 | 问题 | 正确做法 |
|---|---|---|
| 没有锁文件 | 构建无法复现 | 提交锁文件 |
| 忽略审计 | 安全漏洞 | 处理所有高危/严重漏洞 |
| 自动合并更新 | 在生产环境中引入破坏性变更 | 合并前进行测试 |
| 依赖过多 | 攻击面扩大 | 审计并精简依赖 |
| 依赖过时 | 缺少安全补丁 | 定期更新 |
评论
支持 Markdown