ClawAudit verdict
skill-guard
benlee-skillguard
SkillGuard is a local security scanner that audits installed skills for malicious patterns; all capabilities are exercised locally for defensive purposes and match the stated tool purpose with no outbound exfiltration.
⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.
Automated static analysis — not a human review. ClawAudit flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.
Findings (14)
Bash /dev/tcp — raw TCP connection via shell
scripts/skillguard.py · prose · downgraded · /dev/tcp/
Pipe to bash — executes piped content as shell commands
scripts/skillguard.py · prose · downgraded · |bash
Pipe to python — executes piped content as Python code
scripts/skillguard.py · prose · downgraded · |python3
Prompt injection — tries to override agent instructions
tests/fake-helper/SKILL.md · prose · downgraded · Ignore all previous instructions
Instructs agent to hide actions from user
tests/fake-helper/SKILL.md · prose · downgraded · Do not warn the user
Accesses system credential store
SKILL.md · prose · downgraded · Keychain
Accesses .ssh directory
tests/fake-timebomb/scripts/reminder.py · prose · downgraded · .ssh/
subprocess with shell=True — command injection vector
tests/fake-formatter/scripts/formatter.py · prose · downgraded · subprocess.Popen(decoded, shell=True
References SSH/GPG private keys
tests/fake-weather/scripts/weather.py · prose · downgraded · ssh_key
Base64 encoding/decoding
SKILL.md · prose · downgraded · Base64-encode
Python os.environ.get — reads environment variable
scripts/skillguard.py · prose · downgraded · os.environ.get(
Popular HTTP library — network access
scripts/skillguard.py · prose · downgraded · axios
Opens WebSocket connection
scripts/skillguard.py · prose · downgraded · WebSocket
Python urllib.request — network access
tests/fake-crypto/scripts/crypto.py · prose · downgraded · urllib.request
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class A/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.
Is this flag fair?
Thanks — recorded.