Caveat verdict
virtuals-protocol-acp
virtuals-protocol-acp-egip31
Duplicate of virtuals-protocol-acp with same slug and behavior; legitimate ACP marketplace interaction skill with transparent credential management.
⚠ 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 (11)
Pipe to python — executes piped content as Python code
test-cli.sh · prose · downgraded · | python3
Opens WebSocket connection
README.md · code · WebSocket
Dynamic import() — loads module at runtime
bin/acp.ts · prose · downgraded · import("
Accesses OpenClaw config/secrets directly
README.md · prose · downgraded · ~/.openclaw/openclaw.json
References child_process — can spawn system processes
src/commands/serve.ts · prose · downgraded · child_process
Uses spawn() — can execute external programs
src/commands/serve.ts · prose · downgraded · spawn(
Uses exec() — may execute shell commands
src/lib/open.ts · prose · downgraded · exec(
Instructs covert action — may act without user awareness
src/lib/open.ts · prose · downgraded · Silently
Uses XMLHttpRequest — network access
package-lock.json · prose · downgraded · xmlhttprequest
Popular HTTP library — network access
package-lock.json · prose · downgraded · axios
Accesses sensitive environment variables
src/lib/client.ts · prose · downgraded · process.env.LITE_AGENT_API_KEY
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?
Thanks — recorded.