read-research-paper
Pass
Audited by Gen Agent Trust Hub on Sep 15, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONCOMMAND_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill ingests and processes research papers from external URLs and local files, creating a potential surface for indirect prompt injection.
- Ingestion points: Data enters the system via
toolchains/fetch_paper.py(which fetches from arXiv, DOI, and generic URLs) andtoolchains/read_any_file.py(which reads various local file formats). - Boundary markers: The skill uses triple-angle bracket delimiters (
<<< >>>) in prompts likeprompts/parse-paper.mdto isolate external content from instructions. - Capability inventory: The agent context includes
filesystem-writefor managing a local paper cache andshell-execfor environment anchoring. - Sanitization: The toolchains perform structural cleaning (e.g., stripping HTML tags and LaTeX commands), but do not include semantic filtering for adversarial instructions embedded within the text.
- [DYNAMIC_EXECUTION]: The universal file reader uses dynamic module loading to manage optional dependencies.
- Evidence: The
_optfunction intoolchains/read_any_file.pyutilizes__import__to check for the presence of libraries such aspandas,pdfplumber, andbeautifulsoup4. - Context: These modules are loaded using hardcoded static strings to provide functionality for specific file formats (like Excel or PDF) only when the respective libraries are installed by the user.
- [COMMAND_EXECUTION]: The skill executes simple shell commands to determine system state for freshness checking.
- Evidence:
instructions/freshness.mdspecifies the use ofdate -u +%Y-%m-%dandstat -c %y. - Context: These are benign operations used to verify the publication recency of research papers and to anchor temporal searches.
Audit Metadata