mcpField
D
dependency-management

dependency-management

github.com/dralgorhythm开发12961 次安装14 周前更新
代码仓库

关于 dependency-management

面向软件开发者的依赖管理技能,整理依赖审计、版本更新、锁文件和精简依赖的实践。内容覆盖 Node.js、Python、Go 与 Rust 的常见检查和文件示例。

主要功能

  1. 01依赖漏洞审计
  2. 02依赖版本管理
  3. 03锁文件与可复现构建
  4. 04清理未使用依赖
  5. 05更新后的测试实践

适用场景

  1. 01检查项目依赖中的已知漏洞
  2. 02通过锁文件确保构建可复现
  3. 03清理未使用的依赖包
  4. 04更新依赖后运行测试套件

安装

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

$npx skills add https://github.com/dralgorhythm/claude-agentic-framework --skill dependency-management

安装后在 Claude Code 中输入/dependency-management确认已加载。

详细介绍

依赖管理

工作流

  • 审计:检查已知漏洞
  • 更新:让依赖保持合理的时效性
  • 锁定:确保构建可重现
  • 精简:移除未使用的依赖

安全扫描

# Node.js
npm audit
pnpm audit

# Python
pip-audit
safety check

# Go
govulncheck ./...

# Rust
cargo audit

版本管理

语义化版本
  • 主版本(1.0.0):有不兼容的变更
  • 次版本(0.1.0):新增功能,向后兼容
  • 补丁版本(0.0.1):修复 Bug,向后兼容
版本约束
// package.json
{
  "dependencies": {
    "exact": "1.2.3",        // Exactly 1.2.3
    "patch": "~1.2.3",       // 1.2.x (patch updates)
    "minor": "^1.2.3",       // 1.x.x (minor updates)
    "range": ">=1.2.3 <2.0.0" // Range
  }
}

锁文件

始终提交锁文件,以确保构建可重现:

  • package-lock.json 或 pnpm-lock.yaml(Node.js)
  • poetry.lock 或 uv.lock(Python)
  • go.sum(Go)
  • Cargo.lock(Rust)

最佳实践

  1. 在生产环境中固定版本:使用确切版本或锁文件
  2. 定期更新:不要让依赖变得过于陈旧
  3. 查看变更日志:在进行主版本更新前检查是否有不兼容变更
  4. 更新后测试:依赖变更后运行完整测试套件
  5. 精简依赖:每个依赖都是一种负担

移除未使用的依赖

# Node.js
npx depcheck

# Python
pip-autoremove

# Go
go mod tidy

评论

支持 Markdown