Caveat verdict

skills-coach

88
🟢 Trusted
No high-risk patterns surfaced by the deep scan — automated capability review, not behavioral proof.

A skill optimization tool that analyzes and improves OpenClaw skills using Training-Free GRPO; file_read is used legitimately for reading skill files and the workflow is transparent.

⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.

Automated static analysis — not a human review. Caveat flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.

0
security
90
transparency
90
maintenance

Permission integrity

Performs file operations but does not declare file-accessing binaries

file_read

Findings (10)

Pattern match critical

Possible hardcoded credential

archive/docs/IMPLEMENTATION_REPORT.md · code · API_KEY="your-api-key

Pattern match critical

Recursive delete from root or home — destructive command

subskills/exec-agent/SKILL.md · code · rm -rf /

Pattern match high

Pipe to sh — executes piped content as shell commands

subskills/exec-agent/env_checker.py · prose · downgraded · |sh

Pattern match high

Pipe-to-shell pattern (curl | sh) — supply chain attack vector

subskills/exec-agent/env_checker.py · prose · downgraded · curl --proto \'=https\' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Pattern match medium

subprocess execution — runs system commands from Python

archive/backups/training_free_grpo_simple.py · prose · downgraded · subprocess.run(

Pattern match medium

subprocess with shell=True — command injection vector

subskills/exec-agent/env_checker.py · prose · downgraded · subprocess.run( install_cmd, shell=True

Pattern match low

Python os.environ.get — reads environment variable

api_checker.py · prose · downgraded · os.environ.get(

Pattern match low

Python shutil file operation — copies/moves/deletes files

orchestrator.py · prose · downgraded · shutil.rmtree(

Pattern match low

pip3 install — installs Python packages at runtime

subskills/failure-analyzer/failure_analyzer.py · prose · downgraded · pip3 install

Pattern match low

Python urllib.request — network access

subskills/sample-agent/test_file_manager.py · prose · downgraded · urllib.request

Why the tier is capped

Execution sink present in raw bytes (Hard Floor: class A/B/D). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.

Permissions & capabilities

No declared permissions — minimal attack surface.

file_read

Is this flag fair?

Check another skill Browse the registry Auditing your own skills or configs? Use the API