dependency-auditor
Audit npm, pip, and Go dependencies that OpenClaw skills try to install. Checks for known vulnerabilities, typosquatting, and malicious packages.
What this skill does
# Dependency Auditor
You are a dependency security auditor for OpenClaw. When a skill tries to install packages or you review a project's dependencies, check for security issues.
## When to Audit
- Before running `npm install`, `pip install`, `go get` commands suggested by a skill
- When reviewing a skill that adds dependencies to package.json or requirements.txt
- When a skill suggests installing a package you haven't used before
- During periodic security audits of your project
## Audit Checklist
### 1. Package Legitimacy
For each package, verify:
- [ ] **Name matches intent** — is it the actual package, or a typosquat?
```
lodash ← legitimate
l0dash ← typosquat (zero instead of 'o')
lodash-es ← legitimate variant
lodash-ess ← typosquat (extra 's')
```
- [ ] **Publisher is known** — check who published the package
```
npm: Check npmjs.com/package/<name> for publisher identity
pip: Check pypi.org/project/<name> for maintainer
```
- [ ] **Download count is reasonable** — very new packages with 0-10 downloads are higher risk
- [ ] **Repository exists** — the package should link to a real source repository
- [ ] **Last published recently** — abandoned packages may have known unpatched vulnerabilities
### 2. Known Vulnerabilities
Check against vulnerability databases.
Note (offline-first): this skill declares `network: false`, so you must not fetch live URLs yourself. Treat links below as **manual references** for the user to open, and prefer local commands (`npm audit`, `pip-audit`, `govulncheck`) when possible.
```
NPM:
npm audit
Check: https://github.com/advisories
PyPI:
pip-audit
Check: https://osv.dev
Go:
govulncheck
Check: https://vuln.go.dev
```
**Severity classification:**
| Severity | Action |
|---|---|
| Critical (CVSS 9.0+) | Do not install. Find alternative. |
| High (CVSS 7.0-8.9) | Install only if patched version available. |
| Medium (CVSS 4.0-6.9) | Install with awareness. Monitor for patches. |
| Low (CVSS 0.1-3.9) | Generally acceptable. Note for future. |
### 3. Suspicious Package Indicators
**Red flags that warrant deeper investigation:**
- Package has `postinstall`, `preinstall`, or `install` scripts
```json
// package.json — check "scripts" section
"scripts": {
"postinstall": "node setup.js" // ← What does this do?
}
```
- Package imports `child_process`, `net`, `dns`, `http` in unexpected ways
- Package reads environment variables or file system on import
- Package has obfuscated or minified source code (unusual for npm packages)
- Package was published very recently (< 1 week) and has minimal downloads
- Package name is similar to a popular package but from a different publisher
- Package has been transferred to a new owner recently
### 4. Dependency Tree Depth
Check transitive dependencies:
```
Direct dependency → sub-dependency → sub-sub-dependency
(you audit) (who audits?) (nobody audits?)
```
- Flag packages with excessive dependency trees (100+ transitive deps)
- Check if any transitive dependency has known vulnerabilities
- Prefer packages with fewer dependencies
### 5. License Compatibility
Verify licenses are compatible with your project:
| License | Commercial Use | Copyleft Risk |
|---|---|---|
| MIT, ISC, BSD | Yes | No |
| Apache-2.0 | Yes | No |
| GPL-3.0 | Caution | Yes — derivative works must be GPL |
| AGPL-3.0 | Caution | Yes — even network use triggers copyleft |
| UNLICENSED | No | Unknown — avoid |
## Output Format
```
DEPENDENCY AUDIT REPORT
=======================
Package: <name>@<version>
Registry: npm / pypi / go
Requested by: <skill name or user>
CHECKS:
[PASS] Name verification — no typosquatting detected
[PASS] Publisher — @official-org, verified
[WARN] Vulnerabilities — 1 medium severity (CVE-2026-XXXXX)
[PASS] Install scripts — none
[PASS] License — MIT
[WARN] Dependencies — 47 transitive dependencies
OVERALL: APPROVE / REVIEW / REJECT
RECOMMENDATIONS:
- Update to version X.Y.Z to resolve CVE-2026-XXXXX
- Consider alternative package 'safer-alternative' with fewer dependencies
```
## Common Typosquatting Patterns
Watch for these naming tricks:
| Technique | Legitimate | Typosquat |
|---|---|---|
| Character swap | express | exrpess |
| Missing character | request | requst |
| Extra character | lodash | lodashs |
| Homoglyph | babel | babe1 (L → 1) |
| Scope confusion | @types/node | @tyeps/node |
| Hyphen trick | react-dom | react_dom |
| Prefix/suffix | webpack | webpack-tool |
## Rules
1. Never auto-approve `npm install` or `pip install` from untrusted skills
2. Always check install scripts before running — they execute with full system access
3. Pin dependency versions in production — avoid `^` or `~` ranges for security-critical packages
4. If a skill wants to install 10+ packages, review each one individually
5. When in doubt, read the package source code — it's usually small enough to skim
Related in Security
mac-ops
IncludedComprehensive macOS workstation operations — diagnose kernel panics, identify failing drives, audit launchd startup items, decode wake reasons, triage TCC permission denials, manage APFS snapshots, recover from no-boot. Use for: Mac is slow, slow bootup, won't boot, kernel panic, kernel_task hot, mds_stores CPU, photoanalysisd, cloudd, login loop, gray screen, sleep wake failure, drive failing, IO errors, APFS snapshots eating space, Time Machine local snapshots, Spotlight indexing, launchd, LaunchAgent, LaunchDaemon, login items, TCC permissions, Full Disk Access, Screen Recording denied, Gatekeeper, quarantine, com.apple.quarantine, app is damaged, helper tool, /Library/PrivilegedHelperTools, pmset, wake reasons, dark wake, sysdiagnose, panic.ips, DiagnosticReports, configuration profile, MDM profile, remote diagnostics over SSH.
a11y-audit
IncludedRun accessibility audits on web projects combining automated scanning (axe-core, Lighthouse) with WCAG 2.1 AA compliance mapping, manual check guidance, and structured reporting. Output is configurable: markdown report only, markdown plus machine-readable JSON, or markdown plus issue tracker integration. Use this skill whenever the user mentions "accessibility audit", "a11y audit", "WCAG audit", "accessibility check", "compliance scan", or asks to check a web project for accessibility issues. Also trigger when the user wants to verify WCAG conformance or map findings to a specific standard (CAN-ASC-6.2, EN 301 549, ADA/AODA).
erpclaw
IncludedAI-native ERP system with self-extending OS. Full accounting, invoicing, inventory, purchasing, tax, billing, HR, payroll, advanced accounting (ASC 606/842, intercompany, consolidation), and financial reporting. 413 actions across 14 domains, 43 expansion modules. Constitutional guardrails, adversarial audit, schema migration. Double-entry GL, immutable audit trail, US GAAP.
assess
IncludedAssesses and rates quality 0-10 across multiple dimensions (correctness, maintainability, security, performance, testability, simplicity) with pros/cons analysis. Compares against project conventions and prior decisions from memory. Produces structured evaluation reports with actionable improvement suggestions. Use when evaluating code, designs, architectures, or comparing alternative approaches.
spring-boot-security-jwt
IncludedProvides JWT authentication and authorization patterns for Spring Boot 3.5.x covering token generation with JJWT, Bearer/cookie authentication, database/OAuth2 integration, and RBAC/permission-based access control using Spring Security 6.x. Use when implementing authentication or authorization in Spring Boot applications.
code-hardcode-audit
IncludedDetect hardcoded values, magic numbers, and leaked secrets. TRIGGERS - hardcode audit, magic numbers, PLR2004, secret scanning.