nano-banana-pro-openrouter

Pass

Audited by Gen Agent Trust Hub on Aug 18, 2026

Risk Level: SAFE
Full Analysis
  • [COMMAND_EXECUTION]: The skill executes a Python script (openrouter_image.py) with arguments derived from configuration and user input. It uses a deterministic approach where user-invocable model invocation is disabled (disable-model-invocation: true), and arguments are validated or defaulted in the entrypoint. Subprocess spawning for image generation is handled via standard libraries without shell=True risks.\n- [DATA_EXFILTRATION]: The skill communicates with OpenRouter for image generation. It implements a strict 'MetaSkill lease' mechanism where API keys and endpoints are provided via environment variables (OPENSQUILLA_META_CAPABILITY_API_KEY, etc.) rather than user-controlled inputs. Network operations are restricted to the API provider, and the skill explicitly avoids reading .env files or leaking credentials in logs or output.\n- [REMOTE_CODE_EXECUTION]: While the skill downloads image bytes from remote URLs returned by the provider, it performs extensive local validation. It uses the PIL (Pillow) library to probe image headers, verify dimensions (MAX_IMAGE_DIMENSION=16384), check pixel counts, and ensure the image is a single frame. The data is fully decoded and loaded locally before being saved, mitigating risks from malicious image payloads.\n- [PROMPT_INJECTION]: The skill processes user prompts from stdin or structured JSON payloads. It treats these inputs as data for the image generation request and applies constraints such as scrubbing error messages of sensitive info and truncating input strings to reasonable lengths (e.g., 500-600 characters) before submission to the model. The deterministic nature of the adapter prevents traditional LLM-based instruction override.
Audit Metadata
Risk Level
SAFE
Analyzed
Aug 18, 2026, 08:11 AM
Security Audit — agent-trust-hub — nano-banana-pro-openrouter