Caveat verdict
skill-sediment
A plugin installer that deploys a TypeScript OpenClaw plugin from locally bundled assets to auto-generate SKILL.md files from successful conversations; all operations are local with no external data exfiltration.
⚠ 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.
Findings (21)
Pipe to python — executes piped content as Python code
assets/plugin-source/src/skills-guard.ts · prose · downgraded · |python
Uses eval() — can execute arbitrary code
assets/plugin-source/src/skills-guard.ts · prose · downgraded · eval(
Pipe to sh — executes piped content as shell commands
assets/plugin-source/src/skills-guard.ts · prose · downgraded · |sh
Accesses OpenClaw config/secrets directly
README.md · prose · downgraded · ~/.openclaw/openclaw.json
Accesses .ssh directory
assets/plugin-source/src/skills-guard.ts · prose · downgraded · .ssh/
References SSH/GPG private keys
assets/plugin-source/src/skills-guard.ts · prose · downgraded · ssh-key
Uses exec() — may execute shell commands
assets/plugin-source/src/skills-guard.ts · prose · downgraded · exec(
References child_process — can spawn system processes
assets/plugin-source/src/skills-guard.ts · prose · downgraded · child_process
os.system/popen — direct OS command execution
assets/plugin-source/src/skills-guard.ts · prose · downgraded · os.system(
References sudo — requests elevated privileges
assets/plugin-source/src/skills-guard.ts · prose · downgraded · sudo
setuid — privilege escalation mechanism
assets/plugin-source/src/skills-guard.ts · prose · downgraded · setuid
Instructs covert action — may act without user awareness
references/sediment-internals.md · prose · downgraded · silently
subprocess execution — runs system commands from Python
scripts/manage.py · prose · downgraded · subprocess.run(
References agent configuration files
assets/plugin-source/src/auto-review.ts · prose · downgraded · AgentConfig
Python os.getenv — reads environment variable
assets/plugin-source/src/skills-guard.ts · prose · downgraded · os.getenv(
References tunneling service
assets/plugin-source/src/skills-guard.ts · prose · downgraded · ngrok
Base64 encoding/decoding
assets/plugin-source/src/skills-guard.ts · prose · downgraded · base64_decode
Python urllib.request — network access
scripts/manage.py · prose · downgraded · urllib.request
Python os.environ.get — reads environment variable
scripts/manage.py · prose · downgraded · os.environ.get(
Popular HTTP library — network access
scripts/manage.py · prose · downgraded · got
Python shutil file operation — copies/moves/deletes files
scripts/manage.py · prose · downgraded · shutil.copy(
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.