Caveat verdict

erpclaw

88
🟢 Trusted
No high-risk patterns surfaced by the deep scan — automated capability review, not behavioral proof.

Local-first ERP system with SQLite, parameterized queries, RBAC, and explicit network access limited to a public exchange-rates API and user-approved GitHub module installs; executionSinkDetected is from documented setup/initialization scripts.

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

20
security
100
transparency
90
maintenance

Findings (11)

Pattern match high

Writes to SKILL.md — self-modifying skill

CHANGELOG.md · prose · downgraded · SKILL.md so static-analysis review correctly attributes write

Pattern match medium

Instructs covert action — may act without user awareness

CHANGELOG.md · prose · downgraded · silently

Pattern match medium

Accesses system credential store

CHANGELOG.md · prose · downgraded · Keychain

Pattern match medium

os.system/popen — direct OS command execution

scripts/db_query.py · prose · downgraded · os.execvp(

Pattern match medium

subprocess execution — runs system commands from Python

scripts/erpclaw-billing/db_query.py · prose · downgraded · subprocess.run(

Pattern match low

Popular HTTP library — network access

SKILL.md · prose · downgraded · got

Pattern match low

References agent configuration files

CHANGELOG.md · prose · downgraded · CLAUDE.md

Pattern match low

Python os.environ.get — reads environment variable

scripts/db_query.py · prose · downgraded · os.environ.get(

Pattern match low

Python urllib.request — network access

scripts/module_manager.py · prose · downgraded · urllib.request

Pattern match low

Python shutil file operation — copies/moves/deletes files

scripts/module_manager.py · prose · downgraded · shutil.rmtree(

Pattern match low

Blob URL — may embed executable content

scripts/module_manager.py · prose · downgraded · blob:

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

Requires 2 system binaries. (1 elevated: git).

Is this flag fair?

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