Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Security-first wrapper for installing agent skills. Scans for malware, prompt injection, and suspicious patterns before installation. Use instead of `clawhub install` for safer skill management.
Security-first wrapper for installing agent skills. Scans for malware, prompt injection, and suspicious patterns before installation. Use instead of `clawhub install` for safer skill management.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Security-first wrapper for clawhub install. Scans skills for malware, prompt injection, and suspicious patterns before installation.
Agent skills are powerful — they're basically executable documentation. The ClawHub ecosystem has already seen malware campaigns distributing infostealers via innocent-looking skills. pincer adds a security layer before you install anything.
# From ClawHub clawhub install pincer # Or manually chmod +x ./scripts/pincer.sh ln -sf "$(pwd)/scripts/pincer.sh" ~/.local/bin/pincer Dependencies: clawhub — for fetching skills uvx — for mcp-scan (brew install uv) jq — for JSON parsing
# Instead of: clawhub install some-skill pincer install some-skill # With specific version pincer install some-skill@1.2.0
# Scan a ClawHub skill pincer scan some-skill # Scan a local directory pincer scan ./path/to/skill # JSON output for automation pincer scan some-skill --json
# Quick-scan all installed skills pincer audit # JSON output pincer audit --json
# Add trusted publisher (auto-approve clean skills) pincer trust add steipete # Remove from trusted pincer trust remove old-publisher # Block a publisher or skill pincer trust block suspicious-dev pincer trust block malware-skill # Unblock pincer trust unblock redeemed-dev # List all trust settings pincer trust list
# See what you've installed pincer history # JSON output pincer history --json
# Show current config pincer config show # Edit in $EDITOR pincer config edit # Reset to defaults pincer config reset
Prompt injection attacks Malware payloads in natural language Tool poisoning Sensitive data exposure Hard-coded secrets
PatternRiskDescriptionBase64 commands🚨 HighEncoded shell commandsHex payloads🚨 HighObfuscated binary dataxattr -d quarantine🚨 HighmacOS Gatekeeper bypasscurl | sh🚨 HighPipe to shell executionPassword archives🚨 HighHidden malicious payloadsDownload + execute⚠️ Mediumchmod +x && ./ patternseval $var⚠️ MediumDynamic code executionHidden files⚠️ MediumDot-file creationPersistence⚠️ Mediumcron/launchd entries
Publisher reputation (trusted list) Download count threshold Skill age threshold Blocklist checking
Scans for bundled executables Flags Mach-O, ELF, PE32 binaries
LevelMeaningAction✅ CLEANNo issuesAuto-approve if trusted publisher⚠️ CAUTIONWarnings presentPrompt for approval🚨 DANGERSuspicious patternsBlock (override with --force)☠️ MALWAREKnown maliciousBlock (cannot override)⛔ BLOCKEDOn blocklistBlock (cannot override)
Config: ~/.config/pincer/config.json { "trustedPublishers": ["openclaw", "steipete", "invariantlabs-ai"], "blockedPublishers": [], "blockedSkills": [], "autoApprove": "clean", "logInstalls": true, "minDownloads": 0, "minAgeDays": 0 } KeyDescriptiontrustedPublishersPublishers whose clean skills auto-approveblockedPublishersAlways block these publishersblockedSkillsAlways block these specific skillsautoApprove"clean" = auto-approve clean+trusted, "never" = always promptlogInstallsLog installations to history fileminDownloadsWarn if skill has fewer downloadsminAgeDaysWarn if skill is newer than N days
$ pincer install bird 🛡️ pincer v1.0.0 → Fetching bird from ClawHub... Publisher: steipete (trusted) Stats: 7363 downloads · 27 ★ · created 1 month ago 🛡️ pincer Scanning bird... → Running mcp-scan... ✅ mcp-scan: passed → Checking for suspicious patterns... ✅ Pattern check: passed → Checking external URLs... ✅ URL check: passed → Checking for bundled binaries... ✅ Binary check: passed Risk Assessment: ✅ CLEAN — No issues detected → Auto-approved (clean + trusted config). → Installing bird... ✅ Installed successfully!
$ pincer install sketchy-tool 🛡️ pincer v1.0.0 → Fetching sketchy-tool from ClawHub... Publisher: newaccount (unknown) Stats: 12 downloads · 0 ★ · created 2 days ago 🛡️ pincer Scanning sketchy-tool... → Running mcp-scan... 🚨 mcp-scan: high-risk warnings → Checking for suspicious patterns... 🚨 Pattern check: suspicious patterns found • curl/wget piped to shell • macOS quarantine removal (xattr) → Checking external URLs... ⚠️ URL check: external URLs found • http://sketchy-domain.xyz/install → Checking for bundled binaries... ✅ Binary check: passed Risk Assessment: 🚨 DANGER — Suspicious patterns detected • mcp-scan: high-risk patterns detected • curl/wget piped to shell • macOS quarantine removal (xattr) ☠️ Install blocked. Use --force to override (not recommended).
mcp-scan by Invariant Labs — core security scanning 1Password Security Research — threat analysis that inspired this tool Snyk ToxicSkills Report — ecosystem threat research
MIT Stay safe out there. 🛡️
Identity, auth, scanning, governance, audit, and operational guardrails.
Largest current source with strong distribution and engagement signals.