data-scraper-agent

Pass

Audited by Gen Agent Trust Hub on Jul 2, 2026

Risk Level: SAFEPROMPT_INJECTIONDATA_EXFILTRATIONEXTERNAL_DOWNLOADSCOMMAND_EXECUTION
Full Analysis
  • [PROMPT_INJECTION]: The skill is susceptible to indirect prompt injection as it interpolates untrusted data from scraped websites directly into the LLM prompt in 'ai/pipeline.py'.
  • Ingestion points: External data sources defined in 'scraper/sources/' and user-provided context in 'profile/context.md'.
  • Boundary markers: The prompt structure uses markdown headers like '# Items' and '# User Context' but lacks explicit instructions for the AI to disregard commands embedded within the scraped content.
  • Capability inventory: The agent's capabilities are limited to text generation for storage in third-party services like Notion; it lacks dangerous capabilities like subprocess execution or file system modification based on AI output.
  • Sanitization: The skill uses 'json.dumps' to sanitize scraped data before prompt interpolation, which provides basic structural separation but does not prevent semantic injection.
  • [DATA_EXFILTRATION]: The agent is designed to collect data from public sources and transmit it to external storage providers such as Notion or Supabase. This is the intended primary purpose of the skill. It follows security best practices by managing API keys via environment variables and GitHub Secrets.
  • [EXTERNAL_DOWNLOADS]: The skill relies on standard Python libraries (requests, beautifulsoup4) and the Google Gemini REST API. The installation and communication steps are transparent and target well-known services.
  • [COMMAND_EXECUTION]: The provided GitHub Actions workflow template executes shell commands to install dependencies and run the agent script ('python -m scraper.main'). These are standard automation practices for this use case.
Audit Metadata
Risk Level
SAFE
Analyzed
Jul 2, 2026, 01:52 PM