| name | clawvet |
| version | 0.9.0 |
| description | Code quality and safety linter for OpenClaw skills. Runs 6 analysis passes before you install. |
| author | MohibShaikh |
| license | MIT |
| homepage | https://github.com/MohibShaikh/clawvet |
| repository | https://github.com/MohibShaikh/clawvet |
| metadata | {"openclaw":{"requires":{"bins":["node","npm"],"env":[]},"category":"security","tags":["security","linter","supply-chain","code-quality"]}} |
clawvet
Safety linter for OpenClaw skills. Analyzes skills for issues before installation.
Usage
Scan a local skill:
npx clawvet scan ./skill-folder/
JSON output for CI/CD:
npx clawvet scan ./skill-folder/ --format json
Audit all installed skills:
npx clawvet audit
Watch mode โ auto-block risky installs:
npx clawvet watch --threshold 50
Submit feedback or get alerts:
npx clawvet feedback
Analysis Passes
- Skill Parser โ Extracts YAML frontmatter, code blocks, URLs, and domains
- Static Analysis โ 57 pattern rules across multiple categories
- Metadata Validator โ Checks for undeclared binaries, env vars, missing descriptions
- Dependency Checker โ Flags auto-install and global package installs
- Typosquat Detector โ Levenshtein distance against popular skill names
- Semantic Analysis โ AI-powered contextual analysis (Pro)
What's New in v0.7โv0.8
- Cross-file payload assembly (0.8.0) โ folder scans now assemble files referenced from
SKILL.md (e.g. a setup.sh) before analysis, so a payload split across multiple files can no longer evade detection.
- Robust semantic parsing (0.8.0) โ semantic analysis correctly parses LLM responses wrapped in markdown code fences.
- Path-traversal hardening (0.7.0) โ
--remote slugs are validated and URL-encoded before fetching from ClawHub.
- Grade summaries (0.7.0) โ
audit prints a final grade summary and flags D/F skills for review; risk scores are rounded to integers.
- Shell-free CLI (0.7.2) โ replaced
exec() in feedback/scan --subscribe with a shell-free execFile opener.
- Privacy-preserving telemetry (0.7.2โ0.7.3) โ skill names are SHA-256 hashed before sending;
audit emits a session-level completion event. Still opt-in.
- Accurate skill naming (0.7.1) โ skills with no
name in frontmatter report the containing folder name instead of unknown.
What's New in v0.6
- Reliable telemetry โ Telemetry now awaits before exit, so no data is lost.
- CI-safe โ Opt-in prompt is skipped in non-TTY environments (piped stdin, CI).
- Less noise โ Feedback CTA shows every 5th scan instead of every scan.
- Trust badges โ Generate trust badges for skill READMEs with
npx clawvet badge.
- Ban lists โ Block skills by name/author/slug via
.clawvetban files.
- Confidence scores โ Each finding shows a confidence percentage. Risk scores are weighted accordingly.
- Fix suggestions โ Every finding includes an actionable remediation in terminal and SARIF output.
- Content-hash caching โ Repeat scans of unchanged files are near-instant.
- Trust badges โ Run
npx clawvet badge ./skill/ to generate a shields.io trust badge for your README.
- Ban list โ Create a
.clawvetban file to block skills by name, author, or slug.
- Feedback form โ Run
npx clawvet feedback to share what you think.
Note on Monorepo
The clawvet npm package contains only the CLI scanner (packages/cli + packages/shared). It is a stateless tool with no databases, no authentication, and no network access by default. The repository also contains an optional web dashboard (apps/api + apps/web) for self-hosted deployments โ these are NOT included in the npm package.
Risk Grades
| Score | Grade | Action |
|---|
| 0-10 | A | Safe to install |
| 11-25 | B | Safe to install |
| 26-50 | C | Review before installing |
| 51-75 | D | Review carefully |
| 76-100 | F | Do not install |