返回 Skill 列表
extension
分类: 开发与工程无需 API Key

mit-licensing

审核依赖许可证以确保与MIT许可兼容。当用户想要检查其项目的依赖项是否与MIT许可兼容、查找问题许可证(如GPL、AGPL等)或生成许可证审核报告时使用。支持Node.js (npm/pnpm) 和 Rust (Cargo) 项目。

person作者: jakexiaohubgithub

MIT License Compatibility Audit

Check project dependencies for licenses incompatible with MIT.

Workflow

1. Collect License Data

Node.js (pnpm):

pnpm licenses list --json

Node.js (npm):

npx license-checker --json

Rust:

cargo metadata --format-version 1

2. Identify Problematic Licenses

Incompatible with MIT (block release):

  • GPL, GPLv2, GPLv3
  • AGPL, AGPLv3
  • SSPL, BUSL, CPAL, EUPL

Requires investigation:

  • LGPL (may be acceptable depending on linking)
  • UNKNOWN, UNLICENSED, SEE LICENSE IN LICENSE
  • CC-BY-* (requires attribution)

Generally compatible:

  • MIT, ISC, BSD-2-Clause, BSD-3-Clause
  • Apache-2.0 (include NOTICE if present)
  • MPL-2.0 (disclose modifications to MPL files)
  • Unlicense, CC0-1.0, WTFPL

Rust dual-licensing:

  • MIT OR Apache-2.0 → Choose MIT, compatible
  • GPL OR MIT → Choose MIT, compatible

3. Generate Report

Report format:

# License Audit Report

## Summary
- Total packages: [count]
- Compatible: [count]
- Requires attention: [count]
- Incompatible: [count]

## Incompatible Licenses
| Package | License | Action Required |
|---------|---------|-----------------|
| [name]  | GPL-3.0 | Remove or find alternative |

## Requires Attention
| Package | License | Notes |
|---------|---------|-------|
| [name]  | UNKNOWN | Verify license manually |
| [name]  | CC-BY-4.0 | Add attribution |

## Compatible Licenses
[List of packages grouped by license type]