@exelerus/openclaw-vexscan
v1.0.1
Published
Vexscan security scanner plugin for OpenClaw
Maintainers
Readme
Features
- Automatic Scanning: Scans third-party extensions on startup
- Pre-Install Vetting: Vet extensions before installing with
openclaw vexscan vet - AI-Integrated: The AI assistant can scan code on your behalf
- Smart Filtering: Skips official extensions, focuses on untrusted code
Installation
Install the Plugin
# From npm
openclaw plugins install @exelerus/openclaw-vexscan
# From local path
openclaw plugins install ./plugins/openclaw
# Development (symlink)
openclaw plugins install -l ./plugins/openclawCLI Installation (Optional)
The plugin will auto-install the Vexscan CLI on first run. For manual installation:
# Quick install (macOS/Linux)
curl -fsSL https://raw.githubusercontent.com/edimuj/vexscan/main/install.sh | bash
# Or from source
git clone https://github.com/edimuj/vexscan && cd vexscan && cargo install --path .Usage
CLI Commands
# Scan installed extensions
openclaw vexscan scan
# Scan specific path
openclaw vexscan scan ~/.openclaw/extensions
# Vet before installing
openclaw vexscan vet https://github.com/user/cool-extension
# Vet and install in one step (blocked if critical/high findings)
openclaw vexscan install https://github.com/user/cool-extension
# Install with overrides
openclaw vexscan install ./local-extension --link # symlink for dev
openclaw vexscan install @org/extension --force # allow medium findings
openclaw vexscan install @org/extension --dry-run # vet only, don't install
# List detection rules
openclaw vexscan rulesAI Tool Usage
The AI assistant can use Vexscan directly:
User: "Is this extension safe? https://github.com/user/extension"
AI: *uses vexscan tool to vet the extension*User: "Check my extensions for security issues"
AI: *uses vexscan tool to scan ~/.openclaw/extensions*User: "Install this extension: @org/cool-plugin"
AI: *uses vexscan install action to vet and install*Configuration
Configure in your openclaw.json:
{
"plugins": {
"vexscan": {
"enabled": true,
"scanOnInstall": true,
"minSeverity": "medium",
"thirdPartyOnly": true,
"skipDeps": true
}
}
}| Option | Default | Description |
|------------------|----------|---------------------------------------------|
| enabled | true | Enable security scanning |
| scanOnInstall | true | Scan on startup |
| minSeverity | medium | Minimum severity to report |
| thirdPartyOnly | true | Only scan non-official extensions |
| skipDeps | true | Skip node_modules to reduce false positives |
| ast | true | AST analysis for obfuscation detection |
| deps | true | Dependency scanning for supply chain attacks|
| cliPath | (auto) | Path to vexscan binary |
What It Detects
| Category | Examples |
|----------------------|-------------------------------------------------|
| Code Execution | eval(), new Function(), exec(), SQL injection |
| Shell Injection | child_process, subprocess, reverse shells |
| Data Exfiltration | Discord webhooks, external POST |
| Credential Access | SSH keys, AWS credentials |
| Hardcoded Secrets | API keys, tokens, passwords, connection strings |
| Prompt Injection | Instruction override, system prompt reveal |
| Obfuscation | Base64, hex encoding |
| Backdoor Detection | Time bombs, C2 callbacks |
| Dangerous Operations | rm -rf, chmod 777, sudo |
| Resource Abuse | Fork bombs, infinite loops |
Development
cd plugins/openclaw
npm install
npm run buildLicense
Apache 2.0
