Caveat verdict
chinese-ebook-downloader
Reads local files AND makes external network calls
Downloads ebooks from documented sources (Source A/B/C including Anna's Archive/libgen mirrors) with a clear multi-source fallback strategy; behavior matches stated purpose and no credentials or secrets are involved.
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.
What it does
These are capability combinations: each listed behavior occurs in the skill, but Caveat detects co-occurrence — it does not verify that one flows into another. Read the code to confirm a live chain.
Reads local files AND makes external network calls — the capabilities for data exfiltration co-occur (data-flow not verified)
LLM02 · LLM06 · ASI03
Reads files, encodes data, AND makes external network calls — the obfuscated-exfiltration pattern (data-flow not verified)
LLM02 · ASI03
Permission integrity
network_out
file_read
Findings (5)
subprocess execution — runs system commands from Python
scripts/anna_batch_download.py · prose · downgraded · subprocess.run(
fetch() — outbound network request
SKILL.md · code
Popular HTTP library — network access
scripts/anna_async_download.py · prose · downgraded · Got
Python shutil file operation — copies/moves/deletes files
scripts/anna_batch_download.py · prose · downgraded · shutil.move(
Python os.environ.get — reads environment variable
scripts/download_book.py · prose · downgraded · os.environ.get(
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.
network_outnetwork_infile_readdata_encoding Thanks — recorded.