Install
openclaw skills install @suhteevah/licenseguardOpen source license compliance scanner — catches copyleft, viral, and problematic licenses in your dependencies before they create legal risk
openclaw skills install @suhteevah/licenseguardLicenseGuard scans your dependency manifests for copyleft, viral, and problematic open source licenses before they create legal risk. It detects license declarations across 8 package manager ecosystems (npm, Python, Ruby, Go, Java/Kotlin, Rust, PHP, .NET), classifies risk levels from Critical (copyleft/viral) to Low (permissive), and produces compliance reports with compatibility matrices. All scanning happens locally using pattern matching on manifest files and license text -- no code or dependency data is sent externally.
licenseguard scan [file|directory]One-shot license compliance scan of dependency manifests.
How to execute:
bash "<SKILL_DIR>/scripts/licenseguard.sh" scan [target]
What it does:
Example usage scenarios:
licenseguard scan .licenseguard scan .licenseguard scan package.jsonlicenseguard scan go.modlicenseguard scan Cargo.tomllicenseguard scan [file|directory] (unlimited)Full license compliance scan with no manifest file limit.
How to execute:
bash "<SKILL_DIR>/scripts/licenseguard.sh" scan [target]
What it does (beyond free):
licenseguard hooks installInstall git pre-commit hooks that scan dependency manifests for license issues before every commit.
How to execute:
bash "<SKILL_DIR>/scripts/licenseguard.sh" hooks install
What it does:
licenseguard hooks uninstallRemove LicenseGuard git hooks.
bash "<SKILL_DIR>/scripts/licenseguard.sh" hooks uninstall
licenseguard report [directory]Generate a full markdown license compliance report.
bash "<SKILL_DIR>/scripts/licenseguard.sh" report [directory]
What it does:
licenseguard matrix [directory]Generate a license compatibility matrix.
bash "<SKILL_DIR>/scripts/licenseguard.sh" matrix [directory]
What it does:
licenseguard policy [directory]Enforce an approved license list.
bash "<SKILL_DIR>/scripts/licenseguard.sh" policy [directory]
What it does:
licenseguard sbom [directory]Generate a Software Bill of Materials (SBOM).
bash "<SKILL_DIR>/scripts/licenseguard.sh" sbom [directory]
What it does:
LicenseGuard classifies open source licenses into five risk levels:
| Risk Level | Licenses | Impact |
|---|---|---|
| Critical (Copyleft/Viral) | GPL-2.0, GPL-3.0, AGPL-3.0, SSPL, EUPL | Must open-source your code |
| High (Weak Copyleft) | LGPL-2.1, LGPL-3.0, MPL-2.0, EPL-2.0, CDDL | Must share modifications to the library |
| Medium (Notice Required) | Apache-2.0, BSD-2-Clause, BSD-3-Clause, MIT, ISC | Must include license notice |
| Low (Permissive) | Unlicense, CC0, WTFPL, 0BSD | Minimal restrictions |
| Unknown | NOASSERTION, Custom, Missing | Cannot determine risk -- review manually |
| Ecosystem | Manifest Files | Lock Files |
|---|---|---|
| npm | package.json | package-lock.json, yarn.lock |
| Python | requirements.txt, Pipfile, pyproject.toml, setup.py, setup.cfg | Pipfile.lock |
| Ruby | Gemfile | Gemfile.lock |
| Go | go.mod | go.sum |
| Java/Kotlin | pom.xml, build.gradle, build.gradle.kts | - |
| Rust | Cargo.toml | Cargo.lock |
| PHP | composer.json | composer.lock |
| .NET | *.csproj, packages.config | *.sln |
Users can configure LicenseGuard in ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"licenseguard": {
"enabled": true,
"apiKey": "YOUR_LICENSE_KEY_HERE",
"config": {
"riskThreshold": "high",
"approvedLicenses": ["MIT", "Apache-2.0", "BSD-2-Clause", "BSD-3-Clause", "ISC"],
"excludePackages": [],
"excludePatterns": ["**/node_modules/**", "**/vendor/**"],
"reportFormat": "markdown"
}
}
}
}
}
hooks install, prompt to install itThe user might say things like: