License Compliance
Overview
This skill defines how to manage license compliance when using third-party code, libraries, content, or assets. License violations can cause legal liability, forced code removal, and reputational damage. Every dependency must be checked for license compatibility.
When to Use
- When adding any third-party library, package, or dependency
- When incorporating open-source code into your project
- When using images, fonts, media, or creative assets
- Before distributing or publishing any product
- When evaluating software for commercial use
- Don't use when: Working exclusively with internally developed, fully owned code and assets
Core Procedures
Step 1: Identify All Licenses
For every external dependency:
- What is the license? (MIT, Apache 2.0, GPL, LGPL, AGPL, BSD, proprietary, unknown)
- Where is the license documented? (LICENSE file, package.json, website)
- Is the license version specified? (v2 vs v3 can have very different requirements)
Step 2: Check Compatibility
| Your License |
Can Use |
Cannot Use |
Notes |
| MIT |
Almost anything |
Nothing major |
Very permissive |
| Apache 2.0 |
MIT, BSD, ISC |
GPL-only |
Patent protection clause |
| GPL v3 |
GPL-compatible |
Proprietary, some Apache |
Strong copyleft |
| AGPL |
AGPL-compatible |
Most commercial |
Network use = distribution |
| Proprietary |
Explicitly licensed |
GPL, most open source |
Check contract terms |
Step 3: Understand Obligations
For each license, document required actions:
- Attribution: Must include copyright notice, license text
- Source Disclosure: Must provide source code if distributing binary
- Copyleft: Derivative works must use same license
- Patent Grant: License includes patent rights from contributors
- Network Clause: Network use triggers sharing obligations (AGPL)
- State Changes: Must document any changes made to the code
Step 4: Track All Licenses
Maintain a dependency registry:
DEPENDENCY LICENSE RECORD
=========================
Package/Asset: [name and version]
License: [license name and version]
Source: [where obtained from]
Obligations: [what we must do to comply]
Usage: [how it is used in product]
Compatibility: [compatible with our distribution? yes/no/conditional]
Step 5: Compliance Actions
Quality Checklist
Error Handling
- Error: License for dependency unknown
Response: Do NOT use until license is determined, find alternative with known license
- Error: License incompatible with distribution model
Response: Find alternative compatible library, or change distribution model
- Error: Copyleft dependency incorporated into proprietary code
Response: Isolate copyleft code, re-archecute to use as separate process, consult legal
Cross-Team Integration
Related Skills: secrets-handling, data-privacy-check, audit-trail-management, source-verification
Used By: ALL agents incorporating external code/assets, especially Integrators, Developers, Legal, Procurement
1---2name: license-compliance3description: Use when incorporating or distributing code, libraries, assets, or content with licensing requirements. This skill provides procedures for identifying, tracking, and complying with licenses across all dependencies and third-party materials.4---56# License Compliance78## Overview9This skill defines how to manage license compliance when using third-party code, libraries, content, or assets. License violations can cause legal liability, forced code removal, and reputational damage. Every dependency must be checked for license compatibility.1011## When to Use12- When adding any third-party library, package, or dependency13- When incorporating open-source code into your project14- When using images, fonts, media, or creative assets15- Before distributing or publishing any product16- When evaluating software for commercial use17- **Don't use when:** Working exclusively with internally developed, fully owned code and assets1819## Core Procedures2021### Step 1: Identify All Licenses22For every external dependency:23- What is the license? (MIT, Apache 2.0, GPL, LGPL, AGPL, BSD, proprietary, unknown)24- Where is the license documented? (LICENSE file, package.json, website)25- Is the license version specified? (v2 vs v3 can have very different requirements)2627### Step 2: Check Compatibility28| Your License | Can Use | Cannot Use | Notes |29|-------------|---------|-----------|-------|30| MIT | Almost anything | Nothing major | Very permissive |31| Apache 2.0 | MIT, BSD, ISC | GPL-only | Patent protection clause |32| GPL v3 | GPL-compatible | Proprietary, some Apache | Strong copyleft |33| AGPL | AGPL-compatible | Most commercial | Network use = distribution |34| Proprietary | Explicitly licensed | GPL, most open source | Check contract terms |3536### Step 3: Understand Obligations37For each license, document required actions:38- **Attribution:** Must include copyright notice, license text39- **Source Disclosure:** Must provide source code if distributing binary40- **Copyleft:** Derivative works must use same license41- **Patent Grant:** License includes patent rights from contributors42- **Network Clause:** Network use triggers sharing obligations (AGPL)43- **State Changes:** Must document any changes made to the code4445### Step 4: Track All Licenses46Maintain a dependency registry:47```48DEPENDENCY LICENSE RECORD49=========================50Package/Asset: [name and version]51License: [license name and version]52Source: [where obtained from]53Obligations: [what we must do to comply]54Usage: [how it is used in product]55Compatibility: [compatible with our distribution? yes/no/conditional]56```5758### Step 5: Compliance Actions59- [ ] All license texts included in NOTICE or LICENSE file60- [ ] Copyright notices preserved in source code61- [ ] Source code available if required by license62- [ ] No copyleft contamination of proprietary code63- [ ] License-compliant version of dependencies verified6465## Quality Checklist66- [ ] All dependencies identified with licenses67- [ ] License compatibility verified for each dependency68- [ ] Required obligations documented and fulfilled69- [ ] Dependency registry maintained and current70- [ ] Distribution packages include required license notices71- [ ] No unknown-license dependencies in product7273## Error Handling74- **Error:** License for dependency unknown75 **Response:** Do NOT use until license is determined, find alternative with known license76- **Error:** License incompatible with distribution model77 **Response:** Find alternative compatible library, or change distribution model78- **Error:** Copyleft dependency incorporated into proprietary code79 **Response:** Isolate copyleft code, re-archecute to use as separate process, consult legal8081## Cross-Team Integration82**Related Skills:** secrets-handling, data-privacy-check, audit-trail-management, source-verification83**Used By:** ALL agents incorporating external code/assets, especially Integrators, Developers, Legal, Procurement