omicverse-single-cell-cellvote-consensus
Pass
Audited by Gen Agent Trust Hub on Jul 22, 2026
Risk Level: SAFEPROMPT_INJECTIONCOMMAND_EXECUTION
Full Analysis
- [PROMPT_INJECTION]: The skill presents an indirect prompt injection surface because it processes external biological data (marker genes and candidate cell type labels) and incorporates them into prompts for LLM arbitration.\n
- Ingestion points: Data is read from the AnnData object's obs columns and the cluster_markers dictionary.\n
- Boundary markers: The instructions do not specify the use of delimiters or isolation warnings to prevent the LLM from obeying instructions that might be embedded within the gene names or labels.\n
- Capability inventory: The cv.vote() method performs outbound network requests to LLM providers (OpenAI or custom endpoints) using an API key.\n
- Sanitization: No explicit sanitization or validation of input strings is mentioned in the documentation.\n- [COMMAND_EXECUTION]: The skill utilizes a monkey-patching pattern to allow users to swap the default arbitration logic at runtime. Users can replace omicverse.single._cellvote.get_cluster_celltype with a local function to avoid network calls and use deterministic voting logic. This is an intended extensibility feature of the library.
Audit Metadata