Scan ClawHub skills for security vulnerabilities BEFORE installing. Use when installing new skills from ClawHub to detect prompt injections, malware payloads...
The only pre-install security gate for ClawHub skills.
| VirusTotal (ClawHub built-in) | skillscanner (Gen Digital) | skill-guard | |
|---|---|---|---|
| When it runs | After publish (server-side) | On-demand lookup | Before install (client-side) |
| What it checks | Malware signatures | Their database | Actual skill content |
| Prompt injections | ❌ | ❌ | ✅ |
| Data exfiltration URLs | ❌ | ❌ | ✅ |
| Hidden instructions | ❌ | ❌ | ✅ |
| AI-specific threats | ❌ | ❌ | ✅ |
| Install blocking | ❌ | ❌ | ✅ |
VirusTotal catches known malware binaries — but won't flag <!-- IGNORE PREVIOUS INSTRUCTIONS -->.
skillscanner checks if Gen Digital has reviewed it — but can't scan new or updated skills.
skill-guard uses Snyk Agent Scan (the renamed successor to mcp-scan) to analyze what's actually in the skill, catches AI-specific threats, and blocks install if issues are found. If the scanner is unavailable or not configured, the wrapper now reports that separately instead of pretending the skill itself is malicious.
Skills can contain:
One bad skill = compromised agent. Your agent trusts skills implicitly.
# Instead of: clawhub install some-skill
./scripts/safe-install.sh some-skill
skill-guard:
/tmp/) — never touches your real skills folderReal example — skill-guard flagged this malicious skill:
● [E004]: Prompt injection detected (high risk)
● [E006]: Malicious code pattern detected
● [W007]: Insecure credential handling
● [W008]: Machine state compromise attempt
● [W011]: Third-party content exposure
VirusTotal: 0/76 engines. Snyk Agent Scan can catch what antivirus misses.
# Secure install (recommended)
./scripts/safe-install.sh <skill-slug>
# With version
./scripts/safe-install.sh <skill-slug> --version 1.2.3
# Force overwrite
./scripts/safe-install.sh <skill-slug> --force
| Code | Meaning | Action |
|---|---|---|
0 | Clean | Skill installed ✓ |
1 | Error | Check arguments, dependencies, fetch/install flow |
2 | Threats found | Skill quarantined in /tmp/, review before deciding |
3 | Scanner unavailable | Configure SNYK_TOKEN or fix scanner setup, then rerun |
Skill stays in /tmp/skill-guard-staging/skills/<slug>/ (quarantined). You can:
mv /tmp/skill-guard-staging/skills/<slug> ~/.openclaw/workspace/skills/rm -rf /tmp/skill-guard-staging/clawhub CLI — npm i -g clawhubuv — curl -LsSf https://astral.sh/uv/install.sh | shSNYK_TOKEN — required by Snyk Agent Scan for authenticated scanningYour agent has access to your files, messages, maybe your whole machine. One malicious skill can:
Trust, but verify. Scan before you install.
ZIP package — ready to use