Source Code
Skill Vetter ๐
Security-first vetting protocol for AI agent skills. Never install a skill without vetting it first.
When to Use
- Before installing any skill from ClawdHub
- Before running skills from GitHub repos
- When evaluating skills shared by other agents
- Anytime you're asked to install unknown code
Vetting Protocol
Step 1: Source Check
Questions to answer:
- [ ] Where did this skill come from?
- [ ] Is the author known/reputable?
- [ ] How many downloads/stars does it have?
- [ ] When was it last updated?
- [ ] Are there reviews from other agents?
Step 2: Code Review (MANDATORY)
Read ALL files in the skill. Check for these RED FLAGS:
๐จ REJECT IMMEDIATELY IF YOU SEE:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โข curl/wget to unknown URLs
โข Sends data to external servers
โข Requests credentials/tokens/API keys
โข Reads ~/.ssh, ~/.aws, ~/.config without clear reason
โข Accesses MEMORY.md, USER.md, SOUL.md, IDENTITY.md
โข Uses base64 decode on anything
โข Uses eval() or exec() with external input
โข Modifies system files outside workspace
โข Installs packages without listing them
โข Network calls to IPs instead of domains
โข Obfuscated code (compressed, encoded, minified)
โข Requests elevated/sudo permissions
โข Accesses browser cookies/sessions
โข Touches credential files
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Step 3: Permission Scope
Evaluate:
- [ ] What files does it need to read?
- [ ] What files does it need to write?
- [ ] What commands does it run?
- [ ] Does it need network access? To where?
- [ ] Is the scope minimal for its stated purpose?
Step 4: Risk Classification
| Risk Level | Examples | Action |
|---|---|---|
| ๐ข LOW | Notes, weather, formatting | Basic review, install OK |
| ๐ก MEDIUM | File ops, browser, APIs | Full code review required |
| ๐ด HIGH | Credentials, trading, system | Human approval required |
| โ EXTREME | Security configs, root access | Do NOT install |
Output Format
After vetting, produce this report:
SKILL VETTING REPORT
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Skill: [name]
Source: [ClawdHub / GitHub / other]
Author: [username]
Version: [version]
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
METRICS:
โข Downloads/Stars: [count]
โข Last Updated: [date]
โข Files Reviewed: [count]
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
RED FLAGS: [None / List them]
PERMISSIONS NEEDED:
โข Files: [list or "None"]
โข Network: [list or "None"]
โข Commands: [list or "None"]
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
RISK LEVEL: [๐ข LOW / ๐ก MEDIUM / ๐ด HIGH / โ EXTREME]
VERDICT: [โ
SAFE TO INSTALL / โ ๏ธ INSTALL WITH CAUTION / โ DO NOT INSTALL]
NOTES: [Any observations]
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Quick Vet Commands
For GitHub-hosted skills:
# Check repo stats
curl -s "https://api.github.com/repos/OWNER/REPO" | jq '{stars: .stargazers_count, forks: .forks_count, updated: .updated_at}'
# List skill files
curl -s "https://api.github.com/repos/OWNER/REPO/contents/skills/SKILL_NAME" | jq '.[].name'
# Fetch and review SKILL.md
curl -s "https://raw.githubusercontent.com/OWNER/REPO/main/skills/SKILL_NAME/SKILL.md"
Trust Hierarchy
- Official OpenClaw skills โ Lower scrutiny (still review)
- High-star repos (1000+) โ Moderate scrutiny
- Known authors โ Moderate scrutiny
- New/unknown sources โ Maximum scrutiny
- Skills requesting credentials โ Human approval always
Remember
- No skill is worth compromising security
- When in doubt, don't install
- Ask your human for high-risk decisions
- Document what you vet for future reference
Paranoia is a feature. ๐๐ฆ