google-image-search

Pass

Audited by Gen Agent Trust Hub on Sep 28, 2026

Risk Level: SAFECOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONDATA_EXFILTRATION
Full Analysis
  • [COMMAND_EXECUTION]: The skill invokes the llm CLI tool via subprocess.run in scripts/llm_select.py. The implementation uses a list-based argument structure rather than a shell string, which effectively mitigates shell injection vulnerabilities while enabling intelligent selection and term extraction.
  • [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted data from external sources, presenting a theoretical injection surface.
  • Ingestion points: Content is ingested from Google Search result metadata (titles and snippets) and local Markdown files (Obsidian notes) via scripts/llm_select.py and scripts/obsidian.py.
  • Boundary markers: The system prompts in llm_select.py define strict JSON output formats and instructions, though they lack explicit delimiters or 'ignore' instructions for the interpolated external content.
  • Capability inventory: The skill has the ability to perform network requests for image downloads (urllib.request) and write to the local file system to update notes and save images.
  • Sanitization: Filenames are sanitized using a slugify function, and markdown alt-text is escaped to prevent formatting breakages.
  • [DATA_EXPOSURE]: The skill manages sensitive API keys for Google Search and OpenRouter. These are handled via .env file resolution in scripts/config.py, which is a standard and secure practice. Additionally, the skill's access to Obsidian vault settings (app.json) and note content is restricted to its primary purpose of media integration.
Audit Metadata
Risk Level
SAFE
Analyzed
Sep 28, 2026, 09:42 AM