Skill Auditor

v1.0.0

Security audit and quarantine system for third-party OpenClaw skills. Use when evaluating, reviewing, or installing any skill from ClawHub or external source...

0· 638·2 current·2 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
Name/description match included artifacts: a quarantine shell script and a Python scanner are present and their behavior (copy into a temp directory, scan files, produce JSON/human reports, optionally copy to production skills dir) aligns with a 'Skill Auditor'. No unrelated credentials or external services are requested.
Instruction Scope
Runtime instructions direct the agent/operator to quarantine the skill and run the included scanner — scope is appropriate. Two items to note: (1) SKILL.md states it is 'Automatically triggered before any skill installation' whereas the registry metadata sets always:false (a mismatch to confirm). (2) SKILL.md contains an instruction to 'always show Abidi the full findings' — this is ambiguous (who/where is Abidi?) and implies a required human recipient; ensure this is intentional and not an exfil target.
Install Mechanism
No install spec / no external downloads. The package is instruction+scripts only and uses only local copy/scan operations. This is low-risk compared with skills that fetch remote code or run installers.
Credentials
No environment variables, credentials, or suspicious config paths are requested. The scanner itself looks for environment-access patterns in target skill code (appropriate for an auditor) but does not itself request secrets.
Persistence & Privilege
always:false (normal). The scripts can copy files into the production skills directory if the user consents during the quarantine workflow — expected for an installer/auditor. Confirm whether you want the 'Automatically triggered before any skill installation' behavior claimed in docs to be implemented, since that would require platform-side hooks or always:true.
Scan Findings in Context
[prompt-injection-signal] expected: A prompt-injection pattern ('ignore previous instructions' family) was detected in the SKILL.md pre-scan. This repository intentionally includes a references/prompt-injection-patterns.md listing those phrases to detect them; that is expected for an auditor. Still, verify the SKILL.md does not contain hidden/active injection directives that would be loaded into an LLM context during runtime.
Assessment
This skill appears to implement a sensible local quarantine + scanner and does not demand credentials or download remote code, so it's reasonable to use. Before installing or enabling it automatically: 1) Manually review the audit output and the quarantine directory the first few times to ensure no report is being sent to unknown endpoints. 2) Confirm the ambiguous instruction to 'show Abidi the full findings' — identify who/where 'Abidi' is and whether that step is manual. 3) Resolve the documentation mismatch: SKILL.md claims automatic pre-install triggering but metadata has always:false; make sure auto-triggering is only enabled via explicit platform integration, not silently. 4) Run the scanner on a couple of known-good and known-bad sample skills to validate its detection thresholds and false-positive behavior. 5) If you plan to run audits automatically, run the auditor in an isolated environment (non-production account or container) until you have confidence in its rules. If you want, I can point out the specific lines in audit_skill.py and quarantine.sh you should inspect or run a simulated audit on a sample skill.

Like a lobster shell, security has layers — review code before you run it.

auditvk97e1p5ta6yhwar1wy7ea3vcdn816nsxlatestvk97e1p5ta6yhwar1wy7ea3vcdn816nsxsecurityvk97e1p5ta6yhwar1wy7ea3vcdn816nsx
638downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

Skill Auditor

Security gatekeeper for third-party skill installation. No skill gets installed without passing audit.

When to Use

  • Before installing ANY skill from ClawHub or external sources
  • When asked to review/evaluate a skill's safety
  • When clawhub install or similar installation is requested

Audit Workflow

1. Quarantine First

Never copy a skill directly to the production skills directory. Always quarantine first:

bash skills/skill-auditor/scripts/quarantine.sh /path/to/skill-source

This copies the skill to a temp directory, runs the full audit, and only allows installation if the risk score is CLEAN or LOW.

2. Manual Audit (Python Script Directly)

For inspection without the quarantine wrapper:

python3 skills/skill-auditor/scripts/audit_skill.py /path/to/skill-dir

Outputs JSON report to stdout. Add --human for formatted text output.

3. Interpreting Results

RatingAction
CLEANSafe to install
LOWSafe, minor notes — review findings briefly
MEDIUMDo NOT install without manual review of each finding
HIGHBlock installation — likely malicious patterns detected
CRITICALBlock immediately — active threat indicators (exfil, prompt injection, obfuscated payloads)

4. Exit Codes

  • 0 = CLEAN or LOW (safe)
  • 1 = MEDIUM (needs review)
  • 2 = HIGH or CRITICAL (blocked)

What Gets Scanned

  • All files: inventory, sizes, suspicious file types
  • Code: shell commands, network calls, env access, filesystem escape, obfuscation, dynamic imports
  • SKILL.md: prompt injection patterns, permission scope requests
  • Dependencies: requirements.txt / package.json flagged packages
  • Encoding: base64 payloads, hex/unicode escapes, string manipulation tricks

References

  • references/known-patterns.md — catalog of real attack patterns from ClawHub
  • references/prompt-injection-patterns.md — prompt injection signatures to detect

Important

If a skill scores MEDIUM or above, always show Abidi the full findings before taking any action. Never override or bypass the auditor. This is the last line of defense before untrusted code enters the system.

Comments

Loading comments...