ClawAudit verdict

friday-budgeting-pro

88
🟢 Trusted
Low risk — reviewed by ClawAudit, behavior matches stated purpose

Personal finance tracker using Plaid for bank connectivity and local MCP server; the skill uses documented APIs for its stated budgeting purpose with no exfiltration beyond the expected Plaid bank data sync.

⚠ 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.

0
security
80
transparency
80
maintenance

Findings (14)

Pattern match high

HTTP request to bare IP address — common in malicious payloads

ARCHITECTURE.md · code · http://127.0.0.1

Pattern match high

Accesses OpenClaw config/secrets directly

ARCHITECTURE.md · code · ~/.openclaw/openclaw.json

Pattern match high

Accesses system credential store

ARCHITECTURE.md · code · Keychain

Pattern match high

Pipe to python — executes piped content as Python code

ARCHITECTURE.md · prose · downgraded · | Python

Pattern match high

Possible hardcoded credential

tests/test_configure_plaid.py · prose · downgraded · secret = "super_secret_12345

Pattern match high

Writes to SKILL.md — self-modifying skill

tests/test_skill_md_sync.py · prose · downgraded · SKILL.md").write

Pattern match medium

pip3 install — installs Python packages at runtime

SKILL.md · frontmatter · pip3 install

Pattern match medium

Instructs covert action — may act without user awareness

FIXES.md · prose · downgraded · silently

Pattern match medium

Popular HTTP library — network access

README.md · code · Got

Pattern match medium

subprocess execution — runs system commands from Python

server/installer.py · prose · downgraded · subprocess.run(

Pattern match low

References tunneling service

ARCHITECTURE.md · prose · downgraded · ngrok

Pattern match low

Python os.environ.get — reads environment variable

server/daemon.py · prose · downgraded · os.environ.get(

Pattern match low

Python urllib.request — network access

server/llm.py · prose · downgraded · urllib.request

Pattern match low

importlib.import_module — dynamic module loading

tests/test_server_boots.py · prose · downgraded · importlib.import_module(

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.

Is this flag fair?

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