Scan, audit, validate, package, or pre-submit AgentSkills using the local BunsDev codeql-sdk/clawhub-audit scanner and OpenClaw skill validation. Use when a user asks to run codeql-sdk, scan a skill before submitting, security-audit a SKILL.md package, produce JSON/SARIF reports, or ensure a skill is ready for Cody/ClawHub handoff.
Scanned 9/3/2026
Install to Claude Code
npx -y skills add OpenCoven/coven --skill skill-scanner --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Skill Scanner?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/opencoven-skill-scanner)More formats (shields.io, HTML) on the badges page.
---
name: skill-scanner
description: Scan, audit, validate, package, or pre-submit AgentSkills using the local BunsDev codeql-sdk/clawhub-audit scanner and OpenClaw skill validation. Use when a user asks to run codeql-sdk, scan a skill before submitting, security-audit a SKILL.md package, produce JSON/SARIF reports, or ensure a skill is ready for Cody/ClawHub handoff.
---
# Skill Scanner
Use this skill for pre-submit scanning and validation of AgentSkills.
## Prime directive
Do not call a skill ready until both gates have been attempted:
1. **Skill structure gate** — `openclaw skills check` and/or `package_skill.py` validation.
2. **Security scan gate** — `codeql-sdk` / `clawhub-audit` scan.
If CodeQL CLI is missing, report that as a blocker and give the exact install/rerun command. If CodeQL runs but reports no analyzable source code, mark the security scan as `not applicable`, not passed. Do not silently replace the scan with weaker checks.
## Default local paths
- SDK repo: `/Users/buns/Documents/GitHub/BunsDev/codeql-sdk`
- SDK CLI source: `/Users/buns/Documents/GitHub/BunsDev/codeql-sdk/dist/cli.js`
- Skill creator package validator: `~/.nvm/versions/node/v24.13.0/lib/node_modules/openclaw/skills/skill-creator/scripts/package_skill.py`
- Workspace skills root: `/Users/buns/.openclaw/workspace/skills`
Read `references/codeql-sdk.md` for CLI details, report formats, and troubleshooting.
## Standard scan workflow
Given a skill directory:
```bash
SKILL_DIR=/absolute/path/to/skill
REPORT_DIR="$(dirname "$SKILL_DIR")/.scan-reports/$(basename "$SKILL_DIR")"
mkdir -p "$REPORT_DIR"
```
1. Preflight:
```bash
test -f "$SKILL_DIR/SKILL.md"
node /Users/buns/Documents/GitHub/BunsDev/codeql-sdk/dist/cli.js version
command -v codeql || test -x "$CODEQL_PATH"
```
2. Validate structure:
```bash
openclaw skills check
python3 ~/.nvm/versions/node/v24.13.0/lib/node_modules/openclaw/skills/skill-creator/scripts/package_skill.py "$SKILL_DIR" /tmp/skill-packages
```
3. Run CodeQL SDK scan:
```bash
node /Users/buns/Documents/GitHub/BunsDev/codeql-sdk/dist/cli.js audit "$SKILL_DIR" \
--format json \
--output "$REPORT_DIR/codeql-sdk-results.json" \
--fail-on-high
```
4. If the JSON scan passes, optionally generate SARIF for CI/ClawHub:
```bash
node /Users/buns/Documents/GitHub/BunsDev/codeql-sdk/dist/cli.js audit "$SKILL_DIR" \
--format sarif \
--output "$REPORT_DIR/codeql-sdk-results.sarif"
```
## Expected result summary
Return a compact status block:
```text
Skill: <name>
Structure validation: passed|failed
Package validator: passed|failed
CodeQL SDK scan: passed|failed|blocked|not applicable
Report: <path>
Ready to submit: yes|no
Notes: <critical findings or blocker>
```
## No analyzable source code
If CodeQL errors with `CodeQL did not detect any code`, the SDK scan was attempted but not applicable to that skill's contents. This often happens for markdown-only skills. Report: `CodeQL SDK scan: not applicable (no analyzable source code detected)`. Do not call it a pass.
## CodeQL CLI missing blocker
If scan fails with `CodeQL CLI not found`, say exactly that the SDK is installed but its runtime dependency is missing. On this Mac, the expected install is:
```bash
brew install --cask codeql
```
Then rerun the audit command. Installing CodeQL is a machine-level state change; ask before doing it unless the user explicitly approved install/update actions.
## Report handling
- JSON reports are useful for agent parsing and memory.
- SARIF reports are useful for CI, GitHub, and security tooling.
- Do not commit `.scan-reports/` reports unless the user explicitly asks.
- Do not print secrets found in reports. Summarize rule IDs, severity, file paths, and line numbers only.
## Handoff guidance
When handing a scanned skill to Cody or another agent, include:
- skill directory path
- packaged `.skill` path if available
- scan report path
- whether CodeQL SDK passed or was blocked
- any critical/high finding summaries
- exact rerun command
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!