literature-review-tools
Warn
Audited by Gen Agent Trust Hub on Jul 27, 2026
Risk Level: MEDIUMCOMMAND_EXECUTIONEXTERNAL_DOWNLOADSREMOTE_CODE_EXECUTIONDATA_EXFILTRATION
Full Analysis
- [COMMAND_EXECUTION]: The skill relies on a launcher script (
scripts/litrun.py) that extensively usessubprocess.runto execute system commands. This is used for checking the toolchain, managing environment variables, and launching various external utilities. - [EXTERNAL_DOWNLOADS]: The skill is designed to download and install a large number of third-party Python packages and clone external GitHub repositories (such as GPT Researcher and STORM) during its operation.
- [DYNAMIC_EXECUTION]: The launcher script assembles and executes shell commands and Python snippets at runtime based on definitions provided in
recipes/recipes.json. This includes running code snippets viapython -cand launching web servers (uvicorn,streamlit) for cloned projects. - [CREDENTIALS_UNSAFE]: The skill manages multiple sensitive API keys (e.g., OpenAI, Anthropic, Tavily, You.com) by storing them in a local
.envfile at~/.lit-review-tools/.env. It also has functionality to propagate these credentials into the environment of cloned third-party tools when launching their user interfaces. - [REMOTE_CODE_EXECUTION]: Through its
uiandruncommands, the skill clones and executes code from remote repositories. While the catalog targets well-known research projects, this mechanism allows the execution of arbitrary logic from external sources at runtime. - [DATA_EXPOSURE]: The skill ingests and processes data from external scholarly APIs (arXiv, OpenAlex, PubMed) and local PDF files. This data is fed into LLMs for synthesis and Q&A, creating an attack surface for indirect prompt injection where adversarial content in a paper could attempt to influence the agent's behavior.
- Ingestion points:
scripts/fetch_arxiv.py,scripts/fetch_openalex.py,scripts/fetch_pubmed.py, and user-provided PDF paths. - Boundary markers: None explicitly implemented in the data retrieval scripts to delimit untrusted content.
- Capability inventory: Full shell execution (via
litrun.py), file system read/write, and network access. - Sanitization: No explicit sanitization or filtering of the content retrieved from external academic sources before processing.
Audit Metadata