ClawAudit verdict

odd-article-skills

odd-articles

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

Content production pipeline for WeChat/blog publishing; Chrome CDP is documented for browser-driven publishing, not covert data extraction.

⚠ 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
90
transparency
70
maintenance

Findings (12)

Pattern match critical

<script> tag in markdown — potential code injection

references/cover_template.md · code · <script

Pattern match high

subprocess execution — runs system commands from Python

references/running_python_script_guide.md · code · subprocess.run(

Pattern match high

Possible hardcoded credential

scripts/generate_img.py · prose · downgraded · api_key = "ms-c5105352-22dd-4be1-8e2d-e057ae27df8d

Pattern match medium

References sudo — requests elevated privileges

drafts/current.json · prose · downgraded · sudo

Pattern match medium

References child_process — can spawn system processes

scripts/distribute/cdp-utils.ts · prose · downgraded · child_process

Pattern match medium

HTTP request to bare IP address — common in malicious payloads

scripts/distribute/cdp-utils.ts · prose · downgraded · http://127.0.0.1

Pattern match medium

Uses spawn() — can execute external programs

scripts/distribute/cdp-utils.ts · prose · downgraded · spawn(

Pattern match low

Python os.environ.get — reads environment variable

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

Pattern match low

Python shutil file operation — copies/moves/deletes files

scripts/archive_outputs.py · prose · downgraded · shutil.move(

Pattern match low

Opens WebSocket connection

scripts/distribute/cdp-utils.ts · prose · downgraded · WebSocket

Pattern match low

Accesses sensitive environment variables

scripts/distribute/wechat-api.ts · prose · downgraded · process.env.WECHAT_APPSECRET

Pattern match low

Python urllib.request — network access

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

Why the tier is capped

Execution sink present in raw bytes (Hard Floor: class A/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