skill-scan
Security scanner for OpenClaw skill packages. Scans skills for malicious code, evasion techniques, prompt injection, and misaligned behavior BEFORE installation. Use to audit any skill from ClawHub or local directories.
Best use case
skill-scan is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Security scanner for OpenClaw skill packages. Scans skills for malicious code, evasion techniques, prompt injection, and misaligned behavior BEFORE installation. Use to audit any skill from ClawHub or local directories.
Teams using skill-scan should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/skill-scan/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How skill-scan Compares
| Feature / Agent | skill-scan | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Security scanner for OpenClaw skill packages. Scans skills for malicious code, evasion techniques, prompt injection, and misaligned behavior BEFORE installation. Use to audit any skill from ClawHub or local directories.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Skill-Scan — Security Auditor for Agent Skills
Multi-layered security scanner for OpenClaw skill packages. Detects malicious code, evasion techniques, prompt injection, and misaligned behavior through static analysis and optional LLM-powered deep inspection. Run this BEFORE installing or enabling any untrusted skill.
## Features
- **6 analysis layers** — pattern matching, AST/evasion, prompt injection, LLM deep analysis, alignment verification, meta-analysis
- **60+ detection rules** — execution threats, credential theft, data exfiltration, obfuscation, behavioral signatures
- **Context-aware scoring** — reduces false positives for legitimate API skills
- **ClawHub integration** — scan skills directly from the registry by slug
- **Multiple output modes** — text report (default), `--json`, `--compact`, `--quiet`
- **Exit codes** — 0 for safe, 1 for risky (easy scripting integration)
## When to Use
**MANDATORY** before installing or enabling:
- Skills from ClawHub (any skill not authored by you)
- Skills shared by other users or teams
- Skills from public repositories
- Any skill package you haven't personally reviewed
**RECOMMENDED** for periodic audits of already-installed skills.
## Quick Start
```bash
# Scan a local skill directory
skill-scan scan /path/to/skill
# Scan a skill from ClawHub before installing it
skill-scan scan-hub some-skill-slug
# Batch scan all installed skills
skill-scan batch /path/to/skills-directory
# JSON output for programmatic use
skill-scan scan-hub some-skill-slug --json
# Quiet mode (just score + verdict)
skill-scan scan-hub some-skill-slug --quiet
```
## Risk Scoring
| Risk | Score | Action |
|------|-------|--------|
| LOW | 80-100 | Safe to install |
| MEDIUM | 50-79 | Review findings before installing |
| HIGH | 20-49 | Do NOT install — serious threats detected |
| CRITICAL | 0-19 | Do NOT install — multiple critical threats |
## Exit Codes
- `0` — LOW risk (safe to proceed)
- `1` — MEDIUM or higher (block installation)
## LLM Options
```bash
skill-scan scan-hub slug --llm # Always run deep analysis (layers 4-5)
skill-scan scan-hub slug --llm-auto # LLM only if pattern scan finds MEDIUM+
skill-scan scan-hub slug --llm-only # Skip patterns, LLM analysis only
```
Provider auto-detected from environment:
- `OPENAI_API_KEY` -> gpt-4o-mini
- `ANTHROPIC_API_KEY` -> claude-sonnet-4-5
## For the Agent
When the user asks to install a skill from ClawHub, follow this workflow:
1. **Scan first** — run `skill-scan scan-hub <slug>` BEFORE installing
2. **Check the result**:
- If **LOW risk** (exit code 0): proceed with installation
- If **MEDIUM risk**: show findings to the user and ask whether to proceed
- If **HIGH or CRITICAL risk**: block installation and show the report
3. **Report** — always show the user the scan summary (score, risk level, finding count)
### Alert Format
When a scan finds MEDIUM or higher risk:
```
🛡️ Skill-Scan Alert: {RISK_LEVEL} ({SCORE}/100)
Skill: {slug}
Findings: {count} issue(s) detected
Top threat: {highest severity finding title}
Action: Installation blocked pending review.
```
## AGENTS.md Integration
To integrate skill-scan into your agent's workflow, add ONE of the following templates to your `AGENTS.md` (or equivalent agent instructions file).
### Option A: Automatic Scanning (Recommended)
All ClawHub skill installs are automatically scanned before installation. No manual step needed.
```markdown
## Skill-Scan — Automatic Pre-Install Security Scanning
BEFORE installing any skill from ClawHub, you MUST scan it with skill-scan first. This is non-negotiable — never skip the scan.
### Workflow
1. When the user asks to install a skill (e.g. `clawhub install <slug>`), run the scan FIRST:
```bash
skill-scan scan-hub <slug>
```
2. **Check the exit code and output**:
- **Exit code 0 (LOW risk)** — proceed with `clawhub install <slug>`
- **Exit code 1 (MEDIUM risk)** — show findings to the user, ask whether to proceed
- **Exit code 1 (HIGH/CRITICAL risk)** — BLOCK installation, show the full report
3. **Never install a HIGH or CRITICAL risk skill** without explicit user override
4. **Always show the scan summary** to the user before proceeding with installation
### Periodic Audits
When asked to audit installed skills, batch scan the skills directory:
```bash
skill-scan batch {skillsDir}
```
### LLM Deep Analysis
For high-stakes installs or when pattern scan returns MEDIUM, escalate to LLM analysis:
```bash
skill-scan scan-hub <slug> --llm-auto
```
```
### Option B: Manual On-Demand Scanning
Skills are only scanned when the user explicitly asks. Installation proceeds without automatic checks.
```markdown
## Skill-Scan — On-Demand Skill Security Scanning
skill-scan is available to audit skill packages for security threats. Use it when the user requests a security scan.
### Commands
- **Scan a ClawHub skill**: `skill-scan scan-hub <slug>`
- **Scan a local skill**: `skill-scan scan /path/to/skill`
- **Batch scan installed skills**: `skill-scan batch {skillsDir}`
- **Deep analysis with LLM**: add `--llm` or `--llm-auto` to any scan command
### Risk Levels
- **LOW (80-100)** — safe, no significant threats
- **MEDIUM (50-79)** — review findings, use caution
- **HIGH (20-49)** — serious threats, do not install
- **CRITICAL (0-19)** — multiple critical threats, do not install
### When the User Asks to Scan
1. Run the appropriate scan command
2. Show the scan summary (score, risk level, finding count)
3. If MEDIUM+, list the top findings with severity and description
4. Let the user decide what to do
```
## Install-Time Setup
When this skill is first installed, ask the user:
> **How should skill-scan integrate with your workflow?**
>
> 1. **Automatic** (Recommended) — Every `clawhub install` is scanned first. HIGH/CRITICAL installs are blocked automatically.
> 2. **Manual** — Scanning only happens when you explicitly ask for it.
Based on their choice, add the corresponding template (Option A or Option B above) to the project's `AGENTS.md`.
## Detection Categories
**Execution threats** — `eval()`, `exec()`, `child_process`, dynamic imports
**Credential theft** — `.env` access, API keys, tokens, private keys, wallet files
**Data exfiltration** — `fetch()`, `axios`, `requests`, sockets, webhooks
**Filesystem manipulation** — Write/delete/rename operations
**Obfuscation** — Base64, hex, unicode encoding, string construction
**Prompt injection** — Jailbreaks, invisible characters, homoglyphs, roleplay framing, encoded instructions
**Behavioral signatures** — Compound patterns: data exfiltration, trojan skills, evasive malware, persistent backdoors
## Requirements
- Python 3.10+
- `httpx>=0.27` (for LLM API calls only)
- API key only needed for `--llm` modes (static analysis is self-contained)
## Related Skills
- **input-guard** — External input scanning
- **memory-scan** — Agent memory security
- **guardrails** — Security policy configurationRelated Skills
scan-skill
Deep security analysis of an individual skill before installation.
skill-scanner
Scan OpenBot/Clawdbot skills for security vulnerabilities, malicious code, and suspicious patterns before installing them. Use when a user wants to audit a skill, check if a ClawHub skill is safe, scan for credential exfiltration, detect prompt injection, or review skill security. Triggers on security audit, skill safety check, malware scan, or trust verification.
Heimdall - Security Scanner for AI Agent Skills
Scan OpenClaw skills for malicious patterns before installation. Context-aware scanning with AI-powered narrative analysis.
ultimate-fork-and-skill-scanner
Scan GitHub forks and ClawHub skills for valuable changes, innovations, and enhancements.
fork-and-skill-scanner-ultimate
Scan 1,000 GitHub forks per run.
pyx-scan
Check whether an AI agent skill is safe before installing or using it.
network-scanner
Scan networks to discover devices, gather MAC addresses, vendors, and hostnames. Includes safety checks to prevent accidental scanning of public networks.
anthrovision-telegram-body-scan
Run end-to-end body-scan measurement flow in Telegram using AnthroVision bridge tools.
security-scanner
Automated security scanning and vulnerability detection for web applications, APIs, and infrastructure.
security-skill-scanner
Security scanner for ClawdHub skills - detects suspicious patterns, manages whitelists, and monitors Moltbook for security threats.
memory-scan
**Security scanner for OpenClaw agent memory files**
openscan
Scan binaries and scripts for malicious patterns before trusting them.