literature-review
Pass
Audited by Gen Agent Trust Hub on Sep 22, 2026
Risk Level: SAFECOMMAND_EXECUTIONDATA_EXFILTRATIONINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTION
Full Analysis
- [DATA_EXFILTRATION]: The
litrev_contactfunction inkernel.pyretrieves the user's email address from the local system by checking environment variables (HOST_USER_EMAIL,CONTACT_EMAIL) and falling back to executinggit config user.email. This information is then included in theUser-AgentHTTP header for all requests toapi.crossref.org. Although documented in the skill's metadata as a requirement for the Crossref 'polite pool', this behavior performs automated extraction and remote transmission of PII from local configuration files. - [COMMAND_EXECUTION]: The script
kernel.pyutilizessubprocess.runto execute thegitCLI on the host machine to access user configuration details. - [INDIRECT_PROMPT_INJECTION]: The skill is designed to ingest and synthesize large volumes of untrusted text (abstracts and metadata) from external scientific databases.
- Ingestion points: Untrusted data enters the agent context via the
litrev_getandlitrev_openalex_getfunctions inkernel.pywhich fetch JSON content from Crossref and OpenAlex APIs. - Boundary markers: The instructions do not specify prompt-level delimiters or 'ignore' instructions for the retrieved data, relying on the model's inherent reasoning to distinguish data from instructions.
- Capability inventory: The skill possesses network request capabilities via
urlliband local command execution viasubprocess.run. - Sanitization: The skill performs basic HTML entity decoding and uses a deterministic Python linting function (
style_pass) to review the final output, which partially mitigates the risk of malicious content influencing the final artifact generation. - [DYNAMIC_EXECUTION]: The
SKILL.mdinstructions direct the agent to load operational logic by executing the localkernel.pyfile using theexec(open(...).read())pattern.
Audit Metadata