skills$openclaw/skillvet
oakencore7.5k

by oakencore

skillvet – OpenClaw Skill

skillvet is an OpenClaw Skills integration for writing workflows. Security scanner for ClawHub/community skills — detects malware, credential theft, exfiltration, prompt injection, obfuscation, homograph attacks, ANSI injection, campaign-specific attack patterns, and more before you install. Use when installing skills from ClawHub or any public marketplace, reviewing third-party agent skills for safety, or vetting untrusted code before giving it to your AI agent. Triggers: install skill, audit skill, check skill, vet skill, skill security, safe install, is this skill safe.

7.5k stars2.7k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026writing

Skill Snapshot

nameskillvet
descriptionSecurity scanner for ClawHub/community skills — detects malware, credential theft, exfiltration, prompt injection, obfuscation, homograph attacks, ANSI injection, campaign-specific attack patterns, and more before you install. Use when installing skills from ClawHub or any public marketplace, reviewing third-party agent skills for safety, or vetting untrusted code before giving it to your AI agent. Triggers: install skill, audit skill, check skill, vet skill, skill security, safe install, is this skill safe. OpenClaw Skills integration.
owneroakencore
repositoryoakencore/skillvet
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @oakencore/skillvet
last updatedFeb 7, 2026

Maintainer

oakencore

oakencore

Maintains skillvet in the OpenClaw Skills directory.

View GitHub profile
File Explorer
70 files
.
scripts
diff-scan.sh
1.8 KB
safe-install.sh
1.5 KB
scan-remote.sh
751 B
skill-audit.sh
25.4 KB
tests
fixtures
clean-skill
index.js
119 B
SKILL.md
153 B
false-positive-own-keys
index.js
108 B
SKILL.md
225 B
false-positive-prompt-injection
SKILL.md
383 B
trigger-base64-pipe
SKILL.md
99 B
trigger-chain-analysis
index.js
211 B
SKILL.md
103 B
trigger-credential-access
index.js
88 B
SKILL.md
108 B
trigger-env-theft
run.sh
70 B
SKILL.md
92 B
trigger-exfil-endpoint
index.js
143 B
SKILL.md
102 B
trigger-fake-prerequisite
SKILL.md
186 B
trigger-fake-url-misdirect
setup.sh
101 B
SKILL.md
35 B
trigger-github-releases
SKILL.md
171 B
trigger-ioc-blocklist
malware.py
67 B
SKILL.md
30 B
trigger-obfuscation
index.js
90 B
SKILL.md
96 B
trigger-password-archive
SKILL.md
158 B
trigger-paste-service
setup.sh
63 B
SKILL.md
32 B
trigger-persistence-network
daemon.sh
74 B
SKILL.md
38 B
trigger-prompt-injection
SKILL.md
167 B
trigger-reverse-shell
run.sh
51 B
SKILL.md
100 B
trigger-string-evasion
index.js
97 B
SKILL.md
103 B
trigger-subprocess-network
backdoor.py
90 B
SKILL.md
41 B
trigger-time-bomb
index.js
115 B
SKILL.md
93 B
trigger-xattr-dropper
install.sh
115 B
SKILL.md
34 B
run-tests.sh
5.1 KB
_meta.json
977 B
SKILL.md
6.5 KB
SKILL.md

name: skillvet description: Security scanner for ClawHub/community skills — detects malware, credential theft, exfiltration, prompt injection, obfuscation, homograph attacks, ANSI injection, campaign-specific attack patterns, and more before you install. Use when installing skills from ClawHub or any public marketplace, reviewing third-party agent skills for safety, or vetting untrusted code before giving it to your AI agent. Triggers: install skill, audit skill, check skill, vet skill, skill security, safe install, is this skill safe.

Skillvet

Security scanner for agent skills. 34 critical checks, 8 warning checks. No dependencies — just bash and grep. Includes Tirith-inspired detection patterns and campaign signatures from Koi Security research.

Usage

Safe install (installs, audits, auto-removes if critical):

bash skills/skillvet/scripts/safe-install.sh <skill-slug>

Audit an existing skill:

bash skills/skillvet/scripts/skill-audit.sh skills/some-skill

Audit all installed skills:

for d in skills/*/; do bash skills/skillvet/scripts/skill-audit.sh "$d"; done

JSON output (for automation):

bash skills/skillvet/scripts/skill-audit.sh --json skills/some-skill

Summary mode (one-line per skill):

bash skills/skillvet/scripts/skill-audit.sh --summary skills/some-skill

Exit codes: 0 clean, 1 warnings only, 2 critical findings.

Critical Checks (auto-blocked)

Core Security Checks (1-24)

#CheckExample
1Known exfiltration endpointswebhook.site, ngrok.io, requestbin
2Bulk env variable harvestingprintenv |, ${!*@}
3Foreign credential accessANTHROPIC_API_KEY, TELEGRAM_BOT_TOKEN in scripts
4Code obfuscationeval(), base64 decode, hex escapes
5Path traversal / sensitive files../../, ~/.ssh, ~/.clawdbot
6Data exfiltration via curl/wgetcurl --data, wget --post with variables
7Reverse/bind shells/dev/tcp/, nc -e, socat
8.env file theftdotenv loading in scripts (not docs)
9Prompt injection in markdown"ignore previous instructions" in SKILL.md
10LLM tool exploitationInstructions to send/email secrets
11Agent config tamperingWrite/modify AGENTS.md, SOUL.md, clawdbot.json
12Unicode obfuscationZero-width chars, RTL override, bidi control chars
13Suspicious setup commandscurl piped to bash in SKILL.md
14Social engineeringDownload external binaries, paste-and-run instructions
15Shipped .env files.env files (not .example) in the skill
16Homograph URLs (Tirith)Cyrillic і vs Latin i in hostnames
17ANSI escape sequences (Tirith)Terminal escape codes in code/data files
18Punycode domains (Tirith)xn-- prefixed IDN-encoded domains
19Double-encoded paths (Tirith)%25XX percent-encoding bypass
20Shortened URLs (Tirith)bit.ly, t.co, tinyurl.com hiding destinations
21Pipe-to-shellcurl | bash (HTTP and HTTPS)
22String construction evasion'cu' + 'rl', String.fromCharCode, getattr(os,...)
23Data flow chain analysisSame file reads secrets, encodes, AND sends network requests
24Time bomb detectionDate.now() > timestamp, setTimeout(fn, 86400000)

Campaign-Inspired Checks (25-34)

Inspired by Koi Security research which found 341 malicious skills on ClawHub.

#CheckExample
25Known C2/IOC IP blocklist91.92.242.30, 54.91.154.110 (known AMOS C2 servers)
26Password-protected archives"extract using password: openclaw" — AV evasion
27Paste service payloadsglot.io, pastebin.com hosting malicious scripts
28GitHub releases binary downloadsFake prerequisites pointing to .zip/.exe on GitHub
29Base64 pipe-to-interpreterecho '...' | base64 -D | bash — primary macOS vector
30Subprocess + network commandsos.system("curl ...") — hidden pipe-to-shell in code
31Fake URL misdirection (warning)echo "https://apple.com/setup" decoy before real payload
32Process persistence + networknohup curl ... & — backdoor with network access
33Fake prerequisite pattern"Prerequisites" section with sketchy external downloads
34xattr/chmod droppermacOS Gatekeeper bypass: download → xattr -cchmod +x → execute

Severity Changes (v0.5.0)

  • Raw IP URLs upgraded from WARNING → CRITICAL (malicious C2s commonly use raw IPs)
  • Pipe-to-shell now catches both HTTP and HTTPS (not just insecure HTTP)

Warning Checks (flagged for review)

#CheckExample
W1Unknown external tool requirementsNon-standard CLI tools in install instructions
W2Subprocess executionchild_process, exec(), os.system
W3Network requestsaxios, fetch, requests imports
W4Minified/bundled filesFirst line >500 chars — can't audit
W5Filesystem write operationswriteFile, open('w'), fs.append
W6Insecure transportcurl -k, verify=False — TLS disabled
W7Docker untrusted registriesNon-standard image sources

Optional: Tirith Integration

If the tirith binary is available on PATH, the scanner will additionally extract all URLs from code files and run tirith check against each unique hostname for deeper homograph/IDN analysis. This is purely additive — the scanner works fine without tirith installed.

IOC Updates

The C2 IP blocklist in check #25 is based on known indicators from:

To update IOCs, edit the KNOWN_BAD_IPS variable in scripts/skill-audit.sh.

Limitations

Static analysis only. English-centric prompt injection patterns. Minified JS is flagged but not deobfuscated. A clean scan raises the bar but doesn't guarantee safety.

The scanner flags itself when audited — its own patterns contain the strings it detects. This is expected.

README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

FAQ

How do I install skillvet?

Run openclaw add @oakencore/skillvet in your terminal. This installs skillvet into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/oakencore/skillvet. Review commits and README documentation before installing.