Caveat verdict
sofagent
Agent governance skill enforcing behavioral constraints including privacy protection and no unauthorized data transmission; its purpose is to constrain agent behavior.
⚠ 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 (22)
Prompt injection — tries to override agent instructions
ignite.md · code · ignore previous instructions
Pipe to sh — executes piped content as shell commands
audit/dist/log-reader.js · prose · downgraded · |sh
Recursive delete from root or home — destructive command
audit/src/diff-parser.test.ts · prose · downgraded · rm -rf /
Accesses sensitive system files
audit/src/diff-parser.test.ts · prose · downgraded · /etc/passwd
Possible hardcoded credential
audit/src/rules/rule-a2.test.ts · prose · downgraded · apiKey = "${longKey}
Uses eval() — can execute arbitrary code
audit/src/rules/skill-safety-rules.ts · prose · downgraded · eval(
Dynamic Function constructor — equivalent to eval()
audit/src/rules/skill-safety-rules.ts · prose · downgraded · new Function(
Pipe-to-shell pattern (curl | sh) — supply chain attack vector
audit/src/skill-safety-check.test.ts · prose · downgraded · curl xxx | bash
Pipe to bash — executes piped content as shell commands
audit/src/skill-safety-check.test.ts · prose · downgraded · | bash
Accesses .ssh directory
ignite.md · code · .ssh/
Uses spawn() — can execute external programs
loop-check.md · code · spawn(
Pipe to python — executes piped content as Python code
scripts/benchmark.sh · prose · downgraded · | python3
References child_process — can spawn system processes
audit/dist/diff-parser.js · prose · downgraded · child_process
Uses exec() — may execute shell commands
audit/dist/log-reader.js · prose · downgraded · exec(
os.system/popen — direct OS command execution
audit/src/rules/skill-safety-rules.ts · prose · downgraded · os.system(
Base64 decode (atob) — may hide malicious payloads
audit/src/rules/skill-safety-rules.ts · prose · downgraded · atob(
References sudo — requests elevated privileges
scripts/install.sh · prose · downgraded · sudo
Accesses shell history/config
scripts/install.sh · prose · downgraded · ~/.zshrc
Sets world-executable permissions
audit/src/rules/skill-safety-rules.ts · prose · downgraded · chmod 777
Popular HTTP library — network access
audit/src/verify-evidence.test.ts · prose · downgraded · got
References agent memory files
ignite.md · prose · downgraded · MEMORY.md
References agent configuration files
ignite.md · prose · downgraded · CLAUDE.md
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class A/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.
Is this flag fair?
Thanks — recorded.