fulltext-retrieval

Pass

Audited by Gen Agent Trust Hub on Sep 17, 2026

Risk Level: SAFEEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTION
Full Analysis
  • [EXTERNAL_DOWNLOADS]: The skill downloads academic PDFs from several well-known and reputable external services.
  • Evidence: The fetch_oa.py script connects to official APIs for academic repositories including arxiv.org, unpaywall.org, ncbi.nlm.nih.gov (PubMed Central), europepmc.org, openalex.org, and crossref.org to retrieve full-text articles.
  • [COMMAND_EXECUTION]: The script executes a local system utility to process PDF files.
  • Evidence: fetch_oa.py uses subprocess.run to call the pdftotext utility for identity verification. The command arguments are passed as a list rather than a shell string, and the filename input is sanitized using a regular expression in safe_doi_name() that restricts characters to a safe set (alphanumeric, underscores, dashes, and dots), preventing command injection vulnerabilities.
  • [INDIRECT_PROMPT_INJECTION]: The skill processes external document content, which represents a potential surface for indirect prompt injection if the downloaded papers contain malicious instructions.
  • Ingestion points: PDFs are downloaded by fetch_oa.py and converted to Markdown by pdf_to_md.py for the agent to read.
  • Boundary markers: The resulting Markdown files do not implement specific delimiters or 'ignore' instructions to isolate the paper's text from the agent's control logic.
  • Capability inventory: The agent is equipped with file and shell tools (Read, Bash, Grep) that would be used to interact with the converted text.
  • Sanitization: While identifiers like DOIs are sanitized for file system safety, the text content of the academic papers is not filtered for potential injection patterns before being read by the agent.
Audit Metadata
Risk Level
SAFE
Analyzed
Sep 17, 2026, 01:59 AM
Security Audit — agent-trust-hub — fulltext-retrieval