caveman-compress
Pass
Audited by Gen Agent Trust Hub on Jun 17, 2026
Risk Level: SAFECOMMAND_EXECUTIONDATA_EXFILTRATIONPROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The skill uses
subprocess.runto call the localclaudeCLI as a fallback mechanism for compression when an API key is not provided. This is performed using a fixed argument list andshell=False, which prevents shell command injection. The execution is limited to theclaude --printcommand for processing file content. - [DATA_EXFILTRATION]: The skill transmits the content of user-specified files to the Anthropic API. To protect user privacy, it implements a comprehensive
is_sensitive_pathheuristic inscripts/compress.pythat blocks files with sensitive names (e.g.,.env,credentials,secrets) or those located in private directories (e.g.,.ssh,.aws,.kube). Additionally, it enforces a 500KB file size limit to prevent excessive data transfer. - [PROMPT_INJECTION]: The skill processes untrusted natural language data from local files, creating an indirect prompt injection surface where embedded instructions in a file might influence the compression behavior.
- Ingestion points: Local file content is read into memory via
filepath.read_text()inscripts/compress.pybefore being passed to the LLM. - Boundary markers: The prompt template uses a 'TEXT:' label and 'STRICT RULES' to guide the LLM, though it lacks specialized delimiters to isolate untrusted content from the system instructions.
- Capability inventory: The skill is capable of overwriting local files (after a backup is created) and executing the
claudeCLI. - Sanitization: The skill employs a robust denylist for sensitive file patterns to ensure private data is not processed by the LLM.
Audit Metadata