Caveat verdict
li-feishu-audio
li-feishu-qq-audio
Feishu voice interaction skill using local faster-whisper for STT and Edge TTS for synthesis, communicating only with the Feishu API using user-provided credentials stored transparently in config or env vars; behavior matches stated voice bot purpose.
⚠ 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 (14)
Possible hardcoded credential
SECURITY_AUDIT_COMPLETE.md · code · SECRET="your-app-secret
Pipe to sh — executes piped content as shell commands
SECURITY_AUDIT_COMPLETE.md · code · |sh
Pipe-to-shell pattern (curl | sh) — supply chain attack vector
SECURITY_FIXES_0.1.6.md · code · curl -sSf https://astral.sh/uv/install.sh | sh
Pipe to python — executes piped content as Python code
PRIVACY_CHECK.md · prose · downgraded · | Python
Uses eval() — can execute arbitrary code
PRIVACY_CHECK.md · prose · downgraded · eval(
Accesses shell history/config
SECURITY_CONFIG.md · code · ~/.profile
Uses exec() — may execute shell commands
PRIVACY_CHECK.md · prose · downgraded · exec(
Accesses OpenClaw config/secrets directly
QUICKSTART.md · prose · downgraded · ~/.openclaw/openclaw.json
References sudo — requests elevated privileges
scripts/install-with-model-choice.sh · prose · downgraded · sudo
yum install — installs system packages
scripts/install-with-model-choice.sh · prose · downgraded · yum install
Sets world-executable permissions
SECURITY_AUDIT_COMPLETE.md · code · chmod 755
subprocess execution — runs system commands from Python
src/handlers/voice.py · prose · downgraded · subprocess.run(
Python os.environ.get — reads environment variable
src/log_config.py · prose · downgraded · os.environ.get(
Python shutil file operation — copies/moves/deletes files
src/tts_edge.py · prose · downgraded · shutil.copy(
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class A/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.