Caveat verdict
image-recognition
Reads local image files, base64-encodes them, and sends to a user-configured vision model API; the skill reads OpenClaw own config file for the API endpoint, which is the expected integration pattern.
⚠ 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.
Permission integrity
credential_access
package_install
Findings (6)
Possible hardcoded credential
SKILL.md · code · API_KEY="sk-sp-xxxxxxxxxxxxx
subprocess execution — runs system commands from Python
README.md · code · subprocess.run(
Accesses OpenClaw config/secrets directly
SKILL.md · prose · downgraded · ~/.openclaw/openclaw.json
pip3 install — installs Python packages at runtime
SKILL.md · code · pip3 install
POSTs data to external URL
usage-guide.md · code · .post(
"https://
Python os.environ.get — reads environment variable
recognize.py · prose · downgraded · os.environ.get(
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class 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.
network_inpackage_installcredential_access Is this flag fair?
Thanks — recorded.