Caveat verdict
clawpulse
clawpulse-bridge
Sets up a token-protected local status bridge serving OpenClaw health data to a mobile app; binds 0.0.0.0 by default for Tailscale/LAN access which is the stated purpose and configurable to 127.0.0.1 for hardening.
⚠ 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 (7)
Possible hardcoded credential
scripts/setup_clawpulse_bridge.sh · prose · downgraded · TOKEN="${ROTATE_TOKEN:-0}
Pipe to python — executes piped content as Python code
scripts/setup_clawpulse_monitor.sh · prose · downgraded · | python3
HTTP request to bare IP address — common in malicious payloads
scripts/clawpulse-monitor.py · prose · downgraded · http://127.0.0.1
subprocess execution — runs system commands from Python
scripts/setup_clawpulse_bridge.sh · prose · downgraded · subprocess.run(
Python urllib.request — network access
scripts/clawpulse-monitor.py · prose · downgraded · urllib.request
Python os.environ.get — reads environment variable
scripts/clawpulse-monitor.py · prose · downgraded · os.environ.get(
Sets world-executable permissions
scripts/setup_clawpulse_bridge.sh · prose · downgraded · chmod 700
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class B/D/F). 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_in Is this flag fair?
Thanks — recorded.