Caveat verdict

zotero-ingest

88
๐ŸŸข Trusted
No high-risk patterns surfaced by the deep scan โ€” automated capability review, not behavioral proof.

Reads local files AND makes external network calls

Adds research papers to a user's Zotero library via the official REST API; the hardcoded user ID (10425097) is the skill author's own account ID used as a reference example, and the API key is retrieved from 1Password via 'op read' rather than hardcoded.

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.

0
security
70
transparency
90
maintenance

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.

Capability combination critical

Reads local files AND makes external network calls โ€” the capabilities for data exfiltration co-occur (data-flow not verified)

LLM02 ยท LLM06 ยท ASI03

Capability combination critical

Reads files, encodes data, AND makes external network calls โ€” the obfuscated-exfiltration pattern (data-flow not verified)

LLM02 ยท ASI03

Capability combination high

Executes processes AND makes external network calls โ€” may exfiltrate command output

LLM02 ยท LLM06 ยท ASI03

Capability combination high

Accesses credentials AND makes external network calls โ€” potential credential theft

LLM02 ยท ASI03

Capability combination high

Accesses credentials AND encodes data โ€” may obfuscate stolen credentials

LLM02 ยท ASI03 ยท ASI04

Permission integrity

Makes network requests but does not declare curl/wget in required binaries

network_out

Code accesses API keys/tokens but declares no environment variables

credential_access

Findings (2)

Pattern match high

subprocess execution โ€” runs system commands from Python

SKILL.md ยท code ยท subprocess.check_output(

Pattern match medium

Python urllib.request โ€” network access

SKILL.md ยท code ยท urllib.request

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_outfile_readprocess_execcredential_accessdata_encoding
Check another skill Browse the registry Auditing your own skills or configs? Use the API